> ## Documentation Index
> Fetch the complete documentation index at: https://graph.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# CLI reference

> Every graph command, generated from the CLI's own definitions.

A command-line agent with a plan-based execution engine

```bash theme={null}
graph [OPTIONS] <COMMAND>
```

## Global options

These options work with every command.

**-v, --verbose** `integer`

Increase log verbosity (-v info, -vv debug, -vvv trace)

## Commands

| Command | Description |
| - | - |
| [`graph ask`](/reference/cli/ask) | Ask a one-shot question (runs one agent turn) |
| [`graph chat`](/reference/cli/chat) | Interactive chat (REPL) |
| [`graph plan list`](/reference/cli/plan/list) | List available plan documents |
| [`graph plan show`](/reference/cli/plan/show) | Show a plan document |
| [`graph plan validate`](/reference/cli/plan/validate) | Validate a plan document by name or file path |
| [`graph plan migrate`](/reference/cli/plan/migrate) | Rewrite a plan file to the current plan format |
| [`graph plan run`](/reference/cli/plan/run) | Run a plan directly (bypasses the agent loop) |
| [`graph plan new`](/reference/cli/plan/new) | Scaffold an empty plan file to build up with `set` and `step add` |
| [`graph plan draft`](/reference/cli/plan/draft) | Draft a plan from a goal using the planner model (costs inference) |
| [`graph plan set`](/reference/cli/plan/set) | Set one plan attribute |
| [`graph plan unset`](/reference/cli/plan/unset) | Clear one optional plan attribute |
| [`graph plan step add`](/reference/cli/plan/step/add) | Append a step, or anchor it before/after an existing one |
| [`graph plan step update`](/reference/cli/plan/step/update) | Set one attribute of a step |
| [`graph plan step rename`](/reference/cli/plan/step/rename) | Rename a step, rewriting every downstream \{\{id.\*}} reference |
| [`graph plan step unset`](/reference/cli/plan/step/unset) | Clear one optional attribute of a step |
| [`graph plan step rm`](/reference/cli/plan/step/rm) | Remove a step |
| [`graph tool list`](/reference/cli/tool/list) | List every tool visible to the agent and planner |
| [`graph tool show`](/reference/cli/tool/show) | Show one tool's description and schemas |
| [`graph tool test`](/reference/cli/tool/test) | Invoke a tool directly |
| [`graph tool migrate`](/reference/cli/tool/migrate) | Rewrite a user tool file to the current tool format |
| [`graph agent list`](/reference/cli/agent/list) | List every agent: built-in, global (\~/.config/graph/agents), and project (./.graph/agents) |
| [`graph agent show`](/reference/cli/agent/show) | Print an agent's effective definition, the file to copy when customizing it |
| [`graph agent validate`](/reference/cli/agent/validate) | Validate every agent, or one agent file against the others |
| [`graph agent migrate`](/reference/cli/agent/migrate) | Rewrite an agent file to the current agent format |
| [`graph thread list`](/reference/cli/thread/list) | List threads |
| [`graph thread show`](/reference/cli/thread/show) | Show a thread's messages |
| [`graph thread rm`](/reference/cli/thread/rm) | Delete a thread |
| [`graph mcp list`](/reference/cli/mcp/list) | List configured servers and their status |
| [`graph mcp tools`](/reference/cli/mcp/tools) | List tools exposed by servers |
| [`graph mcp test`](/reference/cli/mcp/test) | Connect to a server and verify initialize + tools/list |
| [`graph mcp serve`](/reference/cli/mcp/serve) | Serve graph's plans and authoring commands to an agent over MCP (stdio) |
| [`graph mcp probe`](/reference/cli/mcp/probe) | Pre-warm the observed-shape cache by invoking read-only tools |
| [`graph shape list`](/reference/cli/shape/list) | List cached tool shapes |
| [`graph shape show`](/reference/cli/shape/show) | Show one tool's cached schema and example |
| [`graph config show`](/reference/cli/config/show) | Print the merged effective configuration |
| [`graph config init`](/reference/cli/config/init) | Write a starter config file |
| [`graph config path`](/reference/cli/config/path) | Print the config file locations and which exist |
| [`graph config check`](/reference/cli/config/check) | Report each config file's format and whether the merged config loads |
| [`graph config migrate`](/reference/cli/config/migrate) | Rewrite a config file to the current config format, comments intact |
| [`graph pack add`](/reference/cli/pack/add) | Install a pack from git as a plain copy in the project, global or given graph directory |
| [`graph pack list`](/reference/cli/pack/list) | List installed packs with their tags, newer releases, local edits, shadowing and moved release tags |
| [`graph pack update`](/reference/cli/pack/update) | Move packs to the newest release their ref allows, or with --major across majors, migrating your files at each |
| [`graph pack remove`](/reference/cli/pack/remove) | Delete a pack's copy, config entry and lock entry, and list files that still call it |
| [`graph pack new`](/reference/cli/pack/new) | Scaffold a pack in a directory of a packs repository: manifest, one tool, plan and agent, README, CHANGELOG and MIGRATING.md |
| [`graph pack check`](/reference/cli/pack/check) | Load a pack the way an install would and report every problem: manifest, files, references, names, migrations and requirements |
| [`graph pack run`](/reference/cli/pack/run) | Run one of a pack's items, private and migration ones included, under its manifest name |
| [`graph pack test`](/reference/cli/pack/test) | Run check, then every migration over its sample files in tests/migrations/v\<N>/ and validate the result |
| [`graph pack release`](/reference/cli/pack/release) | Compare the public interface with the previous release tag and create the next annotated tag, without pushing |
| [`graph workbench`](/reference/cli/workbench) | Interactive workbench: a dual-pane TUI for building plans, agents and tools |
| [`graph workbench plan`](/reference/cli/workbench/plan) | Open the workbench in plan mode: draft a new plan, or open an existing one to inspect, edit and run — fully, or gated with per-tool-call confirmation |
| [`graph workbench agent`](/reference/cli/workbench/agent) | Open the workbench in agent mode: draft a new agent, or edit an existing one |
| [`graph workbench tool`](/reference/cli/workbench/tool) | Open the workbench in tool mode: draft a new user tool, or edit an existing one |
| [`graph version`](/reference/cli/version) | Print the binary version and the file formats it reads and writes |

Exit codes and output streams are covered in [Error handling](/reference/cli/error-handling).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.