documentation
05 integrations

CLI adapters

By default, agents send prompts to LLM providers via HTTP API. CLI adapters instead spawn an external tool as a subprocess — the tool handles its own model calls, tool execution, and reasoning. Use them when the agent needs to operate on files in a codebase.

When to use CLI adapters

Reach for a CLI adapter when:

  • The agent needs to read, edit, and create files in a real codebase
  • The external tool has superior capabilities for the task (e.g., Claude Code for coding)
  • You have an unlimited plan (Claude Max, Codex Pro) and cost isn’t a factor

Stick with the default API path when:

  • The agent needs Exolvra’s built-in tools (data store, task board, project management, web search, memory)
  • You want agent output visible in the dashboard as comments, data entries, and task updates
  • You need budget tracking and execution monitoring

Supported adapters

Adapter TypeCLI ToolBest For
claude_localClaude Code (claude)Coding, file operations, shell commands
codex_localOpenAI Codex CLI (codex)Coding with OpenAI models
gemini_localGemini CLI (gemini)Coding with Google models
processAny shell commandCustom tools, scripts

Setting up Claude Code

Prerequisites

  1. Install Claude Code: npm install -g @anthropic-ai/claude-code
  2. Authenticate: claude login (or set ANTHROPIC_API_KEY env var)
  3. Verify: claude --version

Configuration

  1. Go to Agents → Edit for the agent you want to route through Claude Code
  2. Scroll to the CLI Adapter section
  3. Set Adapter Type to “Claude Code (Local CLI)”
  4. Set Default Workspace Base (e.g., C:\projects)
  5. Optionally set CLI Model Override (e.g., claude-sonnet-4-6)
  6. Save

Workspace resolution

When an agent with a CLI adapter works on an issue, the working directory is resolved in this order:

PrioritySourceExample
1 (highest)Project workspace pathC:\projects\my-saas-app
2Agent base + project nameC:\projects\ + my-saas-app
3 (fallback)Global default~/.exolvra/workspaces/my-saas-app

Set the project workspace path on the project edit page. This means the same agent working on different projects automatically runs in the correct directory.

Configuration for Claude Max users

With Claude Max (unlimited usage), cost isn’t a factor. Here’s the optimal setup:

AgentAdapterModel overrideWorkspace baseRationale
Code Assistantclaude_localclaude-sonnet-4-6C:\projectsFull codebase access, file editing, shell
DevOps Engineerclaude_localclaude-sonnet-4-6C:\projectsInfrastructure code, deployment scripts
System Administratorclaude_localclaude-sonnet-4-6Shell access for system operations
Research AnalystAPI (default)claude-sonnet-4-6Needs web search, data store, file store
Data AnalystAPI (default)claude-sonnet-4-6Needs data store, web tools
Creative WriterAPI (default)claude-sonnet-4-6Needs data store, memory
Project ManagerAPI (default)claude-sonnet-4-6Needs project, issue, and goal tools
Home AssistantAPI (default)claude-haiku-4-5Quick responses, low complexity

Why keep some agents on API?

CLI adapters have their own tool set and don’t use Exolvra’s tools. This means:

CLI adapter agents can read, write, and edit files in the workspace; run shell commands; search the web (Claude Code has built-in web search); reason deeply about code and architecture; create files, run tests, and commit code.

CLI adapter agents cannot save to Exolvra’s data store, update the task board, create issues or update goals, send messages to other agents via Exolvra, use Exolvra’s memory system, or trigger runbooks and workflows.

Rule of thumb. If the agent’s work product should be in the codebase (files, code changes, configs) → use a CLI adapter. If it should be in the dashboard (research findings, task tracking, project management) → use the API path.

Hybrid approach: research → code handoff

For tasks that span research and implementation:

  1. A Research Analyst (API) researches best practices and saves findings to the data store
  2. The Project Manager (API) creates implementation issues from the research findings
  3. A Code Assistant (Claude Code CLI) implements the code changes in the repo

The PM naturally bridges the gap — it reads the research from the data store and creates issues that the Code Assistant picks up and executes in the workspace.

Advanced configuration

Adapter settings

SettingDefaultDescription
Timeout (seconds)900 (15 min)Max execution time before termination
Grace (seconds)15Time between graceful and forced shutdown
Max turns per run300Claude Code’s agentic turn limit
Skip permissionsfalseBypass Claude Code’s permission prompts
Environment variables{}Extra env vars injected into the CLI process

Skip permissions for autonomous execution

By default, Claude Code prompts for permission before file writes and shell commands. For autonomous agent execution, enable Skip Permissions on the agent edit page. This passes --dangerously-skip-permissions to Claude Code.

Warning. Only enable this for trusted, well-scoped projects. The agent will execute shell commands without confirmation.

Custom CLI model

Override the model Claude Code uses by setting CLI Model Override:

  • claude-opus-4-6 — highest quality, slowest
  • claude-sonnet-4-6 — best balance (recommended)
  • claude-haiku-4-5 — fastest, cheapest (good for simple tasks)

This is separate from Exolvra’s default model — it only affects the CLI adapter.

Environment variables

Inject environment variables into the CLI process:

  • ANTHROPIC_API_KEY — override the API key for this agent
  • CLAUDE_CODE_MAX_TURNS — override max turns
  • Custom project-specific vars (e.g., DATABASE_URL, AWS_PROFILE)

Set them via the Environment Variables section on the agent edit page (key=value pairs).

Process adapter (custom tools)

The process adapter type lets you use any CLI tool:

  1. Set Adapter Type to “Process (Custom Command)”
  2. Set Command to the CLI invocation (e.g., python my_agent.py)
  3. The prompt is passed via stdin
  4. Output is read from stdout

This enables integration with any AI tool that accepts text input and produces text output.

Troubleshooting

Agent not using CLI adapter. Verify the adapter type is set (not “API”). Check that the CLI tool is installed and on PATH. Check the gateway logs for “CLI adapter” messages.

Wrong working directory. Check the project’s workspace path (highest priority). Check the agent’s default workspace base. The fallback is ~/.exolvra/workspaces/{project-name}.

Claude Code timeout. Increase the Timeout setting (default 900s = 15 minutes). For large codebases, 1800s (30 min) may be needed. Check if the task is too broad and split it into smaller issues.

Permission prompts blocking execution. Enable “Skip Permissions” on the agent edit page, or pre-approve tools via Claude Code’s own permission list.