Uh oh!
There was an error while loading. Please reload this page.
Feat/dynamic server wallets - #738
Conversation
cb-heimdall
commented
May 29, 2025
🟡 Heimdall Review Status
|
matthew1809
commented
May 29, 2025
Hi @murrlincoln, let me know if you'd like anything changed here! |
phdargen
commented
Aug 4, 2025
Hi @matthew1809, thanks for your contribution! Could you please rebase against main and bump the dynamic packages to the latest versions (if appropriate), then I will do some testing. A few initial comments below |
phdargen
commented
Aug 4, 2025
Please make sure to run pnpm run format and pnpm run lint before you commit, there are several unused imports/vars that would lead to failed checks |
| "@coinbase/agentkit": minor | ||
| --- | ||
| Adds Dynamic as wallet provider |
| DYNAMIC_BASE_API_URL=https://app.dynamicauth.com | ||
| DYNAMIC_BASE_MPC_RELAY_API_URL=https://relay.dynamicauth.com | ||
| # Optional Network ID. If you'd like to use a Dynamic Solana wallet, set to "solana-devnet". Otherwise, defaults to "base-sepolia" |
There was a problem hiding this comment.
defaults to "mainnet-beta" according to chatbot code
| "dependencies": { | ||
| "@coinbase/agentkit": "workspace:*", | ||
| "@coinbase/agentkit-langchain": "^0.3.0", | ||
| "@dynamic-labs-wallet/core": "^0.0.71", |
There was a problem hiding this comment.
Are the dynamic dependencies needed here? If so, should use the same versions as in typescript/agentkit/package.json.
Please update other dep to be consistent with https://github.com/coinbase/agentkit/blob/main/typescript/examples/langchain-cdp-chatbot/package.json
| pythActionProvider(), | ||
| walletActionProvider(), | ||
| erc20ActionProvider(), | ||
| cdpApiActionProvider({ |
There was a problem hiding this comment.
Following #785, cdpApiActionProvider needs to be renamed to legacyCdpApiActionProvider
| apiKeyName: process.env.CDP_API_KEY_NAME as string, | ||
| apiKeyPrivateKey: process.env.CDP_API_KEY_PRIVATE_KEY as string, | ||
| }), | ||
| splActionProvider(), |
There was a problem hiding this comment.
This is mixing up evm-only and svm-only actions, while the wallet setup is only for svm.
I'd suggest to check from config vars wether evm or svm wallet should be initialized and then add actions accordingly. Have a look at https://github.com/coinbase/agentkit/blob/main/typescript/examples/langchain-cdp-chatbot/chatbot.ts for inspiration
phdargen
commented
Aug 4, 2025
It would be great if you could include the result of some manual end-to-end testing in the PR description including prompt + reply for both evm and svm wallets |
| type: "json-rpc", | ||
| }, | ||
| chain, | ||
| transport: http(), |
There was a problem hiding this comment.
Following #824, this should include an optional config to set custom RPC_URL
| throw new Error(`Chain with ID ${chainId} not found`); | ||
| } | ||
| const publicClient = (dynamic as DynamicEvmWalletClient).createViemPublicClient({ |
There was a problem hiding this comment.
publicClient appears to be unused, please remove
55c414c to
12b91f3Comparephdargen
commented
Mar 17, 2026
Closing due to inactivity |
Description
Add Dynamic as a wallet provider (PR for app generation to follow)
Tests
I tested with the example chatbot.
Other