Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ This eliminates the need for special-case mappings throughout the codebase.
- `folder`: Directory where agent-specific files are stored (relative to project root)
- `commands_subdir`: Subdirectory name within the agent folder where command/prompt files are stored (default: `"commands"`)
- Most agents use `"commands"` (e.g., `.claude/commands/`)
- Some agents use alternative names: `"agents"` (copilot), `"workflows"` (windsurf, kilocode, agy), `"prompts"` (codex, kiro-cli), `"command"` (opencode - singular)
- Some agents use alternative names: `"agents"` (copilot), `"workflows"` (windsurf, kilocode), `"prompts"` (codex, kiro-cli), `"command"` (opencode - singular)
- This field enables `--ai-skills` to locate command templates correctly for skill generation
Comment thread
dhilipkumars marked this conversation as resolved.
- `install_url`: Installation documentation URL (set to `None` for IDE-based agents)
- `requires_cli`: Whether the agent requires a CLI tool check during initialization
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ See Spec-Driven Development in action across different scenarios with these comm
| [Mistral Vibe](https://github.com/mistralai/mistral-vibe) | ✅ | |
| [Kimi Code](https://code.kimi.com/) | ✅ | |
| [Windsurf](https://windsurf.com/) | ✅ | |
| [Antigravity (agy)](https://antigravity.google/) | ✅ | |
| [Antigravity (agy)](https://antigravity.google/) | ✅ | Requires `--ai-skills` |
Comment thread
dhilipkumars marked this conversation as resolved.
Outdated
| Generic | ✅ | Bring your own agent — use `--ai generic --ai-commands-dir <path>` for unsupported agents |

## 🔧 Specify CLI Reference
Expand Down Expand Up @@ -246,7 +246,7 @@ specify init my-project --ai vibe
specify init my-project --ai bob

# Initialize with Antigravity support
specify init my-project --ai agy
specify init my-project --ai agy --ai-skills

# Initialize with an unsupported agent (generic / bring your own agent)
specify init my-project --ai generic --ai-commands-dir .myagent/commands/
Expand Down
6 changes: 6 additions & 0 deletions src/specify_cli/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -1413,6 +1413,12 @@ def init(
"copilot"
)

if selected_ai == "agy" and not ai_skills:
console.print("\n[red]Error:[/red] Antigravity explicit command support is deprecated as of version 1.20.5.")
console.print("Please use [cyan]--ai-skills[/cyan] when initializing to install templates as agent skills instead.")
Comment thread
dhilipkumars marked this conversation as resolved.
Outdated
console.print("[yellow]Usage:[/yellow] specify init <project> --ai agy --ai-skills")
raise typer.Exit(1)
Comment thread
dhilipkumars marked this conversation as resolved.
Outdated

# Validate --ai-commands-dir usage
if selected_ai == "generic":
if not ai_commands_dir:
Expand Down
11 changes: 11 additions & 0 deletions tests/test_ai_skills.py
Original file line number Diff line number Diff line change
Expand Up @@ -661,6 +661,17 @@ def test_ai_skills_without_ai_shows_usage(self):
assert "Usage:" in result.output
assert "--ai" in result.output

def test_agy_without_ai_skills_fails(self):
"""--ai agy without --ai-skills should fail with exit code 1."""
from typer.testing import CliRunner

runner = CliRunner()
result = runner.invoke(app, ["init", "test-proj", "--ai", "agy"])

assert result.exit_code == 1
assert "Antigravity explicit command support is deprecated" in result.output
assert "--ai-skills" in result.output

def test_ai_skills_flag_appears_in_help(self):
"""--ai-skills should appear in init --help output."""
from typer.testing import CliRunner
Expand Down
Loading