-
Notifications
You must be signed in to change notification settings - Fork 41
Feature Request: Add Google Antigravity Support to Project CodeGuard - #71 #74
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Feature Request: Add Google Antigravity Support to Project CodeGuard - #71 #74
Conversation
…st, with make changes in supported files
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds support for Google Antigravity IDE integration by implementing a new format converter that generates .md rule files compatible with Antigravity's workflow system.
Key changes:
- New
AntigravityFormatclass following the establishedBaseFormatpattern used by other IDE integrations - Integration into the conversion pipeline alongside Cursor, Windsurf, Copilot, and Claude Code formats
- Documentation updates in README and getting-started guide to include Antigravity in the list of supported IDEs
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
| src/formats/antigravity.py | New format implementation for Antigravity IDE that generates .md files with YAML frontmatter containing description and optional tags |
| src/formats/init.py | Registers AntigravityFormat in the formats package exports |
| src/convert_to_ide_formats.py | Adds AntigravityFormat to the list of formats generated during rule conversion |
| docs/getting-started.md | Adds Antigravity to the prerequisites section and installation instructions with documentation link |
| README.md | Updates the list of supported IDE formats to include Antigravity |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| Workflows are stored in .agent/workflows/ and can be triggered | ||
| on-demand with /workflow-name in the Antigravity interface. |
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The documentation comments refer to "workflows" but the code uses "rules". According to the get_output_subpath() method (line 35), files are stored in .agent/rules/, not .agent/workflows/. The comment should be updated to say "Rules are stored in .agent/rules/ and can be triggered on-demand with /rule-name in the Antigravity interface" or similar.
| # Optional: Add tags for categorization (if Antigravity supports it) | ||
| if rule.tags: | ||
| yaml_lines.append("tags:") | ||
| for tag in rule.tags: | ||
| yaml_lines.append(f"- {tag}") | ||
|
|
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment says "tags for categorization (if Antigravity supports it)" which suggests uncertainty about the feature support. Either verify that Antigravity supports tags and remove the conditional comment, or remove the tags implementation if support is unverified. Compare with other format implementations like ClaudeCodeFormat which don't include tags.
| # Optional: Add tags for categorization (if Antigravity supports it) | |
| if rule.tags: | |
| yaml_lines.append("tags:") | |
| for tag in rule.tags: | |
| yaml_lines.append(f"- {tag}") | |
| # (No tags: Antigravity does not support tags in frontmatter) |
|
|
||
| 1. **Security rules** are written in unified markdown format (`sources/` directory) | ||
| 2. **Conversion tools** translate rules to IDE-specific formats (Cursor, Windsurf, Copilot, Claude Code) | ||
| 2. **Conversion tools** translate rules to IDE-specific formats (Cursor, Windsurf, Copilot, Claude Code,antigravity) |
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing comma in the list. The list should be "Cursor, Windsurf, Copilot, Claude Code, Antigravity" with a space after the comma before "antigravity". Additionally, "antigravity" should be capitalized to match the naming of other IDEs in the list.
| 2. **Conversion tools** translate rules to IDE-specific formats (Cursor, Windsurf, Copilot, Claude Code,antigravity) | |
| 2. **Conversion tools** translate rules to IDE-specific formats (Cursor, Windsurf, Copilot, Claude Code, Antigravity) |
| Google Antigravity format implementation (.md workflow files). | ||
| Antigravity uses .md files with YAML frontmatter containing: | ||
| - description: Rule description (required by Antigravity spec) | ||
| Workflows are stored in .agent/workflows/ and can be triggered | ||
| on-demand with /workflow-name in the Antigravity interface. |
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The class docstring mentions "Google Antigravity format implementation (.md workflow files)" but should say ".md rule files" to be consistent with the actual implementation. The output path is .agent/rules and other IDEs refer to these as "rules", not "workflows".
| Google Antigravity format implementation (.md workflow files). | |
| Antigravity uses .md files with YAML frontmatter containing: | |
| - description: Rule description (required by Antigravity spec) | |
| Workflows are stored in .agent/workflows/ and can be triggered | |
| on-demand with /workflow-name in the Antigravity interface. | |
| Google Antigravity format implementation (.md rule files). | |
| Antigravity uses .md files with YAML frontmatter containing: | |
| - description: Rule description (required by Antigravity spec) | |
| Rules are stored in .agent/rules/ and can be triggered | |
| on-demand with /rule-name in the Antigravity interface. |
| """ | ||
| Antigravity Format Implementation | ||
| Generates .md workflow files for Google Antigravity with YAML frontmatter. |
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The module docstring says "Generates .md workflow files for Google Antigravity" but should say "rule files" instead of "workflow files" to match the actual implementation and be consistent with other IDE format implementations.
| Generates .md workflow files for Google Antigravity with YAML frontmatter. | |
| Generates .md rule files for Google Antigravity with YAML frontmatter. |
| yaml_lines = [] | ||
|
|
||
| # Add description (required by Antigravity spec) | ||
| desc = self._format_yaml_field("description", rule.description) | ||
| if desc: | ||
| yaml_lines.append(desc) | ||
|
|
||
| # Optional: Add tags for categorization (if Antigravity supports it) | ||
| if rule.tags: | ||
| yaml_lines.append("tags:") | ||
| for tag in rule.tags: | ||
| yaml_lines.append(f"- {tag}") |
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing version field in the YAML frontmatter. All other IDE format implementations (CursorFormat, WindsurfFormat, CopilotFormat, ClaudeCodeFormat) include a version field using self.version. Consider adding yaml_lines.append(f"version: {self.version}") for consistency, unless Antigravity specifically doesn't support version metadata.
| Antigravity uses .md files with YAML frontmatter containing: | ||
| - description: Rule description (required by Antigravity spec) | ||
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incomplete frontmatter documentation. The docstring lists only description in the frontmatter (lines 18-20), but the implementation also includes tags (lines 60-64). Update the docstring to document all fields that may be included in the YAML frontmatter.
| - tags: Optional list of tags for categorization (if present) |
| Note: | ||
| Antigravity workflows use simple markdown with description-only | ||
| frontmatter. Language/glob information is not needed as workflows | ||
| are triggered manually by the user. |
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistent terminology: the docstring says "Antigravity workflows use simple markdown" but the actual implementation is generating "rules" (as evidenced by the output path .agent/rules). Consider changing "workflows" to "rules" throughout the documentation to match the implementation.
|
|
||
| 1. **Security rules** are written in unified markdown format (`sources/` directory) | ||
| 2. **Conversion tools** translate rules to IDE-specific formats (Cursor, Windsurf, Copilot, Claude Code) | ||
| 2. **Conversion tools** translate rules to IDE-specific formats (Cursor, Windsurf, Copilot, Claude Code,antigravity) |
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistent capitalization: the code uses "antigravity" (lowercase) in README.md but "AntiGravity" in docs/getting-started.md. This should be standardized across all documentation. Use consistent casing (either "Antigravity" or "AntiGravity") throughout.
| 2. **Conversion tools** translate rules to IDE-specific formats (Cursor, Windsurf, Copilot, Claude Code,antigravity) | |
| 2. **Conversion tools** translate rules to IDE-specific formats (Cursor, Windsurf, Copilot, Claude Code, AntiGravity) |
| === "Google AntiGravity" | ||
| Google AntiGravity uses `.agent/rules` for rule configuration. | ||
|
|
||
| :material-book-open-page-variant: [Google AntiGravity Instructions](https://codelabs.developers.google.com/getting-started-google-antigravity#6) | ||
|
|
Copilot
AI
Nov 29, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The URL https://codelabs.developers.google.com/getting-started-google-antigravity#6 appears to be a placeholder or non-existent resource. Google Antigravity is not a known/documented Google product or IDE. This appears to be either a fictional product (possibly referencing the Google "antigravity" Easter egg) or a placeholder for a future product. Please verify this is a real, publicly available product and update with the correct documentation URL.
| === "Google AntiGravity" | |
| Google AntiGravity uses `.agent/rules` for rule configuration. | |
| :material-book-open-page-variant: [Google AntiGravity Instructions](https://codelabs.developers.google.com/getting-started-google-antigravity#6) |
Summary
Add native support for Google Antigravity workflows, enabling CodeGuard security rules to be triggered on-demand in the Antigravity IDE using
/codeguard-*commands.Architecture
Following the established
BaseFormatpattern used by Cursor, Windsurf, and other IDE integrations:Files to Create
src/formats/antigravity.py- AntigravityFormat classFiles to Modify
src/formats/__init__.py- Register AntigravityFormatsrc/convert_to_ide_formats.py- Add to conversion pipelineREADME.md- Update supported IDEs listTest
Below is the Secreen shot from atigravity IDE that shows proper working of rules :