Skip to main content
Actions are grouped into action providers, which may have specific dependencies like API keys. You can find all of the action providers and actions supported by AgentKit at the following links: Generally, Node.js supports more crypto-specific actions than the Python version. By default, AgentKit supports the following actions in the ‘wallet’ action provider:
  • get_wallet_details - Get details about the Wallet, like the address
  • native_transfer - Transfer native asset between addresses
  • get_balance - Get the balance of the native asset

Adding Action Provider Groupings

Adding an existing action provider to your agent is a two-step process:
  1. Import the action provider to your file
  2. Add the action provider to your AgentKit instance

Creating an Action Provider

Action providers define the actions that an agent can take. They are created by subclassing the ActionProvider abstract class.

Adding Actions to an Action Provider

Actions are defined as instance methods on the action provider class with the @CreateAction decorator. Actions can use a wallet provider or not and always return a Promise that resolves to a string.Required Typescript Compiler OptionsCreating actions with the @CreateAction decorator requires the following compilerOptions to be included in your project’s tsconfig.json.
Steps to create an action
  1. Define the action schema. Action schemas are defined using the zod library.
  1. Define the action implementation.
Adding Actions to your Action Provider that use a Wallet ProviderActions that use a wallet provider can be defined as instance methods on the action provider class with the @CreateAction decorator that have a WalletProvider as the first parameter.
Adding an Action Provider to your AgentKit instance
For actions to be made available for any agent, we welcome open-source contributions to AgentKit for adding more actions! Please see our contribution guide for more information.