feat: add support for PI coding agent#1596
Open
isanchez31 wants to merge 1 commit intogithub:mainfrom
Open
Conversation
7352c39 to
05642ff
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
Adds PI as a newly supported AI coding agent across Spec Kit’s agent configuration, extension command registration, release packaging, devcontainer setup, and documentation.
Changes:
- Registers the
piagent in core agent config and the extension command registrar with.pi/skillsmarkdown commands using$ARGUMENTS. - Updates agent-context update scripts (bash + PowerShell) and release artifacts (ZIP packaging + GitHub release upload list) to include PI.
- Updates docs (README/AGENTS) and devcontainer bootstrap to install the PI CLI via npm.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
src/specify_cli/extensions.py |
Adds pi command registration target directory/format for extension-installed commands. |
src/specify_cli/__init__.py |
Registers pi in AGENT_CONFIG and updates specify init --ai help text. |
scripts/powershell/update-agent-context.ps1 |
Allows -AgentType pi and adds a PI update target. |
scripts/bash/update-agent-context.sh |
Adds pi as a supported agent type and update case. |
README.md |
Lists PI as a supported agent. |
AGENTS.md |
Documents PI directory/format/CLI requirements and adds PI to “Markdown format” list. |
.github/workflows/scripts/create-release-packages.sh |
Generates PI template ZIPs using .pi/skills and adds PI to agent list. |
.github/workflows/scripts/create-github-release.sh |
Uploads PI ZIPs as part of the GitHub release. |
.devcontainer/post-create.sh |
Installs the PI CLI via npm during devcontainer provisioning. |
Comments suppressed due to low confidence (5)
scripts/bash/update-agent-context.sh:751
print_summary()'s usage string is now more out-of-sync with what the script actually supports:update_specific_agent()includes cases forrooandamp, but the usage line does not list them. Please update the usage text to reflect all supported agent types so users don’t get incorrect guidance.
log_info "Usage: $0 [claude|gemini|copilot|cursor-agent|qwen|opencode|codex|windsurf|kilocode|auggie|codebuddy|shai|q|bob|qoder|pi]"
scripts/powershell/update-agent-context.ps1:29
- The comment header lists supported agents but doesn’t include
pieven though it’s now accepted inValidateSet. Please update the header documentation so it stays consistent with the parameter validation and switch cases.
[ValidateSet('claude','gemini','copilot','cursor-agent','qwen','opencode','codex','windsurf','kilocode','auggie','roo','codebuddy','amp','shai','q','bob','qoder','pi')]
[string]$AgentType
src/specify_cli/extensions.py:684
- New
piagent support inAGENT_CONFIGSisn’t covered by tests. Sincetests/test_extensions.pyalready verifies command registration paths for other agents (e.g., Claude), consider adding a similar test that creates a.pi/skillsdir and asserts commands are registered into that directory. This helps prevent regressions in agent directory mapping.
"pi": {
"dir": ".pi/skills",
"format": "markdown",
"args": "$ARGUMENTS",
"extension": ".md"
.github/workflows/scripts/create-release-packages.sh:231
- The script header comment documenting the allowed
AGENTSsubset is now inaccurate (it omits several entries present inALL_AGENTS, including the newly addedpi). Consider deriving that comment fromALL_AGENTSor updating it so the usage docs match the actual supported values.
# Determine agent list
ALL_AGENTS=(claude gemini copilot cursor-agent qwen opencode windsurf codex kilocode auggie roo codebuddy amp shai q bob qoder pi)
ALL_SCRIPTS=(sh ps)
src/specify_cli/init.py:989
- The
--aihelp text is hard-coded and currently omits supported agents (e.g.,roois present inAGENT_CONFIGbut missing from the help string). Since validation/error output is derived fromAGENT_CONFIG.keys(), consider generating this help text fromAGENT_CONFIG(or at least updating the list) so the CLI help stays accurate as agents are added.
ai_assistant: str = typer.Option(None, "--ai", help="AI assistant to use: claude, gemini, copilot, cursor-agent, qwen, opencode, codex, windsurf, kilocode, auggie, codebuddy, amp, shai, q, bob, qoder, or pi"),
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Collaborator
|
@isanchez31 Can you pull in the latest changes from main and address the Copilot feedback? |
isanchez31
pushed a commit
to isanchez31/spec-kit
that referenced
this pull request
Feb 28, 2026
- Add PI agent to PowerShell release packaging script (Build-Variant switch, $AllAgents array, and header comment) - Add PI to update_all_existing_agents() in both bash and PowerShell context update scripts - Fix incomplete agent lists in usage text and header comments across bash and PowerShell scripts (add missing roo, codebuddy, amp, pi) - Add missing roo agent to --ai CLI help text in __init__.py - Add missing shai case to PowerShell release packaging Build-Variant for parity with bash script https://claude.ai/code/session_01H35vM1ezDF2mJQchKtxYHx
Add PI as a supported AI coding agent across all Spec Kit components: - AGENT_CONFIG and AGENT_CONFIGS entries with .pi/skills/ directory structure - Bash and PowerShell update-agent-context scripts - Release packaging scripts (sh and ps1) - GitHub release script zip entries - README.md supported agents table and CLI reference - AGENTS.md agents table - Devcontainer post-create.sh CLI installation
05642ff to
b718fcb
Compare
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
.pi/skills/directory with Markdown command format and$ARGUMENTSplaceholdernpm install -g @mariozechner/pi-coding-agent@latestChanges
piinAGENT_CONFIGand extension systemAGENT_CONFIGSTest plan
specify init --ai picreates.pi/skills/with correct Markdown commandsspecify init --ai pi --script psworks with PowerShell variantspec-kit-template-pi-sh-*.zipandspec-kit-template-pi-ps-*.zip