Skip to content

MCP: read every reply a session gives, exactly once #383

Closed

Description

@oddessentials

As an agent coordinating several sessions through agent-guild mcp, I want to read every reply each session gives, exactly once, so that I don't miss a worker's report or act on the same report twice.

Current behavior

  • list_sessions says only whether a session has a reply (hasReply).
  • read_reply returns the text of the answer that ended the session's last turn, with nothing that identifies which reply it is.
  • A session keeps only its latest reply. A new reply replaces the previous one, and a turn that ends without an answer clears it.

So a coordinator that polls can't tell a new reply from one it has already handled. If a session finishes two turns between polls, the first reply is gone.

Acceptance criteria

  • A coordinator can tell whether a session's reply is one it has already read.
  • A coordinator that checks in less often than a session finishes turns can still read, in order, the replies it missed.
  • Clients that show or read aloud the last answer (the page, VS Code, the apps, Apple Watch, Meta Ray-Ban Display) behave as they do today.
  • docs/mcp.md (and docs/api.md, if the local API changes) describe the behavior, and tests cover it.

To decide

  • How many past replies a session keeps, and what a coordinator sees when it asks for one that is no longer kept.

Starting points

  • reportReply in src/manager/session.mjs
  • summarize and read_reply in src/mcp/server.mjs

Activity

  1. oddessentials commented on Nov 11, 2026

    @oddessentials
    OwnerAuthor

    Shipped in #386: read_replies with per-reader cursors, replyId and replyCursor in list_sessions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions