Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Agent integrations

The proxy is transparent: point a supported provider client at it and Tapes forwards the request while recording the completed turn. For supported coding agents, launching through tapesctl is safer than editing configuration by hand — it wires the agent to a just-in-time capture proxy that dies with the process.

Start the server and its local dependencies before these examples:

tapes local up
tapes serve

Then install the client:

curl -sSfL https://download.tapes.dev/tapesctl/install | bash

Claude Code

tapes auth anthropic   # optional when ANTHROPIC_API_KEY is already set
tapesctl start claude --tapes-url http://localhost:8081

tapesctl starts a loopback capture proxy, sets Claude Code’s ANTHROPIC_BASE_URL to it, launches claude, and ships the captured turns to the server. Pass Claude flags after --:

tapesctl start claude -- --worktree

For a manually managed, fixed-port proxy:

tapes serve --provider anthropic --upstream https://api.anthropic.com
ANTHROPIC_BASE_URL=http://localhost:8080 claude

OpenCode

tapesctl start opencode --tapes-url http://localhost:8081

Switching provider or model inside OpenCode is not captured by the configured route; start a separate capture session instead.

Ollama and generic clients

With default configuration, Tapes forwards Ollama-compatible traffic to http://localhost:11434:

tapes serve
curl http://localhost:8080/api/chat \
  -H 'Content-Type: application/json' \
  -d '{"model":"qwen3-coder:30b","messages":[{"role":"user","content":"hello"}],"stream":false}'

Pull a chat model separately; tapes local up pulls the embedding model, not every completion model:

ollama pull qwen3-coder:30b

For another Anthropic-, OpenAI-, or Ollama-compatible application, configure its base URL as http://localhost:8080 and run tapes serve with the matching --provider and --upstream. Preserve the path convention expected by the client and provider. Verify capture with:

tapes status
tapesctl sessions list --tapes-url http://localhost:8081

OpenClaw

Tapes has no OpenClaw-specific launcher or configuration code. OpenClaw can only be treated as a generic supported-provider client: if the installed OpenClaw version offers a provider base-URL setting, point that setting at http://localhost:8080 while Tapes runs with the matching provider/upstream. Consult the OpenClaw documentation for the setting’s current name and shape rather than copying old openclaw.json examples.

This limited integration claim is intentional: device pairing, channels, and OpenClaw deployment behavior are outside Tapes and are not configured by this repository.

Verify and stop

The read API health endpoint is separate from the proxy:

curl http://localhost:8081/ping
tapesctl sessions list --tapes-url http://localhost:8081

Stop the foreground tapes serve process with Ctrl-C. tapes local down removes bootstrap containers but keeps PostgreSQL data unless --wipe is supplied.