Skip to content

Commit a13d3d4

Browse files
authored
Merge branch 'main' into main
2 parents 40e8318 + 171b65a commit a13d3d4

141 files changed

Lines changed: 8423 additions & 3935 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ jobs:
5151
uses: actions/configure-pages@v6
5252

5353
- name: Upload artifact
54-
uses: actions/upload-pages-artifact@v3
54+
uses: actions/upload-pages-artifact@v5
5555
with:
5656
path: 'docs/_site'
5757

.github/workflows/test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
uses: actions/checkout@v4
1717

1818
- name: Install uv
19-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0
19+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
2020

2121
- name: Set up Python
2222
uses: actions/setup-python@v6
@@ -37,7 +37,7 @@ jobs:
3737
uses: actions/checkout@v4
3838

3939
- name: Install uv
40-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0
40+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
4141

4242
- name: Set up Python ${{ matrix.python-version }}
4343
uses: actions/setup-python@v6

.zenodo.json

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"title": "Spec Kit",
3+
"description": "Spec Kit is an open source toolkit for Spec-Driven Development (SDD) — a methodology that helps software teams build high-quality software faster by focusing on product scenarios and predictable outcomes. It provides the Specify CLI, slash-command templates, extensions, presets, workflows, and integrations for popular AI coding agents.",
4+
"creators": [
5+
{
6+
"name": "Delimarsky, Den"
7+
},
8+
{
9+
"name": "Riem, Manfred"
10+
}
11+
],
12+
"license": "MIT",
13+
"upload_type": "software",
14+
"keywords": [
15+
"spec-driven development",
16+
"ai coding agents",
17+
"software engineering",
18+
"cli",
19+
"copilot",
20+
"specification"
21+
],
22+
"related_identifiers": [
23+
{
24+
"identifier": "https://github.com/github/spec-kit",
25+
"relation": "isSupplementTo",
26+
"scheme": "url"
27+
}
28+
]
29+
}

AGENTS.md

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -264,13 +264,13 @@ The base classes handle most work automatically. Override only when the agent de
264264
| Override | When to use | Example |
265265
|---|---|---|
266266
| `command_filename(template_name)` | Custom file naming or extension | Copilot → `speckit.{name}.agent.md` |
267-
| `options()` | Integration-specific CLI flags via `--integration-options` | Codex → `--skills` flag |
268-
| `setup()` | Custom install logic (companion files, settings merge) | Copilot → `.agent.md` + `.prompt.md` + `.vscode/settings.json` |
267+
| `options()` | Integration-specific CLI flags via `--integration-options` | Codex → `--skills` flag, Copilot → `--skills` flag |
268+
| `setup()` | Custom install logic (companion files, settings merge) | Copilot → `.agent.md` + `.prompt.md` + `.vscode/settings.json` (default) or `speckit-<name>/SKILL.md` (skills mode) |
269269
| `teardown()` | Custom uninstall logic | Rarely needed; base handles manifest-tracked files |
270270

271271
**Example — Copilot (fully custom `setup`):**
272272

273-
Copilot extends `IntegrationBase` directly because it creates `.agent.md` commands, companion `.prompt.md` files, and merges `.vscode/settings.json`. See `src/specify_cli/integrations/copilot/__init__.py` for the full implementation.
273+
Copilot extends `IntegrationBase` directly because it creates `.agent.md` commands, companion `.prompt.md` files, and merges `.vscode/settings.json`. It also supports a `--skills` mode that scaffolds `speckit-<name>/SKILL.md` under `.github/skills/` using composition with an internal `_CopilotSkillsHelper`. See `src/specify_cli/integrations/copilot/__init__.py` for the full implementation.
274274

275275
### 7. Update Devcontainer files (Optional)
276276

@@ -391,6 +391,24 @@ Implementation: Extends `IntegrationBase` with custom `setup()` method that:
391391
2. Generates companion `.prompt.md` files
392392
3. Merges VS Code settings
393393

