specify-cli 0.16.3__tar.gz → 0.16.4__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.
Files changed (543) hide show
  1. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/dependabot.yml +4 -0
  2. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/add-community-extension.lock.yml +5 -5
  3. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/add-community-extension.md +3 -0
  4. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/add-community-preset.lock.yml +5 -5
  5. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/add-community-preset.md +3 -0
  6. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/codeql.yml +2 -2
  7. {specify_cli-0.16.3 → specify_cli-0.16.4}/CHANGELOG.md +26 -0
  8. {specify_cli-0.16.3 → specify_cli-0.16.4}/PKG-INFO +1 -1
  9. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/community/extensions.md +4 -0
  10. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/community/presets.md +3 -2
  11. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/catalog.community.json +152 -4
  12. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/catalog.community.json +40 -13
  13. {specify_cli-0.16.3 → specify_cli-0.16.4}/pyproject.toml +1 -1
  14. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/powershell/check-prerequisites.ps1 +11 -6
  15. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_console.py +4 -1
  16. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/authentication/config.py +13 -6
  17. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/authentication/http.py +8 -4
  18. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/lib/project.py +15 -1
  19. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/commands/bundle/__init__.py +13 -3
  20. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/events.py +171 -5
  21. specify_cli-0.16.4/src/specify_cli/integrations/goose/__init__.py +103 -0
  22. specify_cli-0.16.4/src/specify_cli/integrations/vibe/__init__.py +196 -0
  23. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/engine.py +16 -4
  24. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/taskstoissues.md +1 -1
  25. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integration/test_bundler_local_install.py +33 -0
  26. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integration/test_bundler_security_paths.py +44 -0
  27. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_extra_args.py +43 -0
  28. specify_cli-0.16.4/tests/integrations/test_integration_goose.py +183 -0
  29. specify_cli-0.16.4/tests/integrations/test_integration_vibe.py +336 -0
  30. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_authentication.py +80 -0
  31. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_check_prerequisites_python_parity.py +35 -0
  32. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_console_imports.py +21 -0
  33. specify_cli-0.16.4/tests/test_github_workflows.py +169 -0
  34. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_workflows.py +23 -0
  35. specify_cli-0.16.3/src/specify_cli/integrations/goose/__init__.py +0 -20
  36. specify_cli-0.16.3/src/specify_cli/integrations/vibe/__init__.py +0 -109
  37. specify_cli-0.16.3/tests/integrations/test_integration_goose.py +0 -85
  38. specify_cli-0.16.3/tests/integrations/test_integration_vibe.py +0 -37
  39. specify_cli-0.16.3/tests/test_github_workflows.py +0 -94
  40. {specify_cli-0.16.3 → specify_cli-0.16.4}/.devcontainer/devcontainer.json +0 -0
  41. {specify_cli-0.16.3 → specify_cli-0.16.4}/.devcontainer/post-create.sh +0 -0
  42. {specify_cli-0.16.3 → specify_cli-0.16.4}/.editorconfig +0 -0
  43. {specify_cli-0.16.3 → specify_cli-0.16.4}/.gitattributes +0 -0
  44. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/CODEOWNERS +0 -0
  45. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/ISSUE_TEMPLATE/agent_request.yml +0 -0
  46. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  47. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/ISSUE_TEMPLATE/bundle_submission.yml +0 -0
  48. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  49. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/ISSUE_TEMPLATE/extension_submission.yml +0 -0
  50. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  51. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/ISSUE_TEMPLATE/preset_submission.yml +0 -0
  52. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  53. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/aw/actions-lock.json +0 -0
  54. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/scripts/check_security_requirements.py +0 -0
  55. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/security-audit-requirements.txt +0 -0
  56. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/skills/add-community-extension/SKILL.md +0 -0
  57. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/RELEASE-PROCESS.md +0 -0
  58. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/add-community-bundle.lock.yml +0 -0
  59. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/add-community-bundle.md +0 -0
  60. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/bug-assess.lock.yml +0 -0
  61. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/bug-assess.md +0 -0
  62. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/bug-fix.lock.yml +0 -0
  63. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/bug-fix.md +0 -0
  64. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/bug-test.lock.yml +0 -0
  65. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/bug-test.md +0 -0
  66. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/catalog-assign.yml +0 -0
  67. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/docs.yml +0 -0
  68. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/lint.yml +0 -0
  69. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/publish-pypi.yml +0 -0
  70. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/release-trigger.yml +0 -0
  71. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/release.yml +0 -0
  72. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/security.yml +0 -0
  73. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/stale.yml +0 -0
  74. {specify_cli-0.16.3 → specify_cli-0.16.4}/.github/workflows/test.yml +0 -0
  75. {specify_cli-0.16.3 → specify_cli-0.16.4}/.gitignore +0 -0
  76. {specify_cli-0.16.3 → specify_cli-0.16.4}/.markdownlint-cli2.jsonc +0 -0
  77. {specify_cli-0.16.3 → specify_cli-0.16.4}/.pre-commit-config.yaml +0 -0
  78. {specify_cli-0.16.3 → specify_cli-0.16.4}/.zenodo.json +0 -0
  79. {specify_cli-0.16.3 → specify_cli-0.16.4}/AGENTS.md +0 -0
  80. {specify_cli-0.16.3 → specify_cli-0.16.4}/CITATION.cff +0 -0
  81. {specify_cli-0.16.3 → specify_cli-0.16.4}/CODE_OF_CONDUCT.md +0 -0
  82. {specify_cli-0.16.3 → specify_cli-0.16.4}/CONTRIBUTING.md +0 -0
  83. {specify_cli-0.16.3 → specify_cli-0.16.4}/DEVELOPMENT.md +0 -0
  84. {specify_cli-0.16.3 → specify_cli-0.16.4}/LICENSE +0 -0
  85. {specify_cli-0.16.3 → specify_cli-0.16.4}/README.md +0 -0
  86. {specify_cli-0.16.3 → specify_cli-0.16.4}/README.zh-CN.md +0 -0
  87. {specify_cli-0.16.3 → specify_cli-0.16.4}/SECURITY.md +0 -0
  88. {specify_cli-0.16.3 → specify_cli-0.16.4}/SUPPORT.md +0 -0
  89. {specify_cli-0.16.3 → specify_cli-0.16.4}/bundles/catalog.community.json +0 -0
  90. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/.gitignore +0 -0
  91. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/README.md +0 -0
  92. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/community/bundles.md +0 -0
  93. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/community/friends.md +0 -0
  94. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/community/overview.md +0 -0
  95. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/community/walkthroughs.md +0 -0
  96. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/concepts/complex-features.md +0 -0
  97. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/concepts/sdd.md +0 -0
  98. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/concepts/spec-of-specs.md +0 -0
  99. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/concepts/spec-persistence.md +0 -0
  100. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/docfx.json +0 -0
  101. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/guides/evolving-specs.md +0 -0
  102. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/guides/monorepo.md +0 -0
  103. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/index.md +0 -0
  104. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/install/air-gapped.md +0 -0
  105. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/install/one-time.md +0 -0
  106. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/install/pipx.md +0 -0
  107. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/install/pypi.md +0 -0
  108. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/install/uv.md +0 -0
  109. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/installation.md +0 -0
  110. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/local-development.md +0 -0
  111. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/quickstart.md +0 -0
  112. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/agentic-bugfix.md +0 -0
  113. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/agentic-sdd.md +0 -0
  114. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/authentication.md +0 -0
  115. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/bundles.md +0 -0
  116. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/core.md +0 -0
  117. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/extensions.md +0 -0
  118. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/integrations.md +0 -0
  119. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/overview.md +0 -0
  120. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/presets.md +0 -0
  121. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/reference/workflows.md +0 -0
  122. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/template/public/main.css +0 -0
  123. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/toc.yml +0 -0
  124. {specify_cli-0.16.3 → specify_cli-0.16.4}/docs/upgrade.md +0 -0
  125. {specify_cli-0.16.3 → specify_cli-0.16.4}/examples/bundles/business-analyst/README.md +0 -0
  126. {specify_cli-0.16.3 → specify_cli-0.16.4}/examples/bundles/business-analyst/bundle.yml +0 -0
  127. {specify_cli-0.16.3 → specify_cli-0.16.4}/examples/bundles/developer/README.md +0 -0
  128. {specify_cli-0.16.3 → specify_cli-0.16.4}/examples/bundles/developer/bundle.yml +0 -0
  129. {specify_cli-0.16.3 → specify_cli-0.16.4}/examples/bundles/product-manager/README.md +0 -0
  130. {specify_cli-0.16.3 → specify_cli-0.16.4}/examples/bundles/product-manager/bundle.yml +0 -0
  131. {specify_cli-0.16.3 → specify_cli-0.16.4}/examples/bundles/security-researcher/README.md +0 -0
  132. {specify_cli-0.16.3 → specify_cli-0.16.4}/examples/bundles/security-researcher/bundle.yml +0 -0
  133. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/EXTENSION-API-REFERENCE.md +0 -0
  134. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/EXTENSION-DEVELOPMENT-GUIDE.md +0 -0
  135. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/EXTENSION-PUBLISHING-GUIDE.md +0 -0
  136. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/EXTENSION-USER-GUIDE.md +0 -0
  137. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/README.md +0 -0
  138. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/RFC-EXTENSION-SYSTEM.md +0 -0
  139. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/agent-context/README.md +0 -0
  140. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/agent-context/agent-context-config.yml +0 -0
  141. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/agent-context/agent-context-defaults.json +0 -0
  142. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/agent-context/commands/speckit.agent-context.update.md +0 -0
  143. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/agent-context/extension.yml +0 -0
  144. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/agent-context/scripts/bash/update-agent-context.sh +0 -0
  145. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/agent-context/scripts/powershell/update-agent-context.ps1 +0 -0
  146. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/agent-context/scripts/python/update_agent_context.py +0 -0
  147. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/assess/README.md +0 -0
  148. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/assess/commands/speckit.assess.decide.md +0 -0
  149. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/assess/commands/speckit.assess.define.md +0 -0
  150. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/assess/commands/speckit.assess.intake.md +0 -0
  151. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/assess/commands/speckit.assess.research.md +0 -0
  152. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/assess/commands/speckit.assess.shape.md +0 -0
  153. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/assess/extension.yml +0 -0
  154. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/bug/README.md +0 -0
  155. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/bug/commands/speckit.bug.assess.md +0 -0
  156. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/bug/commands/speckit.bug.fix.md +0 -0
  157. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/bug/commands/speckit.bug.test.md +0 -0
  158. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/bug/extension.yml +0 -0
  159. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/catalog.json +0 -0
  160. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/README.md +0 -0
  161. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/commands/speckit.git.commit.md +0 -0
  162. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/commands/speckit.git.feature.md +0 -0
  163. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/commands/speckit.git.initialize.md +0 -0
  164. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/commands/speckit.git.remote.md +0 -0
  165. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/commands/speckit.git.validate.md +0 -0
  166. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/config-template.yml +0 -0
  167. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/extension.yml +0 -0
  168. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/git-config.yml +0 -0
  169. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/bash/auto-commit.sh +0 -0
  170. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/bash/create-new-feature-branch.sh +0 -0
  171. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/bash/git-common.sh +0 -0
  172. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/bash/initialize-repo.sh +0 -0
  173. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/powershell/auto-commit.ps1 +0 -0
  174. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/powershell/create-new-feature-branch.ps1 +0 -0
  175. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/powershell/git-common.ps1 +0 -0
  176. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/powershell/initialize-repo.ps1 +0 -0
  177. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/python/auto_commit.py +0 -0
  178. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/python/create_new_feature_branch.py +0 -0
  179. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/python/git_common.py +0 -0
  180. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/git/scripts/python/initialize_repo.py +0 -0
  181. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/selftest/commands/selftest.md +0 -0
  182. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/selftest/extension.yml +0 -0
  183. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/template/.gitignore +0 -0
  184. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/template/CHANGELOG.md +0 -0
  185. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/template/EXAMPLE-README.md +0 -0
  186. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/template/LICENSE +0 -0
  187. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/template/README.md +0 -0
  188. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/template/commands/example.md +0 -0
  189. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/template/config-template.yml +0 -0
  190. {specify_cli-0.16.3 → specify_cli-0.16.4}/extensions/template/extension.yml +0 -0
  191. {specify_cli-0.16.3 → specify_cli-0.16.4}/integrations/CONTRIBUTING.md +0 -0
  192. {specify_cli-0.16.3 → specify_cli-0.16.4}/integrations/README.md +0 -0
  193. {specify_cli-0.16.3 → specify_cli-0.16.4}/integrations/catalog.community.json +0 -0
  194. {specify_cli-0.16.3 → specify_cli-0.16.4}/integrations/catalog.json +0 -0
  195. {specify_cli-0.16.3 → specify_cli-0.16.4}/media/bootstrap-claude-code.gif +0 -0
  196. {specify_cli-0.16.3 → specify_cli-0.16.4}/media/logo_large.webp +0 -0
  197. {specify_cli-0.16.3 → specify_cli-0.16.4}/media/logo_small.webp +0 -0
  198. {specify_cli-0.16.3 → specify_cli-0.16.4}/media/spec-kit-video-header.jpg +0 -0
  199. {specify_cli-0.16.3 → specify_cli-0.16.4}/media/specify_cli.gif +0 -0
  200. {specify_cli-0.16.3 → specify_cli-0.16.4}/newsletters/2026-April.md +0 -0
  201. {specify_cli-0.16.3 → specify_cli-0.16.4}/newsletters/2026-February.md +0 -0
  202. {specify_cli-0.16.3 → specify_cli-0.16.4}/newsletters/2026-July.md +0 -0
  203. {specify_cli-0.16.3 → specify_cli-0.16.4}/newsletters/2026-June.md +0 -0
  204. {specify_cli-0.16.3 → specify_cli-0.16.4}/newsletters/2026-March.md +0 -0
  205. {specify_cli-0.16.3 → specify_cli-0.16.4}/newsletters/2026-May.md +0 -0
  206. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/ARCHITECTURE.md +0 -0
  207. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/PUBLISHING.md +0 -0
  208. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/README.md +0 -0
  209. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/catalog.json +0 -0
  210. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/constitution-sync/README.md +0 -0
  211. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/constitution-sync/commands/speckit.constitution.md +0 -0
  212. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/constitution-sync/preset.yml +0 -0
  213. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/lean/README.md +0 -0
  214. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/lean/commands/speckit.constitution.md +0 -0
  215. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/lean/commands/speckit.implement.md +0 -0
  216. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/lean/commands/speckit.plan.md +0 -0
  217. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/lean/commands/speckit.specify.md +0 -0
  218. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/lean/commands/speckit.tasks.md +0 -0
  219. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/lean/preset.yml +0 -0
  220. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/scaffold/README.md +0 -0
  221. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/scaffold/commands/speckit.myext.myextcmd.md +0 -0
  222. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/scaffold/commands/speckit.specify.md +0 -0
  223. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/scaffold/preset.yml +0 -0
  224. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/scaffold/templates/myext-template.md +0 -0
  225. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/scaffold/templates/spec-template.md +0 -0
  226. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/self-test/commands/speckit.specify.md +0 -0
  227. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/self-test/commands/speckit.wrap-test.md +0 -0
  228. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/self-test/preset.yml +0 -0
  229. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/self-test/templates/checklist-template.md +0 -0
  230. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/self-test/templates/constitution-template.md +0 -0
  231. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/self-test/templates/plan-template.md +0 -0
  232. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/self-test/templates/spec-template.md +0 -0
  233. {specify_cli-0.16.3 → specify_cli-0.16.4}/presets/self-test/templates/tasks-template.md +0 -0
  234. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/bash/check-prerequisites.sh +0 -0
  235. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/bash/common.sh +0 -0
  236. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/bash/create-new-feature.sh +0 -0
  237. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/bash/resolve-template.sh +0 -0
  238. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/bash/setup-plan.sh +0 -0
  239. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/bash/setup-tasks.sh +0 -0
  240. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/powershell/common.ps1 +0 -0
  241. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/powershell/create-new-feature.ps1 +0 -0
  242. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/powershell/resolve-template.ps1 +0 -0
  243. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/powershell/setup-plan.ps1 +0 -0
  244. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/powershell/setup-tasks.ps1 +0 -0
  245. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/python/check_prerequisites.py +0 -0
  246. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/python/common.py +0 -0
  247. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/python/create_new_feature.py +0 -0
  248. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/python/resolve_template.py +0 -0
  249. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/python/setup_plan.py +0 -0
  250. {specify_cli-0.16.3 → specify_cli-0.16.4}/scripts/python/setup_tasks.py +0 -0
  251. {specify_cli-0.16.3 → specify_cli-0.16.4}/spec-driven.md +0 -0
  252. {specify_cli-0.16.3 → specify_cli-0.16.4}/spec-kit.code-workspace +0 -0
  253. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/__init__.py +0 -0
  254. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_agent_config.py +0 -0
  255. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_assets.py +0 -0
  256. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_download_security.py +0 -0
  257. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_github_http.py +0 -0
  258. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_init_options.py +0 -0
  259. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_invocation_style.py +0 -0
  260. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_project.py +0 -0
  261. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_toml_string.py +0 -0
  262. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_utils.py +0 -0
  263. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/_version.py +0 -0
  264. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/agents.py +0 -0
  265. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/authentication/__init__.py +0 -0
  266. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/authentication/azure_devops.py +0 -0
  267. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/authentication/base.py +0 -0
  268. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/authentication/github.py +0 -0
  269. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/__init__.py +0 -0
  270. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/commands_impl/__init__.py +0 -0
  271. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/commands_impl/catalog_config.py +0 -0
  272. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/lib/__init__.py +0 -0
  273. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/lib/versioning.py +0 -0
  274. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/lib/yamlio.py +0 -0
  275. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/models/__init__.py +0 -0
  276. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/models/catalog.py +0 -0
  277. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/models/manifest.py +0 -0
  278. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/models/records.py +0 -0
  279. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/__init__.py +0 -0
  280. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/adapters.py +0 -0
  281. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/catalog_stack.py +0 -0
  282. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/conflict.py +0 -0
  283. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/installer.py +0 -0
  284. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/packager.py +0 -0
  285. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/primitives.py +0 -0
  286. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/references.py +0 -0
  287. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/resolver.py +0 -0
  288. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/bundler/services/validator.py +0 -0
  289. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/catalogs.py +0 -0
  290. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/commands/__init__.py +0 -0
  291. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/commands/event.py +0 -0
  292. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/commands/init.py +0 -0
  293. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/extensions/__init__.py +0 -0
  294. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/extensions/_commands.py +0 -0
  295. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integration_runtime.py +0 -0
  296. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integration_scaffold.py +0 -0
  297. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integration_state.py +0 -0
  298. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integration_status.py +0 -0
  299. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/__init__.py +0 -0
  300. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/_commands.py +0 -0
  301. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/_helpers.py +0 -0
  302. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/_install_commands.py +0 -0
  303. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/_migrate_commands.py +0 -0
  304. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/_query_commands.py +0 -0
  305. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/_scaffold_commands.py +0 -0
  306. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/agy/__init__.py +0 -0
  307. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/alquimia/__init__.py +0 -0
  308. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/amp/__init__.py +0 -0
  309. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/auggie/__init__.py +0 -0
  310. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/base.py +0 -0
  311. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/bob/__init__.py +0 -0
  312. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/catalog.py +0 -0
  313. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/claude/__init__.py +0 -0
  314. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/cline/__init__.py +0 -0
  315. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/codebuddy/__init__.py +0 -0
  316. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/codex/__init__.py +0 -0
  317. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/command_code/__init__.py +0 -0
  318. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/copilot/__init__.py +0 -0
  319. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/cursor_agent/__init__.py +0 -0
  320. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/devin/__init__.py +0 -0
  321. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/droid/__init__.py +0 -0
  322. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/firebender/__init__.py +0 -0
  323. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/forge/__init__.py +0 -0
  324. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/gemini/__init__.py +0 -0
  325. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/generic/__init__.py +0 -0
  326. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/grok/__init__.py +0 -0
  327. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/hermes/__init__.py +0 -0
  328. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/junie/__init__.py +0 -0
  329. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/kilocode/__init__.py +0 -0
  330. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/kimi/__init__.py +0 -0
  331. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/kiro_cli/__init__.py +0 -0
  332. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/lingma/__init__.py +0 -0
  333. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/manifest.py +0 -0
  334. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/omp/__init__.py +0 -0
  335. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/opencode/__init__.py +0 -0
  336. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/pi/__init__.py +0 -0
  337. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/qodercli/__init__.py +0 -0
  338. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/qwen/__init__.py +0 -0
  339. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/rovodev/__init__.py +0 -0
  340. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/shai/__init__.py +0 -0
  341. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/tabnine/__init__.py +0 -0
  342. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/trae/__init__.py +0 -0
  343. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/zcode/__init__.py +0 -0
  344. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/integrations/zed/__init__.py +0 -0
  345. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/presets/__init__.py +0 -0
  346. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/presets/_commands.py +0 -0
  347. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/shared_infra.py +0 -0
  348. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/__init__.py +0 -0
  349. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/_commands.py +0 -0
  350. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/base.py +0 -0
  351. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/catalog.py +0 -0
  352. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/expressions.py +0 -0
  353. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/overlays/__init__.py +0 -0
  354. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/overlays/_commands.py +0 -0
  355. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/overlays/composer.py +0 -0
  356. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/overlays/layer_sources.py +0 -0
  357. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/overlays/merge.py +0 -0
  358. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/overlays/schema.py +0 -0
  359. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/__init__.py +0 -0
  360. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/command/__init__.py +0 -0
  361. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/do_while/__init__.py +0 -0
  362. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/fan_in/__init__.py +0 -0
  363. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/fan_out/__init__.py +0 -0
  364. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/gate/__init__.py +0 -0
  365. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/if_then/__init__.py +0 -0
  366. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/init/__init__.py +0 -0
  367. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/prompt/__init__.py +0 -0
  368. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/shell/__init__.py +0 -0
  369. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/switch/__init__.py +0 -0
  370. {specify_cli-0.16.3 → specify_cli-0.16.4}/src/specify_cli/workflows/steps/while_loop/__init__.py +0 -0
  371. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/checklist-template.md +0 -0
  372. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/analyze.md +0 -0
  373. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/checklist.md +0 -0
  374. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/clarify.md +0 -0
  375. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/constitution.md +0 -0
  376. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/converge.md +0 -0
  377. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/implement.md +0 -0
  378. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/plan.md +0 -0
  379. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/specify.md +0 -0
  380. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/commands/tasks.md +0 -0
  381. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/constitution-template.md +0 -0
  382. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/plan-template.md +0 -0
  383. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/spec-template.md +0 -0
  384. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/tasks-template.md +0 -0
  385. {specify_cli-0.16.3 → specify_cli-0.16.4}/templates/vscode-settings.json +0 -0
  386. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/__init__.py +0 -0
  387. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/auth_helpers.py +0 -0
  388. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/bundler_helpers.py +0 -0
  389. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/conftest.py +0 -0
  390. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/contract/test_bundle_cli.py +0 -0
  391. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/contract/test_catalog_schema.py +0 -0
  392. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/contract/test_manifest_schema.py +0 -0
  393. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/contract/test_wheel_bundled_presets.py +0 -0
  394. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/contract/test_wheel_core_pack_scripts.py +0 -0
  395. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/__init__.py +0 -0
  396. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/assess/__init__.py +0 -0
  397. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/assess/test_assess_extension.py +0 -0
  398. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/bug/__init__.py +0 -0
  399. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/bug/test_bug_extension.py +0 -0
  400. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/git/__init__.py +0 -0
  401. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/git/test_git_extension.py +0 -0
  402. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/git/test_git_extension_python_parity.py +0 -0
  403. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/test_agent_context_cli_free.py +0 -0
  404. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/test_extension_agent_context.py +0 -0
  405. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/test_update_agent_context_feature_json.py +0 -0
  406. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/extensions/test_update_agent_context_python_parity.py +0 -0
  407. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/hooks/TESTING.md +0 -0
  408. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/hooks/plan.md +0 -0
  409. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/hooks/spec.md +0 -0
  410. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/hooks/tasks.md +0 -0
  411. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/http_helpers.py +0 -0
  412. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integration/test_bundler_catalog_stack.py +0 -0
  413. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integration/test_bundler_init_install.py +0 -0
  414. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integration/test_bundler_install_flow.py +0 -0
  415. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integration/test_bundler_offline.py +0 -0
  416. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/__init__.py +0 -0
  417. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/conftest.py +0 -0
  418. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_base.py +0 -0
  419. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_cli.py +0 -0
  420. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_events.py +0 -0
  421. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_home_isolation.py +0 -0
  422. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_agy.py +0 -0
  423. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_alquimia.py +0 -0
  424. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_amp.py +0 -0
  425. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_auggie.py +0 -0
  426. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_base_markdown.py +0 -0
  427. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_base_skills.py +0 -0
  428. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_base_toml.py +0 -0
  429. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_base_yaml.py +0 -0
  430. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_bob.py +0 -0
  431. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_catalog.py +0 -0
  432. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_claude.py +0 -0
  433. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_cline.py +0 -0
  434. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_codebuddy.py +0 -0
  435. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_codex.py +0 -0
  436. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_command_code.py +0 -0
  437. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_copilot.py +0 -0
  438. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_cursor_agent.py +0 -0
  439. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_devin.py +0 -0
  440. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_droid.py +0 -0
  441. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_firebender.py +0 -0
  442. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_forge.py +0 -0
  443. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_gemini.py +0 -0
  444. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_generic.py +0 -0
  445. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_grok.py +0 -0
  446. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_hermes.py +0 -0
  447. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_junie.py +0 -0
  448. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_kilocode.py +0 -0
  449. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_kimi.py +0 -0
  450. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_kiro_cli.py +0 -0
  451. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_lingma.py +0 -0
  452. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_omp.py +0 -0
  453. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_opencode.py +0 -0
  454. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_pi.py +0 -0
  455. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_qodercli.py +0 -0
  456. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_qwen.py +0 -0
  457. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_rovodev.py +0 -0
  458. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_scaffold.py +0 -0
  459. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_shai.py +0 -0
  460. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_state.py +0 -0
  461. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_subcommand.py +0 -0
  462. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_tabnine.py +0 -0
  463. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_trae.py +0 -0
  464. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_zcode.py +0 -0
  465. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_integration_zed.py +0 -0
  466. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_manifest.py +0 -0
  467. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_registry.py +0 -0
  468. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/integrations/test_skill_frontmatter_quoting.py +0 -0
  469. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/parity_helpers.py +0 -0
  470. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/self_upgrade_helpers.py +0 -0
  471. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_agent_config_consistency.py +0 -0
  472. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_branch_numbering.py +0 -0
  473. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_check_prerequisites_paths_only.py +0 -0
  474. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_check_tool.py +0 -0
  475. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_cli_version.py +0 -0
  476. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_command_template_py_scripts.py +0 -0
  477. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_commands_package.py +0 -0
  478. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_create_new_feature_python_parity.py +0 -0
  479. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_download_security.py +0 -0
  480. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_extension_add_path_traversal.py +0 -0
  481. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_extension_registration.py +0 -0
  482. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_extension_skills.py +0 -0
  483. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_extension_update_hardening.py +0 -0
  484. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_extensions.py +0 -0
  485. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_github_http.py +0 -0
  486. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_init_dir.py +0 -0
  487. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_init_dir_cli.py +0 -0
  488. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_init_output_markup.py +0 -0
  489. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_live_transient_windows.py +0 -0
  490. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_merge.py +0 -0
  491. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_post_process.py +0 -0
  492. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_presets.py +0 -0
  493. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_ps1_encoding.py +0 -0
  494. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_registrar_path_traversal.py +0 -0
  495. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_resolve_template_python_parity.py +0 -0
  496. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_security_workflow.py +0 -0
  497. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_self_upgrade_detection.py +0 -0
  498. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_self_upgrade_execution.py +0 -0
  499. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_self_upgrade_guidance.py +0 -0
  500. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_self_upgrade_verification.py +0 -0
  501. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_setup_plan_feature_json.py +0 -0
  502. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_setup_plan_no_overwrite.py +0 -0
  503. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_setup_plan_python_parity.py +0 -0
  504. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_setup_tasks.py +0 -0
  505. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_setup_tasks_python_parity.py +0 -0
  506. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_shared_infra_gitignore.py +0 -0
  507. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_shared_infra_integrity.py +0 -0
  508. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_skill_placeholder_py.py +0 -0
  509. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_specify_template_numbering.py +0 -0
  510. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_timestamp_branches.py +0 -0
  511. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_upgrade.py +0 -0
  512. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_utils.py +0 -0
  513. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_utils_assets_imports.py +0 -0
  514. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_version_imports.py +0 -0
  515. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/test_workflow_run_without_project.py +0 -0
  516. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundle_download_url.py +0 -0
  517. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_adapters.py +0 -0
  518. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_catalog_config.py +0 -0
  519. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_conflict.py +0 -0
  520. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_packager.py +0 -0
  521. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_primitives.py +0 -0
  522. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_records.py +0 -0
  523. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_references.py +0 -0
  524. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_resolver.py +0 -0
  525. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_validator.py +0 -0
  526. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_versioning.py +0 -0
  527. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/unit/test_bundler_yamlio.py +0 -0
  528. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/workflows/conftest.py +0 -0
  529. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/workflows/test_overlay_commands.py +0 -0
  530. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/workflows/test_overlay_composer.py +0 -0
  531. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/workflows/test_overlay_layer_sources.py +0 -0
  532. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/workflows/test_overlay_merge.py +0 -0
  533. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/workflows/test_overlay_schema.py +0 -0
  534. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/workflows/test_overlay_security.py +0 -0
  535. {specify_cli-0.16.3 → specify_cli-0.16.4}/tests/workflows/test_resolver_integration.py +0 -0
  536. {specify_cli-0.16.3 → specify_cli-0.16.4}/workflows/ARCHITECTURE.md +0 -0
  537. {specify_cli-0.16.3 → specify_cli-0.16.4}/workflows/PUBLISHING.md +0 -0
  538. {specify_cli-0.16.3 → specify_cli-0.16.4}/workflows/README.md +0 -0
  539. {specify_cli-0.16.3 → specify_cli-0.16.4}/workflows/catalog.community.json +0 -0
  540. {specify_cli-0.16.3 → specify_cli-0.16.4}/workflows/catalog.json +0 -0
  541. {specify_cli-0.16.3 → specify_cli-0.16.4}/workflows/speckit/workflow.yml +0 -0
  542. {specify_cli-0.16.3 → specify_cli-0.16.4}/workflows/step-catalog.community.json +0 -0
  543. {specify_cli-0.16.3 → specify_cli-0.16.4}/workflows/step-catalog.json +0 -0
