Crunch Coordinate
/install crunch-coordinate
Crunch Protocol CLI Skill
Translates natural language queries into crunch-cli commands. Supports profiles and output formatting for Slack, Telegram, Discord, or plain text.
Prerequisites
- Node.js 18+ with
npm - Solana wallet keypair (for on-chain operations)
Package Installation
This skill installs packages via npm (global):
| Package | Source | Purpose |
|---|---|---|
@crunchdao/crunch-cli |
npm | CrunchDAO protocol CLI (coordinators, competitions, staking) |
Agent rules for package installation:
- Only install
@crunchdao/crunch-clifrom the official npm registry - No custom registry URLs — no
--registryoverrides - Ask the user before installing if not already present
Credentials
Solana Wallet Keypair (required for on-chain operations)
- What it is: A JSON file containing a Solana private key, used to sign transactions
- How it's configured: Set via
crunch-cli config set wallet /path/to/wallet.jsonor-wflag per command - Stored in: User-managed file on disk; path referenced in
~/.crunch/config.json
Agent rules for wallets:
- Never create or generate wallet keypairs unless the user explicitly asks and understands the security implications
- Never read or display the contents of wallet keypair files
- Never commit wallet files to git — always verify
.gitignorecovers them - Ask the user for the wallet path — never assume or search for keypair files
Profile Config (~/.crunch/config.json)
- Stores network, wallet path, and RPC URL per profile
- Managed via
crunch-cli configcommands — no need to edit manually - Never modify or delete existing profiles unless explicitly asked
Setup
npm install -g @crunchdao/crunch-cli
crunch-cli --version
Profiles
The CLI has built-in profile management via ~/.crunch/config.json:
crunch-cli config show # Show current config
crunch-cli config active # Show resolved active values
crunch-cli config list-profiles # List available profiles
crunch-cli config save-profile \x3Cname> # Save current config as profile
crunch-cli config use \x3Cprofile> # Switch profile
crunch-cli config set \x3Ckey> \x3Cvalue> # Set config value
Global flags can override config per-command:
| Flag | Description |
|---|---|
-n, --network |
Solana network: mainnet-beta, devnet, localhost |
-u, --url |
Custom RPC URL |
-w, --wallet |
Path to Solana keypair |
-o, --output |
Output format: json, table, yaml |
Direct Phrase Mapping
| User Phrase | CLI Command |
|---|---|
get/show crunch \x3Cname> |
crunch-cli crunch get "\x3Cname>" |
list crunches |
crunch-cli crunch list |
get/show coordinator [address] |
crunch-cli coordinator get [address] |
list coordinators |
crunch-cli coordinator list |
get config |
crunch-cli coordinator get-config |
checkpoint for \x3Cname> |
crunch-cli crunch checkpoint-get-current "\x3Cname>" |
create checkpoint \x3Cname> |
crunch-cli crunch checkpoint-create "\x3Cname>" prizes.json |
deposit reward \x3Cname> \x3Camount> |
crunch-cli crunch deposit-reward "\x3Cname>" \x3Camount> |
drain \x3Cname> |
crunch-cli crunch drain "\x3Cname>" |
create/register cruncher |
crunch-cli cruncher create |
register for \x3Cname> |
crunch-cli cruncher register "\x3Cname>" |
claim rewards \x3Cname> |
crunch-cli cruncher claim "\x3Cname>" |
show staking positions |
crunch-cli staking positions |
stake/deposit \x3Camount> |
crunch-cli staking deposit \x3Camount> |
delegate to \x3Ccoordinator> |
crunch-cli staking delegate "\x3Ccoordinator>" \x3Camount> |
show staking rewards |
crunch-cli staking rewards |
claim staking rewards |
crunch-cli staking claim |
undelegate from \x3Ccoordinator> |
crunch-cli staking undelegate "\x3Ccoordinator>" \x3Camount> |
withdraw stake \x3Camount> |
crunch-cli staking withdraw \x3Camount> |
init workspace \x3Cname> |
crunch-cli init-workspace "\x3Cname>" |
list scenarios/simulations |
crunch-cli model list |
run simulation \x3Cscenario> |
crunch-cli model run "\x3Cscenario>" |
register coordinator \x3Cname> |
crunch-cli coordinator register "\x3Cname>" |
create crunch \x3Cname> |
crunch-cli crunch create "\x3Cname>" \x3Camount> [maxModels] |
start/end crunch \x3Cname> |
crunch-cli crunch start/end "\x3Cname>" |
Execution Pattern
- Parse — Identify action, target, name/identifier, parameters
- Resolve profile — If mentioned, switch profile or use flags
- Map — Use phrase mapping table
- Execute — Run command
- Format — Output for requested medium (Slack/Telegram/Discord/plain)
Output Formatting
Detect medium from user request ("for slack", "telegram format", etc.):
- Slack:
*bold*,•bullets,━separators - Telegram:
\x3Cb>bold\x3C/b>, emoji prefixes - Discord:
## headers,**bold** - Plain: Simple key: value pairs
Error Handling
If command fails, suggest fixes:
- Wrong network? Add
-n mainnet-betaor-n devnet - Missing wallet? Add
-w /path/to/wallet.json - Not found? List available with
crunch-cli crunch list
Coordinator Node Setup
Scaffold a new competition workspace:
crunch-cli init-workspace my-challenge
This generates a full node workspace. See the coordinator-node-starter skill for customization.
Reference
For full CLI documentation: references/cli-reference.md
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install crunch-coordinate - After installation, invoke the skill by name or use
/crunch-coordinate - Provide required inputs per the skill's parameter spec and get structured output
What is Crunch Coordinate?
Use when managing Crunch coordinators, competitions (crunches), rewards, checkpoints, staking, or cruncher accounts via the crunch-cli. It is an AI Agent Skill for Claude Code / OpenClaw, with 737 downloads so far.
How do I install Crunch Coordinate?
Run "/install crunch-coordinate" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Crunch Coordinate free?
Yes, Crunch Coordinate is completely free (open-source). You can download, install and use it at no cost.
Which platforms does Crunch Coordinate support?
Crunch Coordinate is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Crunch Coordinate?
It is built and maintained by philippWassibauer (@philippwassibauer); the current version is v0.1.1.