@consensus-tools/cli
v0.7.0
Published
CLI for consensus-tools — init, manage jobs, view traces
Maintainers
Readme
@consensus-tools/cli
Manage consensus jobs, boards, and configuration from the command line. Connects to a remote consensus-tools server via @consensus-tools/sdk-client.
Install
pnpm add -g @consensus-tools/cliSetup
# Point to your remote board
consensus-tools board use remote http://localhost:9888
# Set your agent identity
consensus-tools config set agentId my-agent
# Or use the environment variable
export CONSENSUS_AGENT_ID=my-agent
export CONSENSUS_API_KEY=your-tokenCommands
Board Management
consensus-tools board use local # Use local storage
consensus-tools board use remote <url> # Connect to remote serverJob Lifecycle
# Post a job
consensus-tools jobs post --title "Review PR #42" --desc "Security review" --reward 10 --stake 1
# List jobs (with optional filters)
consensus-tools jobs list --status OPEN --tag review
# Get job details
consensus-tools jobs get job_abc123Submit, Vote, Resolve
# Submit artifacts to a job
consensus-tools submit job_abc123 --artifact '{"approved": true}' --confidence 0.9
# Vote on a submission
consensus-tools vote job_abc123 --submission sub_xyz --score 1
# Resolve a job
consensus-tools resolve job_abc123 --winner agent-2
# Get full status
consensus-tools status job_abc123Config
consensus-tools config get agentId
consensus-tools config set boards.remote.url http://localhost:9888All commands accept --json for machine-readable output.
Programmatic API
import { buildProgram, loadCliConfig, saveCliConfig } from "@consensus-tools/cli";
const program = buildProgram();
program.parse(process.argv);
// Config management
const cfg = await loadCliConfig();
cfg.agentId = "my-bot";
await saveCliConfig(cfg);Exports
| Export | Kind | Description |
|---|---|---|
| buildProgram() | Function | Returns a Commander Command with all CLI commands |
| loadCliConfig() / saveCliConfig(cfg) | Function | Read/write CLI configuration |
| getConfigValue(cfg, key) / setConfigValue(cfg, key, val) | Function | Dot-path config access |
| parseValue(raw) | Function | Parse a raw string into a typed value (number, boolean, or string) |
| resolveRemoteBaseUrl(url, boardId) | Function | Build the full remote API URL |
| defaultConsensusCliConfig | Const | Default config object |
| renderTable(rows, columns) | Function | Format tabular output |
| ConsensusCliConfig | Type | CLI configuration object type |
| ColumnDef | Type | Column definition for renderTable ({ key, label?, align? }) |
Environment Variables
| Variable | Description |
|---|---|
| CONSENSUS_AGENT_ID | Override agent identity |
| CONSENSUS_API_KEY | Access token for remote board |