@@ -8,6 +8,10 @@ updates:
8
8
  - dependency-name: "github/gh-aw-actions/**"
9
9
  - dependency-name: "github/gh-aw-actions" # Managed by gh aw compile. Version-locked to the gh-aw compiler; do not bump.
10
10
  package-ecosystem: github-actions
11
+ groups:
12
+ codeql-action:
13
+ patterns:
14
+ - "github/codeql-action*"
11
15
  schedule:
12
16
  interval: weekly
13
17
  version: 2
@@ -1,4 +1,4 @@
1
- # gh-aw-metadata: {"schema_version":"v4","frontmatter_hash":"687ea37b376b3b918331c13fce6cdbf5b9898bab8e514ca57b662b92b6d3cd2c","body_hash":"83b7e917f475d6ddf32f17e7da09dd4097a01dddbcbbf8eeec673912285de8b2","compiler_version":"v0.79.8","strict":true,"agent_id":"copilot","engine_versions":{"copilot":"1.0.60"}}
1
+ # gh-aw-metadata: {"schema_version":"v4","frontmatter_hash":"f9532e77722bfd32e8f626cbfbf6c5372ddcd9997963d965d53e8531b3e28a15","body_hash":"83b7e917f475d6ddf32f17e7da09dd4097a01dddbcbbf8eeec673912285de8b2","compiler_version":"v0.79.8","strict":true,"agent_id":"copilot","engine_versions":{"copilot":"1.0.60"}}
2
2
  # gh-aw-manifest: {"version":1,"secrets":["COPILOT_GITHUB_TOKEN","GH_AW_CI_TRIGGER_TOKEN","GH_AW_GITHUB_MCP_SERVER_TOKEN","GH_AW_GITHUB_TOKEN","GITHUB_TOKEN"],"actions":[{"repo":"actions/checkout","sha":"3d3c42e5aac5ba805825da76410c181273ba90b1","version":"v7.0.1"},{"repo":"actions/download-artifact","sha":"3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c","version":"v8.0.1"},{"repo":"actions/github-script","sha":"3a2844b7e9c422d3c10d287c895573f7108da1b3","version":"v9.0.0"},{"repo":"actions/setup-node","sha":"820762786026740c76f36085b0efc47a31fe5020","version":"v7.0.0"},{"repo":"actions/upload-artifact","sha":"043fb46d1a93c77aae656e7c1c64a875d1fc6a0a","version":"v7.0.1"},{"repo":"github/gh-aw-actions/setup","sha":"c0338fef4749d08c21f8f975fb0e37efa17dda47","version":"v0.79.8"}],"containers":[{"image":"ghcr.io/github/gh-aw-firewall/agent:0.27.2","digest":"sha256:f88e5b17b6b7a600117bc121114d6ce2155c88c983c0c939c5df884f730fa1d6","pinned_image":"ghcr.io/github/gh-aw-firewall/agent:0.27.2@sha256:f88e5b17b6b7a600117bc121114d6ce2155c88c983c0c939c5df884f730fa1d6"},{"image":"ghcr.io/github/gh-aw-firewall/api-proxy:0.27.2","digest":"sha256:ee39841d980878ebbb87592903b06d31a1af500c71525c9616f7e8e2a27041a4","pinned_image":"ghcr.io/github/gh-aw-firewall/api-proxy:0.27.2@sha256:ee39841d980878ebbb87592903b06d31a1af500c71525c9616f7e8e2a27041a4"},{"image":"ghcr.io/github/gh-aw-firewall/squid:0.27.2","digest":"sha256:2e3a717e5f19a654cd9a2263beb52012b56bcb68562ec5ae2e42f9d156b49591","pinned_image":"ghcr.io/github/gh-aw-firewall/squid:0.27.2@sha256:2e3a717e5f19a654cd9a2263beb52012b56bcb68562ec5ae2e42f9d156b49591"},{"image":"ghcr.io/github/gh-aw-mcpg:v0.3.25","digest":"sha256:c10331ad17668ef89f38f5e356678788a40b0cd5fef96e8f92e1d9c1de47cbaa","pinned_image":"ghcr.io/github/gh-aw-mcpg:v0.3.25@sha256:c10331ad17668ef89f38f5e356678788a40b0cd5fef96e8f92e1d9c1de47cbaa"},{"image":"ghcr.io/github/github-mcp-server:v1.1.2","digest":"sha256:30197479d8036c7811892bc07e06f9a05c9ef3cdd79bc59f256d50647f95788c","pinned_image":"ghcr.io/github/github-mcp-server:v1.1.2@sha256:30197479d8036c7811892bc07e06f9a05c9ef3cdd79bc59f256d50647f95788c"}]}
