feat(agent-manager): add Antigravity CLI adapter#133
Open
nnhhoang wants to merge 1 commit into
Open
Conversation
Detect, list, and inspect Google's Antigravity CLI (`agy`) alongside Claude,
Codex, Gemini, and Grok.
- AntigravityCliAdapter (self-contained, parsing inline like the other recent
adapters): detects `agy` processes via matchArgv0, resolves each live process
to its conversation through
~/.gemini/antigravity-cli/cache/last_conversations.json (the { cwd:
conversationId } registry), and reads the transcript from
brain/<id>/.system_generated/logs/transcript.jsonl. The last <USER_REQUEST>
prompt is the summary; the newest record created_at is the last activity.
- AgentType 'antigravity_cli', AGENTS launch map entry (command `agy`), package
exports.
- Registered in the agent command and channel runner; added to TYPE_LABELS,
--type help, and VALID_AGENT_TYPES. README matrix flips Antigravity remote
control to yes.
- Independent of the existing `antigravity` IDE environment, the same way
gemini_cli is independent of the gemini environment.
Verified against a real agy session on disk: listSessions and getConversation
parse the on-disk conversation, and detectAgents resolves a live agy pid via
last_conversations.json to its conversation and summary.
09604b5 to
617efc6
Compare
| * ~/.gemini/antigravity-cli/cache/last_conversations.json, which the CLI | ||
| * maintains as a `{ <cwd>: <conversationId> }` map of the current conversation | ||
| * per workspace. The process cwd is the join key. | ||
| * 3. Reading the transcript from |
Owner
There was a problem hiding this comment.
The implementation does not fully satisfy the stated requirement for historical Antigravity CLI sessions. listSessions() only reads cache/last_conversations.json, which is documented as the current conversation per cwd, so older brain/ transcripts can be missed.
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.
Summary
Adds an
antigravity_cliagent adapter so ai-devkit can detect, list, and inspect Google's Antigravity CLI (agy) alongside Claude, Codex, Gemini, and Grok. This is the runtime/agent side of Antigravity and is independent of the existingantigravityenvironment (which configures the Antigravity IDE), the same waygemini_cliis independent of thegeminienvironment.How it works
agyprocesses viamatchArgv0('agy').~/.gemini/antigravity-cli/cache/last_conversations.json, a{ "<cwd>": "<conversationId>" }map the CLI keeps per workspace (ANTIGRAVITY_CLI_HOMEoverrides the base).brain/<conversationId>/.system_generated/logs/transcript.jsonl: user prompts are the text inside<USER_REQUEST>...</USER_REQUEST>oftype: "USER_INPUT"records, assistant turns aresource: "MODEL",SYSTEMrecords are skipped. Summary is the last user request; last activity is the newest recordcreated_at.Changes
AntigravityCliAdapter(self-contained, inline parsing like the other recent adapters) + unit tests.AgentType/StartableAgentTypegainantigravity_cli;AGENTS.antigravity_cli = { command: 'agy', matches: matchArgv0('agy') }; exported from the package.agentcommand and channel runner;TYPE_LABELS,--typehelp, andVALID_AGENT_TYPESupdated; README matrix flips Antigravity remote control to yes.docs/ai/*/feature-antigravity-cli-adapter.md.Testing
npx nx run agent-manager:testandnpx nx run cli:testpass (husky pre-commit ran all packages).agysession on disk:listSessions()andgetConversation()parse the on-disk conversation, anddetectAgents()with a liveagyprocess resolves the cwd vialast_conversations.jsonto its conversation and summary.