Package Exports
- solana-traderclaw
Readme
solana-traderclaw (V1-Upgraded)
Public edition of the upgraded TraderClaw V1 plugin for autonomous Solana memecoin trading. Identical to the team edition with one difference: X/Twitter tools are read-only (social intel only, no posting). 94 Solana tools + 3 X/Twitter read tools = 97 total. Full trading lifecycle. Connects OpenClaw to a trading orchestrator that handles market data, risk enforcement, and trade execution. Includes a full memory layer with local persistence, episodic logging, deterministic compute tools, intelligence lab, standardized tool envelopes, prompt scrubbing, and OpenClaw-native memory integration.
Architecture
OpenClaw Agent (brain: reasoning, decisions, strategy evolution)
│
│ calls 97 typed tools (94 trading + 3 X read-only)
▼
Plugin (this package)
├── HTTP ──→ Orchestrator (data + risk + execution)
│ │ │
│ Bitquery SpyFly Bot
│ (market data) (on-chain execution)
│
├── Local persistence (state, decisions, bulletin, patterns)
│ └── .traderclaw-v1-data/
│
└── OpenClaw native memory (auto-loaded every session)
├── MEMORY.md (durable facts — always in context)
└── memory/YYYY-MM-DD.md (daily logs — today + yesterday)The plugin gives OpenClaw tools to interact with the Solana trading orchestrator. The orchestrator gathers market data, enforces risk rules, and proxies trades. OpenClaw does all reasoning, decision-making, and strategy evolution. The plugin also manages a 3-layer memory system that eliminates amnesia between sessions.
Prerequisites
- OpenClaw v2026.1+ with Node >= 22
- An API key from traderclaw.ai/register
Quick Start
1. Install the plugin
npm install -g solana-traderclawOr install directly into OpenClaw:
openclaw plugins install solana-traderclawInstall name and config id are intentionally different:
- npm package / install command:
solana-traderclaw - OpenClaw plugin id in
openclaw.json:solana-trader - OpenClaw allowlist entry:
plugins.allow: ["solana-trader"]
2. Run setup
traderclaw setupThe setup wizard will:
- Ask for your API key (from traderclaw.ai/register)
- Connect to the orchestrator and validate your key
- Create or select a trading wallet
- Write the plugin configuration automatically
That's it. Restart the gateway and start trading:
openclaw gateway restartOptional: Simple localhost installer wizard (Linux-first)
traderclaw install --wizardThis opens a localhost UI that runs prechecks, lane-aware setup, gateway validation, optional Telegram setup, and final verification.
Optional: Run CLI prechecks directly
traderclaw precheck --dry-run --output linux-qa-dryrun.log
traderclaw precheck --allow-install --output linux-qa-install.logUse --dry-run for non-mutating validation and --allow-install for guided dependency installs.
3. Run the mandatory startup sequence
Send this prompt to your bot after startup:
Run mandatory startup sequence and report pass/fail for each:
1) solana_system_status
2) solana_gateway_credentials_get (set if missing)
3) solana_alpha_subscribe(agentId: "main")
4) solana_capital_status
5) solana_positions
6) solana_killswitch_statusNon-interactive setup
traderclaw setup --api-key sk_live_abc123 --url https://api.traderclaw.aiCLI Commands
traderclaw setup
Interactive setup wizard. Validates API key, connects to orchestrator, sets up wallet, writes config.
Options:
--api-key, -k— API key (skip prompt)--url, -u— Orchestrator URL (skip prompt, default:https://api.traderclaw.ai)
traderclaw status
Check connection health and wallet status at a glance:
OpenClaw Solana Trader - Status
=============================================
Orchestrator: CONNECTED
Execution mode: live
Upstream: configured
System status: OK
WS connections: 1
Wallet: ACTIVE
Wallet ID: 1
Balance: 5.0 SOL
Open positions: 3
Unrealized PnL: 0.062 SOL
Kill switch: disabled
Strategy version: v1.2.3
Mode: HARDENED
=============================================traderclaw config
View and manage configuration:
traderclaw config show # View current config (API key masked)
traderclaw config set <key> <v> # Update a value
traderclaw config reset # Remove all plugin configAvailable config keys: orchestratorUrl, walletId, apiKey, apiTimeout, refreshToken, recoverySecret, walletPublicKey, walletPrivateKey, gatewayBaseUrl, gatewayToken, agentId
traderclaw --help
Print all available commands and options.
traderclaw --version
Print plugin version.
Advanced: Manual Configuration
If you prefer to configure manually instead of using the CLI, add to ~/.openclaw/openclaw.json:
{
plugins: {
allow: ["solana-trader"],
entries: {
"solana-trader": {
enabled: true,
config: {
orchestratorUrl: "https://api.traderclaw.ai",
walletId: 1,
apiKey: "sk_live_your_key_here",
apiTimeout: 30000, // optional, default 30s
dataDir: "/path/to/data" // optional, default: <cwd>/.traderclaw-v1-data
}
}
}
}
}Restart the gateway after configuration:
openclaw gateway restartMemory & Context System
The plugin implements a 3-layer memory architecture that uses OpenClaw's native infrastructure plus custom tools to eliminate amnesia between sessions.
Layer 1: Durable Facts (MEMORY.md)
OpenClaw automatically loads MEMORY.md into agent context at every session start — zero tool calls needed. When solana_state_save is called, it writes both a JSON state file AND updates MEMORY.md with curated durable facts: tier, wallet, mode, strategy version, watchlist, permanent learnings, and regime canary.
Layer 2: Episodic Memory (Daily Logs + Bootstrap Injection)
Two auto-loaded sources:
- Daily logs (
memory/YYYY-MM-DD.md) — OpenClaw auto-loads today + yesterday's files. Written viasolana_daily_log. - Bootstrap injection — The
agent:bootstraphook auto-injects durable state, last 50 decisions, team bulletin (last 6h), context snapshot, and entitlements into agent context at session start.
Layer 3: Deep Knowledge (Server-Side Memory)
Unlimited retention via the orchestrator API. solana_memory_write / solana_memory_search / solana_memory_by_token for storing and retrieving historical trades, lessons, and patterns.
Memory Flush Hook
The memory:flush hook fires automatically when OpenClaw is about to trim context. It syncs MEMORY.md from the last persisted state and writes a compaction marker to the daily log. This is an automatic safety net — no agent action needed.
Bootstrap Hook (agent:bootstrap)
Fires at every agent session start before the first prompt. Injects via context.bootstrapFiles:
| File Injected | Source | Content |
|---|---|---|
<agentId>-durable-state.json |
state/<agentId>.json |
Full durable state from last session |
<agentId>-decision-log.jsonl |
logs/<agentId>/decisions.jsonl |
Last 50 decision log entries |
team-bulletin.jsonl |
logs/shared/team-bulletin.jsonl |
Bulletin entries from last 6 hours |
context-snapshot.json |
state/context-snapshot.json |
Latest portfolio world-view snapshot |
active-entitlements.json |
4-step fallback chain | Entitlement tier, limits, expiration |
Entitlement fallback chain: live API fetch → cached file → durable state → conservative defaults (starter tier).
Local Data Directory
.traderclaw-v1-data/
├── state/ # Durable agent state, snapshot, entitlement cache, patterns
├── logs/
│ ├── <agentId>/ # Per-agent decision logs (JSONL)
│ └── shared/ # Team bulletin (JSONL)Plus OpenClaw-native paths at project root:
MEMORY.md # Curated durable facts (auto-loaded by OpenClaw)
memory/
├── 2026-03-19.md # Today's daily log (auto-loaded by OpenClaw)
├── 2026-03-18.md # Yesterday's daily log (auto-loaded by OpenClaw)
└── ... # Auto-pruned after 7 daysX/Twitter Setup (Read-Only Social Intel)
The public edition includes 3 read-only X/Twitter tools for social intelligence gathering (search tweets, read mentions, get threads). X posting is not included in the public edition.
Configure via Environment Variables
export X_CONSUMER_KEY="your-app-consumer-key"
export X_CONSUMER_SECRET="your-app-consumer-secret"
export X_ACCESS_TOKEN_MAIN="your-access-token"
export X_ACCESS_TOKEN_MAIN_SECRET="your-access-token-secret"Or Configure via Plugin Config
Add to ~/.openclaw/openclaw.json under the plugin entry:
{
"x": {
"consumerKey": "your-app-consumer-key",
"consumerSecret": "your-app-consumer-secret",
"profiles": {
"main": {
"accessToken": "your-access-token",
"accessTokenSecret": "your-access-token-secret"
}
}
}
}X API Tiers
| Tier | Cost | Capabilities |
|---|---|---|
| Pay-as-you-go | Per-credit | Read access (mentions, search, threads) |
| Basic | $200/month | Higher limits, more read access |
Pay-as-you-go or Basic tier is required for the read-only social intel tools.
Available Tools (97 — 94 trading + 3 X read-only)
Scanning
| Tool | Description |
|---|---|
solana_scan |
Broad market scan — launches + hot pairs combined |
solana_scan_launches |
Find new Solana token launches |
solana_scan_hot_pairs |
Find high-volume trading pairs |
solana_market_regime |
Get macro market state (bullish/bearish/neutral) |
Token Analysis
| Tool | Description |
|---|---|
solana_token_snapshot |
Price, volume, OHLC data |
solana_token_holders |
Holder concentration and distribution |
solana_token_flows |
Buy/sell pressure and flow data |
solana_token_liquidity |
Pool depth and liquidity profile |
solana_token_risk |
Composite risk assessment |
Intelligence
| Tool | Description |
|---|---|
solana_build_thesis |
Full context package: market data + strategy weights + memory + risk pre-screen |
Trading
| Tool | Description |
|---|---|
solana_trade_precheck |
Pre-trade risk validation |
solana_trade_execute |
Execute trade via SpyFly bot (full params) |
solana_trade |
Execute trade (shorthand) |
Reflection & Server-Side Memory
| Tool | Description |
|---|---|
solana_trade_review |
Post-trade outcome review |
solana_memory_write |
Write journal entry to server |
solana_memory_search |
Search trading memories on server |
solana_memory_by_token |
Token-specific trade history from server |
solana_journal_summary |
Performance stats summary |
Strategy
| Tool | Description |
|---|---|
solana_strategy_state |
Read current strategy weights |
solana_strategy_update |
Update weights after learning |
Safety
| Tool | Description |
|---|---|
solana_killswitch |
Toggle emergency kill switch |
solana_killswitch_status |
Check kill switch state |
Wallet
| Tool | Description |
|---|---|
solana_capital_status |
Balance, positions, PnL, limits |
solana_positions |
Current positions with PnL |
solana_funding_instructions |
Deposit instructions |
solana_wallets |
List all wallets |
solana_wallet_create |
Create a new wallet |
solana_wallet_token_balance |
Get SPL token balance for a specific mint |
solana_sweep_dead_tokens |
Sell losing positions below loss threshold to cut losses and reclaim SOL |
Entitlements
| Tool | Description |
|---|---|
solana_entitlement_plans |
Available limit upgrades |
solana_entitlement_purchase |
Purchase upgrade plan |
solana_entitlement_current |
Current tier, limits, and expiration (also caches for bootstrap) |
solana_entitlement_upgrade |
Upgrade entitlement tier |
solana_entitlement_costs |
View upgrade cost breakdown |
Trade History & Risk
| Tool | Description |
|---|---|
solana_trades |
Query trade history with filters |
solana_risk_denials |
View recent risk denial log |
Alpha Signal Processing
| Tool | Description |
|---|---|
solana_alpha_subscribe |
Subscribe to alpha signal WebSocket feed |
solana_alpha_unsubscribe |
Unsubscribe from alpha feed |
solana_alpha_signals |
Retrieve buffered alpha signals |
solana_alpha_history |
Query historical alpha signals |
solana_alpha_sources |
Get source reputation statistics |
solana_alpha_submit |
Submit candidate to alpha buffer for next heartbeat evaluation |
Firehose
| Tool | Description |
|---|---|
solana_firehose_config |
Configure firehose filter parameters (volume, buyers, whale detection) |
solana_firehose_status |
Check firehose health, throughput, and connection state |
Bitquery Deep Scans
| Tool | Description |
|---|---|
solana_bitquery_query |
Execute custom Bitquery GraphQL query |
solana_bitquery_catalog |
List available Bitquery datasets |
solana_bitquery_templates |
Pre-built query templates |
solana_bitquery_subscribe |
Create Bitquery streaming subscription |
solana_bitquery_unsubscribe |
Remove streaming subscription |
solana_bitquery_subscriptions |
List active subscriptions |
solana_bitquery_subscription_reopen |
Reopen a closed subscription |
Gateway & System
| Tool | Description |
|---|---|
solana_system_status |
Orchestrator health check |
solana_gateway_credentials_get |
Get gateway API credentials |
solana_gateway_credentials_set |
Set gateway API credentials |
solana_gateway_credentials_delete |
Delete gateway credentials |
solana_gateway_forward_probe |
Probe gateway forwarding connectivity |
solana_agent_sessions |
View agent session diagnostics |
solana_startup_gate |
Run startup gate sequence |
solana_runtime_status |
Get runtime status diagnostics |
Local Durable State
| Tool | Description |
|---|---|
solana_state_save |
Save agent state to local JSON (also writes MEMORY.md) |
solana_state_read |
Read agent state from local JSON |
Episodic Decision Log
| Tool | Description |
|---|---|
solana_decision_log |
Log structured decision entry (FIFO capped at 50) |
Team Bulletin
| Tool | Description |
|---|---|
solana_team_bulletin_post |
Post discovery, alert, or status to shared bulletin |
solana_team_bulletin_read |
Read bulletin entries with time/type filters |
Context Snapshot
| Tool | Description |
|---|---|
solana_context_snapshot_write |
Write portfolio world-view snapshot |
solana_context_snapshot_read |
Read latest portfolio snapshot |
Deterministic Compute (Anti-Hallucination)
| Tool | Description |
|---|---|
solana_compute_confidence |
Weighted confidence score (on-chain, signal, social, smart money, risk penalty) |
solana_compute_freshness_decay |
Freshness decay factor by signal age |
solana_compute_position_limits |
Full position sizing ladder with reduction breakdown |
solana_compute_deployer_risk |
Deployer wallet risk classification (LOW/MEDIUM/HIGH) |
solana_classify_deployer_risk |
Backward-compatible alias for solana_compute_deployer_risk |
Intelligence Lab (New in V1-Upgraded)
| Tool | Description |
|---|---|
solana_candidate_write |
Write a trading candidate for evaluation |
solana_candidate_get |
Get a trading candidate by ID |
solana_candidate_label_outcome |
Label a candidate with actual outcome |
solana_candidate_delta |
Compute prediction delta for a candidate |
solana_source_trust_refresh |
Refresh trust scores for intelligence sources |
solana_source_trust_get |
Get current trust score for a source |
solana_model_score_candidate |
Score a candidate using the active model |
solana_model_registry |
List registered scoring models |
solana_model_promote |
Promote a challenger model to active |
solana_contradiction_check |
Check for contradictions in signal data |
solana_dataset_export |
Export labeled dataset for analysis |
solana_deployer_trust_get |
Get deployer trust profile |
solana_deployer_trust_refresh |
Refresh deployer trust from on-chain data |
solana_evaluation_report |
Generate intelligence evaluation report |
solana_replay_run |
Run a replay of historical decisions |
solana_replay_report |
Get results of a replay run |
solana_scrub_untrusted_text |
Scrub untrusted text for prompt injection |
Deep Analysis
| Tool | Description |
|---|---|
solana_history_export |
Export decision logs + optionally server-side data (trades, memory, strategy) |
solana_pattern_store |
Read/write/list named trading patterns |
OpenClaw Native Memory
| Tool | Description |
|---|---|
solana_daily_log |
Append to today's daily log (auto-loaded by OpenClaw next session, 7-day prune) |
X/Twitter (Read-Only Social Intel)
| Tool | Description |
|---|---|
x_search_tweets |
Search recent tweets by keyword/hashtag |
x_read_mentions |
Read recent @mentions (pay-as-you-go tier) |
x_get_thread |
Read a full conversation thread |
Hooks (2)
| Hook | Trigger | What It Does |
|---|---|---|
agent:bootstrap |
Every session start | Injects durable state, decisions, bulletin, snapshot, and entitlements into context |
memory:flush |
Before OpenClaw context compaction | Syncs MEMORY.md from persisted state, writes compaction marker to daily log |
Skills
solana-trader (Trading Skill v5)
The primary skill that teaches OpenClaw the complete trading lifecycle:
- SCAN — Find opportunities with launch/hot-pair scanners
- ANALYZE — Deep dive with 6 token analysis tools
- THESIS — Assemble full context with build_thesis
- DECIDE — Agent reasons over data using confidence scoring
- PRECHECK — Validate against risk rules
- EXECUTE — Place trade via SpyFly
- MONITOR — Watch positions and capital
- REVIEW — Journal outcomes honestly
- EVOLVE — Update strategy weights based on performance
Includes: token lifecycle framework, anti-rug heuristics, volume pattern reading, FOMO detection, liquidity-relative sizing, house money exits, dead money rule, narrative awareness, 3-layer memory architecture, deterministic compute tools.
social-intel (Alpha Feed & Social Intelligence)
Standalone skill for SpyFly alpha feed integration and social intelligence:
- SpyFly Alpha Feed — Query recent alpha calls, historical accuracy, price milestone pings
- Token Social Metadata — Resolve on-chain metadata to find Twitter/Telegram/Discord links
- Twitter Community Stats — Follower count, engagement, growth trajectory, MC-relative benchmarking
- Twitter Trending — Narrative/meta detection from viral crypto topics
This skill is designed to merge into the trading skill when both are ready.
Example Conversation
User: Start scanning for opportunities
Agent: Let me check the current market conditions and scan for new tokens.
[calls solana_market_regime]
Market is in a bullish regime with high DEX volume.
[calls solana_scan_launches]
Found 5 new launches in the last hour. POPCAT at 0x7a... looks interesting — high initial volume.
[calls solana_build_thesis with POPCAT address]
Thesis package shows:
- Strong buy pressure (68% buy ratio)
- Adequate liquidity ($180k)
- Holder concentration at 35% (acceptable)
- My strategy weights favor volume_momentum (0.28) — this token scores well there
- No prior trades on this token in my memory
- Risk pre-screen: approved, capped at 0.5 SOL
Based on the thesis data and my learned weights, I'll enter a small position.
[calls solana_trade_precheck]
Approved. Capped size: 0.5 SOL.
[calls solana_trade_execute]
Trade executed. TradeId: 15, PositionId: 4, TX: 5xK...
I'll monitor this position and review after exit.Troubleshooting
Plugin won't load:
- Run
traderclaw statusto check connectivity - Check
openclaw plugins listfor errors - Verify
openclaw.plugin.jsonexists in the plugin directory
"apiKey is required" error:
- Run
traderclaw setupto configure your API key - Or manually add
apiKeyto your config:traderclaw config set apiKey sk_live_...
"Could not reach orchestrator" warning:
- Run
traderclaw statusto diagnose - Check your internet connection
- Verify the orchestrator URL:
traderclaw config show
"Wallet not found" errors:
- Run
traderclaw setupto create or select a wallet - Verify the wallet ID:
traderclaw config show
Tools returning errors:
- Run
traderclaw statusto check system health - Check if kill switch is enabled
- Verify your wallet has sufficient SOL balance
Memory/state not persisting:
- Check that the
dataDirconfig points to a writable location - Default is
<cwd>/.traderclaw-v1-data— verify permissions - Check
MEMORY.mdexists at project root after firstsolana_state_savecall - Check
memory/directory for daily log files