[FEATURE] Ephemeral output channel for team lead narration (visible to user, excluded from context)

Resolved 💬 2 comments Opened Mar 10, 2026 by ludovic-faure-agora Closed Mar 10, 2026

Problem Statement

In multi-agent team sessions, team leads sometimes narrate agent interactions to help the user follow the discussion flow — summarizing what was forwarded where, synthesizing agent responses, and showing routing decisions. This narration is valuable for user visibility but consumes context window space, creating a tension: more transparency means less working context for the actual task.

Currently, all team lead text output is treated equally — task-relevant reasoning and user-facing narration both occupy the same context. There's no way to distinguish "this is for the user's awareness" from "this is part of my working memory."

Proposed Solution

A lightweight mechanism for team leads (or any agent) to emit output that is:

  • Rendered visibly to the user in the conversation
  • Excluded from context compression / not retained as working context

This could take several forms:

  • A UserNote tool with content that renders but doesn't persist in context
  • A visible_only or ephemeral flag on text output blocks
  • A sidebar or annotation layer in the TUI

The key property: the user sees it, but it doesn't cost context window space for the agent.

Alternative Solutions

Current workarounds used in team sessions:

  • Team lead manually narrates in plain text (works but consumes context)
  • Using SendMessage summary field for compact previews (limited to 5-10 words)
  • Task status activeForm for spinner text (not designed for substantive content)
  • Writing narration to external files (loses real-time visibility)

None of these cleanly separate "user-facing narration" from "agent working context."

Use Case Example

  1. User starts a 3-agent team session for a complex task
  2. Team lead receives a message from agent A with analysis results
  3. Team lead wants to tell the user: "← agent-A: recommends approach X for reasons Y, Z. Forwarding to agent-B for review."
  4. With this feature, that narration line renders in the conversation but doesn't consume context
  5. Over a 30+ message session, this saves significant context space while keeping the user fully informed of the discussion flow

Additional Context

This is especially relevant as team sessions grow longer. The auto-compaction system may discard narration lines that the user found useful, or retain them at the cost of more important working context. An explicit ephemeral channel would let the system make better decisions about what to keep.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