Agent Providers
Vect is a provider-agnostic IDE that wraps any AI coding agent CLI. It auto-detects installed agents via which and reads their native history and configuration formats.
Supported Agents
Claude Code
| Field | Value |
|---|---|
| Binary | claude |
| Best version | 2.1.81+ |
| History format | JSONL |
| History path | ~/.claude/projects/ |
| Config path | ~/.claude/settings.json |
| Project instructions | CLAUDE.md |
| Config env var | CLAUDE_CONFIG_DIR |
Install: see Claude Code documentation
Codex CLI
| Field | Value |
|---|---|
| Binary | codex |
| Best version | 0.116.0+ |
| History format | JSONL |
| History path | ~/.codex/history.jsonl |
| Config path | ~/.codex/config.toml |
| Project instructions | AGENTS.md |
| Config env var | CODEX_HOME |
Install: npm install -g @openai/codex
OpenCode
| Field | Value |
|---|---|
| Binary | opencode |
| Best version | 1.18.3+ |
| History format | SQLite |
| History path | ~/.local/share/opencode/opencode.db |
| Config path | opencode.json (project-local) |
| Project instructions | AGENTS.md |
Install: see the OpenCode repository
OpenCode is notable for supporting 75+ LLM models and storing history in SQLite rather than flat files. Reading that history needs the sqlite3 binary on your PATH; without it OpenCode sessions do not appear in the tree. The same applies to Hermes.
OpenCode does not ship an ACP server, so it can hold a session of its own but cannot be seated in a room.
Hermes
| Field | Value |
|---|---|
| Binary | hermes |
| Best version | 0.18.2+ |
| History format | SQLite |
| History path | ~/.hermes/state.db |
| Config path | ~/.hermes/config.yaml |
| Project instructions | AGENTS.md |
| Config env var | HERMES_HOME |
Install: see Hermes documentation
Hermes is Nous Research's model-agnostic, self-improving agent supporting 30+ providers.
How Vect Detects Agents
On startup, Vect runs which <binary> for each registered agent to check if the CLI is available on the system PATH. Detected agents appear in the session creation dropdown.
Agent Configuration
Each agent instance can be configured with:
- Custom environment variables: passed to the agent process via
envrecord - Binary override: use a specific path instead of the PATH-resolved binary
- Per-project instructions: Vect reads the agent's designated instructions file from the workspace root
Adding Custom Agents
The agent registry is defined in packages/shared/src/agent/registry.ts. Each agent definition specifies:
id: unique identifiername: display namebinary: CLI executable namedetectCommand: how to check if installed (default:which)historySupported: whether Vect can read past sessionshistoryFormat:jsonl,json,sqlite, ornonehistoryPath: where the agent stores conversation historyconfigPath: agent configuration file locationprojectInstructionsFile: the markdown file the agent reads for project context