@botpress/adk-cli
Version:
Command-line interface for the Botpress Agent Development Kit (ADK)
1,023 lines (1,022 loc) • 26.2 kB
JSON
{
"version": "1.18.3",
"generatedAt": "2026-05-06T18:44:32.691Z",
"cliName": "adk",
"globalOptions": [
{
"flags": "--no-cache",
"description": "Disable caching for integration lookups"
},
{
"flags": "--version, -V",
"description": "Show version number"
},
{
"flags": "--help, -h",
"description": "Show help for command"
}
],
"commands": [
{
"name": "add",
"fullName": "add",
"description": "Add an integration or interface to your agent",
"aliases": ["i", "install"],
"arguments": [],
"options": [
{
"flags": "--alias <alias>",
"description": "use a custom alias for the resource"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "ai-upgrade",
"fullName": "ai-upgrade",
"description": "Update ADK skills and slash commands from the botpress/skills repository",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "assets",
"fullName": "assets",
"description": "Manage agent assets and static files",
"aliases": [],
"arguments": [],
"options": []
},
{
"name": "list",
"fullName": "assets list",
"description": "List all asset files",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--local",
"description": "show only local assets"
},
{
"flags": "--remote",
"description": "show only remote assets"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "pull",
"fullName": "assets pull",
"description": "Download remote assets to local directory",
"aliases": [],
"arguments": [],
"options": []
},
{
"name": "status",
"fullName": "assets status",
"description": "Show asset synchronization status",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "sync",
"fullName": "assets sync",
"description": "Synchronize assets with remote storage",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--dry-run",
"description": "preview changes without applying them"
},
{
"flags": "-y, --yes",
"description": "skip confirmation prompts"
},
{
"flags": "--bail-on-failure",
"description": "stop on first error"
},
{
"flags": "--force",
"description": "force re-upload all files"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "build",
"fullName": "build",
"description": "Build the agent for production",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "chat",
"fullName": "chat",
"description": "Chat with your agent in development mode",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--single <message>",
"description": "send one message, print the response, and exit"
},
{
"flags": "--format <format>",
"description": "output format (json)"
},
{
"flags": "--conversation-id <id>",
"description": "continue a conversation (use --format json to get the ID)"
},
{
"flags": "--timeout <duration>",
"description": "max wait duration (500ms, 30s, 1m, 5m)",
"defaultValue": "60s"
}
]
},
{
"name": "check",
"fullName": "check",
"description": "Validate project structure, config, and primitives (without login required)",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "config",
"fullName": "config",
"description": "",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--prod",
"description": "use production configuration"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "config:get",
"fullName": "config:get",
"description": "Get a configuration value",
"aliases": [],
"arguments": [
{
"name": "key",
"description": "configuration key",
"required": true
}
],
"options": [
{
"flags": "--prod",
"description": "use production configuration"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "config:set",
"fullName": "config:set",
"description": "Set a configuration value",
"aliases": [],
"arguments": [
{
"name": "key",
"description": "configuration key",
"required": true
},
{
"name": "value",
"description": "configuration value",
"required": true
}
],
"options": [
{
"flags": "--prod",
"description": "use production configuration"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "deploy",
"fullName": "deploy",
"description": "Deploy the agent to Botpress",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "-e, --env <environment>",
"description": "deployment environment",
"defaultValue": "production"
},
{
"flags": "-y, --yes",
"description": "auto-approve preflight changes without prompting"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "dev",
"fullName": "dev",
"description": "Start development mode with hot reloading",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "-p, --port <port>",
"description": "port for development server",
"defaultValue": "3000"
},
{
"flags": "--port-console <port>",
"description": "port for console server",
"defaultValue": "3001"
},
{
"flags": "--otlp",
"description": "enable OTLP export to external collector (default port 4318)"
},
{
"flags": "--port-otlp <port>",
"description": "port for OTLP collector endpoint (Jaeger, otel-tui, etc.)"
},
{
"flags": "-v, --verbose",
"description": "show additional details (project path, log file)"
},
{
"flags": "--non-interactive",
"description": "emit structured NDJSON events to stdout without Ink/TUI"
}
]
},
{
"name": "evals",
"fullName": "evals",
"description": "Run and manage eval suites",
"aliases": [],
"arguments": [
{
"name": "name",
"description": "Run a specific eval by name",
"required": false
}
],
"options": [
{
"flags": "--tag <tag>",
"description": "Run only evals with this tag"
},
{
"flags": "--type <type>",
"description": "Run only evals of this type (capability|regression)"
},
{
"flags": "--judge-model <model>",
"description": "Model to use for llm_judge assertions (e.g. openai:gpt-4o)"
},
{
"flags": "--format <format>",
"description": "output format (json)"
},
{
"flags": "-v, --verbose",
"description": "Show full details for all evals, not just failures"
},
{
"flags": "--server <url>",
"description": "Dev server URL (auto-starts in lightweight mode if not running)",
"defaultValue": "http://localhost:3001"
}
]
},
{
"name": "runs",
"fullName": "evals runs",
"description": "List or show eval run history",
"aliases": [],
"arguments": [
{
"name": "runId",
"description": "Show a specific run by ID",
"required": false
}
],
"options": [
{
"flags": "--latest",
"description": "Show the latest run"
},
{
"flags": "--limit <n>",
"description": "Max runs to list",
"defaultValue": "10"
},
{
"flags": "-v, --verbose",
"description": "Show full details for all evals in a run"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "flags",
"fullName": "flags",
"description": "Show feature-flag values for the current profile",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "info",
"fullName": "info",
"description": "Show detailed information about an integration",
"aliases": [],
"arguments": [
{
"name": "name",
"description": "integration name",
"required": true
}
],
"options": [
{
"flags": "--actions",
"description": "show only actions"
},
{
"flags": "--channels",
"description": "show only channels"
},
{
"flags": "--events",
"description": "show only events"
},
{
"flags": "--full",
"description": "show all details"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "init",
"fullName": "init",
"description": "Initialize a new ADK agent project",
"aliases": [],
"arguments": [
{
"name": "name",
"description": "name of the agent project (required with --yes --format json)",
"required": false
}
],
"options": [
{
"flags": "-t, --template <template>",
"description": "template to use (default: blank, required with --yes --format json)"
},
{
"flags": "-y, --yes",
"description": "skip prompts and use sensible defaults"
},
{
"flags": "--defaults",
"description": "alias for --yes"
},
{
"flags": "--skip-link",
"description": "skip the interactive linking step (required with --yes --format json)"
},
{
"flags": "--list-templates",
"description": "list available templates and exit"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "kb",
"fullName": "kb",
"description": "Manage knowledge bases and synchronization",
"aliases": [],
"arguments": [],
"options": []
},
{
"name": "sync",
"fullName": "kb sync",
"description": "Synchronize knowledge bases with Botpress (requires --dev or --prod)",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--dev",
"description": "sync with development bot"
},
{
"flags": "--prod",
"description": "sync with production bot"
},
{
"flags": "--dry-run",
"description": "preview changes without applying them"
},
{
"flags": "-y, --yes",
"description": "skip confirmation prompts"
},
{
"flags": "--force",
"description": "force re-sync all knowledge bases"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "link",
"fullName": "link",
"description": "Link local agent to workspace and bot",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--workspace <workspaceId>",
"description": "workspace ID"
},
{
"flags": "--bot <botId>",
"description": "bot ID to link to"
},
{
"flags": "--dev <devBotId>",
"description": "dev bot ID (optional)"
},
{
"flags": "--api-url <apiUrl>",
"description": "Botpress API URL (e.g., https://api.botpress.cloud)"
},
{
"flags": "-f, --force",
"description": "overwrite existing agent.json if present"
},
{
"flags": "--local",
"description": "write to gitignored agent.local.json, which overrides agent.json without changing it (for multi-dev workflows)"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "list",
"fullName": "list",
"description": "List integrations (installed or available)",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--available",
"description": "list all available integrations"
},
{
"flags": "--format <format>",
"description": "output format (json)"
},
{
"flags": "--limit <number>",
"description": "limit number of results",
"defaultValue": "50"
}
]
},
{
"name": "list",
"fullName": "list",
"description": "List recent conversations",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "login",
"fullName": "login",
"description": "Authenticate with your Botpress account",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--token <token>",
"description": "Botpress API token"
},
{
"flags": "--profile <profile>",
"description": "profile name to save credentials under"
},
{
"flags": "--api-url <url>",
"description": "Botpress API URL",
"defaultValue": "https://api.botpress.cloud"
}
]
},
{
"name": "logs",
"fullName": "logs",
"description": "Query dev server logs from .adk/logs/",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "-f, --follow",
"description": "follow log output (tail -f style)"
},
{
"flags": "--summary",
"description": "emit a single JSON summary snapshot (requires --format json)"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "mcp",
"fullName": "mcp",
"description": "Start MCP server for AI assistant integration (Claude Code, Cursor, etc.)",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--cwd <path>",
"description": "working directory for MCP operations"
},
{
"flags": "--port <port>",
"description": "UI server port to connect to (default: 3001)"
}
]
},
{
"name": "mcp:init",
"fullName": "mcp:init",
"description": "Generate MCP configuration files for AI assistants",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--tool <tool...>",
"description": "specific tool(s) to configure (claude-code, vscode, cursor)"
},
{
"flags": "--all",
"description": "generate configuration for all supported tools"
},
{
"flags": "--force",
"description": "overwrite existing ADK configuration"
},
{
"flags": "--project-dir <path>",
"description": "ADK project subdirectory (for monorepos, e.g., ./bot)"
}
]
},
{
"name": "models",
"fullName": "models",
"description": "List available Cognitive models for the current bot",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "profiles",
"fullName": "profiles",
"description": "Manage authentication profiles",
"aliases": [],
"arguments": [],
"options": []
},
{
"name": "list",
"fullName": "profiles list",
"description": "List all configured profiles",
"aliases": [],
"arguments": [],
"options": []
},
{
"name": "set",
"fullName": "profiles set",
"description": "Switch to a different profile",
"aliases": [],
"arguments": [
{
"name": "profile",
"description": "profile name to switch to",
"required": false
}
],
"options": []
},
{
"name": "remove",
"fullName": "remove",
"description": "Remove an integration, interface, or plugin from your agent",
"aliases": ["rm"],
"arguments": [],
"options": []
},
{
"name": "run",
"fullName": "run",
"description": "Run a TypeScript script with the full ADK runtime (actions, Zai, tables, etc.)",
"aliases": [],
"arguments": [
{
"name": "script",
"description": "path to the TypeScript script to run",
"required": true
}
],
"options": [
{
"flags": "-f, --force",
"description": "force regeneration of the bot project"
},
{
"flags": "--prod",
"description": "use production bot (default: uses dev bot)"
}
]
},
{
"name": "search",
"fullName": "search",
"description": "Search for integrations in the Botpress hub",
"aliases": [],
"arguments": [
{
"name": "query",
"description": "search query",
"required": true
}
],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
},
{
"flags": "--limit <number>",
"description": "limit number of results",
"defaultValue": "20"
}
]
},
{
"name": "secret",
"fullName": "secret",
"description": "Show declared secrets and their status",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--prod",
"description": "use production bot"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "secret:delete",
"fullName": "secret:delete",
"description": "Delete a secret",
"aliases": [],
"arguments": [
{
"name": "key",
"description": "secret key",
"required": true
}
],
"options": [
{
"flags": "--prod",
"description": "use production bot"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "secret:set",
"fullName": "secret:set",
"description": "Set a secret value",
"aliases": [],
"arguments": [
{
"name": "key",
"description": "secret key (SCREAMING_SNAKE_CASE)",
"required": true
},
{
"name": "value",
"description": "secret value",
"required": true
}
],
"options": [
{
"flags": "--prod",
"description": "use production bot"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "self-upgrade",
"fullName": "self-upgrade",
"description": "Upgrade ADK CLI to the latest version (or a specific tag/version)",
"aliases": ["self-update"],
"arguments": [
{
"name": "tag-or-version",
"description": "Tag (beta, next) or version (1.13.0) to install",
"required": false
}
],
"options": []
},
{
"name": "show",
"fullName": "show",
"description": "Show conversation timeline and details",
"aliases": [],
"arguments": [
{
"name": "id",
"description": "conversation ID",
"required": true
}
],
"options": [
{
"flags": "--include-llm",
"description": "include LLM reasoning spans"
},
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "status",
"fullName": "status",
"description": "Show project status, integrations, and local server state",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "telemetry",
"fullName": "telemetry",
"description": "Manage telemetry preferences",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--status",
"description": "show telemetry status"
},
{
"flags": "--enable",
"description": "enable telemetry"
},
{
"flags": "--disable",
"description": "disable telemetry"
}
]
},
{
"name": "theme",
"fullName": "theme",
"description": "Manage CLI theme preferences",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--set <theme>",
"description": "set theme (dark or light)"
}
]
},
{
"name": "traces",
"fullName": "traces",
"description": "Query trace data from local SQLite store",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "-f, --follow",
"description": "follow new traces as they complete"
},
{
"flags": "--format <format>",
"description": "output format (json)"
},
{
"flags": "--include-llm",
"description": "include LLM instructions, code, and tools in drill-in mode"
}
]
},
{
"name": "upgrade",
"fullName": "upgrade",
"description": "Upgrade integration(s) to latest version",
"aliases": ["up"],
"arguments": [
{
"name": "integration",
"description": "integration alias to upgrade (interactive if not specified)",
"required": false
}
],
"options": []
},
{
"name": "workflows",
"fullName": "workflows",
"description": "List, inspect, and run workflows from the local dev server",
"aliases": [],
"arguments": [],
"options": []
},
{
"name": "inspect",
"fullName": "workflows inspect",
"description": "Inspect a workflow schema and metadata",
"aliases": [],
"arguments": [
{
"name": "name",
"description": "workflow name",
"required": true
}
],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "list",
"fullName": "workflows list",
"description": "List all discovered workflows",
"aliases": [],
"arguments": [],
"options": [
{
"flags": "--format <format>",
"description": "output format (json)"
}
]
},
{
"name": "run",
"fullName": "workflows run",
"description": "Run a workflow and optionally wait for completion",
"aliases": [],
"arguments": [
{
"name": "name",
"description": "workflow name",
"required": true
},
{
"name": "payload",
"description": "workflow payload as a JSON string",
"required": false
}
],
"options": [
{
"flags": "--wait",
"description": "wait for the workflow to reach a terminal state"
},
{
"flags": "--timeout <duration>",
"description": "max wait duration (500ms, 30s, 1m, 5m); implies --wait"
},
{
"flags": "--format <format>",
"description": "output format (json)",
"defaultValue": "json"
}
]
}
]
}