Skip to main content
Eliza is an open-source multi-agent framework with built-in support for AgentKit. The create-agentkit-app scaffold sets up an Eliza agent pre-wired with a CDP wallet, ready to run on Base.
When creating your CDP API key in the portal, select ECDSA as the signature algorithm. The Eliza framework requires ECDSA keys — Ed25519 is not currently supported.

Prerequisites

  • Node 18+
  • A CDP API key
  • An LLM API key (OpenAI or compatible)

Quickstart

1

Scaffold the project

Terminal
npx create-agentkit-app my-agent
cd my-agent
This creates an Eliza agent with AgentKit pre-installed and configured for Base.
2

Configure environment variables

Terminal
cp .env.example .env
Open .env and fill in your credentials:
.env
CDP_API_KEY_NAME=your_cdp_key_name
CDP_API_KEY_PRIVATE_KEY=your_cdp_private_key
OPENAI_API_KEY=your_openai_key
NETWORK_ID=base-sepolia
3

Install dependencies

Terminal
pnpm install
4

Start the agent

Terminal
pnpm start
The agent starts in interactive mode. You can ask it to check balances, send transactions, and perform other onchain actions.
For a full video walkthrough, see the Eliza + AgentKit tutorial.

Project structure

The scaffolded project follows Eliza’s character-based structure:
my-agent
characters
agent.json
src
index.ts
.env.example
package.json

Customizing your agent

Edit characters/agent.json to change the agent’s personality:
characters/agent.json
{
  "name": "MyAgent",
  "bio": ["I am an onchain agent that can help with Base transactions."],
  "lore": [],
  "topics": ["crypto", "defi", "base"],
  "style": {
    "all": ["concise", "helpful"],
    "chat": ["friendly"]
  },
  "adjectives": ["efficient", "trustworthy"]
}

Connecting to Base mainnet

By default the scaffold targets Base Sepolia. Switch to mainnet:
.env
NETWORK_ID=base-mainnet
Fund your agent’s wallet address (printed at startup) with ETH and USDC before using mainnet.

Available actions

The scaffold comes with AgentKit’s full action set pre-registered:
ActionDescription
get_wallet_detailsShow the agent’s wallet address and network
get_balanceCheck ETH or token balance
native_transferSend ETH to an address
erc20_transferSend an ERC-20 token
tradeSwap tokens via an onchain DEX
deploy_tokenDeploy a new ERC-20 contract
wrap_ethWrap ETH to WETH

Next steps

AgentKit quickstart

Build an agent with AgentKit directly, without Eliza.

LangChain integration

Use LangChain instead of Eliza for more complex agent workflows.