3
3
  # This file was automatically generated by gh-aw (v0.79.8). DO NOT EDIT. To debug this workflow, load the skill at https://github.com/github/gh-aw/blob/main/debug.md
4
4
  #
@@ -511,9 +511,9 @@ jobs:
511
511
  mkdir -p "${RUNNER_TEMP}/gh-aw/safeoutputs"
512
512
  mkdir -p /tmp/gh-aw/safeoutputs
513
513
  mkdir -p /tmp/gh-aw/mcp-logs/safeoutputs
514
- cat > "${RUNNER_TEMP}/gh-aw/safeoutputs/config.json" << 'GH_AW_SAFE_OUTPUTS_CONFIG_7b8091d12bfe1e7b_EOF'
515
- {"add_comment":{"max":2},"add_labels":{"allowed":["extension-submission","validation-passed","validation-failed","needs-info"],"max":3},"create_pull_request":{"draft":true,"labels":["extension-submission","automated"],"max":1,"max_patch_files":100,"max_patch_size":1024,"protect_top_level_dot_folders":true,"protected_files":["package.json","bun.lockb","bunfig.toml","deno.json","deno.jsonc","deno.lock","global.json","NuGet.Config","Directory.Packages.props","mix.exs","mix.lock","go.mod","go.sum","stack.yaml","stack.yaml.lock","pom.xml","build.gradle","build.gradle.kts","settings.gradle","settings.gradle.kts","gradle.properties","package-lock.json","yarn.lock","pnpm-lock.yaml","npm-shrinkwrap.json","requirements.txt","Pipfile","Pipfile.lock","pyproject.toml","setup.py","setup.cfg","Gemfile","Gemfile.lock","uv.lock","CODEOWNERS","DESIGN.md","CONTRIBUTING.md","SECURITY.md","CODE_OF_CONDUCT.md","AGENTS.md","CLAUDE.md","GEMINI.md"],"protected_files_policy":"blocked","title_prefix":"[extension] "},"create_report_incomplete_issue":{},"missing_data":{},"missing_tool":{},"noop":{"max":1,"report-as-issue":"false"},"report_incomplete":{}}
516
- GH_AW_SAFE_OUTPUTS_CONFIG_7b8091d12bfe1e7b_EOF
514
+ cat > "${RUNNER_TEMP}/gh-aw/safeoutputs/config.json" << 'GH_AW_SAFE_OUTPUTS_CONFIG_253299f841a5ea45_EOF'
515
+ {"add_comment":{"max":2},"add_labels":{"allowed":["extension-submission","validation-passed","validation-failed","needs-info"],"max":3},"create_pull_request":{"allowed_files":["extensions/catalog.community.json","docs/community/extensions.md"],"draft":true,"labels":["extension-submission","automated"],"max":1,"max_patch_files":100,"max_patch_size":1024,"protect_top_level_dot_folders":true,"protected_files":["package.json","bun.lockb","bunfig.toml","deno.json","deno.jsonc","deno.lock","global.json","NuGet.Config","Directory.Packages.props","mix.exs","mix.lock","go.mod","go.sum","stack.yaml","stack.yaml.lock","pom.xml","build.gradle","build.gradle.kts","settings.gradle","settings.gradle.kts","gradle.properties","package-lock.json","yarn.lock","pnpm-lock.yaml","npm-shrinkwrap.json","requirements.txt","Pipfile","Pipfile.lock","pyproject.toml","setup.py","setup.cfg","Gemfile","Gemfile.lock","uv.lock","CODEOWNERS","DESIGN.md","CONTRIBUTING.md","SECURITY.md","CODE_OF_CONDUCT.md","AGENTS.md","CLAUDE.md","GEMINI.md"],"protected_files_policy":"blocked","title_prefix":"[extension] "},"create_report_incomplete_issue":{},"missing_data":{},"missing_tool":{},"noop":{"max":1,"report-as-issue":"false"},"report_incomplete":{}}
516
+ GH_AW_SAFE_OUTPUTS_CONFIG_253299f841a5ea45_EOF
517
517
  - name: Generate Safe Outputs Tools
518
518
  env:
519
519
  GH_AW_TOOLS_META_JSON: |
@@ -1705,7 +1705,7 @@ jobs:
1705
1705
  GH_AW_ALLOWED_DOMAINS: "api.business.githubcopilot.com,api.enterprise.githubcopilot.com,api.github.com,api.githubcopilot.com,api.individual.githubcopilot.com,api.snapcraft.io,archive.ubuntu.com,azure.archive.ubuntu.com,crl.geotrust.com,crl.globalsign.com,crl.identrust.com,crl.sectigo.com,crl.thawte.com,crl.usertrust.com,crl.verisign.com,crl3.digicert.com,crl4.digicert.com,crls.ssl.com,github.com,host.docker.internal,json-schema.org,json.schemastore.org,keyserver.ubuntu.com,ocsp.digicert.com,ocsp.geotrust.com,ocsp.globalsign.com,ocsp.identrust.com,ocsp.sectigo.com,ocsp.ssl.com,ocsp.thawte.com,ocsp.usertrust.com,ocsp.verisign.com,packagecloud.io,packages.cloud.google.com,packages.microsoft.com,ppa.launchpad.net,raw.githubusercontent.com,registry.npmjs.org,s.symcb.com,s.symcd.com,security.ubuntu.com,telemetry.enterprise.githubcopilot.com,ts-crl.ws.symantec.com,ts-ocsp.ws.symantec.com,www.googleapis.com"
1706
1706
  GITHUB_SERVER_URL: ${{ github.server_url }}
1707
1707
  GITHUB_API_URL: ${{ github.api_url }}
1708
- GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG: "{\"add_comment\":{\"max\":2},\"add_labels\":{\"allowed\":[\"extension-submission\",\"validation-passed\",\"validation-failed\",\"needs-info\"],\"max\":3},\"create_pull_request\":{\"draft\":true,\"labels\":[\"extension-submission\",\"automated\"],\"max\":1,\"max_patch_files\":100,\"max_patch_size\":1024,\"protect_top_level_dot_folders\":true,\"protected_files\":[\"package.json\",\"bun.lockb\",\"bunfig.toml\",\"deno.json\",\"deno.jsonc\",\"deno.lock\",\"global.json\",\"NuGet.Config\",\"Directory.Packages.props\",\"mix.exs\",\"mix.lock\",\"go.mod\",\"go.sum\",\"stack.yaml\",\"stack.yaml.lock\",\"pom.xml\",\"build.gradle\",\"build.gradle.kts\",\"settings.gradle\",\"settings.gradle.kts\",\"gradle.properties\",\"package-lock.json\",\"yarn.lock\",\"pnpm-lock.yaml\",\"npm-shrinkwrap.json\",\"requirements.txt\",\"Pipfile\",\"Pipfile.lock\",\"pyproject.toml\",\"setup.py\",\"setup.cfg\",\"Gemfile\",\"Gemfile.lock\",\"uv.lock\",\"CODEOWNERS\",\"DESIGN.md\",\"CONTRIBUTING.md\",\"SECURITY.md\",\"CODE_OF_CONDUCT.md\",\"AGENTS.md\",\"CLAUDE.md\",\"GEMINI.md\"],\"protected_files_policy\":\"blocked\",\"title_prefix\":\"[extension] \"},\"create_report_incomplete_issue\":{},\"missing_data\":{},\"missing_tool\":{},\"noop\":{\"max\":1,\"report-as-issue\":\"false\"},\"report_incomplete\":{}}"
1708
+ GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG: "{\"add_comment\":{\"max\":2},\"add_labels\":{\"allowed\":[\"extension-submission\",\"validation-passed\",\"validation-failed\",\"needs-info\"],\"max\":3},\"create_pull_request\":{\"allowed_files\":[\"extensions/catalog.community.json\",\"docs/community/extensions.md\"],\"draft\":true,\"labels\":[\"extension-submission\",\"automated\"],\"max\":1,\"max_patch_files\":100,\"max_patch_size\":1024,\"protect_top_level_dot_folders\":true,\"protected_files\":[\"package.json\",\"bun.lockb\",\"bunfig.toml\",\"deno.json\",\"deno.jsonc\",\"deno.lock\",\"global.json\",\"NuGet.Config\",\"Directory.Packages.props\",\"mix.exs\",\"mix.lock\",\"go.mod\",\"go.sum\",\"stack.yaml\",\"stack.yaml.lock\",\"pom.xml\",\"build.gradle\",\"build.gradle.kts\",\"settings.gradle\",\"settings.gradle.kts\",\"gradle.properties\",\"package-lock.json\",\"yarn.lock\",\"pnpm-lock.yaml\",\"npm-shrinkwrap.json\",\"requirements.txt\",\"Pipfile\",\"Pipfile.lock\",\"pyproject.toml\",\"setup.py\",\"setup.cfg\",\"Gemfile\",\"Gemfile.lock\",\"uv.lock\",\"CODEOWNERS\",\"DESIGN.md\",\"CONTRIBUTING.md\",\"SECURITY.md\",\"CODE_OF_CONDUCT.md\",\"AGENTS.md\",\"CLAUDE.md\",\"GEMINI.md\"],\"protected_files_policy\":\"blocked\",\"title_prefix\":\"[extension] \"},\"create_report_incomplete_issue\":{},\"missing_data\":{},\"missing_tool\":{},\"noop\":{\"max\":1,\"report-as-issue\":\"false\"},\"report_incomplete\":{}}"
1709
1709
  GH_AW_CI_TRIGGER_TOKEN: ${{ secrets.GH_AW_CI_TRIGGER_TOKEN }}
1710
1710
  with:
1711
1711
  github-token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -31,6 +31,9 @@ safe-outputs:
31
31
  labels: [extension-submission, automated]
32
32
  draft: true
33
33
  max: 1
34
+ allowed-files:
35
+ - extensions/catalog.community.json
36
+ - docs/community/extensions.md
34
37
  protected-files:
35
38
  policy: blocked
36
39
  exclude:
@@ -1,4 +1,4 @@
1
- # gh-aw-metadata: {"schema_version":"v4","frontmatter_hash":"b4ba1db5fdec754fa825cc3160879924118bc454a781eed70ef6c90beab83a95","body_hash":"cb6c19088fa13da0a8320c174e8c14c4887d2c8a005a5cb2d2d2faa3f890de39","compiler_version":"v0.79.8","strict":true,"agent_id":"copilot","engine_versions":{"copilot":"1.0.60"}}
1
+ # gh-aw-metadata: {"schema_version":"v4","frontmatter_hash":"09fb89e95c57c7beeaa0c823fb35f38d5f9db898a419e59dd0a323e7a9209753","body_hash":"cb6c19088fa13da0a8320c174e8c14c4887d2c8a005a5cb2d2d2faa3f890de39","compiler_version":"v0.79.8","strict":true,"agent_id":"copilot","engine_versions":{"copilot":"1.0.60"}}
2
2
  # gh-aw-manifest: {"version":1,"secrets":["COPILOT_GITHUB_TOKEN","GH_AW_CI_TRIGGER_TOKEN","GH_AW_GITHUB_MCP_SERVER_TOKEN","GH_AW_GITHUB_TOKEN","GITHUB_TOKEN"],"actions":[{"repo":"actions/checkout","sha":"3d3c42e5aac5ba805825da76410c181273ba90b1","version":"v7.0.1"},{"repo":"actions/download-artifact","sha":"3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c","version":"v8.0.1"},{"repo":"actions/github-script","sha":"3a2844b7e9c422d3c10d287c895573f7108da1b3","version":"v9.0.0"},{"repo":"actions/setup-node","sha":"820762786026740c76f36085b0efc47a31fe5020","version":"v7.0.0"},{"repo":"actions/upload-artifact","sha":"043fb46d1a93c77aae656e7c1c64a875d1fc6a0a","version":"v7.0.1"},{"repo":"github/gh-aw-actions/setup","sha":"c0338fef4749d08c21f8f975fb0e37efa17dda47","version":"v0.79.8"}],"containers":[{"image":"ghcr.io/github/gh-aw-firewall/agent:0.27.2","digest":"sha256:f88e5b17b6b7a600117bc121114d6ce2155c88c983c0c939c5df884f730fa1d6","pinned_image":"ghcr.io/github/gh-aw-firewall/agent:0.27.2@sha256:f88e5b17b6b7a600117bc121114d6ce2155c88c983c0c939c5df884f730fa1d6"},{"image":"ghcr.io/github/gh-aw-firewall/api-proxy:0.27.2","digest":"sha256:ee39841d980878ebbb87592903b06d31a1af500c71525c9616f7e8e2a27041a4","pinned_image":"ghcr.io/github/gh-aw-firewall/api-proxy:0.27.2@sha256:ee39841d980878ebbb87592903b06d31a1af500c71525c9616f7e8e2a27041a4"},{"image":"ghcr.io/github/gh-aw-firewall/squid:0.27.2","digest":"sha256:2e3a717e5f19a654cd9a2263beb52012b56bcb68562ec5ae2e42f9d156b49591","pinned_image":"ghcr.io/github/gh-aw-firewall/squid:0.27.2@sha256:2e3a717e5f19a654cd9a2263beb52012b56bcb68562ec5ae2e42f9d156b49591"},{"image":"ghcr.io/github/gh-aw-mcpg:v0.3.25","digest":"sha256:c10331ad17668ef89f38f5e356678788a40b0cd5fef96e8f92e1d9c1de47cbaa","pinned_image":"ghcr.io/github/gh-aw-mcpg:v0.3.25@sha256:c10331ad17668ef89f38f5e356678788a40b0cd5fef96e8f92e1d9c1de47cbaa"},{"image":"ghcr.io/github/github-mcp-server:v1.1.2","digest":"sha256:30197479d8036c7811892bc07e06f9a05c9ef3cdd79bc59f256d50647f95788c","pinned_image":"ghcr.io/github/github-mcp-server:v1.1.2@sha256:30197479d8036c7811892bc07e06f9a05c9ef3cdd79bc59f256d50647f95788c"}]}
3
3
  # This file was automatically generated by gh-aw (v0.79.8). DO NOT EDIT. To debug this workflow, load the skill at https://github.com/github/gh-aw/blob/main/debug.md
4
4
  #
@@ -511,9 +511,9 @@ jobs:
511
511
  mkdir -p "${RUNNER_TEMP}/gh-aw/safeoutputs"
512
512
  mkdir -p /tmp/gh-aw/safeoutputs
513
513
  mkdir -p /tmp/gh-aw/mcp-logs/safeoutputs
514
- cat > "${RUNNER_TEMP}/gh-aw/safeoutputs/config.json" << 'GH_AW_SAFE_OUTPUTS_CONFIG_78499ff7c917c441_EOF'
515
- {"add_comment":{"max":2},"add_labels":{"allowed":["preset-submission","validation-passed","validation-failed","needs-info"],"max":3},"create_pull_request":{"draft":true,"labels":["preset-submission","automated"],"max":1,"max_patch_files":100,"max_patch_size":1024,"protect_top_level_dot_folders":true,"protected_files":["package.json","bun.lockb","bunfig.toml","deno.json","deno.jsonc","deno.lock","global.json","NuGet.Config","Directory.Packages.props","mix.exs","mix.lock","go.mod","go.sum","stack.yaml","stack.yaml.lock","pom.xml","build.gradle","build.gradle.kts","settings.gradle","settings.gradle.kts","gradle.properties","package-lock.json","yarn.lock","pnpm-lock.yaml","npm-shrinkwrap.json","requirements.txt","Pipfile","Pipfile.lock","pyproject.toml","setup.py","setup.cfg","Gemfile","Gemfile.lock","uv.lock","CODEOWNERS","DESIGN.md","CONTRIBUTING.md","SECURITY.md","CODE_OF_CONDUCT.md","AGENTS.md","CLAUDE.md","GEMINI.md"],"protected_files_policy":"blocked","title_prefix":"[preset] "},"create_report_incomplete_issue":{},"missing_data":{},"missing_tool":{},"noop":{"max":1,"report-as-issue":"false"},"report_incomplete":{}}
516
- GH_AW_SAFE_OUTPUTS_CONFIG_78499ff7c917c441_EOF
514
+ cat > "${RUNNER_TEMP}/gh-aw/safeoutputs/config.json" << 'GH_AW_SAFE_OUTPUTS_CONFIG_429ff69f52872d0b_EOF'
515
+ {"add_comment":{"max":2},"add_labels":{"allowed":["preset-submission","validation-passed","validation-failed","needs-info"],"max":3},"create_pull_request":{"allowed_files":["presets/catalog.community.json","docs/community/presets.md"],"draft":true,"labels":["preset-submission","automated"],"max":1,"max_patch_files":100,"max_patch_size":1024,"protect_top_level_dot_folders":true,"protected_files":["package.json","bun.lockb","bunfig.toml","deno.json","deno.jsonc","deno.lock","global.json","NuGet.Config","Directory.Packages.props","mix.exs","mix.lock","go.mod","go.sum","stack.yaml","stack.yaml.lock","pom.xml","build.gradle","build.gradle.kts","settings.gradle","settings.gradle.kts","gradle.properties","package-lock.json","yarn.lock","pnpm-lock.yaml","npm-shrinkwrap.json","requirements.txt","Pipfile","Pipfile.lock","pyproject.toml","setup.py","setup.cfg","Gemfile","Gemfile.lock","uv.lock","CODEOWNERS","DESIGN.md","CONTRIBUTING.md","SECURITY.md","CODE_OF_CONDUCT.md","AGENTS.md","CLAUDE.md","GEMINI.md"],"protected_files_policy":"blocked","title_prefix":"[preset] "},"create_report_incomplete_issue":{},"missing_data":{},"missing_tool":{},"noop":{"max":1,"report-as-issue":"false"},"report_incomplete":{}}
516
+ GH_AW_SAFE_OUTPUTS_CONFIG_429ff69f52872d0b_EOF
517
517
  - name: Generate Safe Outputs Tools
518
518
  env:
519
519
  GH_AW_TOOLS_META_JSON: |
@@ -1705,7 +1705,7 @@ jobs:
1705
1705
  GH_AW_ALLOWED_DOMAINS: "api.business.githubcopilot.com,api.enterprise.githubcopilot.com,api.github.com,api.githubcopilot.com,api.individual.githubcopilot.com,api.snapcraft.io,archive.ubuntu.com,azure.archive.ubuntu.com,crl.geotrust.com,crl.globalsign.com,crl.identrust.com,crl.sectigo.com,crl.thawte.com,crl.usertrust.com,crl.verisign.com,crl3.digicert.com,crl4.digicert.com,crls.ssl.com,github.com,host.docker.internal,json-schema.org,json.schemastore.org,keyserver.ubuntu.com,ocsp.digicert.com,ocsp.geotrust.com,ocsp.globalsign.com,ocsp.identrust.com,ocsp.sectigo.com,ocsp.ssl.com,ocsp.thawte.com,ocsp.usertrust.com,ocsp.verisign.com,packagecloud.io,packages.cloud.google.com,packages.microsoft.com,ppa.launchpad.net,raw.githubusercontent.com,registry.npmjs.org,s.symcb.com,s.symcd.com,security.ubuntu.com,telemetry.enterprise.githubcopilot.com,ts-crl.ws.symantec.com,ts-ocsp.ws.symantec.com,www.googleapis.com"
1706
1706
  GITHUB_SERVER_URL: ${{ github.server_url }}
1707
1707
  GITHUB_API_URL: ${{ github.api_url }}
1708
- GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG: "{\"add_comment\":{\"max\":2},\"add_labels\":{\"allowed\":[\"preset-submission\",\"validation-passed\",\"validation-failed\",\"needs-info\"],\"max\":3},\"create_pull_request\":{\"draft\":true,\"labels\":[\"preset-submission\",\"automated\"],\"max\":1,\"max_patch_files\":100,\"max_patch_size\":1024,\"protect_top_level_dot_folders\":true,\"protected_files\":[\"package.json\",\"bun.lockb\",\"bunfig.toml\",\"deno.json\",\"deno.jsonc\",\"deno.lock\",\"global.json\",\"NuGet.Config\",\"Directory.Packages.props\",\"mix.exs\",\"mix.lock\",\"go.mod\",\"go.sum\",\"stack.yaml\",\"stack.yaml.lock\",\"pom.xml\",\"build.gradle\",\"build.gradle.kts\",\"settings.gradle\",\"settings.gradle.kts\",\"gradle.properties\",\"package-lock.json\",\"yarn.lock\",\"pnpm-lock.yaml\",\"npm-shrinkwrap.json\",\"requirements.txt\",\"Pipfile\",\"Pipfile.lock\",\"pyproject.toml\",\"setup.py\",\"setup.cfg\",\"Gemfile\",\"Gemfile.lock\",\"uv.lock\",\"CODEOWNERS\",\"DESIGN.md\",\"CONTRIBUTING.md\",\"SECURITY.md\",\"CODE_OF_CONDUCT.md\",\"AGENTS.md\",\"CLAUDE.md\",\"GEMINI.md\"],\"protected_files_policy\":\"blocked\",\"title_prefix\":\"[preset] \"},\"create_report_incomplete_issue\":{},\"missing_data\":{},\"missing_tool\":{},\"noop\":{\"max\":1,\"report-as-issue\":\"false\"},\"report_incomplete\":{}}"
1708
+ GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG: "{\"add_comment\":{\"max\":2},\"add_labels\":{\"allowed\":[\"preset-submission\",\"validation-passed\",\"validation-failed\",\"needs-info\"],\"max\":3},\"create_pull_request\":{\"allowed_files\":[\"presets/catalog.community.json\",\"docs/community/presets.md\"],\"draft\":true,\"labels\":[\"preset-submission\",\"automated\"],\"max\":1,\"max_patch_files\":100,\"max_patch_size\":1024,\"protect_top_level_dot_folders\":true,\"protected_files\":[\"package.json\",\"bun.lockb\",\"bunfig.toml\",\"deno.json\",\"deno.jsonc\",\"deno.lock\",\"global.json\",\"NuGet.Config\",\"Directory.Packages.props\",\"mix.exs\",\"mix.lock\",\"go.mod\",\"go.sum\",\"stack.yaml\",\"stack.yaml.lock\",\"pom.xml\",\"build.gradle\",\"build.gradle.kts\",\"settings.gradle\",\"settings.gradle.kts\",\"gradle.properties\",\"package-lock.json\",\"yarn.lock\",\"pnpm-lock.yaml\",\"npm-shrinkwrap.json\",\"requirements.txt\",\"Pipfile\",\"Pipfile.lock\",\"pyproject.toml\",\"setup.py\",\"setup.cfg\",\"Gemfile\",\"Gemfile.lock\",\"uv.lock\",\"CODEOWNERS\",\"DESIGN.md\",\"CONTRIBUTING.md\",\"SECURITY.md\",\"CODE_OF_CONDUCT.md\",\"AGENTS.md\",\"CLAUDE.md\",\"GEMINI.md\"],\"protected_files_policy\":\"blocked\",\"title_prefix\":\"[preset] \"},\"create_report_incomplete_issue\":{},\"missing_data\":{},\"missing_tool\":{},\"noop\":{\"max\":1,\"report-as-issue\":\"false\"},\"report_incomplete\":{}}"
1709
1709
  GH_AW_CI_TRIGGER_TOKEN: ${{ secrets.GH_AW_CI_TRIGGER_TOKEN }}
1710
1710
  with:
1711
1711
  github-token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -31,6 +31,9 @@ safe-outputs:
31
31
  labels: [preset-submission, automated]
32
32
  draft: true
33
33
  max: 1
34
+ allowed-files:
35
+ - presets/catalog.community.json
36
+ - docs/community/presets.md
34
37
  protected-files:
35
38
  policy: blocked
36
39
  exclude:
@@ -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@d1ba80a13dd99fba24a470575428917156a28b43 # v4
25
+ uses: github/codeql-action/init@5595ccaf912efad79be6eef63a5619ff05969be3 # v4
26
26
  with:
27
27
  languages: ${{ matrix.language }}
28
28
 
29
29
  - name: Perform CodeQL Analysis
30
- uses: github/codeql-action/analyze@d1ba80a13dd99fba24a470575428917156a28b43 # v4
30
+ uses: github/codeql-action/analyze@5595ccaf912efad79be6eef63a5619ff05969be3 # v4
31
31
  with:
32
32
  category: "/language:${{ matrix.language }}"
@@ -2,6 +2,32 @@
2
2
 
3
3
  <!-- insert new changelog below this comment -->
4
4
 
5
+ ## [0.16.4] - 2026-08-14
6
+
7
+ ### Changed
8
+
9
+ - Add SpecAssay preset to community catalog (#4123)
10
+ - Update Intake Authoring Governance preset to v0.3.1 (#4121)
11
+ - Update Superspec extension to v1.0.2 (#4120)
12
+ - fix(taskstoissues): widen task-ID regex to match IDs longer than 3 digits (#4101)
13
+ - Add Architecture Governance extension to community catalog (#4122)
14
+ - fix(workflows): validate non-string step types (#4111)
15
+ - Harden community submission workflow output allowlists (#4103)
16
+ - chore(deps): bump github/codeql-action (init + analyze) from 4.37.5 to 4.37.6 (#4114)
17
+ - Add SpecAssay Check extension to community catalog (#4113)
18
+ - fix(integrations): dispatch goose commands via `goose run` (#2416) (#3781)
19
+ - fix(powershell): stop Out-Null swallowing the AVAILABLE_DOCS status lines (#3891)
20
+ - fix: remove TOCTOU race in RunState.load (#3839)
21
+ - fix: decode the zipped manifest as UTF-8 before parsing (#3958)
22
+ - Update Agent Parity Governance preset to v0.4.2 (#4110)
23
+ - fix: log progress tracker refresh errors instead of silently swallowing (#3975)
24
+ - [extension] Add SpecJudge extension to community catalog (#4079)
25
+ - fix(bundler): read the authoritative `default_integration` field, not only its legacy aliases (#3880)
26
+ - fix(auth): treat exact host patterns literally (#4108)
27
+ - feat: add Mistral Vibe integration with Claude parity (#4075)
28
+ - [extension] Add spec-kit-atlas extension to community catalog (#4105)
29
+ - chore: release 0.16.3, begin 0.16.4.dev0 development (#4107)
30
+
5
31
  ## [0.16.3] - 2026-08-13
6
32
 
7
33
  ### Changed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: specify-cli
3
- Version: 0.16.3
3
+ Version: 0.16.4
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
@@ -32,9 +32,11 @@ The following community-contributed extensions are available in [`catalog.commun
32
32
  | 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) |
33
33
  | API Evolve | Managed API contract evolution — breaking-change detection, semver enforcement, deprecation orchestration, and lifecycle gates across REST, GraphQL, and gRPC | `process` | Read+Write | [spec-kit-api-evolve](https://github.com/Quratulain-bilal/spec-kit-api-evolve) |
34
34
  | Architect Impact Previewer | Predicts architectural impact, complexity, and risks of proposed changes before implementation. | `visibility` | Read-only | [spec-kit-architect-preview](https://github.com/UmmeHabiba1312/spec-kit-architect-preview) |
35
+ | Architecture Governance | Keep specs, code & ADRs in sync: citation slots + a read-only, fail-closed validator | `docs` | Read+Write | [spec-kit-arch-governance](https://github.com/ashbrener/spec-kit-arch-governance) |
35
36
  | Architecture Guard | Framework-agnostic architecture review extension for validating implementation against governance and architecture constitutions, detecting architectural drift, and generating non-blocking refactor tasks | `process` | Read+Write | [spec-kit-architecture-guard](https://github.com/DyanGalih/spec-kit-architecture-guard) |
36
37
  | Architecture Workflow | Generate or reverse project-level 4+1 architecture views with per-view and full-workflow commands | `docs` | Read+Write | [spec-kit-arch](https://github.com/bigsmartben/spec-kit-arch) |
37
38
  | Archive Extension | Archive merged features into main project memory, resolving gaps and conflicts. | `docs` | Read+Write | [spec-kit-archive](https://github.com/stn1slv/spec-kit-archive) |
39
+ | spec-kit-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) |
38
40
  | 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) |
39
41
  | 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) |
40
42
  | 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) |
@@ -145,6 +147,8 @@ The following community-contributed extensions are available in [`catalog.commun
145
147
  | 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) |
146
148
  | 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) |
147
149
  | Spec2Cloud | Spec-driven workflow tuned for shipping to Azure | `process` | Read+Write | [spec2cloud](https://github.com/Azure-Samples/Spec2Cloud) |
150
+ | SpecAssay Check | Gate 2 refuses silent gaps and emits a trace-manifest (trace-manifest.json). | `visibility` | Read+Write | [specassay](https://github.com/rdryfoos/specassay) |
151
+ | 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) |
148
152
  | SpecKit Companion | Live spec-driven progress — lifecycle capture, status, resume, and a turbo pipeline profile | `visibility` | Read+Write | [speckit-companion](https://github.com/alfredoperez/speckit-companion) |
149
153
  | SpecKit Grill Me | Exhaustively resolve specification ambiguities and decisions before planning | `process` | Read+Write | [speckit-grill-me](https://github.com/yoshi1220/speckit-grill-me) |
150
154
  | 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) |
@@ -8,7 +8,7 @@ The following community-contributed presets customize how Spec Kit behaves — o
8
8
  | Preset | Purpose | Provides | Requires | URL |
9
9
  |--------|---------|----------|----------|-----|
10
10
  | A11Y Governance | Adds WCAG 2.2 AA, accessible status output, bilingual CEFR-B2 delivery, inclusive-content and didactic-comment governance, and provider-neutral model routing. | 11 templates, 3 commands | — | [spec-kit-preset-a11y-governance](https://github.com/hindermath/spec-kit-preset-a11y-governance) |
11
- | Agent Parity Governance | Adds shared-guidance and generated-command parity, repository-fleet completion evidence, secret-free runner/status metadata, audit-ready Spec-Kit run evidence, and agent-neutral model-routing guidance across declared AI-agent surfaces. | 6 templates, 3 commands | — | [spec-kit-preset-agent-parity-governance](https://github.com/hindermath/spec-kit-preset-agent-parity-governance) |
11
+ | Agent Parity Governance | Adds shared-guidance parity, fleet-completion evidence, secret-free runner metadata, audit-ready Spec Kit evidence, and agent-neutral model routing across declared AI-agent surfaces. | 7 templates, 3 commands | — | [spec-kit-preset-agent-parity-governance](https://github.com/hindermath/spec-kit-preset-agent-parity-governance) |
12
12
  | AIDE In-Place Migration | Adapts the AIDE extension workflow for in-place technology migrations (X → Y pattern) — adds migration objectives, verification gates, knowledge documents, and behavioral equivalence criteria | 2 templates, 8 commands | AIDE extension | [spec-kit-presets](https://github.com/mnriem/spec-kit-presets) |
13
13
  | Architecture Governance | Adds secure architecture, STRIDE/CAPEC threat modeling, arc42/S-ADR guidance, Zero Trust, SAMM, BSI cloud assurance, audit evidence, and provider-neutral model routing. | 14 templates, 3 commands | — | [spec-kit-preset-architecture-governance](https://github.com/hindermath/spec-kit-preset-architecture-governance) |
14
14
  | Autonomous Run Governance | Adds permission-bounded autonomous delivery, an optional intake-review gate, and preservation of the project's learner and accessibility contract. | 13 templates, 5 commands, 4 scripts | — | [spec-kit-preset-autonomous-run-governance](https://github.com/hindermath/spec-kit-preset-autonomous-run-governance) |
@@ -19,7 +19,7 @@ The following community-contributed presets customize how Spec Kit behaves — o
19
19
  | Explicit Task Dependencies | Adds explicit `(depends on T###)` dependency declarations and an Execution Wave DAG to tasks.md for parallel scheduling | 1 template, 1 command | — | [spec-kit-preset-explicit-task-dependencies](https://github.com/Quratulain-bilal/spec-kit-preset-explicit-task-dependencies) |
20
20
  | Fiction Book Writing | It adapts the Spec-Driven Development workflow for storytelling to create books or audiobooks (with annotations) in 12 languages: features become story elements, specs become story briefs, plans become story structures, and tasks become scene-by-scene writing tasks. Supports single and multi-POV, all major plot structure frameworks, and two style modes: an author voice sample or humanized AI prose principles. Supports interactive elements like brainstorming, interview, roleplay, and extras like statistics, cover builder, illustration builder, and bio command. Export with templates for KDP, D2D, etc. | 26 templates, 34 commands, 2 scripts | — | [speckit-preset-fiction-book-writing](https://github.com/adaumann/speckit-preset-fiction-book-writing) |
21
21
  | Game Narrative Writing | Preset for game narrative design and interactive storytelling. It adapts the Spec-Driven Development workflow for game narratives: features become story mechanics, specs become narrative briefs, plans become story maps, and tasks become dialogue and scene-writing tasks. Supports branching narratives, player agency systems, state machines, and interactive dialogue trees. | 37 templates, 34 commands, 5 scripts | — | [speckit-preset-game-narrative-writing](https://github.com/adaumann/speckit-preset-game-narrative-writing) |
22
- | Intake Authoring Governance | Governs traceable intake CRUD and language-aware requirements collections with atomic migrations, rollback evidence, and safe series authoring. | 12 templates, 5 commands, 7 scripts | — | [spec-kit-preset-intake-authoring-governance](https://github.com/hindermath/spec-kit-preset-intake-authoring-governance) |
22
+ | Intake Authoring Governance | Governs traceable intake CRUD, language-aware requirements collections, bounded public HTTPS sources, and explicitly approved single or series authoring. | 13 templates, 5 commands, 7 scripts | — | [spec-kit-preset-intake-authoring-governance](https://github.com/hindermath/spec-kit-preset-intake-authoring-governance) |
23
23
  | Intake Review Governance | Reviews single, series, campaign, and language-aware requirements collections before Spec Kit execution. | 8 templates, 3 commands, 4 scripts | — | [spec-kit-preset-intake-review-governance](https://github.com/hindermath/spec-kit-preset-intake-review-governance) |
24
24
  | Intake Sequencing Governance | Manages language-aware intake-series order, typed dependencies, lifecycle, and authority-neutral next-candidate selection. | 11 templates, 6 commands, 8 scripts | — | [spec-kit-preset-intake-sequencing-governance](https://github.com/hindermath/spec-kit-preset-intake-sequencing-governance) |
25
25
  | iSAQB Architecture Governance | Adds iSAQB/CPSA-F and arc42 architecture governance, architecture views, quality scenarios, ADRs, risks, technical-debt evidence, and provider-neutral model routing. | 14 templates, 3 commands | — | [spec-kit-preset-isaqb-architecture-governance](https://github.com/hindermath/spec-kit-preset-isaqb-architecture-governance) |
@@ -33,6 +33,7 @@ The following community-contributed presets customize how Spec Kit behaves — o
33
33
  | 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) |
34
34
  | SicarioSpec Core | Baseline secure-by-default Spec Kit governance profile. | 5 templates | — | [sicario-spec](https://github.com/dfirs1car1o/sicario-spec) |
35
35
  | Spec2Cloud | Spec-driven workflow tuned for shipping to Azure: spec → plan → tasks → implement → deploy | 5 templates, 8 commands | — | [spec2cloud](https://github.com/Azure-Samples/Spec2Cloud) |
36
+ | SpecAssay | Appends durable-ID, Carries, and SpecAssay vocabulary onto Spec Kit spec, tasks, and constitution templates. | 3 templates | — | [specassay](https://github.com/rdryfoos/specassay) |
36
37
  | 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) |
37
38
  | 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) |
38
39
  | 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) |
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schema_version": "1.0",
3
- "updated_at": "2026-08-11T00:00:00Z",
3
+ "updated_at": "2026-08-14T00:00:00Z",
4
4
  "catalog_url": "https://raw.githubusercontent.com/github/spec-kit/main/extensions/catalog.community.json",
5
5
  "extensions": {
6
6
  "adrkit": {
@@ -286,6 +286,44 @@
286
286
  "created_at": "2026-05-14T00:00:00Z",
287
287
  "updated_at": "2026-06-30T00:00:00Z"
288
288
  },
289
+ "arch-governance": {
290
+ "name": "Architecture Governance",
291
+ "id": "arch-governance",
292
+ "description": "Keep specs, code & ADRs in sync: citation slots + a read-only, fail-closed validator.",
293
+ "author": "Ash Brener",
294
+ "version": "1.2.2",
295
+ "download_url": "https://github.com/ashbrener/spec-kit-arch-governance/archive/refs/tags/v1.2.2.zip",
296
+ "repository": "https://github.com/ashbrener/spec-kit-arch-governance",
297
+ "homepage": "https://github.com/ashbrener/spec-kit-arch-governance",
298
+ "documentation": "https://github.com/ashbrener/spec-kit-arch-governance/blob/main/README.md",
299
+ "changelog": "https://github.com/ashbrener/spec-kit-arch-governance/blob/main/CHANGELOG.md",
300
+ "license": "MIT",
301
+ "category": "docs",
302
+ "effect": "read-write",
303
+ "requires": {
304
+ "speckit_version": ">=0.1.0",
305
+ "tools": [
306
+ { "name": "python", "version": ">=3.11", "required": true },
307
+ { "name": "uv", "required": true }
308
+ ]
309
+ },
310
+ "provides": {
311
+ "commands": 6,
312
+ "hooks": 3
313
+ },
314
+ "tags": [
315
+ "architecture",
316
+ "governance",
317
+ "adr",
318
+ "citations",
319
+ "spec-sync"
320
+ ],
321
+ "verified": false,
322
+ "downloads": 0,
323
+ "stars": 0,
324
+ "created_at": "2026-08-14T00:00:00Z",
325
+ "updated_at": "2026-08-14T00:00:00Z"
326
+ },
289
327
  "architect-preview": {
290
328
  "name": "Architect Impact Previewer",
291
329
  "id": "architect-preview",
@@ -390,6 +428,44 @@
390
428
  "created_at": "2026-03-14T00:00:00Z",
391
429
  "updated_at": "2026-08-11T00:00:00Z"
392
430
  },
431
+ "atlas": {
432
+ "name": "spec-kit-atlas",
433
+ "id": "atlas",
434
+ "description": "Synthesize spec-kit specs into faithful, interactive architecture storybooks & doc portals.",
435
+ "author": "Ash Brener",
436
+ "version": "0.1.0",
437
+ "download_url": "https://github.com/ashbrener/spec-kit-atlas/archive/refs/tags/v0.1.0.zip",
438
+ "repository": "https://github.com/ashbrener/spec-kit-atlas",
439
+ "homepage": "https://github.com/ashbrener/spec-kit-atlas",
440
+ "documentation": "https://github.com/ashbrener/spec-kit-atlas/blob/main/README.md",
441
+ "changelog": "https://github.com/ashbrener/spec-kit-atlas/blob/main/CHANGELOG.md",
442
+ "license": "MIT",
443
+ "category": "docs",
444
+ "effect": "read-only",
445
+ "requires": {
446
+ "speckit_version": ">=0.1.0",
447
+ "tools": [
448
+ { "name": "python", "version": ">=3.11", "required": true },
449
+ { "name": "uv", "required": true }
450
+ ]
451
+ },
452
+ "provides": {
453
+ "commands": 2,
454
+ "hooks": 0
455
+ },
456
+ "tags": [
457
+ "documentation",
458
+ "architecture",
459
+ "storybook",
460
+ "traceability",
461
+ "atlas"
462
+ ],
463
+ "verified": false,
464
+ "downloads": 0,
465
+ "stars": 0,
466
+ "created_at": "2026-08-13T00:00:00Z",
467
+ "updated_at": "2026-08-13T00:00:00Z"
468
+ },
393
469
  "azure-devops": {
394
470
  "name": "Azure DevOps Integration",
395
471
  "id": "azure-devops",
@@ -4148,6 +4224,78 @@
4148
4224
  "created_at": "2026-04-30T00:00:00Z",
4149
4225
  "updated_at": "2026-04-30T00:00:00Z"
4150
4226
  },
4227
+ "specassay-check": {
4228
+ "name": "SpecAssay Check",
4229
+ "id": "specassay-check",
4230
+ "description": "Gate 2 refuses silent gaps and emits a trace-manifest (trace-manifest.json).",
4231
+ "author": "Rik Dryfoos",
4232
+ "version": "0.3.3",
4233
+ "download_url": "https://github.com/rdryfoos/specassay/releases/download/v0.3.3/specassay-check-0.3.3.zip",
4234
+ "repository": "https://github.com/rdryfoos/specassay",
4235
+ "homepage": "https://www.specassay.com",
4236
+ "documentation": "https://github.com/rdryfoos/specassay/blob/main/extensions/specassay-check/README.md",
4237
+ "changelog": "https://github.com/rdryfoos/specassay/blob/main/CHANGELOG.md",
4238
+ "license": "MIT",
4239
+ "category": "visibility",
4240
+ "effect": "read-write",
4241
+ "requires": {
4242
+ "speckit_version": ">=0.14.0",
4243
+ "tools": [
4244
+ { "name": "bash", "required": true },
4245
+ { "name": "python3", "version": ">=3.8", "required": true }
4246
+ ]
4247
+ },
4248
+ "provides": {
4249
+ "commands": 1,
4250
+ "hooks": 1
4251
+ },
4252
+ "tags": [
4253
+ "traceability",
4254
+ "gate",
4255
+ "ci",
4256
+ "governance",
4257
+ "sdd"
4258
+ ],
4259
+ "verified": false,
4260
+ "downloads": 0,
4261
+ "stars": 0,
4262
+ "created_at": "2026-08-13T00:00:00Z",
4263
+ "updated_at": "2026-08-13T00:00:00Z"
4264
+ },
4265
+ "specjudge": {
4266
+ "name": "SpecJudge — right-size the model before you implement",
4267
+ "id": "specjudge",
4268
+ "description": "Recommends the model that fits your tasks, citing the spec fragment behind every level.",
4269
+ "author": "Joaquín Ruiz",
4270
+ "version": "0.5.4",
4271
+ "download_url": "https://github.com/JoaquinRuiz/SpecJudge/releases/download/v0.5.4/spec-kit-specjudge.zip",
4272
+ "repository": "https://github.com/JoaquinRuiz/SpecJudge",
4273
+ "homepage": "https://github.com/JoaquinRuiz/SpecJudge",
4274
+ "documentation": "https://github.com/JoaquinRuiz/SpecJudge/blob/main/extensions/spec-kit/README.md",
4275
+ "changelog": "https://github.com/JoaquinRuiz/SpecJudge/blob/main/extensions/spec-kit/CHANGELOG.md",
4276
+ "license": "MIT",
4277
+ "category": "process",
4278
+ "effect": "read-only",
4279
+ "requires": {
4280
+ "speckit_version": ">=0.13.0",
4281
+ "tools": [{ "name": "specjudge", "version": ">=0.5.0", "required": true }]
4282
+ },
4283
+ "provides": {
4284
+ "commands": 1,
4285
+ "hooks": 1
4286
+ },
4287
+ "tags": [
4288
+ "cost",
4289
+ "model-selection",
4290
+ "local-first",
4291
+ "ollama"
4292
+ ],
4293
+ "verified": false,
4294
+ "downloads": 0,
4295
+ "stars": 0,
4296
+ "created_at": "2026-08-12T00:00:00Z",
4297
+ "updated_at": "2026-08-12T00:00:00Z"
4298
+ },
4151
4299
  "speckit-superpowers-bridge": {
4152
4300
  "name": "Superpowers Implementation Bridge",
4153
4301
  "id": "speckit-superpowers-bridge",
@@ -4456,8 +4604,8 @@
4456
4604
  "id": "superspec",
4457
4605
  "description": "Bridges spec-kit workflows with obra/superpowers capabilities for brainstorming, TDD, code review, and resumable execution.",
4458
4606
  "author": "WangX0111",
4459
- "version": "1.0.1",
4460
- "download_url": "https://github.com/WangX0111/superspec/archive/refs/tags/v1.0.1.zip",
4607
+ "version": "1.0.2",
4608
+ "download_url": "https://github.com/WangX0111/superspec/archive/refs/tags/v1.0.2.zip",
4461
4609
  "repository": "https://github.com/WangX0111/superspec",
4462
4610
  "homepage": "https://github.com/WangX0111/superspec",
4463
4611
  "documentation": "https://github.com/WangX0111/superspec/blob/main/README.md",
@@ -4484,7 +4632,7 @@
4484
4632
  "downloads": 0,
4485
4633
  "stars": 0,
4486
4634
  "created_at": "2026-04-22T00:00:00Z",
4487
- "updated_at": "2026-05-30T00:00:00Z"
4635
+ "updated_at": "2026-08-14T00:00:00Z"
4488
4636
  },
4489
4637
  "sync": {
4490
4638
  "name": "Spec Sync",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schema_version": "1.0",
3
- "updated_at": "2026-08-12T00:00:00Z",
3
+ "updated_at": "2026-08-14T00:00:00Z",
4
4
  "catalog_url": "https://raw.githubusercontent.com/github/spec-kit/main/presets/catalog.community.json",
5
5
  "presets": {
6
6
  "a11y-governance": {
@@ -34,19 +34,19 @@
34
34
  "agent-parity-governance": {
35
35
  "name": "Agent Parity Governance",
36
36
  "id": "agent-parity-governance",
37
- "version": "0.4.1",
38
- "description": "Adds shared-guidance and generated-command parity, repository-fleet completion evidence, secret-free runner/status metadata, audit-ready Spec-Kit run evidence, and agent-neutral model-routing guidance across declared AI-agent surfaces.",
37
+ "version": "0.4.2",
38
+ "description": "Adds shared-guidance parity, fleet-completion evidence, secret-free runner metadata, audit-ready Spec Kit evidence, and agent-neutral model routing across declared AI-agent surfaces.",
39
39
  "author": "Thorsten Hindermann",
40
40
  "repository": "https://github.com/hindermath/spec-kit-preset-agent-parity-governance",
41
- "download_url": "https://github.com/hindermath/spec-kit-preset-agent-parity-governance/archive/refs/tags/v0.4.1.zip",
41
+ "download_url": "https://github.com/hindermath/spec-kit-preset-agent-parity-governance/archive/refs/tags/v0.4.2.zip",
42
42
  "homepage": "https://github.com/hindermath/spec-kit-preset-agent-parity-governance",
43
- "documentation": "https://github.com/hindermath/spec-kit-preset-agent-parity-governance/blob/v0.4.1/README.md",
43
+ "documentation": "https://github.com/hindermath/spec-kit-preset-agent-parity-governance/blob/v0.4.2/README.md",
44
44
  "license": "MIT",
45
45
  "requires": {
46
46
  "speckit_version": ">=0.8.0"
47
47
  },
48
48
  "provides": {
49
- "templates": 6,
49
+ "templates": 7,
50
50
  "commands": 3
51
51
  },
52
52
  "tags": [
@@ -59,7 +59,7 @@
59
59
  "multi-agent"
60
60
  ],
61
61
  "created_at": "2026-04-27T00:00:00Z",
62
- "updated_at": "2026-07-28T00:00:00Z"
62
+ "updated_at": "2026-08-13T00:00:00Z"
63
63
  },
64
64
  "aide-in-place": {
65
65
  "name": "AIDE In-Place Migration",
@@ -347,19 +347,19 @@
347
347
  "intake-authoring-governance": {
348
348
  "name": "Intake Authoring Governance",
349
349
  "id": "intake-authoring-governance",
350
- "version": "0.3.0",
351
- "description": "Governs traceable intake CRUD and language-aware requirements collections with atomic migrations, rollback evidence, and safe series authoring.",
350
+ "version": "0.3.1",
351
+ "description": "Governs traceable intake CRUD, language-aware requirements collections, bounded public HTTPS sources, and explicitly approved single or series authoring.",
352
352
  "author": "Thorsten Hindermann",
353
353
  "repository": "https://github.com/hindermath/spec-kit-preset-intake-authoring-governance",
354
- "download_url": "https://github.com/hindermath/spec-kit-preset-intake-authoring-governance/archive/refs/tags/v0.3.0.zip",
354
+ "download_url": "https://github.com/hindermath/spec-kit-preset-intake-authoring-governance/archive/refs/tags/v0.3.1.zip",
355
355
  "homepage": "https://github.com/hindermath/spec-kit-preset-intake-authoring-governance",
356
- "documentation": "https://github.com/hindermath/spec-kit-preset-intake-authoring-governance/blob/v0.3.0/README.md",
356
+ "documentation": "https://github.com/hindermath/spec-kit-preset-intake-authoring-governance/blob/v0.3.1/README.md",
357
357
  "license": "MIT",
358
358
  "requires": {
359
359
  "speckit_version": ">=0.8.3"
360
360
  },
361
361
  "provides": {
362
- "templates": 12,
362
+ "templates": 13,
363
363
  "commands": 5,
364
364
  "scripts": 7
365
365
  },
@@ -371,7 +371,7 @@
371
371
  "migration"
372
372
  ],
373
373
  "created_at": "2026-07-22T00:00:00Z",
374
- "updated_at": "2026-07-28T00:00:00Z"
374
+ "updated_at": "2026-08-14T00:00:00Z"
375
375
  },
376
376
  "intake-review-governance": {
377
377
  "name": "Intake Review Governance",
@@ -747,6 +747,33 @@
747
747
  "created_at": "2026-04-30T00:00:00Z",
748
748
  "updated_at": "2026-04-30T00:00:00Z"
749
749
  },
750
+ "specassay": {
751
+ "name": "SpecAssay",
752
+ "id": "specassay",
753
+ "version": "0.3.4",
754
+ "description": "Appends durable-ID, Carries, and SpecAssay vocabulary onto Spec Kit spec, tasks, and constitution templates.",
755
+ "author": "Rik Dryfoos",
756
+ "repository": "https://github.com/rdryfoos/specassay",
757
+ "download_url": "https://github.com/rdryfoos/specassay/releases/download/v0.3.4/specassay-preset-0.3.4.zip",
758
+ "homepage": "https://github.com/rdryfoos/specassay",
759
+ "documentation": "https://github.com/rdryfoos/specassay/blob/main/presets/specassay/README.md",
760
+ "license": "MIT",
761
+ "requires": {
762
+ "speckit_version": ">=0.14.0"
763
+ },
764
+ "provides": {
765
+ "templates": 3,
766
+ "commands": 0
767
+ },
768
+ "tags": [
769
+ "traceability",
770
+ "durable-ids",
771
+ "governance",
772
+ "sdd"
773
+ ],
774
+ "created_at": "2026-08-14T00:00:00Z",
775
+ "updated_at": "2026-08-14T00:00:00Z"
776
+ },
750
777
  "test-first-governance": {
751
778
  "name": "Test-First Governance",
752
779
  "id": "test-first-governance",
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "specify-cli"
3
- version = "0.16.3"
3
+ version = "0.16.4"
4
4
  description = "Specify CLI, part of GitHub Spec Kit. A tool to bootstrap your projects for Spec-Driven Development (SDD)."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -157,13 +157,18 @@ if ($Json) {
157
157
  Write-Output "FEATURE_DIR:$($paths.FEATURE_DIR)"
158
158
  Write-Output "AVAILABLE_DOCS:"
159
159
 
160
- # Show status of each potential document
161
- Test-FileExists -Path $paths.RESEARCH -Description 'research.md' | Out-Null
162
- Test-FileExists -Path $paths.DATA_MODEL -Description 'data-model.md' | Out-Null
163
- Test-DirHasFiles -Path $paths.CONTRACTS_DIR -Description 'contracts/' | Out-Null
164
- Test-FileExists -Path $paths.QUICKSTART -Description 'quickstart.md' | Out-Null
160
+ # Show status of each potential document.
161
+ # These helpers report their line with Write-Output and ALSO return a
162
+ # bool, both on the Success stream, so 'Out-Null' discarded the report
163
+ # line along with the return value and left AVAILABLE_DOCS empty. Drop
164
+ # only the boolean so the per-document lines reach stdout like the
165
+ # bash and Python twins.
166
+ Test-FileExists -Path $paths.RESEARCH -Description 'research.md' | Where-Object { $_ -isnot [bool] }
167
+ Test-FileExists -Path $paths.DATA_MODEL -Description 'data-model.md' | Where-Object { $_ -isnot [bool] }
168
+ Test-DirHasFiles -Path $paths.CONTRACTS_DIR -Description 'contracts/' | Where-Object { $_ -isnot [bool] }
169
+ Test-FileExists -Path $paths.QUICKSTART -Description 'quickstart.md' | Where-Object { $_ -isnot [bool] }
165
170
 
166
171
  if ($IncludeTasks) {
167
- Test-FileExists -Path $paths.TASKS -Description 'tasks.md' | Out-Null
172
+ Test-FileExists -Path $paths.TASKS -Description 'tasks.md' | Where-Object { $_ -isnot [bool] }
168
173
  }
169
174
  }