Repository navigation
Description
Before submitting
- I searched existing issues and did not find a duplicate.
- I included enough detail to reproduce or investigate the problem.
Area
apps/server
Steps to reproduce
- Start T3 Code (
v0.1.10-nightly.20261113.4616) with Antigravity (Antigravity ACP Server v1.5.8, e.g.gemini-4-carbon,full-access) and at least one other enabled provider instance (e.g. Claude or Codex). - Open a thread on the Antigravity provider and ask the agent to delegate a subtask to another provider/model via
delegate_task(or launch a worktree thread viat3_thread_launch, or create a schedule viaschedule_task). - Inspect:
- the schema files written to
<T3CODE_HOME>/userdata/providers/antigravity/<id>/antigravity-acp/mcp/t3-code/*.json, - the
<mcp_servers>block and native tool declarations exposed to the Antigravity model, and - the shell environment inside Antigravity's
run_commandtool (T3_ACP_MCP_NODE).
- the schema files written to
Expected behavior
delegate_task, t3_thread_launch, and schedule_task are callable from Antigravity threads — either as native eager MCP tools (mcp_t3-code_delegate_task, etc.) or via the documented T3_ACP_MCP_NODE ... acp-mcp-call terminal fallback.
Actual behavior
Antigravity threads can call mcp_t3-code_orchestrator_capabilities, mcp_t3-code_task_status, mcp_t3-code_task_cancel, and mcp_t3-code_create_threads (63 out of 66 t3-code MCP tools), but the exact 3 largest MCP tools — delegate_task, t3_thread_launch, and schedule_task — are completely missing and uncallable, and the T3_ACP_MCP_NODE terminal fallback is also absent:
-
Antigravity ACP ~40 KB eager MCP budget drops the 3 largest schemas, and
call_mcp_toollazy loading is absent in ACP mode:- All 66 tool schemas (
47,956minified bytes total) are received from T3's MCP server and written to<appDataDir>/mcp/t3-code/*.jsononsession/newandsession/resume. - Complex nested
anyOf/additionalPropertiesschemas are not rejected on structure (create_threads.jsonat depth 13 withanyOf+additionalPropertiesis1,242 Bminified and does load eagerly asmcp_t3-code_create_threads). - Instead, sorting all 66
t3-codetool schemas by minified byte size shows a sharp cutoff right at 40,052 bytes:- The 63 smallest tools (
<= 1,668 Beach, up throughhtml_render.jsonat1,668 B) sum to40,052minified bytes and are all registered underEager:asmcp_t3-code_<name>. - The 3 largest tools spill past that ~40 KB eager budget:
delegate_task.json(1,938 Bminified)t3_thread_launch.json(2,611 Bminified)schedule_task.json(3,355 Bminified)
- The 63 smallest tools (
- Although Antigravity's
<mcp_servers>prompt preamble mentionsLazy:tools andcall_mcp_tool,Antigravity ACP Server v1.5.8neither emits aLazy:section nor registerscall_mcp_toolin tool declarations, so any tool exceeding the ~40 KB eager budget silently disappears.
- All 66 tool schemas (
-
T3_ACP_MCP_NODEterminal fallback is never injected into Antigravity's shell:T3_CODE_ACP_MCP_FALLBACK_INSTRUCTIONS(packages/provider-core/src/server/orchestrationInstructions.ts) instructs ACP agents to fall back toELECTRON_RUN_AS_NODE=1 "$T3_ACP_MCP_NODE" ... acp-mcp-call delegate_task ...when T3 tools are absent.- However,
environmentForSessioninpackages/provider-acp/src/server/clientTerminals.tsonly injectsT3_ACP_MCP_NODEwhen the ACP agent delegates shell execution back to the client via ACPterminal/create. - Antigravity ACP executes its built-in
run_commandtool directly inside its own Go language-server process rather than calling ACPterminal/create, soT3_ACP_MCP_NODE/T3_ACP_MCP_ENTRYPOINTare unset in the shell.
As a result, an Antigravity thread can inspect cross-provider models via orchestrator_capabilities, yet has no mechanism to call delegate_task, t3_thread_launch, or schedule_task (and its native invoke_subagent only accepts inherit | flash_lite | flash | pro).
Impact
Major degradation or frequent failure
Version or commit
t3 v0.1.10-nightly.20261113.4616
Environment
Windows (pwsh), T3 Code Nightly v0.1.10-nightly.20261113.4616 Desktop, Antigravity ACP Server v1.5.8 (gemini-4-carbon, full-access)
Logs or stack traces
Minified JSON schema byte sizes in <T3CODE_HOME>/userdata/providers/antigravity/<id>/antigravity-acp/mcp/t3-code/*.json (all 66 written on session start, only 63 registered in <mcp_servers> Eager:):
create_threads minified=1242B missing=False
preview_navigate minified=1296B missing=False
preview_open minified=1521B missing=False
t3_project_update minified=1541B missing=False
preview_act minified=1599B missing=False
html_render minified=1668B missing=False
delegate_task minified=1938B missing=True
t3_thread_launch minified=2611B missing=True
schedule_task minified=3355B missing=True
Total 63 eager minified bytes: 40052
Total all 66 minified bytes: 47956
Shell environment check inside Antigravity run_command (T3_ACP_MCP_* absent, only T3CODE_CLI_PATH from desktop launcher is present):
AGY_ACP_FORCE_FILE_STORAGE
PLAYWRIGHT_MCP_EXECUTABLE_PATH
...
T3CODE_CLI_PATH
Suggested fix direction / Workaround
- Potential server-side fix: Compacting the
t3-codeMCP tool schemas / descriptions by ~8 KB total (or omitting/compacting verbose parameter descriptions when servingtools/listto Antigravity ACP) would keep all 66 tools under Antigravity's ~40 KB eager MCP cap sodelegate_task,t3_thread_launch, andschedule_taskregister natively. Alternatively/additionally, expose the ACP MCP fallback env/bridge in a way reachable by ACP providers that run their own shell tools instead ofterminal/create. - Current workaround: Switch the orchestrating thread's provider to Claude or Codex before calling
delegate_task,t3_thread_launch, orschedule_task.
Activity
juliusmarminge commentedon Nov 13, 2026
I tried to reproduce this on the current build and could not.
Commit 5f69cac (origin/main). Antigravity cannot run on the VM, so I could not reproduce in the real app. Instead I added a test to apps/server/src/provider/Drivers/AntigravityDriver.test.ts that registers an MCP provider session for a thread, opens a session through AntigravityDriver's orchestrationAdapter against the ACP mock agent, and inspects the spawned agent process env. On main the env has no T3CODE_THREAD_ID, T3_ACP_MCP_ENDPOINT or T3_ACP_MCP_NODE (fails: expected undefined to be 'thread-antigravity-thread-env'). Merging input.processEnvironment into the driver's baseEnv makes all 7 driver tests pass; that change was reverted and not committed. The ~40 KB eager-schema cap is inside Antigravity ACP v1.5.8 and could not be measured here.
Closing as not planned. If it still happens for you, reply with the exact steps and the version you are on and it will be looked at again.
chrisjian commentedon Nov 13, 2026
Thanks — your
AntigravityDriver.test.tscheck in #36088 (comment) actually reproduced Bug 1 directly onmain(5f69cac5c9), and checkingmainshows both parts map to exact 1-line omissions inapps/serverthat can be asserted in unit tests without the proprietary Antigravity binary:Missing
input.processEnvironmentmerge inapps/server/src/provider/Drivers/AntigravityDriver.ts:280-287(reproduced by your test above):In
AntigravityDriver.makeRuntime(input):Because Antigravity executes its own
run_commandtool inside that spawned Go process (instead of ACPterminal/create), droppinginput.processEnvironmenthere completely breaks theT3_ACP_MCP_NODE ... acp-mcp-callfallback documented inT3_CODE_ACP_MCP_FALLBACK_INSTRUCTIONS. Merging{ ...processEnvironment, ...input.processEnvironment }fixes it directly and is 100% unit-testable inAntigravityDriver.test.ts.Missing
deferMcpTools: trueinapps/server/src/orchestration-v2/Adapters/AntigravityAdapterV2.ts:199:AcpAdapterV2Flavoralready hasdeferMcpTools: true(used for Copilot CLI inpackages/provider-acp-registry/src/server/adapter.tsalongsidemcpOverHttp: true), which sends{ name: "t3-tool-exposure", value: "deferred" }sotools/listadvertises the 4 core tools (orchestrator_capabilities,delegate_task,task_status,tool_search, < 3 KB total) upfront instead of all 66 tools (47,956 Bminified, where Antigravity ACPv1.5.8cuts offEager:at40,052 Band dropsdelegate_task,t3_thread_launch, andschedule_taskwith nocall_mcp_toolregistered).AntigravityAdapterV2.ts:199currently setsmcpOverHttp: truewithoutdeferMcpTools: true.Exact version & repro steps (still happening live)
t3 v0.1.10-nightly.20261113.4616Desktop on Windows 11 (pwsh)Antigravity ACP Server v1.5.8(gemini-4-carbon,full-access)main(5f69cac5c9) without Antigravity binary:AntigravityDriver'sorchestrationAdapteragainst the ACP mock agent with a registered MCP provider session (as in yourAntigravityDriver.test.tstest).T3CODE_THREAD_ID,T3_ACP_MCP_ENDPOINT,T3_ACP_MCP_AUTHORIZATION, andT3_ACP_MCP_NODEare allundefinedbecauseAntigravityDriver.ts:284passesbaseEnv: processEnvironmentwithoutinput.processEnvironment.mcpServersentry passed to ACPsession/newbyAntigravityAdapterV2→t3-tool-exposure: deferredheader is absent becauseAntigravityAdapterV2.ts:199omitsdeferMcpTools: true.fix(antigravity): forward thread MCP env and defer MCP tools