Reference
CLI Reference
Complete reference for every Conductor CLI command, flag, and environment variable.
Global Flags
These flags work with every command.
| Flag | Description |
|---|---|
--help, -h | Show help for any command |
--version, -v | Print the installed Conductor version |
--config-dir <path> | Override the default ~/.conductor config directory |
--quiet, -q | Suppress non-error output (useful for scripting) |
--log-level <level> | Set log verbosity: error | warn | info | debug |
conductor init
First-run wizard. Creates ~/.conductor/config.json and ~/.conductor/conductor.db, prompts for AI provider credentials, lets you select plugins, and optionally auto-configures Claude Desktop or Cursor.
| Command | Description |
|---|---|
conductor init | Run the interactive setup wizard |
conductor init --yes | Accept all defaults, skip prompts |
conductor init --provider anthropic | Pre-select AI provider and skip that prompt |
# What conductor init does:
# 1. Checks for Node.js 18+ and npm
# 2. Creates ~/.conductor/ directory structure
# 3. Prompts: instance name, AI provider, API key
# 4. Interactive plugin picker (space to select, enter to confirm)
# 5. Optional: auto-write AI client config (Claude Desktop, Cursor)
# 6. Generates ~/.conductor/.key (machine-bound AES-256-GCM key)conductor mcp
Start and manage the MCP server. The server exposes all enabled plugin tools to any MCP-compatible AI client. stdio transport is used by AI clients; HTTP/SSE transport is used for the dashboard.
| Command | Description |
|---|---|
conductor mcp start | Start MCP server on stdio transport (default) |
conductor mcp start --transport http | Start on HTTP/SSE transport (for dashboard) |
conductor mcp start --port 3000 | Set the HTTP port (default: 3000) |
conductor mcp start --plugins calculator,weather | Load only a subset of plugins |
conductor mcp start --log-level debug | Enable verbose logging to stderr |
conductor mcp setup | Auto-configure Claude Desktop and Cursor config files |
conductor mcp setup --client cursor | Configure a specific client only |
conductor mcp status | Show server status, tool count, and active plugins |
# conductor mcp setup writes to:
# macOS Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows Claude Desktop: %APPDATA%\Claude\claude_desktop_config.json
# Cursor (global): ~/.cursor/mcp.json
# Cursor (project): .cursor/mcp.json (if run from a project directory)conductor plugins
Manage the plugin registry. Enable, disable, configure, and install plugins. Changes take effect immediately without restarting the server.
| Command | Description |
|---|---|
conductor plugins list | List all plugins with status, tool count, and config state |
conductor plugins list --json | Output plugin list as JSON |
conductor plugins enable <name> | Enable a plugin |
conductor plugins enable github slack linear | Enable multiple plugins at once |
conductor plugins disable <name> | Disable a plugin immediately |
conductor plugins setup <name> | Interactive credential setup using the plugin's configSchema |
conductor plugins setup <name> --key <k> --value <v> | Set a single config value non-interactively |
conductor plugins install <name> | Install a plugin from the marketplace (npm) |
conductor plugins install <name>@1.2.3 | Install a specific version |
conductor plugins uninstall <name> | Remove a marketplace plugin |
conductor plugins onboard | Launch the interactive TUI plugin picker |
conductor plugins info <name> | Show plugin details, tools, and config schema |
# conductor plugins list output example:
# NAME STATUS TOOLS ZERO-CONFIG
# calculator ready 3 ✓
# weather ready 3 ✓
# github ready 20 partial
# slack not_configured 0 ✗
# linear disabled — ✗conductor config
Read and write Conductor configuration. Non-secret values are stored in ~/.conductor/config.json. Secret values (API keys) are stored in the encrypted local credential store (AES-256-GCM) and never appear in config.json.
| Command | Description |
|---|---|
conductor config get <key> | Print a config value |
conductor config set <key> <value> | Set a non-secret config value |
conductor config list | Print all config values (secrets redacted) |
conductor config setup <plugin> | Run guided setup for a specific plugin |
conductor config reset | Reset config to defaults (preserves secrets in credential store) |
conductor config export | Export non-secret config to stdout as JSON |
conductor ai
Configure and test AI provider connections. Conductor supports Anthropic Claude, OpenAI, Google Gemini, and Ollama.
| Command | Description |
|---|---|
conductor ai setup | Interactive AI provider configuration wizard |
conductor ai test | Send a test prompt to verify the current provider is working |
conductor ai list | List configured providers and current default |
conductor ai use <provider> | Switch the active AI provider |
# Supported providers:
# anthropic Claude 3.5 Sonnet, Claude 3 Opus, Haiku
# openai GPT-4o, GPT-4 Turbo, GPT-3.5 Turbo
# gemini Gemini 1.5 Pro, Gemini Flash
# ollama Any local Ollama model (llama3, mistral, codestral, etc.)conductor audit
Interact with the append-only SHA-256 chained audit log at ~/.conductor/audit.log. Every tool call, input, and output is recorded with a chain of hashes to detect tampering.
| Command | Description |
|---|---|
conductor audit tail | Stream the live audit log in real time |
conductor audit tail --plugin github | Filter stream by plugin name |
conductor audit verify | Verify SHA-256 chain integrity (detect tampering) |
conductor audit export | Export full audit log to stdout as JSONL |
conductor audit export --format json | Export as a JSON array |
conductor audit export --since 24h | Export entries from the last 24 hours |
conductor audit stats | Show call counts, top tools, and error rates |
# Audit log entry structure (JSONL):
{
"seq": 1042,
"timestamp": "2026-04-04T10:23:45.123Z",
"tool": "github_issues",
"plugin": "github",
"input": { "owner": "myorg", "repo": "api", "state": "open" },
"output": { "count": 14 },
"latency_ms": 312,
"hash": "sha256:a3f4...",
"prev_hash": "sha256:9b2c..."
}conductor webhooks
Manage outgoing webhooks. Conductor pushes signed events to your endpoints when tools are called, plugins change state, or the circuit breaker opens.
| Command | Description |
|---|---|
conductor webhooks list | List all registered webhooks |
conductor webhooks add --url <url> | Register a new webhook endpoint |
conductor webhooks add --url <url> --events tool.called,tool.failed | Subscribe to specific events only |
conductor webhooks add --url <url> --secret <s> | Add HMAC signing secret for verification |
conductor webhooks remove <id> | Remove a webhook by ID |
conductor webhooks test <id> | Send a test payload to a webhook endpoint |
conductor doctor
Diagnose your Conductor installation. Checks Node.js version, config file validity, plugin states, AI provider connectivity, database integrity, and credential store access.
| Command | Description |
|---|---|
conductor doctor | Run all health checks and print a report |
conductor doctor --fix | Attempt to auto-fix common issues (reinstall deps, reset DB) |
conductor doctor --json | Output results as JSON for scripting |
# conductor doctor checks:
# ✓ Node.js 18+ installed
# ✓ ~/.conductor/config.json valid
# ✓ ~/.conductor/conductor.db accessible
# ✓ Encrypted credential store accessible
# ✓ All enabled plugins: ready
# ✓ AI provider: connected (claude-3-5-sonnet-20241022)
# ✓ Audit log: 1042 entries, chain intact
# ⚠ slack: not_configured — run: conductor plugins setup slackconductor dashboard
Start the web dashboard. The dashboard provides a real-time view of tool calls, plugin health, audit logs, and metrics. Runs on HTTP transport.
| Command | Description |
|---|---|
conductor dashboard start | Start dashboard on http://localhost:4040 |
conductor dashboard start --port 8080 | Use a custom port |
conductor dashboard open | Open the dashboard in your default browser |
conductor plugin-create
Scaffold a new plugin with the correct directory structure, package.json, TypeScript config, and entry point. Generates a working plugin you can publish to the marketplace.
| Command | Description |
|---|---|
conductor plugin-create <name> | Scaffold a new plugin in the current directory |
conductor plugin-create <name> --typescript | Use TypeScript template (default: JS) |
conductor plugin-create <name> --publish | Include npm publish scripts |
# Generated structure:
# my-plugin/
# package.json (name: @conductor-plugins/my-plugin)
# src/index.ts (Plugin class with configSchema and getTools())
# tsconfig.json
# README.md
# tests/index.test.tsEnvironment Variables
Environment variables override config file values. Useful for CI/CD, Docker, and team deployments where you want to configure Conductor without running the wizard.
| Variable | Description |
|---|---|
CONDUCTOR_CONFIG_DIR | Override config directory (default: ~/.conductor) |
CONDUCTOR_LOG_LEVEL | Log verbosity: error | warn | info | debug |
CONDUCTOR_TRANSPORT | MCP transport: stdio | http |
CONDUCTOR_PORT | HTTP transport port (default: 3000) |
CONDUCTOR_PLUGINS | Comma-separated list of plugins to activate |
CONDUCTOR_NO_KEYCHAIN | Disable OS keychain, use encrypted file fallback |
CONDUCTOR_DISABLE_AUDIT | Disable audit logging (not recommended for production) |
NO_COLOR | Disable ANSI color output (standard env var) |
# Start HTTP server on port 8080 with only github and linear plugins
CONDUCTOR_TRANSPORT=http \
CONDUCTOR_PORT=8080 \
CONDUCTOR_PLUGINS=github,linear \
conductor mcp startExit Codes
| Code | Meaning |
|---|---|
0 | Success |
1 | General error (invalid args, config issue) |
2 | Plugin init failure |
3 | AI provider connection failure |
4 | Database error |
127 | Command not found (conductor not installed) |