Skip to main content

System Requirements

Operating System

macOS or Linux (Windows not tested)

Python

Python 3.12 (required)

Node.js

Node.js 18+ (for web interface)

Git

Git for version control

Installation Methods

Core Dependencies

The framework includes these major packages:
pyproject.toml
[tool.poetry.dependencies]
python = ">=3.11,<4.0"
coinbase-agentkit = "0.1.6"
coinbase-agentkit-langchain = "^0.1.0"
langchain-openai = "0.3.1"
langgraph = "^0.2.73"
langchain-anthropic = "^0.3.0"
langchain-community = "^0.3.11"
paramiko = "^3.4.0"  # SSH access
tweepy = "^4.15.0"   # Twitter API
browser-use = "^0.1.37"  # Browser automation
anthropic = ">=0.41.0,<1.0.0"  # Writing agent
pypdf = "^4.0.1"     # PDF processing

API Keys Configuration

Required API Keys

1

Create Environment File

cp .env.example .env
2

Configure Core Keys

Add these required keys to .env:
.env
# Anthropic - For Claude LLM
ANTHROPIC_API_KEY=sk-ant-api03-xxx

# CDP - For blockchain operations
CDP_API_KEY_NAME=organizations/{org_id}/apiKeys/{key_id}
CDP_API_KEY_PRIVATE=-----BEGIN EC PRIVATE KEY-----\nxxx\n-----END EC PRIVATE KEY-----
CDP_NETWORK_ID=base-mainnet

# Hyperbolic - For GPU compute
HYPERBOLIC_API_KEY=your_hyperbolic_api_key
  1. Sign up at CDP Portal
  2. Create a new API key
  3. Download the JSON file with your credentials
  4. The name field is your CDP_API_KEY_NAME
  5. The privateKey field is your CDP_API_KEY_PRIVATE
  6. Keep the newlines in the private key (use \n in .env file)
3

Enable Core Toolkits

.env
# Core toolkits
USE_COINBASE_TOOLS=true
USE_HYPERBOLIC_TOOLS=true
USE_BROWSER_TOOLS=true

Optional API Keys

Required for social media features:
.env
# Twitter API v2 credentials
TWITTER_ACCESS_TOKEN=your_access_token
TWITTER_API_KEY=your_api_key
TWITTER_API_SECRET=your_api_secret
TWITTER_ACCESS_TOKEN_SECRET=your_access_token_secret
TWITTER_BEARER_TOKEN=your_bearer_token
TWITTER_CLIENT_ID=your_client_id
TWITTER_CLIENT_SECRET=your_client_secret

# Enable Twitter tools
USE_TWITTER_CORE=true
USE_TWITTER_KNOWLEDGE_BASE=true
USE_TWEET_REPLY_TRACKING=true
USE_TWEET_REPOST_TRACKING=true

Get Twitter API Access

Create a developer account and app at Twitter Developer Portal

SSH Configuration

SSH access is required for connecting to rented GPU instances.
1

Generate RSA Key

Only RSA keys are supported (not Ed25519):
ssh-keygen -t rsa -b 4096 -C "[email protected]"
Save to default location: ~/.ssh/id_rsa
2

Configure in .env

.env
SSH_PRIVATE_KEY_PATH=~/.ssh/id_rsa
3

Add Public Key to Hyperbolic

  1. Go to app.hyperbolic.xyz
  2. Navigate to Settings
  3. Add your public key (~/.ssh/id_rsa.pub)

Crypto Setup for GPU Compute

To pay for GPU compute with cryptocurrency:
1

Prepare Wallet

You need an Ethereum wallet with funds on the Base network.Supported tokens:
  • USDC
  • USDT
  • DAI
2

Connect Wallet

Use the agent to link your wallet:
User: connect my wallet 0xYOUR_WALLET_ADDRESS to Hyperbolic
The agent will use the link_wallet_address action:
# From hyperbolic_agentkit_core/actions/link_wallet_address.py
def link_wallet_address(wallet_address: str) -> str:
    api_key = get_api_key()
    endpoint = "https://api.hyperbolic.xyz/v1/billing/wallet"
    payload = {"wallet_address": wallet_address}
    response = requests.post(endpoint, headers=headers, json=payload)
    return response.json()
