Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion CONTRIBUTING-PYTHON.md
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,10 @@ EVM:
- [CdpSmartWalletProvider](./python/coinbase-agentkit/coinbase_agentkit/wallet_providers/cdp_smart_wallet_provider.py)
- [EthAccountWalletProvider](./python/coinbase-agentkit/coinbase_agentkit/wallet_providers/eth_account_wallet_provider.py)

Solana:

- [CdpSolanaWalletProvider](./python/coinbase-agentkit/coinbase_agentkit/wallet_providers/cdp_solana_wallet_provider.py)

### Adding a new EVM wallet provider

The EVM Wallet Providers are housed in `wallet_providers/`. EVM Wallet Providers extend `EvmWalletProvider` which is an abstract class that provides core EVM wallet functionality. To add a new EVM wallet provider, create a new file in the `wallet_providers` directory and implement a class that extends `EvmWalletProvider`.
Expand All @@ -194,7 +198,7 @@ Integrations into AI Agent frameworks are specific to the framework itself, so w

### Local Testing

A good way to test new actions locally is by using the chatbot example in `python/examples/langchain-smart-wallet-chatbot`. See the [chatbot README](./python/examples/langchain-smart-wallet-chatbot/README.md) for instructions on setting up and running the chatbot.
A good way to test new actions locally is by using the chatbot example in `python/examples/langchain-cdp-smart-wallet-chatbot`. See the [chatbot README](./python/examples/langchain-cdp-smart-wallet-chatbot/README.md) for instructions on setting up and running the chatbot.

The flow is:

Expand Down
21 changes: 17 additions & 4 deletions CONTRIBUTING-TYPESCRIPT.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ This guide covers TypeScript-specific setup and development for AgentKit.

## Development Setup

AgentKit uses Node.js v18.x or higher and pnpm 10.7.x or higher.
AgentKit uses Node.js v22.x or higher and pnpm 10.7.x or higher.

You can run the following commands in your terminal to check your local Node.js and pnpm versions:

Expand Down Expand Up @@ -200,8 +200,21 @@ Wallet providers give an agent access to a wallet. AgentKit currently supports t

EVM:

- [CdpWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/cdpWalletProvider.ts)
- [CdpEvmWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/cdpEvmWalletProvider.ts)
- [CdpSmartWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/cdpSmartWalletProvider.ts)
- [LegacyCdpWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/legacyCdpWalletProvider.ts)
- [LegacyCdpSmartWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/legacyCdpSmartWalletProvider.ts)
- [ViemWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/viemWalletProvider.ts)
- [ZeroDevWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/zeroDevWalletProvider.ts)
- [PrivyEvmWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/privyEvmWalletProvider.ts)
- [PrivyEvmDelegatedEmbeddedWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/privyEvmDelegatedEmbeddedWalletProvider.ts)

Solana:

- [CdpSolanaWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/cdpSolanaWalletProvider.ts)
- [SolanaKeypairWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/solanaKeypairWalletProvider.ts)
- [PrivySvmWalletProvider](https://github.com/coinbase/agentkit/blob/master/typescript/agentkit/src/wallet-providers/privySvmWalletProvider.ts)


### Adding a new EVM wallet provider

Expand All @@ -224,7 +237,7 @@ Integrations into AI Agent frameworks are specific to the framework itself, so w

### Local Testing

A good way to test new actions locally is by using the chatbot example in `typescript/examples/langchain-smart-wallet-chatbot`. See the [chatbot README](https://github.com/coinbase/agentkit/blob/master/typescript/examples/langchain-smart-wallet-chatbot/README.md) for instructions on setting up and running the chatbot.
A good way to test new actions locally is by using the chatbot example in `typescript/examples/langchain-cdp-smart-wallet-chatbot`. See the [chatbot README](https://github.com/coinbase/agentkit/blob/master/typescript/examples/langchain-cdp-smart-wallet-chatbot/README.md) for instructions on setting up and running the chatbot.

The flow is:

Expand Down Expand Up @@ -284,7 +297,7 @@ To add a changeset, use `changesets` to create it for you:
pnpm run changeset
```

This will kick off an interactive prompt to help you create the changeset. Use the arrow keys to navigate the different options, and press the `Space` key to select an option. You should select the package(s) you are making a change to – most of the time this will be `@coinbase/agentkit`. Once selected, hit `Enter`. You'll then be prompted to specify the type of change you are making (major, minor or patch), starting with major. Most of the time you will not be making a major change, so hitting `Enter` will progress to the next step. If you're adding a new feature, you should select `minor`. If you're fixing a bug, you should select `patch`. Once selected, you will be prompted to provide a summary of your changes. This should be a short, specific description in the past tense (see above for examples).
This will kick off an interactive prompt to help you create the changeset. Use the arrow keys to navigate the different options, and press the `Space` key to select an option. You should select the package(s) you are making a change to – most of the time this will be `@coinbase/agentkit`. Once selected, hit `Enter`. You'll then be prompted to specify the type of change you are making (major, minor or patch), starting with major. Most of the time you will not be making a major change, so hitting `Enter` will progress to the next step. For breaking changes, you should select `minor`. For new features like action providers or framework extensions or minor bug fixes, you should select `patch`. Once selected, you will be prompted to provide a summary of your changes. This should be a short, specific description in the past tense (see above for examples).

Once complete, a new changeset will be created in the `.changeset` directory, which should be committed along with the changes in your Pull Request.

Expand Down
2 changes: 2 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ These steps are highly dependent on the language you're working in, so check out

Once you have your changes ready, there are a few more steps to open a PR and get it merged:

- Note: We require ALL commits to be [signed](https://docs.github.com/en/authentication/)
- Fill out the PR template completely with as much detail as possible
- Ideally, include screenshots or videos of the changes in action
- Link related issues, if any
Expand All @@ -108,6 +109,7 @@ Current list of maintainers:
- [@rohan-agarwal-coinbase](https://github.com/rohan-agarwal-coinbase)
- [@0xRAG](https://github.com/0xRAG)
- [@yuga-cb](https://github.com/yuga-cb)
- [@CarsonRoscoe](https://github.com/CarsonRoscoe)

## Releasing

Expand Down
11 changes: 8 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ AgentKit is [Coinbase Developer Platform's](https://docs.cdp.coinbase.com) toolk

_Prerequisites_:

- [Node.js 18+](https://nodejs.org/en/download/)
- [Node.js 22+](https://nodejs.org/en/download/)
- [CDP Secret API Key](https://docs.cdp.coinbase.com/get-started/docs/cdp-api-keys#creating-secret-api-keys)
- [OpenAI API Key](https://help.openai.com/en/articles/4936850-where-do-i-find-my-openai-api-key)

Expand Down Expand Up @@ -152,12 +152,14 @@ agentkit/
│ │ └── model-context-protocol/
│ └── examples/
│ ├── langchain-cdp-chatbot/
│ ├── langchain-cdp-v2-chatbot/
│ ├── langchain-cdp-smart-wallet-chatbot/
│ ├── langchain-farcaster-chatbot/
│ ├── langchain-legacy-cdp-chatbot/
│ ├── langchain-privy-chatbot/
│ ├── langchain-solana-chatbot/
│ ├── langchain-twitter-chatbot/
│ ├── langchain-xmtp-chatbot/
│ ├── langchain-zerodev-chatbot/
│ ├── model-context-protocol-smart-wallet-server/
│ └── vercel-ai-sdk-smart-wallet-chatbot/
├── python/
Expand All @@ -171,7 +173,8 @@ agentkit/
│ ├── create-onchain-agent/
│ ├── framework-extensions/
│ │ ├── langchain/
│ │ └── openai-agents-sdk/
│ │ ├── openai-agents-sdk/
│ │ └── strands-agents/
│ └── examples/
│ ├── langchain-cdp-chatbot/
│ ├── langchain-cdp-smart-wallet-chatbot/
Expand All @@ -198,6 +201,8 @@ agentkit/
- Python API References
- [AgentKit](https://coinbase.github.io/agentkit/coinbase-agentkit/python/index.html)
- [AgentKit Langchain Extension](https://coinbase.github.io/agentkit/coinbase-agentkit-langchain/python/index.html)
- [AgentKit OpenAI Agents SDK Extension](./python/framework-extensions/openai-agents-sdk/README.md)
- [AgentKit Strands Agents Extension](./python/framework-extensions/strands-agents/README.md)
- Node.js API References
- [AgentKit](https://coinbase.github.io/agentkit/agentkit/typescript/index.html)
- [AgentKit Langchain Extension](https://coinbase.github.io/agentkit/agentkit-langchain/typescript/index.html)
Expand Down
6 changes: 3 additions & 3 deletions typescript/create-onchain-agent/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

Before using `create-onchain-agent`, ensure you have the following installed:

- **Node.js** (v18 or later) – [Download here](https://nodejs.org/)
- **npm** (v9 or later) – Comes bundled with Node.js
- **Node.js** (v22 or later) – [Download here](https://nodejs.org/)
- **npm** (v10 or later) – Comes bundled with Node.js

## Usage

Expand Down Expand Up @@ -45,7 +45,7 @@ agentkit generate create-agent

> **Note**: If the above commands print the error `agentkit: not found`, ensure the agentkit cli is installed by running the following command:
> ```bash
> npm install -g create-onchain-agent/@latest
> npm install -g create-onchain-agent@latest
> ```

## Features
Expand Down