Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
73fb92c
feat(antigravity): add first-class antigravity-app host surface, conf…
loopx-agent Nov 1, 2026
0f196e4
slash-commands: treat empty mcp_config.json and hooks.json as empty o…
loopx-agent Nov 1, 2026
c971f53
doctor: accept materialized workflow skills for antigravity facade re…
loopx-agent Nov 1, 2026
1fa9ea4
fix(agy): clean ruff unused imports and preserve read-only should-run…
loopx-agent Nov 1, 2026
35c3f8c
fix(antigravity): bind antigravity_app to visible-goal settlement, fi…
loopx-agent Nov 2, 2026
b398014
fix(antigravity): use 3-minute default cadence and canonical LoopX ma…
loopx-agent Nov 2, 2026
3a6ed30
feat(antigravity): wire antigravity_app into first-class app_automati…
loopx-agent Nov 2, 2026
67ba8cc
fix(antigravity): support receipt-bound native scheduler ACK without …
loopx-agent Nov 2, 2026
6867148
fix(antigravity): remove antigravity_app from visible_goal_settlement…
loopx-agent Nov 2, 2026
862c851
Merge Antigravity App host proposal onto current main
loopx-agent Nov 2, 2026
42921ae
fix(antigravity): emit native builtin schedule sidecar.json args and …
loopx-agent Nov 2, 2026
9d34b89
fix(antigravity): preserve native retries and bind bounded Stop recovery
loopx-agent Nov 2, 2026
5ac6686
docs(antigravity): qualify native heartbeat and recovery boundaries
loopx-agent Nov 2, 2026
066fa3c
Merge latest native Antigravity sidecar fix
loopx-agent Nov 2, 2026
b2211a4
feat(antigravity): add first-class antigravity-app host surface, conf…
loopx-agent Nov 1, 2026
6a87545
slash-commands: treat empty mcp_config.json and hooks.json as empty o…
loopx-agent Nov 1, 2026
d06ca32
doctor: accept materialized workflow skills for antigravity facade re…
loopx-agent Nov 1, 2026
83ecd5b
fix(agy): clean ruff unused imports and preserve read-only should-run…
loopx-agent Nov 1, 2026
3b648db
fix(antigravity): bind antigravity_app to visible-goal settlement, fi…
loopx-agent Nov 2, 2026
42fbaed
fix(antigravity): use 3-minute default cadence and canonical LoopX ma…
loopx-agent Nov 2, 2026
e66ef7d
feat(antigravity): wire antigravity_app into first-class app_automati…
loopx-agent Nov 2, 2026
7ffb086
fix(antigravity): support receipt-bound native scheduler ACK without …
loopx-agent Nov 2, 2026
4a56166
fix(antigravity): remove antigravity_app from visible_goal_settlement…
loopx-agent Nov 2, 2026
423df7f
fix(antigravity): emit native builtin schedule sidecar.json args and …
loopx-agent Nov 2, 2026
a8c8c28
Merge current main for Antigravity host qualification
loopx-agent Nov 2, 2026
884599e
docs(cli): describe the opt-in Antigravity Stop recovery hook
loopx-agent Nov 2, 2026
a7fc59e
fix(antigravity): bind hooks continuation gate to project goal and ma…
loopx-agent Nov 2, 2026
95c1863
fix(antigravity): fence Stop recovery to the original native input
loopx-agent Nov 2, 2026
df61def
Merge current Antigravity proposal using the verified native Stop con…
loopx-agent Nov 2, 2026
09156b5
fix(antigravity): isolate hook imports and qualify real Core admission
loopx-agent Nov 2, 2026
18dd988
fix(antigravity): keep public activation hooks_template path-safe and…
loopx-agent Nov 2, 2026
d195c6b
fix(antigravity): integrate session-liveness sidecar backoff and gene…
loopx-agent Nov 2, 2026
db17e46
fix(antigravity): support agy and antigravity-app thread bindings in …
loopx-agent Nov 2, 2026
a8f55d7
fix(antigravity): emit CodexActivitySteps and flush per-step visible …
loopx-agent Nov 2, 2026
44d6d3f
fix(agy): resolve auto sentinel, scope discovery to workspace, and pr…
loopx-agent Nov 2, 2026
93941ee
fix(agy): resolve workspace registry in bind-session and dual-runtime…
loopx-agent Nov 2, 2026
5965ed0
fix(antigravity): enforce structured sidecar ownership check and remo…
loopx-agent Nov 2, 2026
ccb5342
fix(antigravity): fail closed on unavailable trajectory summary, enfo…
loopx-agent Nov 3, 2026
05f97e9
refactor(antigravity): converge to native schedule sidecar and minima…
loopx-agent Nov 3, 2026
c6f21d2
fix(workspace): update replan-cadence smoke for inherited stride defa…
loopx-agent Nov 3, 2026
2247c17
Merge branch 'main' into codex/antigravity-app-host-20261101
loopx-agent Nov 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions docs/architecture/rfcs/manager-runtime-profile-v0.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,11 @@ These defaults do not change ordinary Goal Chat models or grant other Agents too
steps to be done, matching native result recovery's completion requirement.
Transient idle does not extend the existing no-progress or hard deadline. Permission gates,
native errors, unverified stop reasons and another input retain their existing refusal paths.
Read-only polling transport loss does not resend the input or reset its idle/hard deadline.
Native retry/error steps remain owned by the running cascade; only a settled terminal error
fails the adapter, with its structured native cause retained. Host heartbeat and bounded
Stop-hook recovery use the separate [Antigravity host procedure](../../../skills/loopx-project/references/heartbeat-hosts.md#antigravity-app).
These source boundaries do not establish upstream network repair or sustained long-run reliability.
- Antigravity manager inputs place the complete original user message before the frozen Core
evidence, encoding that message as a JSON string so whitespace and quoted transport markers
remain exact. Original-result recovery recognizes both this framing and historical
Expand Down
5 changes: 5 additions & 0 deletions docs/architecture/rfcs/manager-runtime-profile-v0.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,11 @@ LoopX 管家最初只有受限的规划会话:它可以读取 LoopX 提供的
LoopX 继续观察原调用,不重发输入;最终答案须带正常停止标记,且本次覆盖的全部步骤均
已完成才能收尾,与原生结果恢复的完成要求一致。短暂 idle 不延长既有无进展或硬截止
时间;权限等待、原生错误、未核验的停止原因及另一个输入仍沿既有拒绝路径处理。
只读轮询的传输中断不会重发输入,也不会重置 idle 或 hard deadline。运行中的原生
cascade 继续拥有重试与错误步骤;接入层仅在原生终态错误后失败,并保留结构化原始
原因。宿主心跳与有界 Stop-hook 恢复遵循独立的
[Antigravity 宿主流程](../../../skills/loopx-project/references/heartbeat-hosts.md#antigravity-app)。
这些源码边界不证明上游网络已修复,也不证明持续长程可靠性。
- Antigravity 管家输入先呈现完整用户原话,再附上冻结的 Core 证据;用户原话按 JSON
字符串编码,保留空白和被引用的传输标记。原始结果恢复同时识别新格式与历史上的
证据在前格式,沿用同一来源、输入时间、prompt hash 和原生终止检查。
Expand Down
4 changes: 2 additions & 2 deletions examples/personal-workspace-browser/replan-cadence.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ export const replanCadenceScenario = {
const count = page.getByLabel("两次复核间的数量", { exact: true });
const strategy = page.getByLabel(/^步幅策略/);
await waitForInputValue(count, "6");
if (await strategy.inputValue() !== "off") throw new Error("Stride must default off");
if (await strategy.inputValue() !== "evidence_conditioned_v1") throw new Error("Stride must default to evidence_conditioned_v1");
if (await unit.inputValue() !== "effective_turns") throw new Error("Product default is not settled work Turns");
const horizonGoal = page.getByLabel(/^在规划视野中显示 Goal/);
const advanced = page.getByText("高级设置", {exact: true});
Expand Down Expand Up @@ -302,7 +302,7 @@ export const replanCadenceScenario = {
if (inherited.source !== "capability_default" || inherited.configuration.count_unit !== "effective_turns" || inherited.configuration.count !== 6) throw new Error("Removing device policy did not restore product default");
await reopenGoalCadence();
await waitForInputValue(englishCount, "6");
if (await englishUnit.inputValue() !== "effective_turns" || await englishStrategy.inputValue() !== "off") throw new Error("Goal editor did not restore product defaults");
if (await englishUnit.inputValue() !== "effective_turns" || await englishStrategy.inputValue() !== "evidence_conditioned_v1") throw new Error("Goal editor did not restore product defaults");
await englishCount.fill("5");
await page.getByRole("button", { name: "Preview changes", exact: true }).click();
const failedReadback = holdGoalReadback();
Expand Down
12 changes: 12 additions & 0 deletions loopx/agent_onboarding.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,8 @@ def _surface_install_command(agent_type: str, cli_bin: str, project: str) -> str
return f"{host_command(cli_bin)} slash-commands --install --surface zcode"
if agent_type == "agy":
return f"{host_command(cli_bin)} slash-commands --install --surface agy"
if agent_type == "antigravity-app":
return f"{host_command(cli_bin)} slash-commands --install --surface antigravity-app"
if agent_type == "kiro-cli":
return f"{host_command(cli_bin)} slash-commands --install --surface kiro-cli"
if agent_type == "pi":
Expand Down Expand Up @@ -297,6 +299,7 @@ def _bootstrap_pack_command(
"cursor-agent": "cursor-agent",
"zcode": "zcode",
"agy": "agy",
"antigravity-app": "antigravity-app",
"kiro-cli": "kiro-cli",
"deepseek-harness": "deepseek-harness",
"deepseek-harness-native": "deepseek-harness-native",
Expand Down Expand Up @@ -373,6 +376,15 @@ def _start_instruction(agent_type: str) -> str:
"wake Prompt; recurring via MaxIterations) when quota allows more "
"work."
)
if agent_type == "antigravity-app":
return (
"Invoke the LoopX skill from `~/.gemini/config/skills` via `/loopx <task>`; "
"after todo writeback, start every turn with `quota should-run`, suspend "
"directly via the native `schedule(DurationSeconds=..., Prompt=...)` tool "
"when `waiting_external` or CI checks are pending (instead of polling), "
"and optionally configure `~/.gemini/config/sidecar.json` for background "
"periodic heartbeats."
)
if agent_type == "kiro-cli":
return (
f"Run `/loopx <task>` (the LoopX skill installed in "
Expand Down
Loading
Loading