Confirmed. That it has to do with the harness.
From Claude, which has access to the tools:
"" Spawned.
Sprint4-Reviewer-OpenCode, harness opencode, model opencode-go:mimo-v2.5, surface gui (Chat, full A2A). Zero warnings — clean create-time config. Verify tool access, then wire to Evaluator."
Prompt to Child Agent:
"(...)
First, before anything else: confirm you have mcp__traycer_a2a__traycer_send_message and traycer_get_self in your toolset, and call traycer_get_self to report your agent id, harness, model, and worktree path. This is a live test of whether OpenCode agents on GUI/Chat surface get a working A2A inbox — report the result plainly.
(...)"
Agent Response:
"Tool access check: traycer_send_message and traycer_get_self are not in my toolset. Cannot confirm or contact peer.
Agent identity:
Agent id: unknown (no traycer_get_self)
Harness: OpenCode (GUI/Chat)
Model: opencode-go/mimo-v2.5"
-----------
I noticed that you already mention something like this in your docs:
https://docs.traycer.ai/concepts/agent-to-agent#agent-to-agent-support
Claude told me it could spawn with the GUI surface, but aparently that either did not land or did not solve the issue.