Skip to content

feat(install): add antigravity and grok harness targets - #36

Merged
3metaJun merged 1 commit into
mainfrom
feat/t3code-antigravity-grok-harness
Oct 6, 2026
Merged

3metaJun merged 1 commit into
mainfrom
feat/t3code-antigravity-grok-harness

Conversation

@3metaJun

@3metaJun 3metaJun commented Oct 6, 2026

Copy link
Copy Markdown
Owner

Problem

mstack could not install into Antigravity (agy) or Grok, two providers T3 Code runs. Antigravity reads user skills only from ~/.gemini/antigravity-cli/skills and ~/.gemini/config/skills, never ~/.agents/skills. Grok reads ~/.agents/skills, so it should reuse the shared copy.

Solution

  • Add antigravity (own root, HARNESS_SKILLS_ANTIGRAVITY_DIR) and grok (shared copy, HARNESS_SKILLS_GROK_DIR) to profiles/harnesses.json, with empty adapters because the canonical skills already carry name. Cursor already reads ~/.agents/skills, so it gets a docs note only.
  • Both CLIs take the prompt as the value of a flag (agy --print, grok --single), so --model placed before the prompt was swallowed as the prompt. The runtime schema gains optional promptArgs, which run-role places directly before the prompt.
  • Read-only args: Grok uses --tools read_file,list_dir,grep --disallowed-tools search_tool,use_tool (CLI-enforced; a shell-write prompt had no shell tool, and the tool list showed only those three). Antigravity uses --mode plan, which is mode-level only: it left the workspace untouched but still wrote its own plan file under ~/.gemini/antigravity-cli/. README documents this limit next to OpenCode's.
  • Update install usage text, models.example.json, environments.example.json, README and docs/harness-adapters.md (Grok, Antigravity and Cursor rows with sources).
  • Left alone: profiles/upstreams.json and docs/guide/01-setup.md still say <codex|claude|opencode|pi>. They are hash-gated by upstream-manifest.json.
  • Unverified: whether agy discovers agent files in ~/.gemini/antigravity-cli/agents. The README says so.

Verification

  • npm test: 298 pass, 0 fail. npm run check-package passes.
  • Tests set the new HARNESS_SKILLS_* env vars so they never write to the real home. New coverage: default and overridden roots, shared Grok copy vs separate Antigravity copy, artifact roots, and run-role argument order.
  • Live: run-role --read-only --execute and smoke-harnesses --execute passed for agy 1.2.17 (--model gemini-3.8-flash-medium) and grok 1.0.46 (--model grok-4.5), including a file read under the read-only args.

Model: Claude Sonnet 5.5
Harness: Claude Code

🤖 Generated with Claude Code

Antigravity (agy) reads user skills only from ~/.gemini/antigravity-cli/skills
and ~/.gemini/config/skills, so it gets its own non-shared target. Grok reads
~/.agents/skills, so it joins the shared copy used by Codex, OpenCode and pi.

Both CLIs take the prompt as the value of a flag (agy --print, grok --single),
so the runtime schema gains optional promptArgs that run-role places directly
before the prompt. Read-only args: agy --mode plan (mode level only), grok
--tools read_file,list_dir,grep plus --disallowed-tools search_tool,use_tool.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@3metaJun
3metaJun merged commit 65a15c3 into main Oct 6, 2026
9 checks passed
@3metaJun
3metaJun deleted the feat/t3code-antigravity-grok-harness branch October 6, 2026 05:46
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