Skip to content

Commit 8b9ba07

Browse files
mnriemCopilot
andcommitted
Add generic agent support with customizable command directories
- Add --ai generic option for unsupported AI agents (bring your own agent) - Require --ai-commands-dir to specify where agent reads commands from - Generate Markdown commands with $ARGUMENTS format (compatible with most agents) - Rebuild CHANGELOG from GitHub releases (last 10 releases) - Align version to 0.1.3 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 6fca5d8 commit 8b9ba07

File tree

12 files changed

+110
-309
lines changed

12 files changed

+110
-309
lines changed

.github/workflows/release.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,4 +58,12 @@ jobs:
5858
run: |
5959
chmod +x .github/workflows/scripts/update-version.sh
6060
.github/workflows/scripts/update-version.sh ${{ steps.get_tag.outputs.new_version }}
61+
- name: Commit version bump to main
62+
if: steps.check_release.outputs.exists == 'false'
63+
run: |
64+
git config user.name "github-actions[bot]"
65+
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
66+
git add pyproject.toml
67+
git diff --cached --quiet || git commit -m "chore: bump version to ${{ steps.get_tag.outputs.new_version }} [skip ci]"
68+
git push
6169

.github/workflows/scripts/create-github-release.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,5 +52,7 @@ gh release create "$VERSION" \
5252
.genreleases/spec-kit-template-agy-ps-"$VERSION".zip \
5353
.genreleases/spec-kit-template-bob-sh-"$VERSION".zip \
5454
.genreleases/spec-kit-template-bob-ps-"$VERSION".zip \
55+
.genreleases/spec-kit-template-generic-sh-"$VERSION".zip \
56+
.genreleases/spec-kit-template-generic-ps-"$VERSION".zip \
5557
--title "Spec Kit Templates - $VERSION_NO_V" \
5658
--notes-file release_notes.md

.github/workflows/scripts/create-release-packages.ps1

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
1515
.PARAMETER Agents
1616
Comma or space separated subset of agents to build (default: all)
17-
Valid agents: claude, gemini, copilot, cursor-agent, qwen, opencode, windsurf, codex, kilocode, auggie, roo, codebuddy, amp, q, bob, qoder
17+
Valid agents: claude, gemini, copilot, cursor-agent, qwen, opencode, windsurf, codex, kilocode, auggie, roo, codebuddy, amp, q, bob, qoder, generic
1818
1919
.PARAMETER Scripts
2020
Comma or space separated subset of script types to build (default: both)
@@ -347,6 +347,10 @@ function Build-Variant {
347347
$cmdDir = Join-Path $baseDir ".qoder/commands"
348348
Generate-Commands -Agent 'qoder' -Extension 'md' -ArgFormat '$ARGUMENTS' -OutputDir $cmdDir -ScriptVariant $Script
349349
}
350+
'generic' {
351+
$cmdDir = Join-Path $baseDir ".speckit/commands"
352+
Generate-Commands -Agent 'generic' -Extension 'md' -ArgFormat '$ARGUMENTS' -OutputDir $cmdDir -ScriptVariant $Script
353+
}
350354
}
351355

352356
# Create zip archive
@@ -356,7 +360,7 @@ function Build-Variant {
356360
}
357361

358362
# Define all agents and scripts
359-
$AllAgents = @('claude', 'gemini', 'copilot', 'cursor-agent', 'qwen', 'opencode', 'windsurf', 'codex', 'kilocode', 'auggie', 'roo', 'codebuddy', 'amp', 'q', 'bob', 'qoder')
363+
$AllAgents = @('claude', 'gemini', 'copilot', 'cursor-agent', 'qwen', 'opencode', 'windsurf', 'codex', 'kilocode', 'auggie', 'roo', 'codebuddy', 'amp', 'q', 'bob', 'qoder', 'generic')
360364
$AllScripts = @('sh', 'ps')
361365

362366
function Normalize-List {

.github/workflows/scripts/create-release-packages.sh

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ set -euo pipefail
66
# Usage: .github/workflows/scripts/create-release-packages.sh <version>
77
# Version argument should include leading 'v'.
88
# Optionally set AGENTS and/or SCRIPTS env vars to limit what gets built.
9-
# AGENTS : space or comma separated subset of: claude gemini copilot cursor-agent qwen opencode windsurf codex amp shai bob (default: all)
9+
# AGENTS : space or comma separated subset of: claude gemini copilot cursor-agent qwen opencode windsurf codex amp shai bob generic (default: all)
1010
# SCRIPTS : space or comma separated subset of: sh ps (default: both)
1111
# Examples:
1212
# AGENTS=claude SCRIPTS=sh $0 v0.2.0
@@ -221,13 +221,16 @@ build_variant() {
221221
bob)
222222
mkdir -p "$base_dir/.bob/commands"
223223
generate_commands bob md "\$ARGUMENTS" "$base_dir/.bob/commands" "$script" ;;
224+
generic)
225+
mkdir -p "$base_dir/.speckit/commands"
226+
generate_commands generic md "\$ARGUMENTS" "$base_dir/.speckit/commands" "$script" ;;
224227
esac
225228
( cd "$base_dir" && zip -r "../spec-kit-template-${agent}-${script}-${NEW_VERSION}.zip" . )
226229
echo "Created $GENRELEASES_DIR/spec-kit-template-${agent}-${script}-${NEW_VERSION}.zip"
227230
}
228231

229232
# Determine agent list
230-
ALL_AGENTS=(claude gemini copilot cursor-agent qwen opencode windsurf codex kilocode auggie roo codebuddy amp shai q agy bob qoder)
233+
ALL_AGENTS=(claude gemini copilot cursor-agent qwen opencode windsurf codex kilocode auggie roo codebuddy amp shai q agy bob qoder generic)
231234
ALL_SCRIPTS=(sh ps)
232235

233236
norm_list() {

AGENTS.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ Specify supports multiple AI agents by generating agent-specific command files a
4848
| **Amp** | `.agents/commands/` | Markdown | `amp` | Amp CLI |
4949
| **SHAI** | `.shai/commands/` | Markdown | `shai` | SHAI CLI |
5050
| **IBM Bob** | `.bob/commands/` | Markdown | N/A (IDE-based) | IBM Bob IDE |
51+
| **Generic** | User-specified via `--ai-commands-dir` | Markdown | N/A | Bring your own agent |
5152

5253
### Step-by-Step Integration Guide
5354

0 commit comments

Comments
 (0)