The Istok CLI gives you direct access to the same local project state that coding agents use through MCP.
For normal coding-agent workflows, you usually interact with Istok indirectly through your agent. The CLI remains useful for:
- project setup;
- inspecting Istok state;
- troubleshooting agent workflows;
- scripting and automation;
- direct manual control when needed.
You do not need to reproduce an agent’s normal task and run workflow manually through CLI commands.
Commands
Run:
istok --help
to see the available top-level commands.
The main command groups are:
| Command | Purpose |
|---|---|
istok init |
Initialize a repository as an Istok project. |
istok mcp |
Start the local MCP server used by coding agents. |
istok project |
Inspect and manage registered projects. |
istok task |
Inspect and manage project tasks. |
istok run |
Inspect runs, executions, artifacts, and validation. |
istok context |
Inspect and manage durable project context. |
istok index |
Inspect or rebuild the local repository index. |
istok search |
Search indexed repository content. |
istok graph |
Explore symbols and relationships in the code graph. |
istok update |
Check for and install Istok updates. |
istok completion |
Configure shell completion. |
istok version |
Print version information. |
Each command group has its own help:
istok task --help
Individual commands can be inspected in the same way:
istok task show --help
Project-aware commands
Most project operations are scoped to the repository you are currently working in.
For example:
cd my-project
istok task list
Istok resolves the current repository to its registered project and returns the tasks for that project.
The same model applies to commands such as:
istok context show
istok run list
istok index status
istok search "authentication timeout"
MCP uses the same project-oriented model with an additional boundary: each istok mcp process fixes its repository root when it starts and remains scoped to that project for its lifetime.
A global MCP configuration can therefore be reused across initialized repositories while each started MCP process operates on the repository it was launched for.
Inspect project state
The CLI is useful when you want to inspect what Istok currently knows without asking a coding agent.
Inspect the current project:
istok project show
List active tasks:
istok task list
Inspect durable project context:
istok context show
Inspect runs:
istok run list
Check the repository index:
istok index status
These commands are useful for understanding or troubleshooting agent workflows while keeping the normal workflow agent-driven.
Search the repository
Istok exposes its local repository retrieval through both the CLI and MCP.
Search indexed content:
istok search "authentication timeout"
Inspect a symbol:
istok graph symbol AuthService
Explore relationships around a symbol:
istok graph neighbors AuthService
Search and graph commands operate on the current Istok project.
Coding agents can use the same retrieval capabilities through MCP while working on tasks, so the CLI commands are primarily useful for inspection, troubleshooting, scripting, or direct exploration.
Repository freshness is handled by Istok as part of these workflows. You do not need to rebuild the index before normal searches or agent work.
See index, search and graph for the repository retrieval reference.
Human and JSON output
Istok commands use human-readable terminal output by default.
For programmatic use, supported commands can return structured JSON:
istok task list --json
JSON output uses versioned schemas so scripts and integrations can identify the contract they receive.
Use individual command help to see whether --json is available:
istok task list --help
See JSON output for the general structured-output conventions.
Data location
Istok stores durable local state in a SQLite database in the user data directory.
Most workflows do not require you to manage its path directly.
Commands that support a custom database can use:
--database PATH
or the environment variable:
ISTOK_DATABASE
Repository retrieval data and managed artifacts are stored separately from the main database.
See Configuration for the data locations and available overrides.
Shell completion
Istok can generate shell completion for Bash, Fish, and Zsh.
For example:
istok completion zsh
To print the initialization code directly:
istok completion zsh --code
The same pattern can be used with:
bash
fish
zsh
CLI and MCP
The CLI and MCP expose the same Istok project workflows for different kinds of interaction.
Istok
/ \
/ \
CLI MCP
│ │
│ └── coding agents
│
├── setup
├── inspection
├── troubleshooting
├── automation
└── direct control
For normal development work:
You
↓
coding agent
↓
Istok MCP
↓
durable project state
The agent can find or create tasks, retrieve context, record progress, work through runs, preserve validation evidence, and leave state for later sessions.
The CLI gives you direct access to those same project concepts when you need it.
MCP process scope
A configured MCP client starts an istok mcp process for the repository in which it is working.
That process fixes two important pieces of identity at startup:
repository root
+
actor identity
The repository root determines which Istok project the process can access.
The actor identity determines which agent is performing operations through that process.
For example:
istok mcp \
--actor-id codex \
--actor-name "Codex"
See MCP for the full server and actor-identity reference.
Next
Continue with the project command reference for project management commands.