You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Surfaced while working #337/#338. It reframes the dogfood result, so it wants its own number rather than a paragraph inside either.
The finding
create_trigger is the only way we can reach another live session — it pushes a prompt into it and wakes it (persistent_session_id). A session woken that way runs without any mcp__<server>__* tools.
The tool said so itself, unprompted, on the return of a create_trigger call:
this trigger stores no MCP connectors, so the sessions it fires will run without connector (mcp__<server>__*) tools. Connectors on triggers created via this tool are limited to those the calling session itself holds; this call had none to pass through (no session context, or no passable connector grants). If the routine needs connectors, create it from a session that holds them, or ask the user to create it from the claude.ai routines UI.
Why it matters
#337 recorded that a checkout-less session could not report its findings to GitHub, and attributed it to the session being bare. That attribution is wrong, or at least incomplete. The missing GitHub tool is a property of being woken by a trigger, not of having no repos attached.
cannot post findings; no GitHub tool + no relay bearer
v1 spent a full turn on the follow-up and produced nothing on the issue. Its status line changed to name the five questions it had measured — so it did the work, and the answers went nowhere.
A pushed session has no connectors, so it cannot post, comment, or call any MCP door.
Its entire outbound bandwidth is post_turn_summary.status_detail — measured at roughly 44–80 characters, and it is a generated summary, not text the session controls.
That is a closed loop, and it is why #337's report channel could never have worked, regardless of what the session was told to do.
What this changes
Dogfood: does a checkout-less session actually get the verbs? #337: measurement 6's attribution needs correcting — "bare session has no channel out" → "trigger-woken session has no channel out". Being bare is not the operative cause. Its earlier comment predates this finding.
read_code_session: a Claude Code session URL should read like a share link #338 door (c): strengthened. If a session must publish its own Graph, it cannot be asked to at wake time by a trigger — the trigger cannot hand it the tools to do so. Publishing has to be armed at session start (bootstrap), not requested later.
Dogfood: does a checkout-less session actually get the verbs? #337 fix 2 / the bearer work: the bearer cannot arrive via a trigger either. It has to be present from session start, which points at boot.sh / the session-start dispatcher rather than any push-time mechanism.
Open questions
The warning says connectors can ride a trigger when "created from a session that holds them" — this session holds the GitHub connector and the pass-through still came back empty. Why? Is it a created_via: meta_mcp limitation specifically?
Does the claude.ai routines UI genuinely attach connectors where the MCP tool cannot? The warning asserts it; unverified.
Is post_turn_summary steerable at all — can a session shape it reliably enough to be a deliberate (if tiny) return channel, or is it purely generated? A test is armed as of filing.
Surfaced while working #337/#338. It reframes the dogfood result, so it wants its own number rather than a paragraph inside either.
The finding
create_triggeris the only way we can reach another live session — it pushes a prompt into it and wakes it (persistent_session_id). A session woken that way runs without anymcp__<server>__*tools.The tool said so itself, unprompted, on the return of a
create_triggercall:Why it matters
#337 recorded that a checkout-less session could not report its findings to GitHub, and attributed it to the session being bare. That attribution is wrong, or at least incomplete. The missing GitHub tool is a property of being woken by a trigger, not of having no repos attached.
Measured, both sessions in #337:
session_015MHtz7BxTVDRuvvG5o7rGisession_01EhoqH39bRLv1c4NLiRFyvTtrig_012uTx3LpJZ5mXhpTsFtWLfFrun_once_fired,last_fired_at 2026-09-01T13:21:08Zmeasured 5 questions: session ID, repos, env vars, network tools, GitHub accesscannot post findings; no GitHub tool + no relay bearerv1 spent a full turn on the follow-up and produced nothing on the issue. Its status line changed to name the five questions it had measured — so it did the work, and the answers went nowhere.
The shape
The one channel in guarantees no channel out.
create_trigger); there is no pull (read_code_session: a Claude Code session URL should read like a share link #338).post_turn_summary.status_detail— measured at roughly 44–80 characters, and it is a generated summary, not text the session controls.That is a closed loop, and it is why #337's report channel could never have worked, regardless of what the session was told to do.
What this changes
boot.sh/ the session-start dispatcher rather than any push-time mechanism.Open questions
created_via: meta_mcplimitation specifically?post_turn_summarysteerable at all — can a session shape it reliably enough to be a deliberate (if tiny) return channel, or is it purely generated? A test is armed as of filing.Related: #337, #338.