MCPcopy Index your code
hub / github.com/cowprotocol/cow-sdk

github.com/cowprotocol/cow-sdk @cow-sdk-v9.2.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release cow-sdk-v9.2.2 ↗ · + Follow
1,754 symbols 3,985 edges 442 files 209 documented · 12% updated 4d agocow-sdk-v9.2.2 · 2026-06-23★ 6121 open issues

Browse by type

Functions 1,061 Types & classes 693
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Test coverage

Coverage of the @cowprotocol/sdk-trading package. See the Package Structure section for links to each package's README, which shows its own coverage.

Statements Branches Functions Lines
Statements Branches Functions Lines

Use CoW Protocol

Check @cowprotocol/cow-sdk to learn how to trade on the CoW Protocol (get quote, verify amounts, sign and send order)

Supported chains

CoW Swap is currently available on the following chains:

  • Ethereum (1)
  • BNB (56)
  • Gnosis Chain (100)
  • Polygon (137)
  • Base (8453)
  • Plasma (9745)
  • Arbitrum One (42161)
  • Avalanche (43114)
  • Ink (57073)
  • Linea (59144)
  • Sepolia (11155111) (Testnet)

Technical Overview

This is a TypeScript monorepo containing the complete CoW Protocol SDK ecosystem. The repository is organized into multiple packages that provide different levels of abstraction and functionality for interacting with CoW Protocol.

Monorepo Architecture

The project uses modern tooling for efficient development and publishing:

  • 🏗️ Build System: Turbo for fast, incremental builds and task orchestration
  • 📦 Package Manager: pnpm v10.8+ with workspaces for efficient dependency management
  • 🔧 TypeScript: Shared TypeScript configuration across all packages
  • 🧪 Testing: Jest for unit testing with coverage reporting
  • 📋 Linting: ESLint v9+ with TypeScript support and unused imports detection
  • 🎨 Formatting: Prettier for consistent code formatting
  • 📦 Publishing: Release Please for automated versioning and publishing
  • ⚡ Development: Node.js 22+ required

Package Structure

🎯 Main SDK Package

🔧 Core Trading Packages

🌉 Advanced Features

🔌 Provider Adapters

📚 Supporting Packages

🛠️ Development Packages

Development Workflow

# Install dependencies
pnpm install

# Build all packages
pnpm build

# Run tests
pnpm test

# Run tests with coverage and update README coverage badges
pnpm coverage:badges

# Run linting
pnpm lint

# Format code
pnpm format

# Type checking
pnpm typecheck

# Clean build artifacts
pnpm clean

Contributing

We welcome contributions to the CoW Protocol SDK! Here's how to get started:

🚀 Quick Start

  1. Fork the repository on GitHub
  2. Clone your fork locally: bash git clone https://github.com/YOUR_USERNAME/cow-sdk.git cd cow-sdk
  3. Follow the Development Workflow above to set up your environment
  4. Make your changes following our Contributor Guidelines
  5. Create a pull request short after creating it, you will be asked to sign the CLA (Contributor License Agreement). A comment with instructions will be added to the PR.

📚 Need Help?

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 629
Interface 479
Function 432
Class 168
Enum 46

Languages

TypeScript100%

Modules by API surface

packages/weiroll/src/lib/planner.ts49 symbols
packages/providers/viem-adapter/src/ViemUtils.ts43 symbols
packages/providers/ethers-v6-adapter/src/EthersV6Utils.ts42 symbols
packages/providers/ethers-v5-adapter/src/EthersV5Utils.ts42 symbols
packages/bridging/src/types.ts41 symbols
packages/contracts-ts/src/settlement.ts36 symbols
packages/trading/src/types.ts34 symbols
packages/contracts-ts/src/api.ts28 symbols
packages/common/src/utils/ttlCache.ts28 symbols
packages/composable/src/Multiplexer.ts26 symbols
packages/providers/viem-adapter/src/ViemSignerAdapter.ts25 symbols
packages/providers/ethers-v6-adapter/src/EthersV6SignerAdapter.ts24 symbols

For agents

$ claude mcp add cow-sdk \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page