Skip to content

【功能构想】以持久 Session 为成员的 Team / Chatroom #461

Description

@isCopyman

背景

CodeG 已经有两类能力:

  • @Agent:创建一个新的委派子会话执行任务;
  • @旧会话:让当前 Agent 只读查询旧会话的信息和最近上下文。

但它还缺少一种不同的交互:把几个已经存在、各自拥有长期上下文的 Session 放进同一个 Room,由用户在 Room 中定向唤醒它们讨论。

这和临时子 Agent fan-out 不同。重点不是创建更多 Agent,而是复用现有持久会话。

建议模型

  • Session:原有的持久私聊和执行上下文;
  • Team:可复用的成员集合,可选;
  • Room:一段群组讨论时间线,成员可以是已有 Session;
  • Message routing:显式 @Session A@all 或选择发言人。

建议的 MVP

  1. 创建 Room,并添加两个或多个已有 Session;
  2. Room 消息持久化,并显示每条回复来自哪个 Session/Agent;
  3. @Session A 时,真正 resume A 并发送 follow-up,而不只是只读引用 A;
  4. A 的回复同时写回其自身会话,并以引用/镜像形式显示在 Room;
  5. 用户可随时打开 A 的原会话继续私聊;
  6. @all 才执行显式 fan-out,普通消息不默认广播,避免无谓 token 开销;
  7. Room 中可以移除/重新加入成员,不复制或合并它们原有的私聊历史。

上下文边界

建议每个 Session 保留:

  • 自己的完整私聊上下文;
  • 自己已经接收过的 Room 消息游标;
  • 被点名时增量收到的 Room 上下文。

Room 不需要把所有成员的私聊历史互相公开。其他 Session 只能看到 Room 中共享的内容,除非用户显式引用某段私聊。

Harness 能力差异

如果某个 Harness 支持原生 resume,则继续原 Session;如果不支持,应在 UI 中明确显示“只能创建关联 continuation / 只读引用”,不要静默创建新会话并假装是原成员。

后续扩展

MVP 稳定后再考虑:角色、主持人、轮询发言、辩论流程、Team 模板和自动总结。初版不需要引入复杂 workflow。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions