specify-cli 1.0.1__tar.gz → 1.0.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/ISSUE_TEMPLATE/agent_request.yml +1 -1
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/ISSUE_TEMPLATE/bug_report.yml +1 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/ISSUE_TEMPLATE/feature_request.yml +1 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/codeql.yml +2 -2
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/publish-pypi.yml +5 -3
- {specify_cli-1.0.1 → specify_cli-1.0.3}/AGENTS.md +2 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/CHANGELOG.md +50 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/PKG-INFO +22 -1
- {specify_cli-1.0.1 → specify_cli-1.0.3}/README.md +21 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/bundles/catalog.community.json +3 -3
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/community/extensions.md +8 -3
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/community/presets.md +2 -1
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/integrations.md +1 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/EXTENSION-PUBLISHING-GUIDE.md +1 -2
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/catalog.community.json +233 -29
- {specify_cli-1.0.1 → specify_cli-1.0.3}/integrations/catalog.json +10 -1
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/catalog.community.json +39 -12
- {specify_cli-1.0.1 → specify_cli-1.0.3}/pyproject.toml +1 -1
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/bash/check-prerequisites.sh +13 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/bash/setup-plan.sh +2 -2
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/powershell/check-prerequisites.ps1 +11 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/powershell/common.ps1 +2 -2
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/powershell/setup-plan.ps1 +5 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/python/check_prerequisites.py +14 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/python/setup_plan.py +3 -1
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_github_http.py +3 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_utils.py +41 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/authentication/config.py +4 -2
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/models/catalog.py +8 -3
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/primitives.py +5 -3
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/commands/event.py +17 -6
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/events.py +11 -2
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/__init__.py +2 -0
- specify_cli-1.0.3/src/specify_cli/integrations/docker_agent/__init__.py +126 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/presets/__init__.py +11 -2
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/catalog.py +8 -4
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/expressions.py +36 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/do_while/__init__.py +16 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/if_then/__init__.py +16 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/while_loop/__init__.py +16 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/analyze.md +3 -3
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/converge.md +3 -3
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/contract/test_bundle_cli.py +4 -1
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/contract/test_catalog_schema.py +9 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_events.py +47 -0
- specify_cli-1.0.3/tests/integrations/test_integration_docker_agent.py +133 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_agent_config_consistency.py +1 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_authentication.py +4 -2
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_check_prerequisites_paths_only.py +35 -1
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_check_prerequisites_python_parity.py +72 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_check_tool.py +36 -0
- specify_cli-1.0.3/tests/test_event_command.py +145 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_github_http.py +18 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_github_workflows.py +86 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_presets.py +54 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_setup_plan_python_parity.py +10 -8
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_workflows.py +24 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_primitives.py +114 -15
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_condition_expression_block.py +71 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/workflows/README.md +1 -1
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.devcontainer/devcontainer.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.devcontainer/post-create.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.editorconfig +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.gitattributes +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/CODEOWNERS +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/ISSUE_TEMPLATE/bundle_submission.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/ISSUE_TEMPLATE/extension_submission.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/ISSUE_TEMPLATE/preset_submission.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/aw/actions-lock.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/dependabot.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/scripts/check_security_requirements.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/security-audit-requirements.txt +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/skills/add-community-extension/SKILL.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/RELEASE-PROCESS.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/add-community-bundle.lock.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/add-community-bundle.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/add-community-extension.lock.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/add-community-extension.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/add-community-preset.lock.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/add-community-preset.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/bug-assess.lock.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/bug-assess.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/bug-fix.lock.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/bug-fix.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/bug-test.lock.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/bug-test.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/catalog-assign.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/docs.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/feature-assess.lock.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/feature-assess.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/lint.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/release-trigger.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/release.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/security.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/stale.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.github/workflows/test.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.gitignore +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.markdownlint-cli2.jsonc +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.pre-commit-config.yaml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/.zenodo.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/CITATION.cff +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/CODE_OF_CONDUCT.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/CONTRIBUTING.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/DEVELOPMENT.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/LICENSE +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/README.zh-CN.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/SECURITY.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/SUPPORT.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/.gitignore +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/community/bundles.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/community/friends.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/community/overview.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/community/walkthroughs.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/concepts/complex-features.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/concepts/sdd.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/concepts/spec-of-specs.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/concepts/spec-persistence.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/docfx.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/guides/evolving-specs.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/guides/existing-projects.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/guides/monorepo.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/history.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/images/spec-kit-logo.webp +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/index.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/install/air-gapped.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/install/one-time.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/install/pipx.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/install/pypi.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/install/uv.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/installation.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/local-development.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/quickstart.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/agentic-bugfix.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/agentic-sdd.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/authentication.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/bundles.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/core.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/extensions.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/overview.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/presets.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/reference/workflows.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/template/public/main.css +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/toc.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/docs/upgrade.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/examples/bundles/business-analyst/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/examples/bundles/business-analyst/bundle.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/examples/bundles/developer/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/examples/bundles/developer/bundle.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/examples/bundles/product-manager/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/examples/bundles/product-manager/bundle.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/examples/bundles/security-researcher/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/examples/bundles/security-researcher/bundle.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/EXTENSION-API-REFERENCE.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/EXTENSION-DEVELOPMENT-GUIDE.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/EXTENSION-USER-GUIDE.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/RFC-EXTENSION-SYSTEM.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/agent-context/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/agent-context/agent-context-config.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/agent-context/agent-context-defaults.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/agent-context/commands/speckit.agent-context.update.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/agent-context/extension.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/agent-context/scripts/bash/update-agent-context.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/agent-context/scripts/powershell/update-agent-context.ps1 +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/agent-context/scripts/python/update_agent_context.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/assess/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/assess/commands/speckit.assess.decide.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/assess/commands/speckit.assess.define.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/assess/commands/speckit.assess.intake.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/assess/commands/speckit.assess.research.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/assess/commands/speckit.assess.shape.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/assess/extension.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/bug/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/bug/commands/speckit.bug.assess.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/bug/commands/speckit.bug.fix.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/bug/commands/speckit.bug.test.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/bug/extension.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/catalog.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/commands/speckit.git.commit.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/commands/speckit.git.feature.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/commands/speckit.git.initialize.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/commands/speckit.git.remote.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/commands/speckit.git.validate.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/config-template.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/extension.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/git-config.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/bash/auto-commit.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/bash/create-new-feature-branch.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/bash/git-common.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/bash/initialize-repo.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/powershell/auto-commit.ps1 +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/powershell/create-new-feature-branch.ps1 +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/powershell/git-common.ps1 +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/powershell/initialize-repo.ps1 +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/python/auto_commit.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/python/create_new_feature_branch.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/python/git_common.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/git/scripts/python/initialize_repo.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/selftest/commands/selftest.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/selftest/extension.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/template/.gitignore +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/template/CHANGELOG.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/template/EXAMPLE-README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/template/LICENSE +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/template/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/template/commands/example.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/template/config-template.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/extensions/template/extension.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/integrations/CONTRIBUTING.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/integrations/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/integrations/catalog.community.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/media/bootstrap-claude-code.gif +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/media/logo_large.webp +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/media/logo_small.webp +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/media/spec-kit-video-header.jpg +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/media/specify_cli.gif +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/newsletters/2026-April.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/newsletters/2026-February.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/newsletters/2026-July.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/newsletters/2026-June.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/newsletters/2026-March.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/newsletters/2026-May.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/ARCHITECTURE.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/PUBLISHING.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/catalog.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/constitution-sync/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/constitution-sync/commands/speckit.constitution.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/constitution-sync/preset.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/lean/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/lean/commands/speckit.constitution.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/lean/commands/speckit.implement.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/lean/commands/speckit.plan.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/lean/commands/speckit.specify.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/lean/commands/speckit.tasks.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/lean/preset.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/scaffold/README.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/scaffold/commands/speckit.myext.myextcmd.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/scaffold/commands/speckit.specify.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/scaffold/preset.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/scaffold/templates/myext-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/scaffold/templates/spec-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/self-test/commands/speckit.specify.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/self-test/commands/speckit.wrap-test.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/self-test/preset.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/self-test/templates/checklist-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/self-test/templates/constitution-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/self-test/templates/plan-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/self-test/templates/spec-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/presets/self-test/templates/tasks-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/bash/common.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/bash/create-new-feature.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/bash/resolve-template.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/bash/setup-tasks.sh +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/powershell/create-new-feature.ps1 +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/powershell/resolve-template.ps1 +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/powershell/setup-tasks.ps1 +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/python/common.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/python/create_new_feature.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/python/resolve_template.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/scripts/python/setup_tasks.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/spec-driven.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/spec-kit.code-workspace +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_agent_config.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_assets.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_console.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_download_security.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_init_options.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_invocation_style.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_project.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_toml_string.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/_version.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/agents.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/authentication/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/authentication/azure_devops.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/authentication/base.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/authentication/github.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/authentication/http.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/commands_impl/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/commands_impl/catalog_config.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/lib/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/lib/project.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/lib/versioning.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/lib/yamlio.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/models/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/models/manifest.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/models/records.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/adapters.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/catalog_stack.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/conflict.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/installer.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/packager.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/references.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/resolver.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/bundler/services/validator.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/catalogs.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/commands/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/commands/bundle/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/commands/init.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/extensions/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/extensions/_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integration_runtime.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integration_scaffold.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integration_state.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integration_status.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/_helpers.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/_install_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/_migrate_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/_query_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/_scaffold_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/agy/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/alquimia/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/amp/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/auggie/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/base.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/bob/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/catalog.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/claude/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/cline/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/codebuddy/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/codex/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/command_code/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/copilot/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/cursor_agent/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/devin/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/droid/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/firebender/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/forge/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/gemini/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/generic/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/goose/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/grok/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/hermes/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/junie/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/kilocode/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/kimi/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/kiro_cli/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/lingma/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/manifest.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/omp/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/opencode/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/pi/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/qodercli/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/qwen/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/rovodev/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/shai/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/tabnine/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/trae/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/vibe/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/zcode/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/integrations/zed/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/presets/_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/shared_infra.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/base.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/engine.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/overlays/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/overlays/_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/overlays/composer.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/overlays/layer_sources.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/overlays/merge.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/overlays/schema.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/command/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/fan_in/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/fan_out/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/gate/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/init/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/prompt/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/shell/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/src/specify_cli/workflows/steps/switch/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/checklist-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/checklist.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/clarify.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/constitution.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/implement.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/plan.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/specify.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/tasks.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/commands/taskstoissues.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/constitution-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/plan-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/spec-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/tasks-template.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/templates/vscode-settings.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/auth_helpers.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/bundler_helpers.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/conftest.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/contract/test_manifest_schema.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/contract/test_wheel_bundled_presets.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/contract/test_wheel_core_pack_scripts.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/assess/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/assess/test_assess_extension.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/bug/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/bug/test_bug_extension.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/git/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/git/test_git_extension.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/git/test_git_extension_python_parity.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/test_agent_context_cli_free.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/test_extension_agent_context.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/test_update_agent_context_feature_json.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/extensions/test_update_agent_context_python_parity.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/hooks/TESTING.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/hooks/plan.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/hooks/spec.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/hooks/tasks.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/http_helpers.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integration/test_bundler_catalog_stack.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integration/test_bundler_init_install.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integration/test_bundler_install_flow.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integration/test_bundler_local_install.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integration/test_bundler_offline.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integration/test_bundler_security_paths.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/__init__.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/conftest.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_base.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_cli.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_extra_args.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_home_isolation.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_agy.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_alquimia.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_amp.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_auggie.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_base_markdown.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_base_skills.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_base_toml.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_base_yaml.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_bob.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_catalog.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_claude.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_cline.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_codebuddy.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_codex.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_command_code.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_copilot.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_cursor_agent.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_devin.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_droid.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_firebender.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_forge.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_gemini.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_generic.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_goose.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_grok.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_hermes.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_junie.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_kilocode.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_kimi.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_kiro_cli.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_lingma.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_omp.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_opencode.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_pi.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_qodercli.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_qwen.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_rovodev.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_scaffold.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_shai.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_state.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_subcommand.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_tabnine.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_trae.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_vibe.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_zcode.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_integration_zed.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_manifest.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_registry.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/integrations/test_skill_frontmatter_quoting.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/parity_helpers.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/self_upgrade_helpers.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_branch_numbering.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_cli_version.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_command_template_py_scripts.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_commands_package.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_console_imports.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_create_new_feature_python_parity.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_download_security.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_extension_add_path_traversal.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_extension_registration.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_extension_skills.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_extension_update_hardening.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_extensions.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_init_dir.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_init_dir_cli.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_init_output_markup.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_live_transient_windows.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_merge.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_post_process.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_ps1_encoding.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_registrar_path_traversal.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_resolve_template_python_parity.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_security_workflow.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_self_upgrade_detection.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_self_upgrade_execution.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_self_upgrade_guidance.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_self_upgrade_verification.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_setup_plan_feature_json.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_setup_plan_no_overwrite.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_setup_tasks.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_setup_tasks_python_parity.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_shared_infra_gitignore.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_shared_infra_integrity.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_skill_placeholder_py.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_specify_template_numbering.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_timestamp_branches.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_upgrade.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_utils.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_utils_assets_imports.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_version_imports.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/test_workflow_run_without_project.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundle_download_url.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_adapters.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_catalog_config.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_conflict.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_packager.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_records.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_references.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_resolver.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_validator.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_versioning.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/unit/test_bundler_yamlio.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/workflows/conftest.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/workflows/test_overlay_commands.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/workflows/test_overlay_composer.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/workflows/test_overlay_layer_sources.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/workflows/test_overlay_merge.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/workflows/test_overlay_schema.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/workflows/test_overlay_security.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/tests/workflows/test_resolver_integration.py +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/workflows/ARCHITECTURE.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/workflows/PUBLISHING.md +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/workflows/catalog.community.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/workflows/catalog.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/workflows/speckit/workflow.yml +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/workflows/step-catalog.community.json +0 -0
- {specify_cli-1.0.1 → specify_cli-1.0.3}/workflows/step-catalog.json +0 -0
|
@@ -8,7 +8,7 @@ body:
|
|
|
8
8
|
value: |
|
|
9
9
|
Thanks for requesting a new agent! Before submitting, please check if the agent is already supported.
|
|
10
10
|
|
|
11
|
-
**Currently supported agents**: Alquimia AI, Amp, Antigravity, Auggie CLI, Claude Code, Cline, CodeBuddy, Codex CLI, Command Code, Cursor, Devin for Terminal, Factory Droid, Firebender, Forge, Gemini CLI, GitHub Copilot, Goose, Grok Build, Hermes Agent, IBM Bob, Junie, Kilo Code, Kimi Code, Kiro CLI, Lingma, Mistral Vibe, Oh My Pi, opencode, Pi Coding Agent, Qoder CLI, Qwen Code, RovoDev ACLI, SHAI, Tabnine CLI, Trae, ZCode, Zed
|
|
11
|
+
**Currently supported agents**: Alquimia AI, Amp, Antigravity, Auggie CLI, Claude Code, Cline, CodeBuddy, Codex CLI, Command Code, Cursor, Devin for Terminal, Docker Agent, Factory Droid, Firebender, Forge, Gemini CLI, GitHub Copilot, Goose, Grok Build, Hermes Agent, IBM Bob, Junie, Kilo Code, Kimi Code, Kiro CLI, Lingma, Mistral Vibe, Oh My Pi, opencode, Pi Coding Agent, Qoder CLI, Qwen Code, RovoDev ACLI, SHAI, Tabnine CLI, Trae, ZCode, Zed
|
|
12
12
|
|
|
13
13
|
- type: input
|
|
14
14
|
id: agent-name
|
|
@@ -22,11 +22,11 @@ jobs:
|
|
|
22
22
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
23
23
|
|
|
24
24
|
- name: Initialize CodeQL
|
|
25
|
-
uses: github/codeql-action/init@
|
|
25
|
+
uses: github/codeql-action/init@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 # v4
|
|
26
26
|
with:
|
|
27
27
|
languages: ${{ matrix.language }}
|
|
28
28
|
|
|
29
29
|
- name: Perform CodeQL Analysis
|
|
30
|
-
uses: github/codeql-action/analyze@
|
|
30
|
+
uses: github/codeql-action/analyze@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 # v4
|
|
31
31
|
with:
|
|
32
32
|
category: "/language:${{ matrix.language }}"
|
|
@@ -19,8 +19,9 @@ jobs:
|
|
|
19
19
|
actions: write
|
|
20
20
|
steps:
|
|
21
21
|
- name: Verify tag format
|
|
22
|
+
env:
|
|
23
|
+
TAG: ${{ inputs.tag }}
|
|
22
24
|
run: |
|
|
23
|
-
TAG="${{ inputs.tag }}"
|
|
24
25
|
if [[ ! "$TAG" =~ ^v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
|
25
26
|
echo "Error: '$TAG' is not a valid release tag (expected vX.Y.Z)"
|
|
26
27
|
exit 1
|
|
@@ -40,9 +41,10 @@ jobs:
|
|
|
40
41
|
python-version: "3.13"
|
|
41
42
|
|
|
42
43
|
- name: Verify tag matches package version
|
|
44
|
+
env:
|
|
45
|
+
TAG: ${{ inputs.tag }}
|
|
43
46
|
run: |
|
|
44
|
-
TAG_VERSION="${
|
|
45
|
-
TAG_VERSION="${TAG_VERSION#v}"
|
|
47
|
+
TAG_VERSION="${TAG#v}"
|
|
46
48
|
PROJECT_VERSION="$(python -c 'import tomllib; print(tomllib.load(open("pyproject.toml","rb"))["project"]["version"])')"
|
|
47
49
|
if [[ "$TAG_VERSION" != "$PROJECT_VERSION" ]]; then
|
|
48
50
|
echo "Error: Tag version ($TAG_VERSION) does not match pyproject.toml version ($PROJECT_VERSION)"
|
|
@@ -41,6 +41,8 @@ src/specify_cli/integrations/
|
|
|
41
41
|
│ └── __init__.py
|
|
42
42
|
├── copilot/ # Example: IntegrationBase subclass (custom setup)
|
|
43
43
|
│ └── __init__.py
|
|
44
|
+
├── docker_agent/ # Example: Docker Agent SkillsIntegration subclass
|
|
45
|
+
│ └── __init__.py
|
|
44
46
|
└── ... # One subpackage per supported agent
|
|
45
47
|
```
|
|
46
48
|
|
|
@@ -2,6 +2,56 @@
|
|
|
2
2
|
|
|
3
3
|
<!-- insert new changelog below this comment -->
|
|
4
4
|
|
|
5
|
+
## [1.0.3] - 2026-09-01
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
|
|
9
|
+
- fix(workflows): reject malformed step config on remove (#4095)
|
|
10
|
+
- fix(workflows): reject malformed workflow config on remove (#4096)
|
|
11
|
+
- fix(events): skip unreadable extension manifests (#4089)
|
|
12
|
+
- docs(extensions): fix private catalog FAQ command (#4373)
|
|
13
|
+
- [extension] Add Vurnix Honest Gate extension to community catalog (#4388)
|
|
14
|
+
- fix(presets): fail closed on unreadable provenance (#4092)
|
|
15
|
+
- docs: explain how Spec Kit dogfoods itself (#4381)
|
|
16
|
+
- add --require-spec to check-prerequisites (#4367)
|
|
17
|
+
- fix(ci): harden PyPI release tag handling (#4386)
|
|
18
|
+
- fix(github-http): reject malformed explicit URL ports (#4372)
|
|
19
|
+
- fix: scaffold extension config when installing via bundler (#4285)
|
|
20
|
+
- fix: reject unknown setup-plan arguments (#4371)
|
|
21
|
+
- feat(docker-agent): add Docker Agent integration (#4302)
|
|
22
|
+
- fix(workflows): reject a condition that is spliced into text, not evaluated (#4292)
|
|
23
|
+
- fix(bundler): pass explicit workflow_add options from bundle install (#4284)
|
|
24
|
+
- test(bundle): join across wrap points in the build output-path assertion (#4280)
|
|
25
|
+
- chore(deps): bump the codeql-action group with 2 updates (#4357)
|
|
26
|
+
- [extension] Update Spec Kit Figma extension to v3.1.1 (#4377)
|
|
27
|
+
- fix(presets): reject falsy non-mapping catalog roots (#4088)
|
|
28
|
+
- chore: release 1.0.2, begin 1.0.3.dev0 development (#4379)
|
|
29
|
+
|
|
30
|
+
## [1.0.2] - 2026-08-31
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- [extension] Add Jira Mirror extension to community catalog (#4376)
|
|
35
|
+
- [extension] Add AgentDocx SpecKit V2 extension to community catalog (#4369)
|
|
36
|
+
- fix(bundler): reject non-string catalog entry tag members (#4318)
|
|
37
|
+
- fix(auth): reject malformed URL ports before credential matching (#4362)
|
|
38
|
+
- fix: decode feature.json as UTF-8 in Windows PowerShell (#4359)
|
|
39
|
+
- fix(events): stop falling back to a fake "pwsh" argv when no launcher exists (#4340)
|
|
40
|
+
- Add Pre-Spec Cards extension to community catalog (#4365)
|
|
41
|
+
- docs(workflows): document Python init script support (#4331)
|
|
42
|
+
- fix(presets): validate catalog URL port, not just hostname (#4341)
|
|
43
|
+
- Add Verified Codebase Context preset to community catalog (#4344)
|
|
44
|
+
- fix(events): stop `event run` crashing on every piped stdin payload (#4326)
|
|
45
|
+
- Add Taco Review extension to community catalog (#4322)
|
|
46
|
+
- Update SpecKit Grill Me extension to v1.0.1 (#4317)
|
|
47
|
+
- [extension] Update BDD extension to v1.0.3 (#4299)
|
|
48
|
+
- Update Parallel Autonomous Run Governance preset to v0.2.6 (#4304)
|
|
49
|
+
- Update SpecAssay bundle to v0.4.12 (#4257)
|
|
50
|
+
- Update SpecAssay preset to v0.4.12 (#4256)
|
|
51
|
+
- Update Archive Extension to v1.3.0 (#4298)
|
|
52
|
+
- Update Reconcile extension to v1.2.1 (#4297)
|
|
53
|
+
- chore: release 1.0.1, begin 1.0.2.dev0 development (#4266)
|
|
54
|
+
|
|
5
55
|
## [1.0.1] - 2026-08-21
|
|
6
56
|
|
|
7
57
|
### Changed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: specify-cli
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.3
|
|
4
4
|
Summary: Specify CLI, part of GitHub Spec Kit. A tool to bootstrap your projects for Spec-Driven Development (SDD).
|
|
5
5
|
License-File: LICENSE
|
|
6
6
|
Requires-Python: >=3.11
|
|
@@ -64,6 +64,7 @@ Description-Content-Type: text/markdown
|
|
|
64
64
|
- [🧩 Making Spec Kit Your Own: Extensions & Presets](#-making-spec-kit-your-own-extensions--presets)
|
|
65
65
|
- [📦 Bundles: Role-Based Setups](#-bundles-role-based-setups)
|
|
66
66
|
- [📚 Core Philosophy](#-core-philosophy)
|
|
67
|
+
- [🪞 Does Spec Kit Use Spec Kit?](#-does-spec-kit-use-spec-kit)
|
|
67
68
|
- [🌟 Development Phases](#-development-phases)
|
|
68
69
|
- [🎯 Experimental Goals](#-experimental-goals)
|
|
69
70
|
- [🔧 Prerequisites](#-prerequisites)
|
|
@@ -421,6 +422,26 @@ Spec-Driven Development is a structured process that emphasizes:
|
|
|
421
422
|
- **Multi-step refinement** rather than one-shot code generation from prompts
|
|
422
423
|
- **Heavy reliance** on advanced AI model capabilities for specification interpretation
|
|
423
424
|
|
|
425
|
+
## 🪞 Does Spec Kit Use Spec Kit?
|
|
426
|
+
|
|
427
|
+
Yes — we dogfood Spec Kit while developing Spec Kit, especially for substantial
|
|
428
|
+
features and changes to the development workflow. Contributors are asked to test
|
|
429
|
+
relevant changes through the Spec-Driven Development commands. The
|
|
430
|
+
[feature assessment workflow](./.github/workflows/feature-assess.md) is currently
|
|
431
|
+
the automated dogfooding path: its setup uses the CLI from the current checkout
|
|
432
|
+
to initialize Copilot and install the `assess` extension, after which Copilot
|
|
433
|
+
follows the generated assessment skills against feature requests. The other
|
|
434
|
+
agentic workflows currently operate independently of the Specify CLI.
|
|
435
|
+
|
|
436
|
+
This does not mean every change goes through the full workflow. Small fixes can
|
|
437
|
+
use the normal issue, pull request, review, and test process. Dogfooding
|
|
438
|
+
scaffolding and artifacts under `.github/agents/`, `.github/prompts/`,
|
|
439
|
+
`.github/copilot-instructions.md`, `.grok/`, `.specify/`, and `specs/` are
|
|
440
|
+
intentionally gitignored. The automated assessment workflow is ephemeral and
|
|
441
|
+
neither commits nor pushes its generated Copilot skills, so its output does not
|
|
442
|
+
enter repository history. See the [contributor development
|
|
443
|
+
workflow](./CONTRIBUTING.md#development-workflow) for the validation expectations.
|
|
444
|
+
|
|
424
445
|
## 🌟 Development Phases
|
|
425
446
|
|
|
426
447
|
| Phase | Focus | Key Activities |
|
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
- [🧩 Making Spec Kit Your Own: Extensions & Presets](#-making-spec-kit-your-own-extensions--presets)
|
|
45
45
|
- [📦 Bundles: Role-Based Setups](#-bundles-role-based-setups)
|
|
46
46
|
- [📚 Core Philosophy](#-core-philosophy)
|
|
47
|
+
- [🪞 Does Spec Kit Use Spec Kit?](#-does-spec-kit-use-spec-kit)
|
|
47
48
|
- [🌟 Development Phases](#-development-phases)
|
|
48
49
|
- [🎯 Experimental Goals](#-experimental-goals)
|
|
49
50
|
- [🔧 Prerequisites](#-prerequisites)
|
|
@@ -401,6 +402,26 @@ Spec-Driven Development is a structured process that emphasizes:
|
|
|
401
402
|
- **Multi-step refinement** rather than one-shot code generation from prompts
|
|
402
403
|
- **Heavy reliance** on advanced AI model capabilities for specification interpretation
|
|
403
404
|
|
|
405
|
+
## 🪞 Does Spec Kit Use Spec Kit?
|
|
406
|
+
|
|
407
|
+
Yes — we dogfood Spec Kit while developing Spec Kit, especially for substantial
|
|
408
|
+
features and changes to the development workflow. Contributors are asked to test
|
|
409
|
+
relevant changes through the Spec-Driven Development commands. The
|
|
410
|
+
[feature assessment workflow](./.github/workflows/feature-assess.md) is currently
|
|
411
|
+
the automated dogfooding path: its setup uses the CLI from the current checkout
|
|
412
|
+
to initialize Copilot and install the `assess` extension, after which Copilot
|
|
413
|
+
follows the generated assessment skills against feature requests. The other
|
|
414
|
+
agentic workflows currently operate independently of the Specify CLI.
|
|
415
|
+
|
|
416
|
+
This does not mean every change goes through the full workflow. Small fixes can
|
|
417
|
+
use the normal issue, pull request, review, and test process. Dogfooding
|
|
418
|
+
scaffolding and artifacts under `.github/agents/`, `.github/prompts/`,
|
|
419
|
+
`.github/copilot-instructions.md`, `.grok/`, `.specify/`, and `specs/` are
|
|
420
|
+
intentionally gitignored. The automated assessment workflow is ephemeral and
|
|
421
|
+
neither commits nor pushes its generated Copilot skills, so its output does not
|
|
422
|
+
enter repository history. See the [contributor development
|
|
423
|
+
workflow](./CONTRIBUTING.md#development-workflow) for the validation expectations.
|
|
424
|
+
|
|
404
425
|
## 🌟 Development Phases
|
|
405
426
|
|
|
406
427
|
| Phase | Focus | Key Activities |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema_version": "1.0",
|
|
3
|
-
"updated_at": "2026-08-
|
|
3
|
+
"updated_at": "2026-08-21T00:00:00Z",
|
|
4
4
|
"catalog_url": "https://raw.githubusercontent.com/github/spec-kit/main/bundles/catalog.community.json",
|
|
5
5
|
"bundles": {
|
|
6
6
|
"sicario-spec": {
|
|
@@ -34,12 +34,12 @@
|
|
|
34
34
|
"specassay": {
|
|
35
35
|
"name": "SpecAssay",
|
|
36
36
|
"id": "specassay",
|
|
37
|
-
"version": "0.
|
|
37
|
+
"version": "0.4.12",
|
|
38
38
|
"role": "developer",
|
|
39
39
|
"description": "Durable-ID promotion for stock Spec Kit: templates, Gate 2 refusal, and trace-manifest emission.",
|
|
40
40
|
"author": "Rik Dryfoos",
|
|
41
41
|
"license": "MIT",
|
|
42
|
-
"download_url": "https://github.com/rdryfoos/specassay/releases/download/v0.
|
|
42
|
+
"download_url": "https://github.com/rdryfoos/specassay/releases/download/v0.4.12/specassay-0.4.12.zip",
|
|
43
43
|
"repository": "https://github.com/rdryfoos/specassay",
|
|
44
44
|
"requires": {
|
|
45
45
|
"speckit_version": ">=0.14.0"
|
|
@@ -29,6 +29,7 @@ The following community-contributed extensions are available in [`catalog.commun
|
|
|
29
29
|
| Agent Assign | Assign specialized Claude Code agents to spec-kit tasks for targeted execution | `process` | Read+Write | [spec-kit-agent-assign](https://github.com/xymelon/spec-kit-agent-assign) |
|
|
30
30
|
| Agent Governance | Generate agent-platform repository governance files from Spec Kit metadata | `process` | Read+Write | [spec-kit-agent-governance](https://github.com/bigsmartben/spec-kit-agent-governance) |
|
|
31
31
|
| AgentDocx | Full-stack multi-agent specification pipeline with VS Code extension control, automated Kanban/Jira sync, and React monitoring dashboard | `integration` | Read+Write | [extension-github-spec-kit](https://github.com/abir-ommezzine/extension-github-spec-kit) |
|
|
32
|
+
| AgentDocx SpecKit V2 | AgentDocx evolved: same pipeline + far more autonomous Ticket Manager (5 CLI, per-project Kanban, bulk sync, auto-switch, Auditor) | `integration` | Read+Write | [Extension_GithubSpecKit](https://github.com/ahmed200346/Extension_GithubSpecKit) |
|
|
32
33
|
| AgentPay x402 — Spend Controls for Spec Kit Agents | Set USDC spending caps and execute x402 payments to paid APIs during spec implementation. Zero platform fee on Base L2 | `integration` | Read+Write | [spec-kit-pay-x402](https://github.com/shawnhvac/spec-kit-pay-x402) |
|
|
33
34
|
| AI-Driven Engineering (AIDE) | A structured 7-step workflow for building new projects from scratch with AI assistants — from vision through implementation | `process` | Read+Write | [aide](https://github.com/mnriem/spec-kit-extensions/tree/main/aide) |
|
|
34
35
|
| Analytics | Measure what your AI builds, and how much time it saves you | `visibility` | Read+Write | [spec-kit-analytics](https://github.com/Fyloss/spec-kit-analytics) |
|
|
@@ -42,6 +43,7 @@ The following community-contributed extensions are available in [`catalog.commun
|
|
|
42
43
|
| Atlas | Synthesize spec-kit specs into faithful, interactive architecture storybooks & doc portals. | `docs` | Read-only | [spec-kit-atlas](https://github.com/ashbrener/spec-kit-atlas) |
|
|
43
44
|
| Azure Cosmos DB | Best-practice Azure Cosmos DB code generation and review for any AI coding agent | `code` | Read+Write | [spec-kit-cosmosdb](https://github.com/AzureCosmosDB/spec-kit-cosmosdb) |
|
|
44
45
|
| Azure DevOps Integration | Sync user stories and tasks to Azure DevOps work items using OAuth authentication | `integration` | Read+Write | [spec-kit-azure-devops](https://github.com/pragya247/spec-kit-azure-devops) |
|
|
46
|
+
| BDD | Convert specs to Gherkin scenarios, scaffold step definitions, and verify acceptance test coverage | `process` | Read+Write | [spec-kit-bdd](https://github.com/RSginer/spec-kit-bdd) |
|
|
45
47
|
| Blueprint | Stay code-literate in AI-driven development: review a complete code blueprint for every task from spec artifacts before /speckit.implement runs | `docs` | Read+Write | [spec-kit-blueprint](https://github.com/chordpli/spec-kit-blueprint) |
|
|
46
48
|
| Blueprint Index — Living Architecture Map | A living architecture map for spec-driven projects, kept honest by a deterministic, low-friction, machine-first CI gate (JSON, self-healable) that blocks only when the map contradicts the specs or code. Brownfield or greenfield. | `process` | Read+Write | [spec-kit-blueprint](https://github.com/ogil109/spec-kit-blueprint) |
|
|
47
49
|
| Branch Convention | Configurable branch and folder naming conventions for /specify with presets and custom patterns | `process` | Read+Write | [spec-kit-branch-convention](https://github.com/Quratulain-bilal/spec-kit-branch-convention) |
|
|
@@ -79,6 +81,7 @@ The following community-contributed extensions are available in [`catalog.commun
|
|
|
79
81
|
| Iterate | Iterate on spec documents with a two-phase define-and-apply workflow — refine specs mid-implementation and go straight back to building | `docs` | Read+Write | [spec-kit-iterate](https://github.com/imviancagrace/spec-kit-iterate) |
|
|
80
82
|
| Jira Integration | Create Jira Epics, Stories, and Issues from spec-kit specifications and task breakdowns with configurable hierarchy and custom field support | `integration` | Read+Write | [spec-kit-jira](https://github.com/mbachorik/spec-kit-jira) |
|
|
81
83
|
| Jira Integration (Sync Engine) | Idempotent, drift-aware, fail-closed reconcile engine mirroring spec-kit specs into Jira (Epic per repo, Story per spec, Subtask per phase) | `integration` | Read+Write | [spec-kit-jira-sync](https://github.com/ashbrener/spec-kit-jira-sync) |
|
|
84
|
+
| 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) |
|
|
82
85
|
| 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) |
|
|
83
86
|
| 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) |
|
|
84
87
|
| 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) |
|
|
@@ -110,6 +113,7 @@ The following community-contributed extensions are available in [`catalog.commun
|
|
|
110
113
|
| PatchWarden Evidence Pack | Map Spec Kit tasks into a guarded PatchWarden Goal and export bounded, traceable evidence for an accepted lineage. | `process` | Read+Write | [spec-kit-patchwarden](https://github.com/jiezeng2004-design/spec-kit-patchwarden) |
|
|
111
114
|
| Plan Review Gate | Require spec.md and plan.md to be merged via MR/PR before allowing task generation | `process` | Read-only | [spec-kit-plan-review-gate](https://github.com/luno/spec-kit-plan-review-gate) |
|
|
112
115
|
| PR Bridge | Auto-generate pull request descriptions, checklists, and summaries from spec artifacts | `process` | Read-only | [spec-kit-pr-bridge-](https://github.com/Quratulain-bilal/spec-kit-pr-bridge-) |
|
|
116
|
+
| Pre-Spec Cards | Card-based pre-spec thinking: paste an idea, get your card plus the paths you'd miss, then play each through — story, snags, trade-offs, difficulty vs payoff — before /speckit.specify | `process` | Read+Write | [pre-spec](https://github.com/bendlikeabamboo/pre-spec) |
|
|
113
117
|
| Presetify | Create and validate presets and preset catalogs | `process` | Read+Write | [presetify](https://github.com/mnriem/spec-kit-extensions/tree/main/presetify) |
|
|
114
118
|
| Product Forge | Full product-lifecycle orchestrator for Spec Kit: research → product-spec → plan → tasks → implement → verify → test → release-readiness, across express/lite/standard/v-model modes with human-in-the-loop gates. | `process` | Read+Write | [speckit-product-forge](https://github.com/VaiYav/speckit-product-forge) |
|
|
115
119
|
| Product Spec Extension | Generates PRFAQ, Lean PRD, stakeholder summaries, and technical designs from engineering specs | `docs` | Read+Write | [spec-kit-product](https://github.com/d0whc3r/spec-kit-product) |
|
|
@@ -138,7 +142,7 @@ The following community-contributed extensions are available in [`catalog.commun
|
|
|
138
142
|
| Spec Diagram | Auto-generate Mermaid diagrams of SDD workflow state, feature progress, and task dependencies | `visibility` | Read-only | [spec-kit-diagram-](https://github.com/Quratulain-bilal/spec-kit-diagram-) |
|
|
139
143
|
| Spec Inventory | Read-only inventory of live requirement and task IDs, with focused per-task context packs instead of whole-file dumps | `visibility` | Read-only | [spec-kit-inventory-alignment](https://github.com/Yash-Chindam/spec-kit-inventory-alignment) |
|
|
140
144
|
| Spec Kit Discovery Extension | Run technical discovery commands for feasibility, technology selection, scenario-specific technical decisions, legacy codebase assessment, implementation understanding, and proof-of-concept validation | `process` | Read+Write | [spec-kit-discovery](https://github.com/bigsmartben/spec-kit-discovery) |
|
|
141
|
-
| Spec Kit Figma |
|
|
145
|
+
| Spec Kit Figma | Grounds SpecKit spec/plan/tasks in Figma design context via REST or MCP, on macOS/Linux/Windows. | `integration` | Read+Write | [spec-kit-figma](https://github.com/Fyloss/spec-kit-figma) |
|
|
142
146
|
| Spec Kit Memory | Recalls prior specs and decisions from configurable memory tools (e.g. memsearch) before SDLC stages, so planning and specification start from what the project already knows | `docs` | Read+Write | [spec-kit-memory](https://github.com/zaytsevand/spec-kit-memory) |
|
|
143
147
|
| Spec Kit Preview | Generate evidence-backed low, mid, or high fidelity previews from Spec Kit artifacts as Markdown or self-contained HTML | `docs` | Read+Write | [spec-kit-preview](https://github.com/bigsmartben/spec-kit-preview) |
|
|
144
148
|
| Spec Kit Schedule | Optimal multi-agent task scheduling via CP-SAT — DAG precedence, hallucination-aware caps, file-conflict avoidance, stochastic durations, replanning, and interactive HTML output | `process` | Read+Write | [spec-kit-schedule](https://github.com/jfranc38/spec-kit-schedule) |
|
|
@@ -151,12 +155,11 @@ The following community-contributed extensions are available in [`catalog.commun
|
|
|
151
155
|
| Spec Sync | Detect and resolve drift between specs and implementation. AI-assisted resolution with human approval | `docs` | Read+Write | [spec-kit-sync](https://github.com/bgervin/spec-kit-sync) |
|
|
152
156
|
| Spec Trace | Build a requirement → test traceability matrix from spec.md and the test suite — surface untested requirements and orphan tests | `code` | Read+Write | [spec-kit-trace](https://github.com/Quratulain-bilal/spec-kit-trace) |
|
|
153
157
|
| Spec Validate | Comprehension validation, review gating, and approval state for spec-kit artifacts — staged quizzes, peer review SLA, and a hard gate before /speckit.implement | `process` | Read+Write | [spec-kit-spec-validate](https://github.com/aeltayeb/spec-kit-spec-validate) |
|
|
154
|
-
| Spec-Kit BDD | ATDD/BDD extension: convert specs to Gherkin scenarios, scaffold step definitions, and verify acceptance test coverage | `process` | Read+Write | [spec-kit-bdd](https://github.com/RSginer/spec-kit-bdd) |
|
|
155
158
|
| Spec2Cloud | Spec-driven workflow tuned for shipping to Azure | `process` | Read+Write | [spec2cloud](https://github.com/Azure-Samples/Spec2Cloud) |
|
|
156
159
|
| SpecAssay Check | Gate 2 refuses silent gaps and emits a trace-manifest (trace-manifest.json). | `visibility` | Read+Write | [specassay](https://github.com/rdryfoos/specassay) |
|
|
157
160
|
| SpecJudge — right-size the model before you implement | Recommends the model that fits your tasks, citing the spec fragment behind every level. | `process` | Read-only | [SpecJudge](https://github.com/JoaquinRuiz/SpecJudge) |
|
|
158
161
|
| SpecKit Companion | Live spec-driven progress — lifecycle capture, status, resume, living specs, and composable commands with hooks and recipes | `process` | Read+Write | [speckit-companion](https://github.com/alfredoperez/speckit-companion) |
|
|
159
|
-
| SpecKit Grill Me | Exhaustively
|
|
162
|
+
| SpecKit Grill Me | Exhaustively clarify specifications and optionally sync canonical domain knowledge | `process` | Read+Write | [speckit-grill-me](https://github.com/yoshi1220/speckit-grill-me) |
|
|
160
163
|
| SpecTest | Auto-generate test scaffolds from spec criteria, map coverage, and find untested requirements | `code` | Read+Write | [spec-kit-spectest](https://github.com/Quratulain-bilal/spec-kit-spectest) |
|
|
161
164
|
| Squad Bridge | Bootstrap and synchronize a Squad agent team from your Speckit spec and tasks. | `process` | Read+Write | [spec-kit-squad](https://github.com/jwill824/spec-kit-squad) |
|
|
162
165
|
| Staff Review Extension | Staff-engineer-level code review that validates implementation against spec, checks security, performance, and test coverage | `code` | Read-only | [spec-kit-staff-review](https://github.com/arunt14/spec-kit-staff-review) |
|
|
@@ -164,6 +167,7 @@ The following community-contributed extensions are available in [`catalog.commun
|
|
|
164
167
|
| Superpowers Bridge | Bridges selected Superpowers disciplines into Spec Kit as evidence-first trust gates for agent workflows. | `process` | Read+Write | [superpowers-bridge](https://github.com/RbBtSn0w/spec-kit-extensions/tree/main/superpowers-bridge) |
|
|
165
168
|
| Superpowers Implementation Bridge | Thin orchestrator between Spec Kit (design) and Superpowers (implementation). Cross-agent. | `process` | Read+Write | [speckit-superpowers-bridge](https://github.com/lihan3238/speckit-superpowers-bridge) |
|
|
166
169
|
| Superspec | Bridges spec-kit with obra/superpowers (brainstorming, TDD, subagent, code-review) into a unified, resumable workflow with graceful degradation and session progress tracking | `process` | Read+Write | [superspec](https://github.com/WangX0111/superspec) |
|
|
170
|
+
| Taco Review | Packages Spec Kit features for human review and syncs edits and comments back. | `integration` | Read+Write | [taco](https://github.com/Arcadia822/taco) |
|
|
167
171
|
| Tasks to GitHub Project | Publish and synchronize Spec Kit tasks as cards on a GitHub Project (v2) kanban board, with priority and status sync between spec.md/tasks.md and the board. | `integration` | Read+Write | [spec-kit-tasks-to-project](https://github.com/mancioshell/spec-kit-tasks-to-project) |
|
|
168
172
|
| TDD Extension | Drives spec-kit implementation with tests: a language-agnostic red-green-refactor loop with a per-feature test list, recorded red and green evidence, and mutation-checked test strength. | `process` | Read+Write | [spec-kit-tdd](https://github.com/d0whc3r/spec-kit-tdd) |
|
|
169
173
|
| Team Assign | Assign tasks.md items to human engineers, split into subtasks, and generate a per-engineer workboard | `process` | Read+Write | [spec-kit-team-assign](https://github.com/tarunkumarbhati/spec-kit-team-assign) |
|
|
@@ -178,6 +182,7 @@ The following community-contributed extensions are available in [`catalog.commun
|
|
|
178
182
|
| Verify Review Ship | Post-convergence operational verification, technical review, learning governance, and transactional delivery. | `process` | Read+Write | [spec-kit-verify-review-ship](https://github.com/cadugevaerd/spec-kit-verify-review-ship) |
|
|
179
183
|
| Verify Tasks Extension | Detect phantom completions: tasks marked [X] in tasks.md with no real implementation | `code` | Read-only | [spec-kit-verify-tasks](https://github.com/datastone-inc/spec-kit-verify-tasks) |
|
|
180
184
|
| Version Guard | Verify tech stack versions against live npm registries before planning and implementation | `process` | Read-only | [spec-kit-version-guard](https://github.com/KevinBrown5280/spec-kit-version-guard) |
|
|
185
|
+
| Vurnix Honest Gate | Deterministic three-state honest gate for AI-written code: compile + phantom-import + honest test count in one verdict, executed as code — not as agent self-review. PASS/BLOCK/UNPROVEN by exit code. | `process` | Read-only | [vurnix-spec-kit](https://github.com/shiersa/vurnix-spec-kit) |
|
|
181
186
|
| What-if Analysis | Preview the downstream impact (complexity, effort, tasks, risks) of requirement changes before committing to them | `visibility` | Read-only | [spec-kit-whatif](https://github.com/DevAbdullah90/spec-kit-whatif) |
|
|
182
187
|
| Wireframe Visual Feedback Loop | SVG wireframe generation, review, and sign-off for spec-driven development. Approved wireframes become spec constraints honored by /speckit.plan, /speckit.tasks, and /speckit.implement | `visibility` | Read+Write | [spec-kit-extension-wireframe](https://github.com/TortoiseWolfe/spec-kit-extension-wireframe) |
|
|
183
188
|
| Work IQ | Integrate Microsoft 365 organizational knowledge into spec-driven development workflows | `integration` | Read-only | [spec-kit-workiq](https://github.com/sakitA/spec-kit-workiq) |
|
|
@@ -29,7 +29,7 @@ The following community-contributed presets customize how Spec Kit behaves — o
|
|
|
29
29
|
| Model Driven Engineering | Focuses on streamlined commands, app repository support, cross-spec support, and capability-aware project memory for model-driven engineering workflows | 6 templates, 11 commands | MDE extension | [spec-kit-preset-mde](https://github.com/AI-MDE/spec-kit-preset-mde) |
|
|
30
30
|
| Model Routing Governance | Maps provider-neutral Spec Kit roles to validated harness-local runner profiles without storing model availability, credentials, or machine-specific selections in Git. | 4 templates, 2 commands, 2 scripts | — | [spec-kit-preset-model-routing-governance](https://github.com/hindermath/spec-kit-preset-model-routing-governance) |
|
|
31
31
|
| Multi-Repo Branching | Coordinates feature branch creation across multiple git repositories (independent repos and submodules) during plan and tasks phases | 2 commands | — | [spec-kit-preset-multi-repo-branching](https://github.com/sakitA/spec-kit-preset-multi-repo-branching) |
|
|
32
|
-
| Parallel Autonomous Run Governance | Coordinates
|
|
32
|
+
| Parallel Autonomous Run Governance | Coordinates isolated autonomous campaigns and optionally gates worker scheduling on a current campaign intake review. | 10 templates, 5 commands, 2 scripts | autonomous-run-governance >=0.2.2; optional: intake-review-governance >=0.1.0 | [spec-kit-preset-parallel-autonomous-run-governance](https://github.com/hindermath/spec-kit-preset-parallel-autonomous-run-governance) |
|
|
33
33
|
| Pirate Speak (Full) | Transforms all Spec Kit output into pirate speak — specs become "Voyage Manifests", plans become "Battle Plans", tasks become "Crew Assignments" | 6 templates, 9 commands | — | [spec-kit-presets](https://github.com/mnriem/spec-kit-presets) |
|
|
34
34
|
| Screenwriting | Spec-Driven Development for screenwriting/scriptwriting/tutorials: feature films, television (pilot, episode, limited series), and stage plays. Adapts the Spec Kit workflow to screenplay craft — slug lines, action lines, act breaks, beat sheets, and industry-standard pitch documents. Supports three-act, Save the Cat, TV pilot, network episode, cable/streaming episode, and stage-play structural frameworks. Export to Fountain, FTX, PDF | 26 templates, 32 commands, 1 script | — | [speckit-preset-screenwriting](https://github.com/adaumann/speckit-preset-screenwriting) |
|
|
35
35
|
| Security Governance | Adds memory-safe-language and secure-coding governance, exact-head security evidence, ASVS, supply-chain transparency, EU regulatory screening, and provider-neutral model routing. | 15 templates, 3 commands | — | [spec-kit-preset-security-governance](https://github.com/hindermath/spec-kit-preset-security-governance) |
|
|
@@ -38,6 +38,7 @@ The following community-contributed presets customize how Spec Kit behaves — o
|
|
|
38
38
|
| SpecAssay | Appends durable-ID, Carries, and SpecAssay vocabulary onto Spec Kit spec, tasks, and constitution templates. | 3 templates | — | [specassay](https://github.com/rdryfoos/specassay) |
|
|
39
39
|
| Table of Contents Navigation | Adds a navigable Table of Contents to generated spec.md, plan.md, and tasks.md documents | 3 templates, 3 commands | — | [spec-kit-preset-toc-navigation](https://github.com/Quratulain-bilal/spec-kit-preset-toc-navigation) |
|
|
40
40
|
| Test-First Governance | Governs TDD with coverage-complete BDD/ATDD Gherkin scenarios, explicit suite ownership, professional test reports, traceability, and risk-based quality gates. | 10 templates, 8 commands | — | [spec-kit-preset-test-first-governance](https://github.com/ka-zo/spec-kit-preset-test-first-governance) |
|
|
41
|
+
| Verified Codebase Context | Generates evidence-qualified repository context with codebase-memory-mcp and applies it across planning, tasks, analysis, and implementation. | 1 template, 5 commands | — | [spec-kit-preset-codebase-memory-context](https://github.com/philo-x/spec-kit-preset-codebase-memory-context) |
|
|
41
42
|
| VS Code Ask Questions | Enhances the clarify command to use `vscode/askQuestions` for batched interactive questioning. | 1 command | — | [spec-kit-presets](https://github.com/fdcastel/spec-kit-presets) |
|
|
42
43
|
| Workflow Preset | Behavior-first specification, design artifacts, and agent-native handoff orchestration — adds requirement-phase behavior drafts, formal BDD/UIF/behavior contracts, optional design artifacts, and scoped implementation handoffs with Core Agent, Vertical Planner Agent, and Worker Agent modes | 22 templates, 8 commands | — | [spec-kit-workflow-preset](https://github.com/bigsmartben/spec-kit-workflow-preset) |
|
|
43
44
|
|
|
@@ -17,6 +17,7 @@ The Specify CLI supports a wide range of AI coding agents. When you run `specify
|
|
|
17
17
|
| [Command Code](https://commandcode.ai/docs) | `command-code` | Skills-based integration; installs skills into `.commandcode/skills/` and invokes them as `$speckit-<command>` |
|
|
18
18
|
| [Cursor](https://cursor.sh/) | `cursor-agent` | |
|
|
19
19
|
| [Devin for Terminal](https://cli.devin.ai/docs) | `devin` | Skills-based integration; installs skills into `.devin/skills/` and invokes them as `/speckit-<command>` |
|
|
20
|
+
| [Docker Agent](https://docs.docker.com/ai/docker-agent/) | `docker-agent` | Skills-based integration; installs skills into `.agents/skills/` (the same directory used by Codex and Zed). In the selected agent YAML, enable local skills with `skills: true` and provide filesystem read access. Detects either the standalone `docker-agent` binary or the Docker CLI plugin (`docker agent`). Configure workflow dispatch with `SPECKIT_INTEGRATION_DOCKER_AGENT_EXTRA_ARGS=./agent.yaml`; the Spec Kit prompt is appended after these arguments. Not multi-install safe by default because the skills directory is shared. |
|
|
20
21
|
| [Factory Droid](https://docs.factory.ai/cli/getting-started/overview) | `droid` | Skills-based integration; installs skills into `.factory/skills/` and invokes them as `/speckit-<command>` |
|
|
21
22
|
| [Firebender](https://firebender.com/) | `firebender` | IDE-based agent for Android Studio / IntelliJ |
|
|
22
23
|
| [Forge](https://forgecode.dev/) | `forge` | |
|
|
@@ -274,8 +274,7 @@ When releasing a new version:
|
|
|
274
274
|
A: The main catalog is for public extensions only. For private extensions:
|
|
275
275
|
|
|
276
276
|
- Host your own catalog.json file
|
|
277
|
-
-
|
|
278
|
-
- Not yet implemented - coming in Phase 4
|
|
277
|
+
- In a Spec Kit project, users add your catalog: `specify extension catalog add https://your-domain.com/catalog.json --name private-catalog`
|
|
279
278
|
|
|
280
279
|
### Q: How long does review take?
|
|
281
280
|
|