Repository navigation
Description
Summary
Codex (and likely other ACP harness UIs) labels sessions from the start of the injected prompt. Managed Buzz agents all begin with the same base section:
[Base]
You are operating inside the Buzz platform — a Nostr-…
So the Codex session list shows many identical rows that look like truncated system text, not the Buzz agent display name (e.g. Fizz, Varys).
Buzz already has a real name (kind:0 display_name / agent settings). That name is not passed through as a session/thread title for the underlying runtime.
Repro
- Run one or more managed agents on the Codex ACP runtime.
- Open Codex session history / sidebar (desktop or CLI resume UI).
- Observe entries titled with
[Base] You are operating inside the Buzz platform…instead of the agent name.
Root cause
buzz-acp frames platform context as [Base] / [System] / [Workspace] for session/new and legacy user messages (framed_system_prompt / prepend_base_for_legacy in crates/buzz-acp/src/pool.rs; body from crates/buzz-acp/src/base_prompt.md).
Codex appears to use the first prompt content as the human-visible session title. Every Buzz-managed Codex process shares that opener, so titles collide.
Scope / non-goals
- Do not rewrite or remove the base prompt text for models just to fix UI chrome.
- Do not fold this into agent rename/profile sync only (Agent rename: relay profile sync failure is silently swallowed with no user feedback #1822, Agent rename does not notify running agents: AGENTS.md update invisible mid-session #1823).
- Related but separate from model self-ID in multi-agent threads ([Bug] ACP harness does not inject agent identity into system prompt — agents can drift to wrong persona under thread context pressure #2287). Fixing identity in the system prompt helps the LLM; it does not by itself fix Codex session list labels.
Suggested direction
- Canonical label from Buzz: agent
display_name, optionally with harness and/or channel (e.g.FizzorFizz · Codex). - Per-runtime adapter in
buzz-acp(or desktop spawn) that sets title/name where that runtime supports it. - Codex first: find the codex-acp / ACP hook for session title or metadata; if none, a short first user-visible title line must not break prompt framing for desktop observers that split
[Base]/[System]. - Same product goal for Claude, Goose, OpenCode, Grok, etc.; each needs its own integration point.
Acceptance
- Codex session list shows a stable, human-readable Buzz agent name (or name + harness), not the base-prompt prefix.
- Base prompt content for the model is unchanged in substance.
- Desktop observer / transcript section parsing still works if framing changes.
- Document the pattern so other harnesses can follow.
Related
- [Bug] ACP harness does not inject agent identity into system prompt — agents can drift to wrong persona under thread context pressure #2287 — identity not injected into system prompt (model-facing)
- Agent rename: relay profile sync failure is silently swallowed with no user feedback #1822 / Agent rename does not notify running agents: AGENTS.md update invisible mid-session #1823 — rename / profile sync (Buzz-side display name plumbing)
Activity
Bartok9 commentedon Jul 22, 2026
Taking a focused seam on this: have Desktop pass the managed agent display name into
buzz-acp, and have the harness put a short labeled session title section before[Base]/[System]insession/newsystemPrompt(and the legacy user-message framing path) so Codex-style UIs stop titling sessions from the shared base-prompt prefix.Out of scope here: full multi-agent self-ID in the persona body (#2287), rename IPC to live processes (#1823), unwinding base prompt content.
— Bartok9
fix(acp): title Codex/ACP sessions with Buzz agent display name
fix(acp): title Codex/ACP sessions with Buzz agent display name
fix(acp): title Codex/ACP sessions with Buzz agent display name
fix(acp): title Codex/ACP sessions with Buzz agent display name
fix(acp): title Codex/ACP sessions with Buzz agent display name
feat(acp): title agent sessions from the agent and channel name (bloc…
feat(acp): title agent sessions from the agent and channel name (bloc…
feat(acp): title agent sessions from the agent and channel name (bloc…