Repository navigation
feat(server): delegation tools are always loaded and name the shell CLIs they replace - #67
Merged
Merged
Conversation
…LIs they replace (#66) spawn_thread, read_thread, message_thread and prism_submit carry _meta["anthropic/alwaysLoad"], so Claude Code shows their descriptions from the first turn instead of deferring them behind tool search. The spawn_thread and prism_submit descriptions and the launch paragraph now say when to use them and name codex exec, claude -p, opencode run and grok in the shell as what they replace. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
6 tasks
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Contributor
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
This was referenced Sep 29, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed: Claude Code agents in T3 see the full descriptions of
spawn_thread,read_thread,message_threadandprism_submitfrom the first turn, and those descriptions say to use them instead of agent CLIs in the shell.Why: The tools were deferred, so agents saw only names; a planner asked for a Luna review ran
codex execin the shell, invisible to the user.So what: Independent review approved; you approve the merge and install the build, then a fresh thread confirms agents pick
spawn_thread.Closes #66.
apps/server/src/mcp/alwaysLoad.ts:_meta["anthropic/alwaysLoad"]on the four delegation tools only; the other 29t3-codetools stay deferred.spawn_threadandprism_submitdescriptions rewritten trigger-first (toolboxmd/building-agentskillsdocs/05-authoring/triggers.md, obra/superpowers writing-skills): when to use, the shell alternative they replace, then the minimum mechanics. 528 and 470 characters.<t3_code_tool_use>launch paragraph namescodex exec,claude -p,opencode runandgrokin the shell. This is the only channel for Codex, OpenCode and Grok.Elon record
PreToolUsehook blocking agent CLIs (user: last resort), server-widealwaysLoad(all 33 tools every turn, startup waits up to 5 s), edits to other tools._meta-marked and one unmarked tool: Claude Code 2.1.284 debug log reported0/19 deferred toolswith the mark and0/20without. T3 connects over HTTP; the same behavior there is inferred until the post-install check.Proof:
vp test run src/mcp/alwaysLoad.test.ts src/mcp/toolInstructions.test.ts(10 passed);tsc --noEmitinapps/serverpasses;vp fmt --checkandvp lintonapps/server/src/mcpclean apart from one existing warning indevice/handlers.ts.Review: Luna max (Codex
gpt-6-luna). Round 1 on cb7ba42 requested one change (thespawn_threaddescription dropped that a role applies its kit); fixed in b8a109a. Round 2 on b8a109a: APPROVE.🤖 Generated with Claude Code