This is a Weights & Biases Weave plugin. A CoreWeave Forge version isn’t available yet. Traces the plugin sends appear in Agent Lens, because Agent Lens and Weave share the same trace data.
Prerequisites
- Node.js v22.14 or later.
- OpenClaw
2026.4.25or later with the plugin API. - A CoreWeave Forge account and API key.
- An Agent Lens project (
[YOUR-TEAM]/[YOUR-PROJECT]) to receive traces.
Install the plugin
Complete the following steps to install the plugin, register it with the OpenClaw gateway, and confirm that traces reach your Agent Lens project.1
Install the package
weave-openclaw (weave on its own is the Weave SDK, not this plugin). The OpenClaw gateway loads the plugin through its config. You don’t import it from application code.2
Add the plugin to your gateway config
The default config location is Set
~/.openclaw/openclaw.json (JSON5, which allows comments and trailing commas). Run openclaw onboard to scaffold one if you don’t have it yet.
Update [YOUR-TEAM] and [YOUR-PROJECT] for your project.hooks.allowConversationAccess to true so OpenClaw runs the content-bearing hooks (llm_input, llm_output, agent_end) and spans include input and output text, tool arguments, and tool results.diagnostics.enabled is on by default. Only set it explicitly if you need to turn it off.3
Restart the gateway and verify
Restart the OpenClaw gateway, then run
/weave status in any OpenClaw chat surface to confirm the plugin is active. Traces appear at https://forge.coreweave.com/agent-lens/[YOUR-TEAM]/[YOUR-PROJECT] within a few seconds of your first agent run.View OpenClaw traces in Agent Lens
Once the plugin is active, each agent session produces a trace you can inspect in the Agent Lens UI. After running at least one agent session, open your project in the Agent Lens UI:- Navigate to CoreWeave Forge, select Agent Lens from the product menu, and then select your project in the project selector at the top of the side menu.
- In the side menu, select Conversations.
- Select the Conversations tab to view all agent conversations saved for your project.
- Select a conversation to inspect the full conversation tree.
Configuration reference
This section is the full configuration reference for theweave plugin entry in openclaw.json.
The apiKey field supports four auth sources, resolved in this order:
- A
SecretRefobject withsource: "env"orsource: "file"(see line 10 in the following example). - A literal
apiKeystring (supported but not recommended). - The
WANDB_API_KEYenvironment variable. - A
~/.netrcentry for the Agent Lens host, populated bywandb login.
captureContent is true by default. When captureContent is true, the plugin also emits input and output messages, tool arguments, and tool results following the gen_ai.input.messages and gen_ai.output.messages payload shape. The plugin stamps subagents, compaction events, loop detection, retry attempts, and context sizing as additional attributes and span events.
Set captureContent to false to turn off capture for compliance or retention policies.
Troubleshooting
If traces aren’t reaching Agent Lens or content fields are empty, use the following sections to diagnose the most common causes. The gateway log is the terminal output from the process runningopenclaw, or your process manager’s log stream if you daemonized it.
Plugin loaded but no spans show up
- Run
/weave status. If lifecycle isdisabled,config-error, ornot-started, the plugin didn’t activate. Check the gateway log forweave: config.entity is required,weave: configuration error, or[weave] incompatible plugin SDK. - Check you haven’t set
diagnostics.enabled: falsein the gateway config. This field should betrue. - Confirm the entity and project match the URL slug of the Agent Lens project you’re inspecting.
/weave statusshould printproject=[YOUR-TEAM]/[YOUR-PROJECT]. - Confirm the auth source.
/weave statusshould printauth=.... If it saysWANDB_API_KEY envbut you set the key in a different environment variable, the plugin is reading the wrong key.
Spans land but input/output text is empty
Look in the gateway log for:plugins.entries.weave.hooks.allowConversationAccess: true in your config and restart the gateway. Span structure and cost and usage data come through diagnostic events, not hooks, so those keep working even when allowConversationAccess is false.