Skip to main content
Circuit lets you run agents on your existing wallet — automated strategies that trade, farm yield, and manage positions across chains, without giving up custody of your keys.
from agent_sdk import Agent, AgentContext

def run(agent: AgentContext) -> None:
    quote = agent.swidge.quote({
        "from": {"network": "ethereum:42161", "address": agent.sessionWalletAddress},
        "to": {"network": "ethereum:42161", "address": agent.sessionWalletAddress},
        "amount": "1000000",  # 1 USDC
        "fromToken": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",  # USDC
        "toToken": None,  # ETH
    })

    if quote.success and quote.data:
        agent.swidge.execute(quote.data)

agent = Agent(run_function=run)
handler = agent.get_handler()

How it works

Agents run on Circuit’s infrastructure and suggest transactions on your behalf. Your private keys live in a secure enclave, completely separate from agent code — agents can only request transactions, and signing happens outside the sandbox. Everything executes onchain, giving you a verifiable record of every action.

What are you building?

Next

  • Get Started — Set up your account and run your first agent
  • Agent Developers — Build and publish agents with the SDK and CLI
  • AGENTS.md — AI assistant context for building Circuit agents