Skip to content

📝 [docs] run: Antigravity runs, --agy, quota guard, hosts page - #84

Draft
danielegaleazzi92 wants to merge 10 commits into
EricTechPro:mainfrom
danielegaleazzi92:feat/agy-orchestrator
Draft

danielegaleazzi92 wants to merge 10 commits into
EricTechPro:mainfrom
danielegaleazzi92:feat/agy-orchestrator

Conversation

@danielegaleazzi92

@danielegaleazzi92 danielegaleazzi92 commented Oct 23, 2026 •

Copy link
Copy Markdown

Note

⏳ Draft · slice 4 of #80 (Antigravity host), the last · stacked on #83 → #82 → #81: merge in order, the diff shows the earlier slices until then

Problem

  • Where: skills/super-board/references/run-workflow.md, skills/super-board/SKILL.md, scripts/super-board-usage.sh, docs/hosts.md, onboard
  • Who: anyone typing /super-board run in Antigravity, or run --agy from Claude
  • What happened: the backend works but nothing tells the orchestrator to use it, or how to tell when the agy quota is gone

Solution

  • run-workflow.md: an "Antigravity runs" section as the twin of "Codex runs" (wave command, lane, router, ladder, no sub-agents, permissions, guards, quota, fallback, precondition, Windows shell); "inside Antigravity, plain run is --agy"; agy no longer halts at the host check; preconditions, the legacy-run scan, the skills-ready host list, the Launch step, the usage guard, the usage_fallback: "agy" bullet, the resume line and the stop line know the host; the run allowlist lists the two lane scripts and the permissions helper (tests/test_run_allowlist.py keeps them honest)
  • SKILL.md: --agy [--low|--high] and --agy=<model> in the run verb, a routing row for --agy and for an Antigravity session, the cardinal rule names agy -p workers
  • scripts/super-board-usage.sh: record recognises the agy status line (quota.<bucket>.{remaining_fraction, reset_time}), converts every bucket to {used_percentage, resets_at} and keeps it in its own snapshot (~/.gemini/super-board/usage.json); check --host agy weighs the buckets of the model the lanes use (--model, else agy.model: a gemini-* slug reads gemini-5h / gemini-weekly, a claude-* / gpt-* slug the 3p-* ones, a model-specific bucket only when the slug names it; no model known weighs every bucket) with the same usage_pause_pct, exits and staleness rules; --host claude is the unchanged default
  • super-board-setup.py check/fix --host agy accepted (the resolver already knows the host since ✨ [feat] lanes: headless Build, QA and Review on Antigravity (run --agy) #83); onboard's silent detect names the host and step 8 runs the permissions helper with consent and reminds about the status line
  • docs/hosts.md: the agy row becomes a supported host, plus a "First run on Antigravity" checklist (install, permissions, a guard probe, an allowed command, skills, quota, one card) with what each failure means

Acceptance criteria

Iteration history

Lane Done Time Details
🔨 author ✅ Oct 23 orchestrator reference + skill flags + usage guard + hosts doc · five suites green on Git Bash

Risk

🟢 Low · documentation for a new path plus one script that gains a second input shape.

  • Door: two-way · revert and the Claude usage guard is the previous script line for line; the references lose a section
  • Blast radius: super-board-usage.sh record for every Claude user (the Claude branch is untouched and tested first in the suite) · the Antigravity path for Antigravity users

Part of #80 (slice 4 of 4), stacked on #83. Windows note in the hosts page: agy runs statusLine.command through cmd /c, where a bare bash is WSL's and exits 127 on C:/ paths; name Git Bash by its space-free path. Note on tests: on Windows Git Bash test_run_allowlist.py and test_writing_format.py need PYTHONUTF8=1 on main too (they read the references with the console code page); with it both pass here.

🤖 Generated with Claude Code

danielegaleazzi92 and others added 3 commits October 23, 2026 17:52
…g host

- super-board-host.sh answers agy on ANTIGRAVITY_AGENT=1 (observed on agy 1.4.6), after the Codex ids and OPENCODE, before CLAUDECODE; SUPER_BOARD_HOST and config host take agy
- setup check accepts host agy; schema, onboard and run-workflow name it (no lane backend yet: the run halts like opencode)
- docs/hosts.md: agy row, detection step and env evidence; tests for the sign, the override, the config key and the empty/id-only cases

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…vity (--hosts agy)

- hooks/agy-hook-adapter.py translates Antigravity PreToolUse payloads, runs the unchanged guard-*.py and answers deny/ask/allow; hooks/agy-hooks.json wires it
- install.sh --hosts agy: entry merged into .agents/hooks.json (other entries kept, --protect-push with --protect-main and kept on re-install, python on Windows), host detected from config/host.sh/an existing entry, no link folder, adapter not counted as a guard
- scripts/super-board-agy-permissions.py writes the lane profile (command/read_file/write_file * + deny rules for dangerous forms and secret paths) or --from-allowlist regex rules; dry run, --apply with backup
- tests: test-agy-hook-adapter.sh, test-agy-permissions.sh, test-install.sh scenario 25; CLAUDE.md install contract

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- the agy install line names it, the SCRIPTS list did not carry it

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@danielegaleazzi92 danielegaleazzi92 changed the title 📝 [docs] run: Antigravity runs, --agy flags, usage guard, hosts checklist 📝 [docs] run: Antigravity runs, --agy flags, quota guard, hosts page Oct 23, 2026
@danielegaleazzi92 danielegaleazzi92 changed the title 📝 [docs] run: Antigravity runs, --agy flags, quota guard, hosts page 📝 [docs] run: Antigravity runs, --agy, quota guard, hosts page Oct 23, 2026
danielegaleazzi92 and others added 6 commits October 23, 2026 22:28
…ithout one

- agy 1.4.6 rewrites its settings.json with a UTF-8 BOM and then loads permissions=<nil>: every lane tool call denied until the file is rewritten; --apply now strips it (test 7)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…run --agy)