394+
**Skills mode (`--skills`):** Copilot also supports an alternative skills-based layout
395+
via `--integration-options="--skills"`. When enabled:
396+
- Commands are scaffolded as `speckit-<name>/SKILL.md` under `.github/skills/`
397+
- No companion `.prompt.md` files are generated
398+
- No `.vscode/settings.json` merge
399+
- `post_process_skill_content()` injects a `mode: speckit.<stem>` frontmatter field
400+
- `build_command_invocation()` returns `/speckit-<stem>` instead of bare args
401+
402+
The two modes are mutually exclusive — a project uses one or the other:
403+
404+
```bash
405+
# Default mode: .agent.md agents + .prompt.md companions + settings merge
406+
specify init my-project --integration copilot
407+
408+
# Skills mode: speckit-<name>/SKILL.md under .github/skills/
409+
specify init my-project --integration copilot --integration-options="--skills"
410+
```
411+
394412
### Forge Integration
395413

396414
Forge has special frontmatter and argument requirements:

CHANGELOG.md

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,82 @@
22

33
<!-- insert new changelog below this comment -->
44

5+
## [0.8.1] - 2026-04-24
6+
7+
### Changed
8+
9+
- fix(plan): use .specify/feature.json to allow /speckit.plan on custom git branches (#2305) (#2349)
10+
- feat(vibe): migrate to SkillsIntegration from the old prompts-based MarkdownIntegration (#2336)
11+
- docs: move community presets table to docs site, add missing entries (#2341)
12+
- docs(presets): add lean preset README and enrich catalog metadata (#2340)
13+
- fix: resolve command references per integration type (dot vs hyphen) (#2354)
14+
- Update product-forge to v1.5.1 in community catalog (#2352)
15+
- chore(deps): bump astral-sh/setup-uv from 8.0.0 to 8.1.0 (#2345)
16+
- fix: replace xargs trim with sed to handle quotes in descriptions (#2351)
17+
- feat: register jira preset in community catalog (#2224)
18+
- feat: Preset screenwriting (#2332)
19+
- chore: release 0.8.0, begin 0.8.1.dev0 development (#2333)
20+
21+
## [0.8.0] - 2026-04-23
22+
23+
### Changed
24+
25+
- feat(presets): Composition strategies (prepend, append, wrap) for templates, commands, and scripts (#2133)
26+
- feat(copilot): support `--integration-options="--skills"` for skills-based scaffolding (#2324)
27+
- docs(install): add pipx as alternative installation method (#2288)
28+
- Add Memory MD community extension (#2327)
29+
- Update version-guard to v1.2.0 (#2321)
30+
- fix: `--force` now overwrites shared infra files during init and upgrade (#2320)
31+
- chore: release 0.7.5, begin 0.7.6.dev0 development (#2322)
32+
33+
## [0.7.5] - 2026-04-22
34+
35+
### Changed
36+
37+
- fix: resolve skill placeholders for all SKILL.md agents, not just codex/kimi (#2313)
38+
- feat(cli): add specify self check and self upgrade stub (#2316)
39+
- Update version-guard to v1.1.0 (#2318)
40+
- docs: move community presets from README to docs/community (#2314)
41+
- catalog: add wireframe extension (v0.1.1) (#2262)
42+
- Move community walkthroughs from README to docs/community (#2312)
43+
- docs(readme): list red-team in community-extensions table (#2311)
44+
- feat(catalog): add red-team extension to community catalog (#2306)
45+
- Add superpowers-bridge community extension (#2309)
46+
- feat: implement preset wrap strategy (#2189)
47+
- fix(agents): block directory traversal in command write paths (#2229) (#2296)
48+
- chore: release 0.7.4, begin 0.7.5.dev0 development (#2299)
49+
50+
## [0.7.4] - 2026-04-21
51+
52+
### Changed
53+
54+
- fix(copilot): use --yolo to grant all permissions in non-interactive mode (#2298)
55+
- feat: add CITATION.cff and .zenodo.json for academic citation support (#2291)
56+
- Add spec-validate to community catalog (#2274)
57+
- feat: register Ripple in community catalog (#2272)
58+
- Add version-guard to community catalog (#2286)
59+
- Add spec-reference-loader to community catalog (#2285)
60+
- Add memory-loader to community catalog (#2284)
61+
- fix(integrations): strip UTF-8 BOM when reading agent context files (#2283)
62+
- Preset fiction book writing1.6 (#2270)
63+
- fix(integrations): migrate Antigravity (agy) layout to .agents/ and deprecate --skills (#2276)
64+
- chore: release 0.7.3, begin 0.7.4.dev0 development (#2263)
65+
66+
## [0.7.3] - 2026-04-17
67+
68+
### Changed
69+
70+
- fix: replace shell-based context updates with marker-based upsert (#2259)
71+
- Add Community Friends page to docs site (#2261)
72+
- Add Spec Scope extension to community catalog (#2172)
73+
- docs: add Community-maintained plugin for Claude Code and GitHub Copilot CLI that installs Spec Kit skills via the plugin marketplace to README (#2250)
74+
- fix: suppress CRLF warnings in auto-commit.ps1 (#2258)
75+
- feat: register Blueprint in community catalog (#2252)
76+
- preset: Update preset-fiction-book-writing to community catalog -> v1.5.0 (#2256)
77+
- chore(deps): bump actions/upload-pages-artifact from 3 to 5 (#2251)
78+
- fix: add reference/*.md to docfx content glob (#2248)
79+
- chore: release 0.7.2, begin 0.7.3.dev0 development (#2247)
80+
581
## [0.7.2] - 2026-04-16
682

783
### Changed

CITATION.cff

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
cff-version: 1.2.0
2+
message: >-
3+
If you use Spec Kit in your research or reference it in a paper,
4+
please cite it using the metadata below.
5+
type: software
6+
title: "Spec Kit"
7+
abstract: >-
8+
Spec Kit is an open source toolkit for Spec-Driven Development (SDD) —
9+
a methodology that helps software teams build high-quality software faster
10+
by focusing on product scenarios and predictable outcomes. It provides the
11+
Specify CLI, slash-command templates, extensions, presets, workflows, and
12+
integrations for popular AI coding agents.
13+
authors:
14+
- given-names: Den
15+
family-names: Delimarsky
16+
alias: localden
17+
- given-names: Manfred
18+
family-names: Riem
19+
alias: mnriem
20+
repository-code: "https://github.com/github/spec-kit"
21+
url: "https://github.github.io/spec-kit/"
22+
license: MIT
23+
version: "0.7.3"
24+
date-released: "2026-04-17"
25+
keywords:
26+
- spec-driven development
27+
- ai coding agents
28+
- software engineering
29+
- cli
30+
- copilot
31+
- specification

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,15 +94,15 @@ uv pip install -e .
9494
# Ensure the `specify` binary in this environment points at your working tree so the agent runs the branch you're testing.
9595

9696
# Initialize a test project using your local changes
97-
uv run specify init <temp-dir>/speckit-test --ai <agent> --offline
97+
uv run specify init <temp-dir>/speckit-test --integration <agent>
9898
cd <temp-dir>/speckit-test
9999

100100
# Open in your agent
101101
```
102102

103103
#### Manual testing process
104104

105-
Any change that affects a slash command's behavior requires manually testing that command through an AI agent and submitting results with the PR.
105+
Any change that affects a slash command's behavior requires manually testing that command through a coding agent and submitting results with the PR.
106106

107107
1. **Identify affected commands** — use the [prompt below](#determining-which-tests-to-run) to have your agent analyze your changed files and determine which commands need testing.
108108
2. **Set up a test project** — scaffold from your local branch (see [Testing setup](#testing-setup)).

0 commit comments

Comments
 (0)