3

Send Funds

Transfer funds to Hyperbolic’s Base address:
To: 0xd3cB24E0Ba20865C530831C85Bd6EbC25f6f3B60
Network: Base
Token: USDC, USDT, or DAI
Funds are available immediately after confirmation.
4

Start Computing

You can now rent GPUs:
User: Rent an H100 GPU

Character Configuration

Customize your agent’s personality:
1

Copy Template

cp characters/default.json characters/my-agent.json
2

Edit Configuration

characters/my-agent.json
{
  "name": "MyAgent",
  "bio": [
    "AI assistant specialized in GPU compute",
    "Expert in blockchain and DeFi"
  ],
  "lore": [
    "Built to help developers access compute resources"
  ],
  "adjectives": [
    "helpful",
    "technical",
    "efficient"
  ],
  "style": {
    "all": [
      "Be concise and technical",
      "Use clear examples"
    ]
  },
  "topics": [
    "AI/ML infrastructure",
    "GPU computing",
    "Blockchain"
  ]
}
3

Use Custom Character

.env
CHARACTER_FILE=characters/my-agent.json

Tool Configuration

Enable or disable specific tools:
.env
# Core Toolkits
USE_COINBASE_TOOLS=true
USE_HYPERBOLIC_TOOLS=true
USE_BROWSER_TOOLS=true

# Twitter Tools
USE_TWITTER_CORE=true
USE_TWEET_REPLY_TRACKING=true
USE_TWEET_REPOST_TRACKING=true
USE_TWEET_DELETE=true
USE_USER_ID_LOOKUP=true
USE_USER_TWEETS_LOOKUP=true
USE_RETWEET=true

# Additional Tools
USE_WRITING_AGENT=true
USE_WEB_SEARCH=true
USE_REQUEST_TOOLS=true
USE_GITHUB_TOOLS=true

# Knowledge Bases
USE_TWITTER_KNOWLEDGE_BASE=false
USE_PODCAST_KNOWLEDGE_BASE=true

# Security
ALLOW_DANGEROUS_REQUEST=true  # Required for RequestsToolkit

Running the Application

Interactive command-line interface:
poetry run python chatbot.py
Choose mode:
  • 1 - Interactive chat mode
  • 2 - Character Twitter automation

Verification

Test your installation:
from hyperbolic_langchain import HyperbolicToolkit, HyperbolicAgentkitWrapper

hyperbolic = HyperbolicAgentkitWrapper()
toolkit = HyperbolicToolkit.from_hyperbolic_agentkit_wrapper(hyperbolic)
tools = toolkit.get_tools()

print(f"Loaded {len(tools)} Hyperbolic tools:")
for tool in tools:
    print(f"  - {tool.name}")

Troubleshooting

Clean Poetry cache and reinstall:
poetry env remove python3.12
poetry env use python3.12
poetry install --no-cache
Reinstall Playwright with system dependencies:
poetry run playwright install --force
poetry run playwright install-deps
For browser automation:
  1. Ensure Google Chrome is installed
  2. Remove all pinned tabs from default profile
  3. Disable profile selector on startup
  4. Set Chrome as default browser
Verify SSH key configuration:
# Test key exists
ls -la ~/.ssh/id_rsa

# Check key type (should be RSA)
head -1 ~/.ssh/id_rsa
# Should show: -----BEGIN RSA PRIVATE KEY-----

# Ensure public key is in Hyperbolic settings
cat ~/.ssh/id_rsa.pub
If you hit rate limits:
  • Twitter: Client has wait_on_rate_limit=True built-in
  • Anthropic: Use ANTHROPIC_MAX_RETRIES env var
  • Hyperbolic: Contact support for limit increases

Next Steps

Build Your First Agent

Follow the quickstart guide

Explore Tools

Learn about available tools and capabilities

Customize Behavior

Configure agent personality and style

Agent Types

Explore different agent interfaces

Build docs developers (and LLMs) love