- scripts/super-board-agy-lane.sh: brief file + `agy -p --output-format json --json-schema`, model from --agy=/agy.model/agy.ladder, effort from agy.effort or the tier x grade ladder (review high; none when the slug names one), agy.timeout; result = structured_output validated like the Codex lane; raw run kept under inflight/ on failure; quota exhaustion halts (79); denied_actions named in detail
- scripts/super-board-codex-wave.sh takes --codex|--agy and picks the launcher and router (agy.router_model at effort low); process groups and bash resolution work on Windows; super-board-agy-wave.sh is the entry point
- super-board-skills-ready.py knows host agy (.agents/skills up to the repo root, .claude/skills, ~/.agents/skills)
- config-schema: agy block and usage_fallback agy; tests: fake_agy fixture, test-agy-lane.sh, test_agy_lane_schema.py

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… not stdin

- a PowerShell here-string was the one form the lane kept using for it and the permission check kept refusing; the brief now names .claude/super-board/inflight/agy-<n>-<lane>.card.json, removed with the brief

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…s checklist

- run-workflow.md: "Antigravity runs" twin of "Codex runs", plain run inside Antigravity is --agy, agy no longer halts at the host check, preconditions/scan/skills-ready/launch/fallback/resume/stop/allowlist know the host
- SKILL.md: --agy[=<model>] in the run verb and routing; onboard: host detect line and the step-8 permissions/status-line extras; setup --host agy
- super-board-usage.sh: record reads the agy status line (quota buckets), check --host agy weighs every bucket; tests 11-13
- docs/hosts.md: agy is a supported host, with a first-run checklist

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- agy 1.4.6 reports gemini-5h, gemini-weekly, gemini-argon-wtu-weekly, 3p-5h, 3p-weekly: quota is per model family, so a flash run must not pause on an exhausted Argon bucket
- check --host agy takes --model, else agy.model from --config; no model known weighs every bucket; test 14 uses the five real buckets

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…nied on its first command

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@danielegaleazzi92
danielegaleazzi92 force-pushed the feat/agy-orchestrator branch 3 times, most recently from 511da96 to 6a83e2d Compare October 23, 2026 20:56
- agy runs statusLine.command through cmd /c, where a bare bash is WSL's and cannot open C:/ paths (observed: exit 127 on first interactive start)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant