Skip to content
Merged
Show file tree
Hide file tree
Changes from all 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 .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<!-- How did you test your changes? -->

- [ ] Tested locally with `uv run specify --help`
- [ ] Ran existing tests with `uv sync && uv run pytest`
- [ ] Ran existing tests with `uv sync --extra test && uv run pytest`
- [ ] Tested with a sample project (if applicable)

## AI Disclosure
Expand Down
10 changes: 8 additions & 2 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ on:
branches: ["main"]
paths:
- 'docs/**'
- 'media/**'
- 'README.md'
- 'CONTRIBUTING.md'
- 'CODE_OF_CONDUCT.md'
- 'SECURITY.md'
- 'SUPPORT.md'

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
Expand All @@ -26,7 +32,7 @@ concurrency:
jobs:
# Build job
build:
if: github.repository == 'github/spec-kit'
if: github.repository == 'tikalk/agentic-sdlc-spec-kit'
runs-on: ubuntu-latest
steps:
- name: Checkout
Expand Down Expand Up @@ -57,7 +63,7 @@ jobs:

# Deploy job
deploy:
if: github.repository == 'github/spec-kit'
if: github.repository == 'tikalk/agentic-sdlc-spec-kit'
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ env/
*.log
.env
.env.local
.envrc
*.lock
tmp/
bin/
Expand Down
25 changes: 25 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,31 @@

All notable changes to the Specify CLI and templates are documented here.

## [1.0.4+adlc3] - 2026-09-11

### Added

- **Project configuration CLI**: Added `specify config` for inspecting persisted
initialization settings, safely changing feature numbering,
delegating extension lifecycle commands, and managing the team-directives
source after initialization. Added the corresponding reference and local
development documentation.
Script and skills-layout changes use `specify integration upgrade`.
Read-only settings receive specific guidance, team-directives failures report
partial installation and retry guidance, and unsetting an absent extension
distinguishes saved-source cleanup from an already-unset configuration.

### Changed

- **Preset catalog validation**: A present `catalogs` value in
`.specify/preset-catalogs.yml` must now be a list. Empty, falsy non-list
values such as `{}`, `""`, `0`, and `false` now report a validation error
instead of silently behaving as an empty catalog configuration.
- **Re-initialization team-directives state**: Re-running `specify init`
without `--team-ai-directives` now drops previously tracked MCP ownership
metadata alongside the directives source, preventing stale configuration
records.

# [1.0.4+adlc1] - 2026-09-03

### Changed
Expand Down
4 changes: 2 additions & 2 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ authors:
- given-names: Manfred
family-names: Riem
alias: mnriem
repository-code: "https://github.com/github/spec-kit"
url: "https://github.github.io/spec-kit/"
repository-code: "https://github.com/tikalk/agentic-sdlc-spec-kit"
url: "https://tikalk.github.io/agentic-sdlc-spec-kit/"
license: MIT
version: "0.10.2"
date-released: "2026-06-11"
Expand Down
4 changes: 4 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,10 @@ job until a follow-up cleanup tightens the threshold.

### Manual testing

This section covers testing slash-command behavior through a coding agent and
reporting those results in a pull request. For post-initialization configuration,
run the automated verifier in the [local development guide](docs/local-development.md#4-verify-post-initialization-configuration).

#### Testing setup

```bash
Expand Down
2 changes: 1 addition & 1 deletion INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -480,7 +480,7 @@ uv tool install agentic-sdlc-specify-cli --force --from git+https://github.com/t
echo $GITHUB_TOKEN # or $GITLAB_TOKEN
```
4. Check token has access to the repository
5. See [authentication documentation](https://github.github.io/spec-kit/reference/authentication.html) for more details
5. See [authentication documentation](https://tikalk.github.io/agentic-sdlc-spec-kit/reference/authentication.html) for more details

### Issue: "No AI agent detected"

Expand Down
15 changes: 9 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ This fork represents the evolution from a development process to a complete orga
<a href="https://github.com/tikalk/agentic-sdlc-spec-kit/actions/workflows/release.yml"><img src="https://github.com/tikalk/agentic-sdlc-spec-kit/actions/workflows/release.yml/badge.svg" alt="Release"/></a>
<a href="https://github.com/tikalk/agentic-sdlc-spec-kit/stargazers"><img src="https://img.shields.io/github/stars/tikalk/agentic-sdlc-spec-kit?style=social" alt="GitHub stars"/></a>
<a href="https://github.com/tikalk/agentic-sdlc-spec-kit/blob/main/LICENSE"><img src="https://img.shields.io/github/license/tikalk/agentic-sdlc-spec-kit" alt="License"/></a>
<a href="https://github.github.io/spec-kit/"><img src="https://img.shields.io/badge/docs-GitHub_Pages-blue" alt="Documentation"/></a>
<a href="https://tikalk.github.io/agentic-sdlc-spec-kit/"><img src="https://img.shields.io/badge/docs-GitHub_Pages-blue" alt="Documentation"/></a>
</p>

<p align="center">
Expand Down Expand Up @@ -396,6 +396,9 @@ specify init <project> --team-ai-directives https://github.com/your-org/team-ai-
specify init <project> --team-ai-directives ~/workspace/team-ai-directives
```

To change or remove the source after initialization, see
[`specify config`](./docs/reference/configuration.md).

Accepted sources are a local directory, a GitHub/GitLab archive URL, or a direct `.zip`/`.tar.gz` URL. Plain `.git` clone URLs are not supported.

**Private Repositories**: If your team-ai-directives repository is private, configure authentication in `~/.specify/auth.json`:
Expand Down Expand Up @@ -469,7 +472,7 @@ to install.

## 🤖 Supported AI Coding Agent Integrations

Spec Kit works with 30+ AI coding agents — both CLI tools and IDE-based assistants. See the full list with notes and usage details in the [Supported AI Coding Agent Integrations](https://github.github.io/spec-kit/reference/integrations.html) guide.
Spec Kit works with 30+ AI coding agents — both CLI tools and IDE-based assistants. See the full list with notes and usage details in the [Supported AI Coding Agent Integrations](https://tikalk.github.io/agentic-sdlc-spec-kit/reference/integrations.html) guide.

Run `specify integration list` to see all available integrations in your installed version.

Expand Down Expand Up @@ -536,7 +539,7 @@ Mission-driven SDLC automation with supervision modes and safety guardrails:

## 🔧 Specify CLI Reference

For full command details, options, and examples, see the [CLI Reference](https://github.github.io/spec-kit/reference/overview.html).
For full command details, options, and examples, see the [CLI Reference](https://tikalk.github.io/agentic-sdlc-spec-kit/reference/overview.html).

## 🧩 Making Spec Kit Your Own: Extensions & Presets

Expand Down Expand Up @@ -569,7 +572,7 @@ specify extension add <extension-name>

For example, extensions could add Jira integration, post-implementation code review, V-Model test traceability, or project health diagnostics.

See the [Extensions reference](https://github.github.io/spec-kit/reference/extensions.html) for the full command guide. Browse the [community extensions](#-community-extensions) above for what's available.
See the [Extensions reference](https://tikalk.github.io/agentic-sdlc-spec-kit/reference/extensions.html) for the full command guide. Browse the [community extensions](#-community-extensions) above for what's available.

### Presets — Customize Existing Workflows

Expand All @@ -585,7 +588,7 @@ specify preset add <preset-name>

For example, presets could restructure spec templates to require regulatory traceability, adapt the workflow to fit the methodology you use (e.g., Agile, Kanban, Waterfall, jobs-to-be-done, or domain-driven design), add mandatory security review gates to plans, enforce test-first task ordering, or localize the entire workflow to a different language. The [pirate-speak demo](https://github.com/mnriem/spec-kit-pirate-speak-preset-demo) shows just how deep the customization can go. Multiple presets can be stacked with priority ordering.

See the [Presets reference](https://github.github.io/spec-kit/reference/presets.html) for the full command guide, including resolution order and priority stacking.
See the [Presets reference](https://tikalk.github.io/agentic-sdlc-spec-kit/reference/presets.html) for the full command guide, including resolution order and priority stacking.

## 📦 Bundles: Role-Based Setups

Expand Down Expand Up @@ -1067,7 +1070,7 @@ The report is saved to `SPECIFY_FEATURE_DIRECTORY/verify.md` and includes an ove
If any pillar fails, convergence tasks are appended for another implement pass. Run the fixes and re-converge.

</details>
- **[Quick Start Guide](https://github.github.io/spec-kit/quickstart.html)** - Step-by-step implementation walkthrough
- **[Quick Start Guide](https://tikalk.github.io/agentic-sdlc-spec-kit/quickstart.html)** - Step-by-step implementation walkthrough

---

Expand Down
12 changes: 6 additions & 6 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<a href="https://github.com/github/spec-kit/releases/latest"><img src="https://img.shields.io/github/v/release/github/spec-kit" alt="Latest Release"/></a>
<a href="https://github.com/github/spec-kit/stargazers"><img src="https://img.shields.io/github/stars/github/spec-kit?style=social" alt="GitHub stars"/></a>
<a href="https://github.com/github/spec-kit/blob/main/LICENSE"><img src="https://img.shields.io/github/license/github/spec-kit" alt="License"/></a>
<a href="https://github.github.io/spec-kit/"><img src="https://img.shields.io/badge/docs-GitHub_Pages-blue" alt="Documentation"/></a>
<a href="https://tikalk.github.io/agentic-sdlc-spec-kit/"><img src="https://img.shields.io/badge/docs-GitHub_Pages-blue" alt="Documentation"/></a>
</p>

<p align="center">
Expand Down Expand Up @@ -155,7 +155,7 @@ specify self upgrade --tag vX.Y.Z[suffix]

## 🤖 支持的 AI 编码助手集成

Spec Kit 可与 30 多个 AI 编码助手协作 —— 既包括 CLI 工具,也包括基于 IDE 的助手。完整列表以及相关说明和使用细节,请参阅[支持的 AI 编码助手集成](https://github.github.io/spec-kit/reference/integrations.html)指南。
Spec Kit 可与 30 多个 AI 编码助手协作 —— 既包括 CLI 工具,也包括基于 IDE 的助手。完整列表以及相关说明和使用细节,请参阅[支持的 AI 编码助手集成](https://tikalk.github.io/agentic-sdlc-spec-kit/reference/integrations.html)指南。

运行 `specify integration list` 可查看当前安装版本中所有可用的集成。

Expand Down Expand Up @@ -189,7 +189,7 @@ Spec Kit 可与 30 多个 AI 编码助手协作 —— 既包括 CLI 工具,

## 🔧 Specify CLI 参考

完整的命令详情、选项与示例,请参阅 [CLI 参考文档](https://github.github.io/spec-kit/reference/overview.html)。
完整的命令详情、选项与示例,请参阅 [CLI 参考文档](https://tikalk.github.io/agentic-sdlc-spec-kit/reference/overview.html)。

## 🧩 打造你自己的 Spec Kit:扩展与预设

Expand Down Expand Up @@ -222,7 +222,7 @@ specify extension add <extension-name>

举例来说,扩展可以添加 Jira 集成、实现后代码审查、V 模型测试追溯性,或项目健康诊断等功能。

完整命令指南请参阅[扩展参考文档](https://github.github.io/spec-kit/reference/extensions.html)。浏览[社区扩展](https://github.github.io/spec-kit/community/extensions.html)了解现有资源。
完整命令指南请参阅[扩展参考文档](https://tikalk.github.io/agentic-sdlc-spec-kit/reference/extensions.html)。浏览[社区扩展](https://github.github.io/spec-kit/community/extensions.html)了解现有资源。

### 预设 —— 定制现有工作流

Expand All @@ -238,7 +238,7 @@ specify preset add <preset-name>

举例来说,预设可以重构规范模板以要求监管追溯性,将工作流适配为你所用的方法论(如敏捷、看板、瀑布、用户任务驱动或领域驱动设计),在方案中添加强制安全审查关卡,强制要求测试优先的任务排序,或将整个工作流本地化为其他语言。[海盗语演示](https://github.com/mnriem/spec-kit-pirate-speak-preset-demo)充分展示了定制的深度。多个预设可按优先级叠加使用。

完整命令指南以及解析顺序和优先级叠加说明,请参阅[预设参考文档](https://github.github.io/spec-kit/reference/presets.html)。
完整命令指南以及解析顺序和优先级叠加说明,请参阅[预设参考文档](https://tikalk.github.io/agentic-sdlc-spec-kit/reference/presets.html)。

## 📦 捆绑包:面向角色的一键配置

Expand Down Expand Up @@ -344,7 +344,7 @@ specify bundle build --path ./my-bundle # 生成带版本的 .zip 产物
## 📖 深入了解

- **[完整的规范驱动开发方法论](./spec-driven.md)** —— 深入了解整个流程
- **[快速上手指南](https://github.github.io/spec-kit/quickstart.html)** —— 分步实现演练
- **[快速上手指南](https://tikalk.github.io/agentic-sdlc-spec-kit/quickstart.html)** —— 分步实现演练

---

Expand Down
2 changes: 1 addition & 1 deletion docs/community/extensions.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ The following community-contributed extensions are available in [`catalog.commun
| Jira Mirror | Spec Kit ↔ Jira bridge for team-managed and company-managed projects: configurable workflows & hierarchies (Scrum/SAFe), multi-project, idempotent and fail-closed. macOS/Linux/Windows. | `integration` | Read+Write | [spec-kit-jira-mirror](https://github.com/Fyloss/spec-kit-jira-mirror) |
| Keel Discovery | Evidence-backed discovery upstream of /speckit.specify, plus round-trip drift auditing after implementation | `process` | Read+Write | [spec-kit-keel](https://github.com/keeldiscovery/spec-kit-keel) |
| Learning Extension | Generate educational guides from implementations and enhance clarifications with mentoring context | `docs` | Read+Write | [spec-kit-learn](https://github.com/imviancagrace/spec-kit-learn) |
| Linear Integration | Mirror spec-kit feature directories into Linear (filesystem → Linear, reconcile-based, unidirectional). | `integration` | Read+Write | [spec-kit-linear-sync](https://github.com/ashbrener/spec-kit-linear-sync) |
| Linear Integration | Automatically mirror your spec-kit specs into Linear — one issue per spec, a sub-issue per task phase, kept in sync as you work. | `integration` | Read+Write | [spec-kit-linear-sync](https://github.com/ashbrener/spec-kit-linear-sync) |
| Linear Weave | Weave Spec Kit into Linear: pull requirements, mirror tasks.md into sub-issues, sync statuses | `integration` | Read+Write | [spec-kit-linear-weave](https://github.com/tonydwoodhouse/spec-kit-linear-weave) |
| LLM Wiki | LLM-maintained compounding project wiki: source ingestion, cited answers, and consistency linting | `docs` | Read+Write | [spec-kit-wiki](https://github.com/formin/spec-kit-wiki) |
| Loop Engineering | Engineer safe autonomous agent loops for spec-driven development: a maker/checker split, externalized loop state, and stay-the-engineer guardrails against comprehension debt and cognitive surrender | `process` | Read+Write | [spec-kit-loop](https://github.com/formin/spec-kit-loop) |
Expand Down
61 changes: 47 additions & 14 deletions docs/local-development.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,40 @@ specify --help

Re-running after code edits requires no reinstall because of editable mode.

## 4. Invoke with uvx Directly From Git (Current Branch)
## 4. Verify Post-Initialization Configuration

Use the automated verifier to exercise the post-initialization configuration
workflow in a disposable Copilot project. After completing the editable install
in the previous section, run:

```bash
scripts/verify-post-initialization-configuration.sh --specify "$(pwd)/.venv/bin/specify"
```

The script verifies configuration reads, script upgrades, mutable settings,
persisted options, protected settings, and the bundled `git` extension
lifecycle. It removes the temporary project when it exits. Set `SPECIFY` to an
executable path instead of passing `--specify` if preferred.

The team-directives lifecycle still requires a source you control, so verify it
separately when applicable. From a disposable initialized project, replace the
placeholder with a local directory or supported archive URL:

```bash
TEAM_DIRECTIVES_SOURCE="/absolute/path/to/team-ai-directives"
"$(pwd)/.venv/bin/specify" config set team-ai-directives "$TEAM_DIRECTIVES_SOURCE"
"$(pwd)/.venv/bin/specify" config get team-ai-directives
"$(pwd)/.venv/bin/specify" config unset team-ai-directives
```

`get` must report the resolved source, and `unset` must remove the saved source
and governance extension while warning that copied team skills remain for
manual review.

For manual slash-command testing and its pull-request reporting template, see
[Manual testing](../CONTRIBUTING.md#manual-testing).

## 5. Invoke with uvx Directly From Git (Current Branch)

`uvx` can run from a local path (or a Git ref) to simulate user flows:

Expand All @@ -63,7 +96,7 @@ git push origin your-feature-branch
uvx --from git+https://github.com/github/spec-kit.git@your-feature-branch specify init demo-branch-test --script ps
```

### 4a. Absolute Path uvx (Run From Anywhere)
### 5a. Absolute Path uvx (Run From Anywhere)

If you're in another directory, use an absolute path instead of `.`:

Expand All @@ -87,7 +120,7 @@ specify-dev() { uvx --from /mnt/c/GitHub/spec-kit specify "$@"; }
specify-dev --help
```

## 5. Testing Script Permission Logic
## 6. Testing Script Permission Logic

After running an `init`, check that shell scripts are executable on POSIX systems:

Expand All @@ -98,7 +131,7 @@ ls -l scripts | grep .sh

On Windows you will instead use the `.ps1` scripts (no chmod needed).

## 6. Scaffold a Built-In Integration
## 7. Scaffold a Built-In Integration

Use the integration scaffold command to create the initial Python package and
test skeleton for a new built-in integration:
Expand All @@ -118,7 +151,7 @@ The scaffold does not register the integration automatically. Review the
generated metadata, then add the import and `_register()` call in
`src/specify_cli/integrations/__init__.py`.

## 7. Run Lint / Basic Checks
## 8. Run Lint / Basic Checks

CI enforces `ruff check src tests` (see `.github/workflows/test.yml`), so run it locally before pushing:

Expand All @@ -132,7 +165,7 @@ You can also quickly sanity check importability:
python -c "import specify_cli; print('Import OK')"
```

## 8. Build a Wheel Locally (Optional)
## 9. Build a Wheel Locally (Optional)

Validate packaging before publishing:

Expand All @@ -143,7 +176,7 @@ ls dist/

Install the built artifact into a fresh throwaway environment if needed.

## 9. Using a Temporary Workspace
## 10. Using a Temporary Workspace

When testing `init --here` in a dirty directory, create a temp workspace:

Expand All @@ -154,7 +187,7 @@ python -m src.specify_cli init --here --integration claude --ignore-agent-tools

Or copy only the modified CLI portion if you want a lighter sandbox.

## 10. Debug Network / TLS Issues
## 11. Debug Network / TLS Issues

> **Deprecated:** The `--skip-tls` flag is a no-op and has no effect.
> It was previously used to bypass TLS validation during local testing.
Expand All @@ -163,36 +196,36 @@ Or copy only the modified CLI portion if you want a lighter sandbox.
>
> For example, set `SSL_CERT_FILE` or configure `HTTPS_PROXY` / `HTTP_PROXY`.

## 11. Rapid Edit Loop Summary
## 12. Rapid Edit Loop Summary

| Action | Command |
|--------|---------|
| --- | --- |
| Run CLI directly | `python -m src.specify_cli --help` |
| Editable install | `uv pip install -e .` then `specify ...` |
| Local uvx run (repo root) | `uvx --from . specify ...` |
| Local uvx run (abs path) | `uvx --from /mnt/c/GitHub/spec-kit specify ...` |
| Git branch uvx | `uvx --from git+URL@branch specify ...` |
| Build wheel | `uv build` |

## 12. Cleaning Up
## 13. Cleaning Up

Remove build artifacts / virtual env quickly:

```bash
rm -rf .venv dist build *.egg-info
```

## 13. Common Issues
## 14. Common Issues

| Symptom | Fix |
|---------|-----|
| --- | --- |
| `ModuleNotFoundError: typer` | Run `uv pip install -e .` |
| Scripts not executable (Linux) | Re-run init or `chmod +x scripts/*.sh` |
| Git commands unavailable | Install the git extension with `specify extension add git` |
| Wrong script type downloaded | Pass `--script sh`, `--script ps`, or `--script py` explicitly |
| TLS errors on corporate network | Configure your environment's certificate store or proxy. The `--skip-tls` flag is deprecated and has no effect. |

## 14. Next Steps
## 15. Next Steps

- Update docs and run through Quick Start using your modified CLI
- Open a PR when satisfied
Expand Down
Loading