OpenCode

OpenCode is an open-source terminal-based AI coding assistant. It supports multiple LLM providers, can edit files, run commands, and handle multi-step coding tasks directly from your terminal. Respan gives you full observability over every conversation including thinking, tool calls, and responses — and gateway routing through the OpenAI-compatible Respan endpoint.

Create an account at platform.respan.ai and grab an API key. For gateway, also add credits or a provider key.

Run npx @respan/cli setup to set up with your coding agent.

Setup

Prerequisite: OpenCode must be installed before integrating with Respan.

$go install github.com/opencode-ai/opencode@latest
1

Install the Respan CLI

$npm install -g @respan/cli
2

Set your API key

$export RESPAN_API_KEY="YOUR_RESPAN_API_KEY"
3

Integrate

$respan integrate opencode

This automatically configures OpenCode’s hooks to send traces to Respan.

4

Use OpenCode normally

$opencode "Optimize the database queries in the user service"

All conversations are now traced automatically.

5

View your trace

Open the Traces page to see your OpenCode conversations with thinking, tool calls, and responses.

OpenCode uses the opencode-otel community plugin. The respan integrate command installs the plugin and configures OTLP endpoints automatically.

Configuration

Customize the integration with flags.

$respan integrate opencode --customer-id "frank" --project-id "proj-123"
FlagEnv varDefaultDescription
--globalWrite user-level config (~/.config/opencode/plugins/otel.json).
--localLocalWrite per-project config (.opencode/plugins/otel.json).
--customer-idRESPAN_CUSTOMER_IDCustomer/user identifier for traces.
--project-idRESPAN_PROJECT_IDRespan project ID.
--attrsCustom attributes JSON.
--base-urlRESPAN_BASE_URLhttps://api.respan.ai/apiRespan API base URL.
--dry-runPreview changes without writing files.

Captured data

DataDescription
User promptThe user’s input text.
Assistant responseOpenCode’s final response.
Thinking blocksThinking / reasoning content.
Tool callsTool name, input, and output.
Token usageInput, output, and cache tokens.
TimingStart time, end time, latency.
ModelModel name (varies by configured provider).

Span types

Spanlog_typeDescription
RootagentThe complete conversation turn.
ThinkinggenerationThinking / reasoning blocks.
TooltoolTool invocations.

Uninstall

$respan integrate opencode --remove