Skip to content

open: recipient's agent continues sender's unfinished intents from a resumed session #6

Description

@t3chn

Problem

A shared session arrives byte-identical — which is the point — but that means it also carries the sender's agent state: unfinished intents ("send this to X", "close that loose end"), the sender's friend aliases, and sender-machine paths. When the recipient runs the printed claude --resume, the resumed agent has no idea the machine and operator changed, and naively keeps acting in the sender's context.

Observed (real case)

A session was shared A → B. On A's side the transcript ended with an interrupted "share this with " intent. When B resumed the session on their machine and asked an unrelated question, the agent first tried to "finish the pending send": it ran echos send <B> — from B's own machine — and failed with no friend "<B>" (B's friends list obviously differs from A's). Confusing UX for the recipient, and in a worse case the agent could act on stale sender intents that do succeed.

Constraint

Injecting any marker into the transcript itself would break the byte-identical invariant (claude --resume fidelity, manifest SHA-256 per file). So the fix must live outside the session files.

Options

  1. echos open prints a ready-to-paste first message alongside the resume command, e.g. This session was received from <sender> via echos; you are now on <recipient>'s machine. Do not continue its unfinished actions — wait for my instructions. Cheap, zero format changes, works today.
  2. Sidecar note next to the installed session (not listed in the manifest, clearly echos-owned, e.g. <session-id>.echos-note.md) that agents can discover. Requires care: extraction currently fails closed on unmanifested files, so this must be written by open itself post-install, never packed into the envelope.
  3. Document the caveat in README/SPEC ("resumed sessions carry the sender's agent context") as a minimum regardless of 1/2.

Option 1 + 3 seem like the right floor; 2 is a possible follow-up.

Activity

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions