axelrod

AI-powered Base-chain trading and on-chain query agent via natural language. Use when the user wants to trade crypto (buy/sell/swap tokens), set up automated strategies (DCA, limit orders, RSI), check portfolio balances, view token prices, query token info/analysis, check order status, manage take-profit/stop-loss orders, or ask about crypto/DeFi topics on Base chain. Always run scripts/axelrod_chat.py to fetch real-time results.

3,891 stars

Best use case

axelrod is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

AI-powered Base-chain trading and on-chain query agent via natural language. Use when the user wants to trade crypto (buy/sell/swap tokens), set up automated strategies (DCA, limit orders, RSI), check portfolio balances, view token prices, query token info/analysis, check order status, manage take-profit/stop-loss orders, or ask about crypto/DeFi topics on Base chain. Always run scripts/axelrod_chat.py to fetch real-time results.

Teams using axelrod should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/axelrod/SKILL.md --create-dirs "https://raw.githubusercontent.com/openclaw/skills/main/skills/aixvcteam/axelrod/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/axelrod/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How axelrod Compares

Feature / AgentaxelrodStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

AI-powered Base-chain trading and on-chain query agent via natural language. Use when the user wants to trade crypto (buy/sell/swap tokens), set up automated strategies (DCA, limit orders, RSI), check portfolio balances, view token prices, query token info/analysis, check order status, manage take-profit/stop-loss orders, or ask about crypto/DeFi topics on Base chain. Always run scripts/axelrod_chat.py to fetch real-time results.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Axelrod

Execute Base-chain trading and on-chain queries using natural language through the AIxVC AI Automation.

## Quick Start

### First-Time Setup

1. **Configure credentials** in OpenClaw config under `skills.entries.axelrod.env`:

```json
{
  "skills": {
    "entries": {
      "axelrod": {
        "enabled": true,
        "env": {
          "AIXVC_ACCESS_KEY": "your_access_key",
          "AIXVC_SECRET_KEY": "your_secret_key"
        }
      }
    }
  }
}
```

2. **Install dependencies**:

```bash
pip install -r skills/axelrod/requirements.txt
```

3. **Verify setup**:

```bash
python skills/axelrod/scripts/axelrod_chat.py --message "check my balance"
```

## Core Usage

### Simple Query

For straightforward requests that complete quickly:

```bash
python skills/axelrod/scripts/axelrod_chat.py --message "check my ETH balance"
python skills/axelrod/scripts/axelrod_chat.py --message "what is ETH price now"
```

### JSON Debug Mode

For inspecting the full API response:

```bash
python skills/axelrod/scripts/axelrod_chat.py --message "check my balance" --json
```

## Mandatory Workflow

1. **Check AK/SK** — If `AIXVC_ACCESS_KEY` or `AIXVC_SECRET_KEY` is missing, ask the user to configure them. Do not guess or fabricate credentials.
2. **Run the script** — Whenever the request needs real-time on-chain data or execution, always run the CLI. Do not answer from model memory alone.
3. **Return stdout** — Capture the script's stdout and return it to the user. Light formatting is fine, but do not omit key results (amounts, tx hashes, confirm keys, error messages).
4. **Handle confirmation** — If the response includes `confirmKey`, guide the user to confirm or cancel (see Confirmation Flow below).

## Capabilities Overview

### Trading Operations

- **Spot Buy/Sell/Swap**: Exchange tokens on Base chain
- **DCA**: Dollar-cost averaging automation (e.g. "DCA 20u into ETH every day")
- **Limit/Trigger Orders**: Execute at target prices or PnL rates
- **RSI Strategy**: Conditional trading based on RSI indicators (e.g. "if 1h RSI < 30, buy 100u BTC")
- **Take-Profit / Stop-Loss**: Automated risk management via `QUERY_ALGO`

**Reference**: [references/api.md](references/api.md)

### Query Operations

- **Balance Query**: Single token or all-asset portfolio
- **Token Info & Analysis**: Contract details, decimals, analytics
- **Price Query**: Real-time prices with 24h change
- **Order Query**: Active order list and details
- **TP/SL Order Query**: Take-profit/stop-loss order status

### Blockchain Assistant

- Crypto/DeFi domain Q&A and execution guidance
- Trading plan suggestions on Base chain

## Confirmation Flow

Orders usually require risk-control confirmation; small orders (approximately ≤ $10) may skip confirmation. `confirmKey` is valid for about **10 minutes**.

When the response includes `confirmKey`, ask the user to send one of:

```text
yes, please execute <confirmKey>
no, please cancel <confirmKey>
```

If the key has expired, the user must submit the original request again.

## Current Limitations

| Limitation | Details |
| ---------- | ------- |
| Chain | Base only |
| Multiple trades | One trade per message; ask user to split if needed |
| Not supported | Leverage/futures/options, lending, cross-chain, NFT, fiat on/off-ramp |

## Common Patterns

### Check Before Trading

```bash
# Check balance
python skills/axelrod/scripts/axelrod_chat.py --message "check my ETH balance"

# Check price
python skills/axelrod/scripts/axelrod_chat.py --message "what is ETH price now"

# Then trade
python skills/axelrod/scripts/axelrod_chat.py --message "buy 50u of ETH"
```

### Automated Strategies

```bash
# DCA strategy
python skills/axelrod/scripts/axelrod_chat.py --message "DCA 20u into ETH every day"

# RSI conditional strategy
python skills/axelrod/scripts/axelrod_chat.py --message "if 1h RSI < 30, buy 100u BTC"

# Limit order
python skills/axelrod/scripts/axelrod_chat.py --message "buy ETH when price drops to 2500"
```

### Portfolio Review

```bash
# Full portfolio
python skills/axelrod/scripts/axelrod_chat.py --message "check my balance"

# Token analysis
python skills/axelrod/scripts/axelrod_chat.py --message "analyze AXR token for me"

# Order status
python skills/axelrod/scripts/axelrod_chat.py --message "show my recent orders"
```

## Error Handling

### Exit Codes

| Code | Meaning | Resolution |
| ---- | ------- | ---------- |
| `0` | Success | — |
| `2` | Missing AK/SK | Ask user to configure `AIXVC_ACCESS_KEY` and `AIXVC_SECRET_KEY` |
| `3` | HTTP failure or invalid/non-JSON response | Check network, verify endpoint is reachable |
| `4` | API business error (`code` not in success set) | Read the error message, guide user to fix |

### Common Issues

| Issue | Resolution |
| ----- | ---------- |
| "Please login first" | AK/SK is incorrect — reconfigure credentials |
| Authentication error | Verify AK/SK are correct and not expired |
| Insufficient balance | Reduce trade amount or add funds |
| Token not found | Check token symbol or contract address |
| confirmKey expired | Re-submit the original trade request |
| Multiple trades in one message | Split into separate requests |

## Prompt Examples by Category

### Trading

- `"buy 50u of AXR"`
- `"sell 50% of my ETH"`
- `"swap 10 SOL to ETH"`

### Automated Strategies

- `"DCA 20u into ETH every day"`
- `"if 1h RSI < 30, buy 100u BTC"`
- `"buy ETH when price drops to 2500"`

### Portfolio & Queries

- `"check my balance"`
- `"show AXR token info"`
- `"what is ETH price now"`
- `"show my recent orders"`
- `"show my TP/SL orders"`

### Blockchain Assistant

- `"analyze AXR token for me"`
- `"help me make a Base trading plan"`

## Best Practices

### Security

1. Never share your AK/SK credentials
2. Start with small test amounts
3. Verify token addresses before large trades
4. Review confirmation details carefully before executing

### Trading

1. Check balance before trades
2. Specify amounts clearly (`50u`, `50%`, `0.1 ETH`)
3. Start small, scale up after validation
4. Use limit orders for better entry prices
5. Set TP/SL for risk management

## API Reference

For the full API contract, SigV4 signing protocol, request/response format, and response field details, see:

**Reference**: [references/api.md](references/api.md)

## Implementation Notes

- The script uses AK/SK with SigV4-style signing to call the AIxVC.
- Current endpoint: `https://api.aixvc.io/gw/openapi/v2/public/twa/agent/chat` (`chain-id=base`).
- If documentation conflicts with code behavior, follow the script implementation.

## File Structure

- **SKILL.md** — Agent instructions (this file). The agent reads this to understand how to use the skill.
- **README.md** — Human-facing setup and usage guide.
- **scripts/axelrod_chat.py** — CLI client. Always invoke with `python skills/axelrod/scripts/axelrod_chat.py --message "<instruction>"`.
- **references/api.md** — Full API contract and signing reference.
- **requirements.txt** — Python dependencies (`requests`).

## Troubleshooting

### Script Not Working

```bash
# Ensure Python 3 is available
python --version

# Install dependencies
pip install -r skills/axelrod/requirements.txt

# Test connectivity
curl -I https://api.aixvc.io
```

### API Errors

See exit codes and common issues tables above. If an error persists:

1. Check the error message from stderr
2. Use `--json` mode to inspect the full API response
3. Verify AK/SK configuration
4. Test with a simple query first (`"check my balance"`)

---

**💡 Pro Tip**: The most common issue is missing or incorrect AK/SK. Always verify credentials first when encountering errors.

**⚠️ Security**: Keep your AK/SK private. Never commit credentials to version control. Only trade amounts you can afford to lose.

**🚀 Quick Win**: Start by checking your balance to verify setup, then try a small trade like `"buy 1u of ETH"` to get familiar with the flow.

Related Skills

---

3891
from openclaw/skills

name: article-factory-wechat

Content & Documentation

humanizer

3891
from openclaw/skills

Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.

Content & Documentation

find-skills

3891
from openclaw/skills

Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.

General Utilities

tavily-search

3891
from openclaw/skills

Use Tavily API for real-time web search and content extraction. Use when: user needs real-time web search results, research, or current information from the web. Requires Tavily API key.

Data & Research

baidu-search

3891
from openclaw/skills

Search the web using Baidu AI Search Engine (BDSE). Use for live information, documentation, or research topics.

Data & Research

agent-autonomy-kit

3891
from openclaw/skills

Stop waiting for prompts. Keep working.

Workflow & Productivity

Meeting Prep

3891
from openclaw/skills

Never walk into a meeting unprepared again. Your agent researches all attendees before calendar events—pulling LinkedIn profiles, recent company news, mutual connections, and conversation starters. Generates a briefing doc with talking points, icebreakers, and context so you show up informed and confident. Triggered automatically before meetings or on-demand. Configure research depth, advance timing, and output format. Walking into meetings blind is amateur hour—missed connections, generic small talk, zero leverage. Use when setting up meeting intelligence, researching specific attendees, generating pre-meeting briefs, or automating your prep workflow.

Workflow & Productivity

self-improvement

3891
from openclaw/skills

Captures learnings, errors, and corrections to enable continuous improvement. Use when: (1) A command or operation fails unexpectedly, (2) User corrects Claude ('No, that's wrong...', 'Actually...'), (3) User requests a capability that doesn't exist, (4) An external API or tool fails, (5) Claude realizes its knowledge is outdated or incorrect, (6) A better approach is discovered for a recurring task. Also review learnings before major tasks.

Agent Intelligence & Learning

botlearn-healthcheck

3891
from openclaw/skills

botlearn-healthcheck — BotLearn autonomous health inspector for OpenClaw instances across 5 domains (hardware, config, security, skills, autonomy); triggers on system check, health report, diagnostics, or scheduled heartbeat inspection.

DevOps & Infrastructure

linkedin-cli

3891
from openclaw/skills

A bird-like LinkedIn CLI for searching profiles, checking messages, and summarizing your feed using session cookies.

Content & Documentation

notebooklm

3891
from openclaw/skills

Google NotebookLM 非官方 Python API 的 OpenClaw Skill。支持内容生成(播客、视频、幻灯片、测验、思维导图等)、文档管理和研究自动化。当用户需要使用 NotebookLM 生成音频概述、视频、学习材料或管理知识库时触发。

Data & Research

小红书长图文发布 Skill

3891
from openclaw/skills

## 概述

Content & Documentation