Claude Code provider
The claude-code provider runs your local claude CLI through Roder's inference interface. It is separate from the direct anthropicAPI provider: Claude Code uses the CLI's local login and keeps its own resumable session, while Roder continues to own the surrounding thread, policy, and event stream.
Set up the provider
Install and authenticate Claude Code first, then select one of Roder'sclaude-code/* models. The built-in aliases includesonnet, opus, and haiku.
# ~/.roder/config.toml
provider = "claude-code"
model = "sonnet"
[providers.claude-code]
cli_path = "claude"
permission_mode = "default"
setting_sources = ["user", "project"]Roder reuses the CLI session by default, sending only the new transcript tail on later turns. This lets Claude Code keep and compact its own conversation history instead of rebuilding the full prompt for every request. If continuity no longer matches, Roder safely starts a fresh CLI session with the full current transcript.
Use Claude in Chrome
When the Claude-in-Chrome extension is paired, a claude-code/* turn can use Claude Code's native browser tools to work in your real local Chrome session. Roder automatically detects a paired or enabled extension from Claude Code's local config and exposes the browser activity as hosted tool calls, so navigation and page actions stay visible in the Roder UI without being executed a second time by the runtime.
- Install and sign in to the Claude Code CLI with your claude.ai subscription.
- Pair and enable the Claude-in-Chrome extension, then keep Chrome running.
- Select a
claude-code/*model in Roder and ask it to use the browser.
# Override auto-detection when needed
export RODER_CLAUDE_CODE_ENABLE_CHROME=1
# Force the integration off
export RODER_CLAUDE_CODE_ENABLE_CHROME=0RODER_CLAUDE_CODE_ENABLE_CHROME=0 if the CLI must continue using ANTHROPIC_API_KEY instead.Tool safety and visibility
Roder authorizes Claude Code's own mcp__claude-in-chrome__* tools only when the integration is enabled. Other unmapped Claude Code tools remain denied. Browser calls are reported as started and completed hosted-tool events, including no-argument calls and interrupted streams, so the TUI does not leave stale in-progress rows.
This integration uses Claude Code's native browser connection. For Roder's separate, runtime-policy-controlled Manifest V3 extension and chrome_* tool surface, see Chrome browser control.