release: v0.7.0 — MCP bridge and AGY resilience - #22
Merged
Conversation
Publish the accumulated MCP, blind multi-engine review, AGY write-path, and failure-diagnostic work while correcting the AGY 1.1.2 compatibility record. Constraint: Keep v0.7.0 on the existing positional AGY transport Rejected: Switch AGY to stdin in the release commit | deferred to isolated v0.7.1 compatibility work Confidence: high Scope-risk: moderate Not-tested: OAuth fail-fast with revoked real credentials
There was a problem hiding this comment.
Pull request overview
This PR prepares the v0.7.0 release by bumping version identifiers across the package/plugin metadata, updating the READMEs and changelog to reflect the current AGY/MCP behavior notes, and making the MCP identity test derive the advertised version from the plugin manifest instead of a hard-coded string.
Changes:
- Bump version strings to
0.7.0acrosspackage.json, plugin manifest, lockfile, and marketplace metadata. - Update README (EN + zh-TW) pinned-install snippets and engine/security notes around AGY transcript recovery vs stdin transport.
- Update MCP test to compare
serverInfo.versionagainst the plugin manifest version dynamically.
Reviewed changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tests/gemini-mcp.test.mjs | Avoids hard-coded MCP server version by reading it from the plugin manifest. |
| README.zh-TW.md | Updates pinned-install tag examples and clarifies gemini-vs-agy stdin/positional behavior notes for v0.7.0. |
| README.md | Updates pinned-install tag examples and clarifies gemini-vs-agy stdin/positional behavior notes for v0.7.0. |
| plugins/gemini/CHANGELOG.md | Moves “Unreleased” to a v0.7.0 release header and refreshes AGY 1.1.2 compatibility notes. |
| plugins/gemini/.claude-plugin/plugin.json | Bumps plugin version to 0.7.0. |
| package.json | Bumps package version to 0.7.0. |
| package-lock.json | Updates lockfile version fields to 0.7.0. |
| .claude-plugin/marketplace.json | Updates marketplace metadata/plugin entry versions to 0.7.0. |
Comments suppressed due to low confidence (1)
plugins/gemini/CHANGELOG.md:18
- This changelog entry says the README pinned-install examples were updated to
v0.6.6/v0.6.7, but in this release the README snippets were bumped tov0.7.0and the "newer tag" example tov0.7.1. Keeping the old versions here makes the 0.7.0 release notes internally inconsistent.
- **AGY 1.1.2 compatibility assessment.** Windows machine validation uses AGY 1.1.2 as the current baseline: read-only foreground and background tasks both completed in 15 seconds or less, returned the expected marker, and matched the conversation ID and on-disk transcript. The isolated fake-AGY review regression and the complete 232-test suite also pass. A corrected direct probe confirmed the new auto-print syntax: supplying the prompt on stdin with no `--print` flag exited 0 and returned the marker on stdout; `--print`, `-p`, and `--prompt` still require their own string argument. With that stdin syntax, an invalid `--model` exited 1, wrote a non-empty error plus the available-model list to stderr, and did not silently fall back. The earlier exit-0 observation was a malformed probe where `--print` consumed `--model` as its prompt argument. The upstream changelog also documents OAuth-code input through `/dev/tty` or Windows `CONIN$` when stdin carries the prompt, plus fail-fast behavior when no controlling terminal exists; real credentials were not revoked to retest that path. Plugin v0.7.0 still uses positional `agy --print <prompt>` and keeps transcript recovery authoritative; the stdin transport is deferred to a version-gated adapter change. The nested-command allowlist change mostly does not affect the plugin's `--write` path because it uses `--dangerously-skip-permissions`, while MCP shutdown cleanup helps only when the user's AGY configuration loads MCP servers. The plugin still does not expose AGY `--agent` selection and does not change its `--write` permission flags.
- **AGY 1.1.0 impact assessment.** AGY 1.1.0 (released 2026-07-08) makes `request-review` the default execution mode: it pauses before file writes to show an interactive line-level diff preview. Machine-verified 2026-07-09 that `--dangerously-skip-permissions` still fully suppresses this pause for a headless `--engine agy --write` turn — no `--mode accept-edits` workaround needed. Also confirmed via `agy --help` on 1.1.0 that the four other flags this plugin depends on (`--print`, `--continue`, `--print-timeout`) are unchanged, and via the upstream tracker that [google-gemini/gemini-cli#27466](https://github.com/google-gemini/gemini-cli/issues/27466) (`agy --print` empty stdout) remains open as of 2026-06-23, so `agy-transcript.mjs`'s transcript-recovery path is still required. The `/agents` panel global-config-dir fix in 1.1.0 (`~/.gemini/antigravity-cli/` → `~/.gemini/config/`) targets subagent definitions, not the transcript "brain" root this plugin reads — no path change there.
- **Known limitation found, not yet fixed: `getAgyLoginStatus()` is stale for AGY 1.1.0.** It infers AGY's login state from the shared gemini CLI credential file (`~/.gemini/oauth_creds.json`), per a comment asserting "AGY stores no credential of its own." That is no longer true: AGY 1.1.0's `cli.log` shows a distinct `consumerOAuth` flow ("You are not logged into Antigravity" / "authenticated successfully as ...") that is independent of the gemini CLI's OAuth state and is established by running `agy` interactively, not `gemini`. Machine-verified 2026-07-09: `~/.gemini/oauth_creds.json` stayed untouched (and reported "expired") through two `gemini`-driven logins, while `agy --print` failed with `authentication failed or timed out` until the user logged in via `agy` directly — after which the shared-credential-based status function would still have reported AGY as logged out. Where AGY 1.1.0 persists its own token was not located (not a plaintext file under `~/.gemini` or `%APPDATA%`/`%LOCALAPPDATA%`; likely OS credential storage), so `getAgyLoginStatus()` was left as-is rather than patched with an unverified detection heuristic.
- **macOS AGY is now platform-verified.** On macOS (agy 1.0.7) the AGY brain root is `~/.gemini/antigravity-cli/brain` — the same path already first in `agyBrainRoots()` — so `--engine agy` works out of the box: `gemini-companion.mjs task --engine agy` was run end-to-end on macOS and recovered the response from the transcript (`<conv>/.system_generated/logs/transcript{,_full}.jsonl`, matching the expected layout), and the upstream no-pipe behavior of `agy --print` ([google-gemini/gemini-cli#27466](https://github.com/google-gemini/gemini-cli/issues/27466)) was reproduced on macOS (0 bytes reach stdout through a pipe), confirming transcript recovery is required there too. Updated README (EN + zh-TW) Engine Routing / Troubleshooting / Known limitations, the `gemini-prompting` antipatterns reference, and the `agy-transcript.mjs` platform notes; TODO-3 (platform paths) is resolved, and the "no brain root" reason string now tells the user to run `agy` once instead of pointing at an internal TODO. No behavior change — comments, docs, and one user-facing message only.
- **README install snippets and dependency table refreshed to the current release.** Pinned-install examples now reference the latest tag `v0.6.6` (was the stale `v0.6.0`), the "newer tag" example bumped to `v0.6.7`, and the AGY dependency row reads `≥ 1.0.3` (1.0.7 verified on macOS). Docs only, no behavior change.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.
Publishes the accumulated MCP bridge, blind multi-engine review, AGY write-path, and failure-diagnostic work. Corrects the AGY 1.1.2 compatibility record and keeps v0.7.0 on the existing positional AGY transport; stdin migration remains isolated to v0.7.1. Validation: npm test (232/232), npm run check-version, and npm run verify-contracts.