Skip to content

Conversation

@serhiishtokal
Copy link

Summary

This PR adds support for Antigravity (Google's Antigravity IDE) as an AI assistant option in Specify CLI.

Relates to #1213, #1217, and #1220. This is an alternative implementation that:

Changes

CLI (src/specify_cli/init.py)

  • Added Antigravity to AGENT_CONFIG dictionary

Release Scripts

  • Updated create-release-packages.sh and create-release-packages.ps1 to generate Antigravity templates
  • Updated create-github-release.sh to include Antigravity packages

Context Update Scripts

  • Updated scripts/bash/update-agent-context.sh
  • Updated scripts/powershell/update-agent-context.ps1

Documentation

  • Updated AGENTS.md with Antigravity details
  • Updated README.md supported agents table

Versioning

  • Bumped version to 0.0.23 in pyproject.toml
  • Added CHANGELOG entry for 0.0.23

Copilot AI review requested due to automatic review settings December 21, 2025 02:08
Copy link
Contributor

Copilot AI left a 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 Antigravity (described as Google's Antigravity IDE) as a new AI assistant option in the Specify CLI. The implementation follows the established pattern for adding new agents by updating configuration, scripts, documentation, and release tooling.

Key Changes

  • Added Antigravity to the agent configuration with IDE-based settings (requires_cli: False)
  • Updated all release package generation scripts to include Antigravity templates
  • Updated context update scripts (bash and PowerShell) to support Antigravity agent files
  • Added documentation entries and bumped version to 0.0.23

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/specify_cli/__init__.py Added Antigravity to AGENT_CONFIG dictionary and updated help text for --ai option
scripts/bash/update-agent-context.sh Added Antigravity file path, case handling, and updated agent lists in comments
scripts/powershell/update-agent-context.ps1 Added Antigravity file path, switch case, validation set, and updated usage documentation
.github/workflows/scripts/create-release-packages.sh Added Antigravity case block and included in ALL_AGENTS array
.github/workflows/scripts/create-release-packages.ps1 Added Antigravity case block and included in $AllAgents array
.github/workflows/scripts/create-github-release.sh Added Antigravity package files to release artifacts
AGENTS.md Added Antigravity to supported agents table, CLI categories, format documentation, and example code
README.md Added Antigravity to supported agents table and CLI reference documentation
pyproject.toml Bumped version from 0.0.22 to 0.0.23
CHANGELOG.md Added version 0.0.23 entry documenting Antigravity support

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

AGENTS.md Outdated
| **Gemini CLI** | `.gemini/commands/` | TOML | `gemini` | Google's Gemini CLI |
| **GitHub Copilot** | `.github/agents/` | Markdown | N/A (IDE-based) | GitHub Copilot in VS Code |
| **Cursor** | `.cursor/commands/` | Markdown | `cursor-agent` | Cursor CLI |
| **Antigravity** | `.agent/workflows/` | Markdown | `antigravity` | Google's Antigravity IDE |
Copy link

Copilot AI Dec 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the CLI Tool column, Antigravity is listed as "antigravity", but based on the AGENT_CONFIG in init.py where "requires_cli": False, and the Description column calling it "Google's Antigravity IDE", it should be "N/A (IDE-based)" to match the pattern of other IDE-based agents like Windsurf, GitHub Copilot, and IBM Bob.

Suggested change
| **Antigravity** | `.agent/workflows/` | Markdown | `antigravity` | Google's Antigravity IDE |
| **Antigravity** | `.agent/workflows/` | Markdown | N/A (IDE-based) | Google's Antigravity IDE |

Copilot uses AI. Check for mistakes.
GEMINI_FILE="$REPO_ROOT/GEMINI.md"
COPILOT_FILE="$REPO_ROOT/.github/agents/copilot-instructions.md"
CURSOR_FILE="$REPO_ROOT/.cursor/rules/specify-rules.mdc"
ANTIGRAVITY_FILE="$REPO_ROOT/.agent/rules/specify-rules.md"
Copy link

Copilot AI Dec 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The directory path for Antigravity is inconsistent across files. In AGENTS.md and the release package scripts, it's documented as .agent/workflows/, but in the update-agent-context scripts (both bash and PowerShell), it's implemented as .agent/rules/specify-rules.md. These need to be aligned. Based on the pattern of similar IDE-based agents like Windsurf which uses .windsurf/workflows/, the .agent/workflows/ path appears to be the correct choice.

Suggested change
ANTIGRAVITY_FILE="$REPO_ROOT/.agent/rules/specify-rules.md"
ANTIGRAVITY_FILE="$REPO_ROOT/.agent/workflows/specify-rules.md"

Copilot uses AI. Check for mistakes.
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the suggestion, but the paths are intentionally different and serve different purposes:

  • .agent/workflows/ (in AGENTS.md and release scripts) → Where spec-kit command files are generated (e.g., speckit.plan.md, speckit.spec.md)
  • .agent/rules/ (in update-agent-context scripts) → Where the agent context/rules file (specify-rules.md) is stored

This is consistent with other IDE-based agents like Windsurf:

  • Commands go to .windsurf/workflows/
  • Rules go to .windsurf/rules/specify-rules.md

The AGENTS.md table documents where command files are stored, while the update-agent-context scripts manage per-project agent rules/instructions files. These are two distinct concepts with different file locations.

$GEMINI_FILE = Join-Path $REPO_ROOT 'GEMINI.md'
$COPILOT_FILE = Join-Path $REPO_ROOT '.github/agents/copilot-instructions.md'
$CURSOR_FILE = Join-Path $REPO_ROOT '.cursor/rules/specify-rules.mdc'
$ANTIGRAVITY_FILE = Join-Path $REPO_ROOT '.agent/rules/specify-rules.md'
Copy link

Copilot AI Dec 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The directory path for Antigravity is inconsistent across files. In AGENTS.md and the release package scripts, it's documented as .agent/workflows/, but in the update-agent-context scripts (both bash and PowerShell), it's implemented as .agent/rules/specify-rules.md. These need to be aligned. Based on the pattern of similar IDE-based agents like Windsurf which uses .windsurf/workflows/, the .agent/workflows/ path appears to be the correct choice.

Suggested change
$ANTIGRAVITY_FILE = Join-Path $REPO_ROOT '.agent/rules/specify-rules.md'
$ANTIGRAVITY_FILE = Join-Path $REPO_ROOT '.agent/workflows/specify-rules.md'

Copilot uses AI. Check for mistakes.
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the suggestion, but the paths are intentionally different and serve different purposes:

  • .agent/workflows/ (in AGENTS.md and release scripts) → Where spec-kit command files are generated (e.g., speckit.plan.md, speckit.spec.md)
  • .agent/rules/ (in update-agent-context scripts) → Where the agent context/rules file (specify-rules.md) is stored

This is consistent with other IDE-based agents like Windsurf:

  • Commands go to .windsurf/workflows/
  • Rules go to .windsurf/rules/specify-rules.md

The AGENTS.md table documents where command files are stored, while the update-agent-context scripts manage per-project agent rules/instructions files. These are two distinct concepts with different file locations.

AGENTS.md Outdated
- **Claude Code**: `claude` CLI
- **Gemini CLI**: `gemini` CLI
- **Cursor**: `cursor-agent` CLI
- **Antigravity**: `antigravity` CLI
Copy link

Copilot AI Dec 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a contradiction about whether Antigravity is CLI-based or IDE-based. In the AGENT_CONFIG, it's set with "requires_cli": False, but in AGENTS.md at line 313, it's listed under "CLI-Based Agents" with the note "Antigravity: antigravity CLI". Additionally, line 38 of AGENTS.md describes it as "Google's Antigravity IDE" (IDE-based), but then line 313 treats it as CLI-based. This needs to be clarified and made consistent across all documentation and configuration.

Copilot uses AI. Check for mistakes.
- Update AGENTS.md table to use "Antigravity IDE" naming
- Change CLI tool column from 'antigravity' to 'N/A (IDE-based)'
- Update display name in AGENT_CONFIG in __init__.py
- Update agent context scripts (bash and PowerShell)
@MahmoudKhodier
Copy link

i have tried to install speckit from this pull by installing speckit then merging this into it and reinstalling to use it with antigravity. but i get this error "╭──────────────────── Agent Detection Error ─────────────────────╮
│ │
│ agy not found │
│ Install from: None │
│ Antigravity is required to continue with this project type. │
│ │
│ Tip: Use --ignore-agent-tools to skip this check "

am i doing something wrong or must i wait for proper merge

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.

2 participants