specify-cli 0.14.1__tar.gz → 0.14.2__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 (521) hide show
  1. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/add-community-bundle.lock.yml +8 -8
  2. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/add-community-extension.lock.yml +6 -6
  3. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/add-community-preset.lock.yml +6 -6
  4. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/bug-assess.lock.yml +4 -4
  5. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/bug-fix.lock.yml +6 -6
  6. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/bug-test.lock.yml +4 -4
  7. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/codeql.yml +3 -3
  8. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/docs.yml +1 -1
  9. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/lint.yml +3 -3
  10. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/publish-pypi.yml +3 -3
  11. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/release-trigger.yml +1 -1
  12. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/release.yml +1 -1
  13. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/security.yml +4 -4
  14. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/test.yml +4 -4
  15. {specify_cli-0.14.1 → specify_cli-0.14.2}/AGENTS.md +6 -5
  16. {specify_cli-0.14.1 → specify_cli-0.14.2}/CHANGELOG.md +25 -0
  17. {specify_cli-0.14.1 → specify_cli-0.14.2}/PKG-INFO +1 -1
  18. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/community/extensions.md +2 -1
  19. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/community/presets.md +2 -2
  20. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/integrations.md +5 -2
  21. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/workflows.md +26 -0
  22. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/upgrade.md +12 -16
  23. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/catalog.community.json +55 -13
  24. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/catalog.community.json +16 -16
  25. {specify_cli-0.14.1 → specify_cli-0.14.2}/pyproject.toml +1 -1
  26. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/bash/create-new-feature.sh +65 -17
  27. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/powershell/create-new-feature.ps1 +65 -17
  28. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/python/create_new_feature.py +73 -6
  29. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_github_http.py +11 -2
  30. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_utils.py +4 -11
  31. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/authentication/config.py +18 -4
  32. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/extensions/__init__.py +19 -2
  33. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/_helpers.py +20 -0
  34. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/_migrate_commands.py +155 -6
  35. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/kilocode/__init__.py +4 -3
  36. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/pi/__init__.py +1 -0
  37. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/engine.py +8 -0
  38. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_forge.py +6 -1
  39. specify_cli-0.14.2/tests/integrations/test_integration_kilocode.py +76 -0
  40. specify_cli-0.14.2/tests/integrations/test_integration_pi.py +18 -0
  41. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_subcommand.py +224 -0
  42. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_authentication.py +41 -0
  43. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_create_new_feature_python_parity.py +146 -14
  44. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_github_http.py +17 -0
  45. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_timestamp_branches.py +113 -4
  46. specify_cli-0.14.2/tests/test_utils.py +21 -0
  47. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_workflows.py +17 -0
  48. {specify_cli-0.14.1 → specify_cli-0.14.2}/workflows/PUBLISHING.md +2 -1
  49. {specify_cli-0.14.1 → specify_cli-0.14.2}/workflows/README.md +13 -1
  50. specify_cli-0.14.1/tests/integrations/test_integration_kilocode.py +0 -10
  51. specify_cli-0.14.1/tests/integrations/test_integration_pi.py +0 -10
  52. specify_cli-0.14.1/tests/test_utils.py +0 -15
  53. {specify_cli-0.14.1 → specify_cli-0.14.2}/.devcontainer/devcontainer.json +0 -0
  54. {specify_cli-0.14.1 → specify_cli-0.14.2}/.devcontainer/post-create.sh +0 -0
  55. {specify_cli-0.14.1 → specify_cli-0.14.2}/.editorconfig +0 -0
  56. {specify_cli-0.14.1 → specify_cli-0.14.2}/.gitattributes +0 -0
  57. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/CODEOWNERS +0 -0
  58. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/ISSUE_TEMPLATE/agent_request.yml +0 -0
  59. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  60. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/ISSUE_TEMPLATE/bundle_submission.yml +0 -0
  61. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  62. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/ISSUE_TEMPLATE/extension_submission.yml +0 -0
  63. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  64. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/ISSUE_TEMPLATE/preset_submission.yml +0 -0
  65. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  66. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/aw/actions-lock.json +0 -0
  67. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/dependabot.yml +0 -0
  68. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/scripts/check_security_requirements.py +0 -0
  69. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/security-audit-requirements.txt +0 -0
  70. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/skills/add-community-extension/SKILL.md +0 -0
  71. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/RELEASE-PROCESS.md +0 -0
  72. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/add-community-bundle.md +0 -0
  73. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/add-community-extension.md +0 -0
  74. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/add-community-preset.md +0 -0
  75. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/bug-assess.md +0 -0
  76. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/bug-fix.md +0 -0
  77. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/bug-test.md +0 -0
  78. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/catalog-assign.yml +0 -0
  79. {specify_cli-0.14.1 → specify_cli-0.14.2}/.github/workflows/stale.yml +0 -0
  80. {specify_cli-0.14.1 → specify_cli-0.14.2}/.gitignore +0 -0
  81. {specify_cli-0.14.1 → specify_cli-0.14.2}/.markdownlint-cli2.jsonc +0 -0
  82. {specify_cli-0.14.1 → specify_cli-0.14.2}/.pre-commit-config.yaml +0 -0
  83. {specify_cli-0.14.1 → specify_cli-0.14.2}/.zenodo.json +0 -0
  84. {specify_cli-0.14.1 → specify_cli-0.14.2}/CITATION.cff +0 -0
  85. {specify_cli-0.14.1 → specify_cli-0.14.2}/CODE_OF_CONDUCT.md +0 -0
  86. {specify_cli-0.14.1 → specify_cli-0.14.2}/CONTRIBUTING.md +0 -0
  87. {specify_cli-0.14.1 → specify_cli-0.14.2}/DEVELOPMENT.md +0 -0
  88. {specify_cli-0.14.1 → specify_cli-0.14.2}/LICENSE +0 -0
  89. {specify_cli-0.14.1 → specify_cli-0.14.2}/README.md +0 -0
  90. {specify_cli-0.14.1 → specify_cli-0.14.2}/SECURITY.md +0 -0
  91. {specify_cli-0.14.1 → specify_cli-0.14.2}/SUPPORT.md +0 -0
  92. {specify_cli-0.14.1 → specify_cli-0.14.2}/bundles/catalog.community.json +0 -0
  93. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/.gitignore +0 -0
  94. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/README.md +0 -0
  95. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/community/bundles.md +0 -0
  96. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/community/friends.md +0 -0
  97. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/community/overview.md +0 -0
  98. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/community/walkthroughs.md +0 -0
  99. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/concepts/complex-features.md +0 -0
  100. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/concepts/sdd.md +0 -0
  101. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/concepts/spec-of-specs.md +0 -0
  102. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/concepts/spec-persistence.md +0 -0
  103. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/docfx.json +0 -0
  104. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/guides/evolving-specs.md +0 -0
  105. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/guides/monorepo.md +0 -0
  106. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/index.md +0 -0
  107. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/install/air-gapped.md +0 -0
  108. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/install/one-time.md +0 -0
  109. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/install/pipx.md +0 -0
  110. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/install/pypi.md +0 -0
  111. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/install/uv.md +0 -0
  112. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/installation.md +0 -0
  113. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/local-development.md +0 -0
  114. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/quickstart.md +0 -0
  115. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/agentic-bugfix.md +0 -0
  116. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/agentic-sdd.md +0 -0
  117. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/authentication.md +0 -0
  118. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/bundles.md +0 -0
  119. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/core.md +0 -0
  120. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/extensions.md +0 -0
  121. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/overview.md +0 -0
  122. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/reference/presets.md +0 -0
  123. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/template/public/main.css +0 -0
  124. {specify_cli-0.14.1 → specify_cli-0.14.2}/docs/toc.yml +0 -0
  125. {specify_cli-0.14.1 → specify_cli-0.14.2}/examples/bundles/business-analyst/README.md +0 -0
  126. {specify_cli-0.14.1 → specify_cli-0.14.2}/examples/bundles/business-analyst/bundle.yml +0 -0
  127. {specify_cli-0.14.1 → specify_cli-0.14.2}/examples/bundles/developer/README.md +0 -0
  128. {specify_cli-0.14.1 → specify_cli-0.14.2}/examples/bundles/developer/bundle.yml +0 -0
  129. {specify_cli-0.14.1 → specify_cli-0.14.2}/examples/bundles/product-manager/README.md +0 -0
  130. {specify_cli-0.14.1 → specify_cli-0.14.2}/examples/bundles/product-manager/bundle.yml +0 -0
  131. {specify_cli-0.14.1 → specify_cli-0.14.2}/examples/bundles/security-researcher/README.md +0 -0
  132. {specify_cli-0.14.1 → specify_cli-0.14.2}/examples/bundles/security-researcher/bundle.yml +0 -0
  133. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/EXTENSION-API-REFERENCE.md +0 -0
  134. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/EXTENSION-DEVELOPMENT-GUIDE.md +0 -0
  135. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/EXTENSION-PUBLISHING-GUIDE.md +0 -0
  136. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/EXTENSION-USER-GUIDE.md +0 -0
  137. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/README.md +0 -0
  138. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/RFC-EXTENSION-SYSTEM.md +0 -0
  139. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/agent-context/README.md +0 -0
  140. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/agent-context/agent-context-config.yml +0 -0
  141. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/agent-context/agent-context-defaults.json +0 -0
  142. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/agent-context/commands/speckit.agent-context.update.md +0 -0
  143. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/agent-context/extension.yml +0 -0
  144. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/agent-context/scripts/bash/update-agent-context.sh +0 -0
  145. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/agent-context/scripts/powershell/update-agent-context.ps1 +0 -0
  146. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/agent-context/scripts/python/update_agent_context.py +0 -0
  147. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/assess/README.md +0 -0
  148. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/assess/commands/speckit.assess.decide.md +0 -0
  149. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/assess/commands/speckit.assess.define.md +0 -0
  150. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/assess/commands/speckit.assess.intake.md +0 -0
  151. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/assess/commands/speckit.assess.research.md +0 -0
  152. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/assess/commands/speckit.assess.shape.md +0 -0
  153. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/assess/extension.yml +0 -0
  154. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/bug/README.md +0 -0
  155. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/bug/commands/speckit.bug.assess.md +0 -0
  156. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/bug/commands/speckit.bug.fix.md +0 -0
  157. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/bug/commands/speckit.bug.test.md +0 -0
  158. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/bug/extension.yml +0 -0
  159. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/catalog.json +0 -0
  160. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/README.md +0 -0
  161. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/commands/speckit.git.commit.md +0 -0
  162. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/commands/speckit.git.feature.md +0 -0
  163. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/commands/speckit.git.initialize.md +0 -0
  164. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/commands/speckit.git.remote.md +0 -0
  165. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/commands/speckit.git.validate.md +0 -0
  166. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/config-template.yml +0 -0
  167. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/extension.yml +0 -0
  168. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/git-config.yml +0 -0
  169. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/bash/auto-commit.sh +0 -0
  170. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/bash/create-new-feature-branch.sh +0 -0
  171. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/bash/git-common.sh +0 -0
  172. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/bash/initialize-repo.sh +0 -0
  173. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/powershell/auto-commit.ps1 +0 -0
  174. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/powershell/create-new-feature-branch.ps1 +0 -0
  175. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/powershell/git-common.ps1 +0 -0
  176. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/powershell/initialize-repo.ps1 +0 -0
  177. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/python/auto_commit.py +0 -0
  178. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/python/create_new_feature_branch.py +0 -0
  179. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/python/git_common.py +0 -0
  180. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/git/scripts/python/initialize_repo.py +0 -0
  181. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/selftest/commands/selftest.md +0 -0
  182. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/selftest/extension.yml +0 -0
  183. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/template/.gitignore +0 -0
  184. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/template/CHANGELOG.md +0 -0
  185. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/template/EXAMPLE-README.md +0 -0
  186. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/template/LICENSE +0 -0
  187. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/template/README.md +0 -0
  188. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/template/commands/example.md +0 -0
  189. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/template/config-template.yml +0 -0
  190. {specify_cli-0.14.1 → specify_cli-0.14.2}/extensions/template/extension.yml +0 -0
  191. {specify_cli-0.14.1 → specify_cli-0.14.2}/integrations/CONTRIBUTING.md +0 -0
  192. {specify_cli-0.14.1 → specify_cli-0.14.2}/integrations/README.md +0 -0
  193. {specify_cli-0.14.1 → specify_cli-0.14.2}/integrations/catalog.community.json +0 -0
  194. {specify_cli-0.14.1 → specify_cli-0.14.2}/integrations/catalog.json +0 -0
  195. {specify_cli-0.14.1 → specify_cli-0.14.2}/media/bootstrap-claude-code.gif +0 -0
  196. {specify_cli-0.14.1 → specify_cli-0.14.2}/media/logo_large.webp +0 -0
  197. {specify_cli-0.14.1 → specify_cli-0.14.2}/media/logo_small.webp +0 -0
  198. {specify_cli-0.14.1 → specify_cli-0.14.2}/media/spec-kit-video-header.jpg +0 -0
  199. {specify_cli-0.14.1 → specify_cli-0.14.2}/media/specify_cli.gif +0 -0
  200. {specify_cli-0.14.1 → specify_cli-0.14.2}/newsletters/2026-April.md +0 -0
  201. {specify_cli-0.14.1 → specify_cli-0.14.2}/newsletters/2026-February.md +0 -0
  202. {specify_cli-0.14.1 → specify_cli-0.14.2}/newsletters/2026-June.md +0 -0
  203. {specify_cli-0.14.1 → specify_cli-0.14.2}/newsletters/2026-March.md +0 -0
  204. {specify_cli-0.14.1 → specify_cli-0.14.2}/newsletters/2026-May.md +0 -0
  205. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/ARCHITECTURE.md +0 -0
  206. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/PUBLISHING.md +0 -0
  207. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/README.md +0 -0
  208. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/catalog.json +0 -0
  209. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/lean/README.md +0 -0
  210. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/lean/commands/speckit.constitution.md +0 -0
  211. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/lean/commands/speckit.implement.md +0 -0
  212. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/lean/commands/speckit.plan.md +0 -0
  213. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/lean/commands/speckit.specify.md +0 -0
  214. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/lean/commands/speckit.tasks.md +0 -0
  215. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/lean/preset.yml +0 -0
  216. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/scaffold/README.md +0 -0
  217. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/scaffold/commands/speckit.myext.myextcmd.md +0 -0
  218. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/scaffold/commands/speckit.specify.md +0 -0
  219. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/scaffold/preset.yml +0 -0
  220. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/scaffold/templates/myext-template.md +0 -0
  221. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/scaffold/templates/spec-template.md +0 -0
  222. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/self-test/commands/speckit.specify.md +0 -0
  223. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/self-test/commands/speckit.wrap-test.md +0 -0
  224. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/self-test/preset.yml +0 -0
  225. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/self-test/templates/checklist-template.md +0 -0
  226. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/self-test/templates/constitution-template.md +0 -0
  227. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/self-test/templates/plan-template.md +0 -0
  228. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/self-test/templates/spec-template.md +0 -0
  229. {specify_cli-0.14.1 → specify_cli-0.14.2}/presets/self-test/templates/tasks-template.md +0 -0
  230. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/bash/check-prerequisites.sh +0 -0
  231. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/bash/common.sh +0 -0
  232. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/bash/setup-plan.sh +0 -0
  233. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/bash/setup-tasks.sh +0 -0
  234. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/powershell/check-prerequisites.ps1 +0 -0
  235. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/powershell/common.ps1 +0 -0
  236. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/powershell/setup-plan.ps1 +0 -0
  237. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/powershell/setup-tasks.ps1 +0 -0
  238. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/python/check_prerequisites.py +0 -0
  239. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/python/common.py +0 -0
  240. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/python/setup_plan.py +0 -0
  241. {specify_cli-0.14.1 → specify_cli-0.14.2}/scripts/python/setup_tasks.py +0 -0
  242. {specify_cli-0.14.1 → specify_cli-0.14.2}/spec-driven.md +0 -0
  243. {specify_cli-0.14.1 → specify_cli-0.14.2}/spec-kit.code-workspace +0 -0
  244. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/__init__.py +0 -0
  245. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_agent_config.py +0 -0
  246. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_assets.py +0 -0
  247. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_console.py +0 -0
  248. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_download_security.py +0 -0
  249. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_init_options.py +0 -0
  250. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_invocation_style.py +0 -0
  251. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_project.py +0 -0
  252. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_toml_string.py +0 -0
  253. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/_version.py +0 -0
  254. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/agents.py +0 -0
  255. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/authentication/__init__.py +0 -0
  256. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/authentication/azure_devops.py +0 -0
  257. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/authentication/base.py +0 -0
  258. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/authentication/github.py +0 -0
  259. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/authentication/http.py +0 -0
  260. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/__init__.py +0 -0
  261. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/commands_impl/__init__.py +0 -0
  262. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/commands_impl/catalog_config.py +0 -0
  263. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/lib/__init__.py +0 -0
  264. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/lib/project.py +0 -0
  265. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/lib/versioning.py +0 -0
  266. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/lib/yamlio.py +0 -0
  267. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/models/__init__.py +0 -0
  268. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/models/catalog.py +0 -0
  269. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/models/manifest.py +0 -0
  270. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/models/records.py +0 -0
  271. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/__init__.py +0 -0
  272. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/adapters.py +0 -0
  273. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/catalog_stack.py +0 -0
  274. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/conflict.py +0 -0
  275. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/installer.py +0 -0
  276. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/packager.py +0 -0
  277. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/primitives.py +0 -0
  278. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/references.py +0 -0
  279. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/resolver.py +0 -0
  280. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/bundler/services/validator.py +0 -0
  281. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/catalogs.py +0 -0
  282. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/commands/__init__.py +0 -0
  283. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/commands/bundle/__init__.py +0 -0
  284. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/commands/init.py +0 -0
  285. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/extensions/_commands.py +0 -0
  286. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integration_runtime.py +0 -0
  287. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integration_scaffold.py +0 -0
  288. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integration_state.py +0 -0
  289. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integration_status.py +0 -0
  290. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/__init__.py +0 -0
  291. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/_commands.py +0 -0
  292. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/_install_commands.py +0 -0
  293. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/_query_commands.py +0 -0
  294. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/_scaffold_commands.py +0 -0
  295. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/agy/__init__.py +0 -0
  296. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/amp/__init__.py +0 -0
  297. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/auggie/__init__.py +0 -0
  298. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/base.py +0 -0
  299. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/bob/__init__.py +0 -0
  300. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/catalog.py +0 -0
  301. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/claude/__init__.py +0 -0
  302. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/cline/__init__.py +0 -0
  303. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/codebuddy/__init__.py +0 -0
  304. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/codex/__init__.py +0 -0
  305. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/copilot/__init__.py +0 -0
  306. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/cursor_agent/__init__.py +0 -0
  307. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/devin/__init__.py +0 -0
  308. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/droid/__init__.py +0 -0
  309. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/firebender/__init__.py +0 -0
  310. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/forge/__init__.py +0 -0
  311. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/gemini/__init__.py +0 -0
  312. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/generic/__init__.py +0 -0
  313. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/goose/__init__.py +0 -0
  314. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/grok/__init__.py +0 -0
  315. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/hermes/__init__.py +0 -0
  316. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/junie/__init__.py +0 -0
  317. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/kimi/__init__.py +0 -0
  318. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/kiro_cli/__init__.py +0 -0
  319. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/lingma/__init__.py +0 -0
  320. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/manifest.py +0 -0
  321. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/omp/__init__.py +0 -0
  322. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/opencode/__init__.py +0 -0
  323. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/qodercli/__init__.py +0 -0
  324. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/qwen/__init__.py +0 -0
  325. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/rovodev/__init__.py +0 -0
  326. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/shai/__init__.py +0 -0
  327. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/tabnine/__init__.py +0 -0
  328. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/trae/__init__.py +0 -0
  329. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/vibe/__init__.py +0 -0
  330. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/zcode/__init__.py +0 -0
  331. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/integrations/zed/__init__.py +0 -0
  332. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/presets/__init__.py +0 -0
  333. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/presets/_commands.py +0 -0
  334. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/shared_infra.py +0 -0
  335. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/__init__.py +0 -0
  336. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/_commands.py +0 -0
  337. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/base.py +0 -0
  338. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/catalog.py +0 -0
  339. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/expressions.py +0 -0
  340. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/overlays/__init__.py +0 -0
  341. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/overlays/_commands.py +0 -0
  342. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/overlays/composer.py +0 -0
  343. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/overlays/layer_sources.py +0 -0
  344. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/overlays/merge.py +0 -0
  345. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/overlays/schema.py +0 -0
  346. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/__init__.py +0 -0
  347. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/command/__init__.py +0 -0
  348. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/do_while/__init__.py +0 -0
  349. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/fan_in/__init__.py +0 -0
  350. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/fan_out/__init__.py +0 -0
  351. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/gate/__init__.py +0 -0
  352. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/if_then/__init__.py +0 -0
  353. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/init/__init__.py +0 -0
  354. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/prompt/__init__.py +0 -0
  355. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/shell/__init__.py +0 -0
  356. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/switch/__init__.py +0 -0
  357. {specify_cli-0.14.1 → specify_cli-0.14.2}/src/specify_cli/workflows/steps/while_loop/__init__.py +0 -0
  358. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/checklist-template.md +0 -0
  359. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/analyze.md +0 -0
  360. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/checklist.md +0 -0
  361. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/clarify.md +0 -0
  362. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/constitution.md +0 -0
  363. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/converge.md +0 -0
  364. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/implement.md +0 -0
  365. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/plan.md +0 -0
  366. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/specify.md +0 -0
  367. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/tasks.md +0 -0
  368. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/commands/taskstoissues.md +0 -0
  369. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/constitution-template.md +0 -0
  370. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/plan-template.md +0 -0
  371. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/spec-template.md +0 -0
  372. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/tasks-template.md +0 -0
  373. {specify_cli-0.14.1 → specify_cli-0.14.2}/templates/vscode-settings.json +0 -0
  374. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/__init__.py +0 -0
  375. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/auth_helpers.py +0 -0
  376. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/bundler_helpers.py +0 -0
  377. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/conftest.py +0 -0
  378. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/contract/test_bundle_cli.py +0 -0
  379. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/contract/test_catalog_schema.py +0 -0
  380. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/contract/test_manifest_schema.py +0 -0
  381. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/contract/test_wheel_core_pack_scripts.py +0 -0
  382. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/__init__.py +0 -0
  383. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/assess/__init__.py +0 -0
  384. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/assess/test_assess_extension.py +0 -0
  385. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/bug/__init__.py +0 -0
  386. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/bug/test_bug_extension.py +0 -0
  387. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/git/__init__.py +0 -0
  388. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/git/test_git_extension.py +0 -0
  389. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/git/test_git_extension_python_parity.py +0 -0
  390. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/test_agent_context_cli_free.py +0 -0
  391. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/test_extension_agent_context.py +0 -0
  392. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/test_update_agent_context_feature_json.py +0 -0
  393. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/extensions/test_update_agent_context_python_parity.py +0 -0
  394. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/hooks/TESTING.md +0 -0
  395. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/hooks/plan.md +0 -0
  396. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/hooks/spec.md +0 -0
  397. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/hooks/tasks.md +0 -0
  398. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/http_helpers.py +0 -0
  399. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integration/test_bundler_catalog_stack.py +0 -0
  400. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integration/test_bundler_init_install.py +0 -0
  401. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integration/test_bundler_install_flow.py +0 -0
  402. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integration/test_bundler_local_install.py +0 -0
  403. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integration/test_bundler_offline.py +0 -0
  404. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integration/test_bundler_security_paths.py +0 -0
  405. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/__init__.py +0 -0
  406. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/conftest.py +0 -0
  407. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_base.py +0 -0
  408. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_cli.py +0 -0
  409. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_extra_args.py +0 -0
  410. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_home_isolation.py +0 -0
  411. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_agy.py +0 -0
  412. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_amp.py +0 -0
  413. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_auggie.py +0 -0
  414. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_base_markdown.py +0 -0
  415. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_base_skills.py +0 -0
  416. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_base_toml.py +0 -0
  417. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_base_yaml.py +0 -0
  418. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_bob.py +0 -0
  419. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_catalog.py +0 -0
  420. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_claude.py +0 -0
  421. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_cline.py +0 -0
  422. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_codebuddy.py +0 -0
  423. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_codex.py +0 -0
  424. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_copilot.py +0 -0
  425. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_cursor_agent.py +0 -0
  426. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_devin.py +0 -0
  427. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_droid.py +0 -0
  428. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_firebender.py +0 -0
  429. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_gemini.py +0 -0
  430. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_generic.py +0 -0
  431. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_goose.py +0 -0
  432. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_grok.py +0 -0
  433. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_hermes.py +0 -0
  434. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_junie.py +0 -0
  435. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_kimi.py +0 -0
  436. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_kiro_cli.py +0 -0
  437. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_lingma.py +0 -0
  438. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_omp.py +0 -0
  439. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_opencode.py +0 -0
  440. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_qodercli.py +0 -0
  441. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_qwen.py +0 -0
  442. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_rovodev.py +0 -0
  443. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_scaffold.py +0 -0
  444. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_shai.py +0 -0
  445. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_state.py +0 -0
  446. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_tabnine.py +0 -0
  447. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_trae.py +0 -0
  448. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_vibe.py +0 -0
  449. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_zcode.py +0 -0
  450. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_integration_zed.py +0 -0
  451. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_manifest.py +0 -0
  452. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_registry.py +0 -0
  453. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/integrations/test_skill_frontmatter_quoting.py +0 -0
  454. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/parity_helpers.py +0 -0
  455. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/self_upgrade_helpers.py +0 -0
  456. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_agent_config_consistency.py +0 -0
  457. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_branch_numbering.py +0 -0
  458. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_check_prerequisites_paths_only.py +0 -0
  459. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_check_prerequisites_python_parity.py +0 -0
  460. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_check_tool.py +0 -0
  461. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_cli_version.py +0 -0
  462. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_command_template_py_scripts.py +0 -0
  463. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_commands_package.py +0 -0
  464. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_console_imports.py +0 -0
  465. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_download_security.py +0 -0
  466. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_extension_registration.py +0 -0
  467. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_extension_skills.py +0 -0
  468. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_extension_update_hardening.py +0 -0
  469. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_extensions.py +0 -0
  470. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_github_workflows.py +0 -0
  471. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_init_dir.py +0 -0
  472. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_init_dir_cli.py +0 -0
  473. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_live_transient_windows.py +0 -0
  474. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_merge.py +0 -0
  475. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_post_process.py +0 -0
  476. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_presets.py +0 -0
  477. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_ps1_encoding.py +0 -0
  478. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_registrar_path_traversal.py +0 -0
  479. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_security_workflow.py +0 -0
  480. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_self_upgrade_detection.py +0 -0
  481. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_self_upgrade_execution.py +0 -0
  482. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_self_upgrade_guidance.py +0 -0
  483. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_self_upgrade_verification.py +0 -0
  484. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_setup_plan_feature_json.py +0 -0
  485. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_setup_plan_no_overwrite.py +0 -0
  486. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_setup_plan_python_parity.py +0 -0
  487. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_setup_tasks.py +0 -0
  488. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_setup_tasks_python_parity.py +0 -0
  489. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_shared_infra_integrity.py +0 -0
  490. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_skill_placeholder_py.py +0 -0
  491. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_specify_template_numbering.py +0 -0
  492. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_upgrade.py +0 -0
  493. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_utils_assets_imports.py +0 -0
  494. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_version_imports.py +0 -0
  495. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/test_workflow_run_without_project.py +0 -0
  496. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundle_download_url.py +0 -0
  497. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_adapters.py +0 -0
  498. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_catalog_config.py +0 -0
  499. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_conflict.py +0 -0
  500. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_packager.py +0 -0
  501. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_primitives.py +0 -0
  502. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_records.py +0 -0
  503. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_references.py +0 -0
  504. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_resolver.py +0 -0
  505. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_validator.py +0 -0
  506. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_versioning.py +0 -0
  507. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/unit/test_bundler_yamlio.py +0 -0
  508. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/workflows/conftest.py +0 -0
  509. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/workflows/test_overlay_commands.py +0 -0
  510. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/workflows/test_overlay_composer.py +0 -0
  511. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/workflows/test_overlay_layer_sources.py +0 -0
  512. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/workflows/test_overlay_merge.py +0 -0
  513. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/workflows/test_overlay_schema.py +0 -0
  514. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/workflows/test_overlay_security.py +0 -0
  515. {specify_cli-0.14.1 → specify_cli-0.14.2}/tests/workflows/test_resolver_integration.py +0 -0
  516. {specify_cli-0.14.1 → specify_cli-0.14.2}/workflows/ARCHITECTURE.md +0 -0
  517. {specify_cli-0.14.1 → specify_cli-0.14.2}/workflows/catalog.community.json +0 -0
  518. {specify_cli-0.14.1 → specify_cli-0.14.2}/workflows/catalog.json +0 -0
  519. {specify_cli-0.14.1 → specify_cli-0.14.2}/workflows/speckit/workflow.yml +0 -0
  520. {specify_cli-0.14.1 → specify_cli-0.14.2}/workflows/step-catalog.community.json +0 -0
  521. {specify_cli-0.14.1 → specify_cli-0.14.2}/workflows/step-catalog.json +0 -0
@@ -33,10 +33,10 @@
33
33
  # - GITHUB_TOKEN
34
34
  #
35
35
  # Custom actions used:
36
- # - actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
36
+ # - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
37
37
  # - actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
38
38
  # - actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
39
- # - actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
39
+ # - actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
40
40
  # - actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
41
41
  # - github/gh-aw-actions/setup@c0338fef4749d08c21f8f975fb0e37efa17dda47 # v0.79.8
42
42
  #
@@ -162,7 +162,7 @@ jobs:
162
162
  env:
163
163
  COPILOT_GITHUB_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }}
164
164
  - name: Checkout .github and .agents folders
165
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
165
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
166
166
  with:
167
167
  persist-credentials: false
168
168
  sparse-checkout: |
@@ -434,7 +434,7 @@ jobs:
434
434
  echo "GH_AW_SAFE_OUTPUTS_TOOLS_PATH=${RUNNER_TEMP}/gh-aw/safeoutputs/tools.json"
435
435
  } >> "$GITHUB_OUTPUT"
436
436
  - name: Checkout repository
437
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
437
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
438
438
  with:
439
439
  persist-credentials: false
440
440
  fetch-depth: 0
@@ -1352,7 +1352,7 @@ jobs:
1352
1352
  echo "GH_AW_AGENT_OUTPUT=/tmp/gh-aw/agent_output.json" >> "$GITHUB_OUTPUT"
1353
1353
  - name: Checkout repository for patch context
1354
1354
  if: needs.agent.outputs.has_patch == 'true'
1355
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
1355
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1356
1356
  with:
1357
1357
  persist-credentials: false
1358
1358
  # --- Threat Detection ---
@@ -1419,7 +1419,7 @@ jobs:
1419
1419
  mkdir -p /tmp/gh-aw/threat-detection
1420
1420
  touch /tmp/gh-aw/threat-detection/detection.log
1421
1421
  - name: Setup Node.js
1422
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
1422
+ uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
1423
1423
  with:
1424
1424
  node-version: '24'
1425
1425
  package-manager-cache: false
@@ -1678,7 +1678,7 @@ jobs:
1678
1678
  await main();
1679
1679
  - name: Checkout repository (trusted default branch for comment events)
1680
1680
  if: (!cancelled()) && needs.agent.result != 'skipped' && contains(needs.agent.outputs.output_types, 'create_pull_request') && (github.event_name == 'issue_comment' || github.event_name == 'pull_request_review_comment')
1681
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
1681
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1682
1682
  with:
1683
1683
  ref: ${{ github.event.repository.default_branch }}
1684
1684
  token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -1686,7 +1686,7 @@ jobs:
1686
1686
  fetch-depth: 0
1687
1687
  - name: Checkout repository
1688
1688
  if: (!cancelled()) && needs.agent.result != 'skipped' && contains(needs.agent.outputs.output_types, 'create_pull_request') && github.event_name != 'issue_comment' && github.event_name != 'pull_request_review_comment'
1689
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
1689
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1690
1690
  with:
1691
1691
  ref: ${{ steps.extract-base-branch.outputs.base-branch || github.base_ref || github.event.pull_request.base.ref || github.ref_name || github.event.repository.default_branch }}
1692
1692
  token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -33,7 +33,7 @@
33
33
  # - GITHUB_TOKEN
34
34
  #
35
35
  # Custom actions used:
36
- # - actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
36
+ # - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
37
37
  # - actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
38
38
  # - actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
39
39
  # - actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
@@ -162,7 +162,7 @@ jobs:
162
162
  env:
163
163
  COPILOT_GITHUB_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }}
164
164
  - name: Checkout .github and .agents folders
165
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
165
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
166
166
  with:
167
167
  persist-credentials: false
168
168
  sparse-checkout: |
@@ -434,7 +434,7 @@ jobs:
434
434
  echo "GH_AW_SAFE_OUTPUTS_TOOLS_PATH=${RUNNER_TEMP}/gh-aw/safeoutputs/tools.json"
435
435
  } >> "$GITHUB_OUTPUT"
436
436
  - name: Checkout repository
437
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
437
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
438
438
  with:
439
439
  persist-credentials: false
440
440
  fetch-depth: 0
@@ -1332,7 +1332,7 @@ jobs:
1332
1332
  echo "GH_AW_AGENT_OUTPUT=/tmp/gh-aw/agent_output.json" >> "$GITHUB_OUTPUT"
1333
1333
  - name: Checkout repository for patch context
1334
1334
  if: needs.agent.outputs.has_patch == 'true'
1335
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1335
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1336
1336
  with:
1337
1337
  persist-credentials: false
1338
1338
  # --- Threat Detection ---
@@ -1658,7 +1658,7 @@ jobs:
1658
1658
  await main();
1659
1659
  - name: Checkout repository (trusted default branch for comment events)
1660
1660
  if: (!cancelled()) && needs.agent.result != 'skipped' && contains(needs.agent.outputs.output_types, 'create_pull_request') && (github.event_name == 'issue_comment' || github.event_name == 'pull_request_review_comment')
1661
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1661
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1662
1662
  with:
1663
1663
  ref: ${{ github.event.repository.default_branch }}
1664
1664
  token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -1666,7 +1666,7 @@ jobs:
1666
1666
  fetch-depth: 0
1667
1667
  - name: Checkout repository
1668
1668
  if: (!cancelled()) && needs.agent.result != 'skipped' && contains(needs.agent.outputs.output_types, 'create_pull_request') && github.event_name != 'issue_comment' && github.event_name != 'pull_request_review_comment'
1669
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1669
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1670
1670
  with:
1671
1671
  ref: ${{ steps.extract-base-branch.outputs.base-branch || github.base_ref || github.event.pull_request.base.ref || github.ref_name || github.event.repository.default_branch }}
1672
1672
  token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -33,7 +33,7 @@
33
33
  # - GITHUB_TOKEN
34
34
  #
35
35
  # Custom actions used:
36
- # - actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
36
+ # - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
37
37
  # - actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
38
38
  # - actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
39
39
  # - actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
@@ -162,7 +162,7 @@ jobs:
162
162
  env:
163
163
  COPILOT_GITHUB_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }}
164
164
  - name: Checkout .github and .agents folders
165
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
165
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
166
166
  with:
167
167
  persist-credentials: false
168
168
  sparse-checkout: |
@@ -434,7 +434,7 @@ jobs:
434
434
  echo "GH_AW_SAFE_OUTPUTS_TOOLS_PATH=${RUNNER_TEMP}/gh-aw/safeoutputs/tools.json"
435
435
  } >> "$GITHUB_OUTPUT"
436
436
  - name: Checkout repository
437
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
437
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
438
438
  with:
439
439
  persist-credentials: false
440
440
  fetch-depth: 0
@@ -1332,7 +1332,7 @@ jobs:
1332
1332
  echo "GH_AW_AGENT_OUTPUT=/tmp/gh-aw/agent_output.json" >> "$GITHUB_OUTPUT"
1333
1333
  - name: Checkout repository for patch context
1334
1334
  if: needs.agent.outputs.has_patch == 'true'
1335
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1335
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1336
1336
  with:
1337
1337
  persist-credentials: false
1338
1338
  # --- Threat Detection ---
@@ -1658,7 +1658,7 @@ jobs:
1658
1658
  await main();
1659
1659
  - name: Checkout repository (trusted default branch for comment events)
1660
1660
  if: (!cancelled()) && needs.agent.result != 'skipped' && contains(needs.agent.outputs.output_types, 'create_pull_request') && (github.event_name == 'issue_comment' || github.event_name == 'pull_request_review_comment')
1661
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1661
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1662
1662
  with:
1663
1663
  ref: ${{ github.event.repository.default_branch }}
1664
1664
  token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -1666,7 +1666,7 @@ jobs:
1666
1666
  fetch-depth: 0
1667
1667
  - name: Checkout repository
1668
1668
  if: (!cancelled()) && needs.agent.result != 'skipped' && contains(needs.agent.outputs.output_types, 'create_pull_request') && github.event_name != 'issue_comment' && github.event_name != 'pull_request_review_comment'
1669
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1669
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1670
1670
  with:
1671
1671
  ref: ${{ steps.extract-base-branch.outputs.base-branch || github.base_ref || github.event.pull_request.base.ref || github.ref_name || github.event.repository.default_branch }}
1672
1672
  token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -32,7 +32,7 @@
32
32
  # - GITHUB_TOKEN
33
33
  #
34
34
  # Custom actions used:
35
- # - actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
35
+ # - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
36
36
  # - actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
37
37
  # - actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
38
38
  # - actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
@@ -161,7 +161,7 @@ jobs:
161
161
  env:
162
162
  COPILOT_GITHUB_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }}
163
163
  - name: Checkout .github and .agents folders
164
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
164
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
165
165
  with:
166
166
  persist-credentials: false
167
167
  sparse-checkout: |
@@ -430,7 +430,7 @@ jobs:
430
430
  echo "GH_AW_SAFE_OUTPUTS_TOOLS_PATH=${RUNNER_TEMP}/gh-aw/safeoutputs/tools.json"
431
431
  } >> "$GITHUB_OUTPUT"
432
432
  - name: Checkout repository
433
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
433
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
434
434
  with:
435
435
  persist-credentials: false
436
436
  fetch-depth: 0
@@ -1277,7 +1277,7 @@ jobs:
1277
1277
  echo "GH_AW_AGENT_OUTPUT=/tmp/gh-aw/agent_output.json" >> "$GITHUB_OUTPUT"
1278
1278
  - name: Checkout repository for patch context
1279
1279
  if: needs.agent.outputs.has_patch == 'true'
1280
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1280
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1281
1281
  with:
1282
1282
  persist-credentials: false
1283
1283
  # --- Threat Detection ---
@@ -33,7 +33,7 @@
33
33
  # - GITHUB_TOKEN
34
34
  #
35
35
  # Custom actions used:
36
- # - actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
36
+ # - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
37
37
  # - actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
38
38
  # - actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
39
39
  # - actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
@@ -162,7 +162,7 @@ jobs:
162
162
  env:
163
163
  COPILOT_GITHUB_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }}
164
164
  - name: Checkout .github and .agents folders
165
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
165
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
166
166
  with:
167
167
  persist-credentials: false
168
168
  sparse-checkout: |
@@ -434,7 +434,7 @@ jobs:
434
434
  echo "GH_AW_SAFE_OUTPUTS_TOOLS_PATH=${RUNNER_TEMP}/gh-aw/safeoutputs/tools.json"
435
435
  } >> "$GITHUB_OUTPUT"
436
436
  - name: Checkout repository
437
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
437
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
438
438
  with:
439
439
  persist-credentials: false
440
440
  fetch-depth: 0
@@ -1338,7 +1338,7 @@ jobs:
1338
1338
  echo "GH_AW_AGENT_OUTPUT=/tmp/gh-aw/agent_output.json" >> "$GITHUB_OUTPUT"
1339
1339
  - name: Checkout repository for patch context
1340
1340
  if: needs.agent.outputs.has_patch == 'true'
1341
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1341
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1342
1342
  with:
1343
1343
  persist-credentials: false
1344
1344
  # --- Threat Detection ---
@@ -1664,7 +1664,7 @@ jobs:
1664
1664
  await main();
1665
1665
  - name: Checkout repository (trusted default branch for comment events)
1666
1666
  if: (!cancelled()) && needs.agent.result != 'skipped' && contains(needs.agent.outputs.output_types, 'create_pull_request') && (github.event_name == 'issue_comment' || github.event_name == 'pull_request_review_comment')
1667
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1667
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1668
1668
  with:
1669
1669
  ref: ${{ github.event.repository.default_branch }}
1670
1670
  token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -1672,7 +1672,7 @@ jobs:
1672
1672
  fetch-depth: 0
1673
1673
  - name: Checkout repository
1674
1674
  if: (!cancelled()) && needs.agent.result != 'skipped' && contains(needs.agent.outputs.output_types, 'create_pull_request') && github.event_name != 'issue_comment' && github.event_name != 'pull_request_review_comment'
1675
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1675
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1676
1676
  with:
1677
1677
  ref: ${{ steps.extract-base-branch.outputs.base-branch || github.base_ref || github.event.pull_request.base.ref || github.ref_name || github.event.repository.default_branch }}
1678
1678
  token: ${{ secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
@@ -32,7 +32,7 @@
32
32
  # - GITHUB_TOKEN
33
33
  #
34
34
  # Custom actions used:
35
- # - actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
35
+ # - actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
36
36
  # - actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
37
37
  # - actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
38
38
  # - actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
@@ -161,7 +161,7 @@ jobs:
161
161
  env:
162
162
  COPILOT_GITHUB_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }}
163
163
  - name: Checkout .github and .agents folders
164
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
164
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
165
165
  with:
166
166
  persist-credentials: false
167
167
  sparse-checkout: |
@@ -431,7 +431,7 @@ jobs:
431
431
  echo "GH_AW_SAFE_OUTPUTS_TOOLS_PATH=${RUNNER_TEMP}/gh-aw/safeoutputs/tools.json"
432
432
  } >> "$GITHUB_OUTPUT"
433
433
  - name: Checkout repository
434
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
434
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
435
435
  with:
436
436
  persist-credentials: false
437
437
  fetch-depth: 0
@@ -1299,7 +1299,7 @@ jobs:
1299
1299
  echo "GH_AW_AGENT_OUTPUT=/tmp/gh-aw/agent_output.json" >> "$GITHUB_OUTPUT"
1300
1300
  - name: Checkout repository for patch context
1301
1301
  if: needs.agent.outputs.has_patch == 'true'
1302
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
1302
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
1303
1303
  with:
1304
1304
  persist-credentials: false
1305
1305
  # --- Threat Detection ---
@@ -19,14 +19,14 @@ jobs:
19
19
  language: [ 'actions', 'python' ]
20
20
  steps:
21
21
  - name: Checkout repository
22
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
22
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
23
23
 
24
24
  - name: Initialize CodeQL
25
- uses: github/codeql-action/init@7188fc363630916deb702c7fdcf4e481b751f97a # v4
25
+ uses: github/codeql-action/init@e4fba868fa4b1b91e1fdab776edc8cfbe6e9fb81 # v4
26
26
  with:
27
27
  languages: ${{ matrix.language }}
28
28
 
29
29
  - name: Perform CodeQL Analysis
30
- uses: github/codeql-action/analyze@7188fc363630916deb702c7fdcf4e481b751f97a # v4
30
+ uses: github/codeql-action/analyze@e4fba868fa4b1b91e1fdab776edc8cfbe6e9fb81 # v4
31
31
  with:
32
32
  category: "/language:${{ matrix.language }}"
@@ -30,7 +30,7 @@ jobs:
30
30
  runs-on: ubuntu-latest
31
31
  steps:
32
32
  - name: Checkout
33
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
33
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
34
34
  with:
35
35
  fetch-depth: 0 # Fetch all history for git info
36
36
 
@@ -12,7 +12,7 @@ jobs:
12
12
  runs-on: ubuntu-latest
13
13
  steps:
14
14
  - name: Checkout
15
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
15
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
16
16
  with:
17
17
  fetch-depth: 1
18
18
 
@@ -37,7 +37,7 @@ jobs:
37
37
  fi
38
38
 
39
39
  - name: Run markdownlint-cli2
40
- uses: DavidAnson/markdownlint-cli2-action@8de2aa07cae85fd17c0b35642db70cf5495f1d25 # v24.0.0
40
+ uses: DavidAnson/markdownlint-cli2-action@6bf21b07787794f89a243495939cd651942aeabe # v24.1.0
41
41
  with:
42
42
  globs: |
43
43
  '**/*.md'
@@ -47,7 +47,7 @@ jobs:
47
47
  runs-on: ubuntu-latest
48
48
  steps:
49
49
  - name: Checkout
50
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
50
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
51
51
 
52
52
  # shellcheck is preinstalled on ubuntu-latest runners.
53
53
  # Start at --severity=error to block real bugs without flagging style
@@ -27,12 +27,12 @@ jobs:
27
27
  fi
28
28
 
29
29
  - name: Checkout release tag
30
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
30
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
31
31
  with:
32
32
  ref: refs/tags/${{ inputs.tag }}
33
33
 
34
34
  - name: Install uv
35
- uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
35
+ uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
36
36
 
37
37
  - name: Set up Python
38
38
  uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
@@ -74,7 +74,7 @@ jobs:
74
74
  path: dist/
75
75
 
76
76
  - name: Install uv
77
- uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
77
+ uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
78
78
 
79
79
  - name: Publish to PyPI
80
80
  run: uv publish
@@ -16,7 +16,7 @@ jobs:
16
16
  pull-requests: write
17
17
  steps:
18
18
  - name: Checkout repository
19
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
19
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
20
20
  with:
21
21
  fetch-depth: 0
22
22
  token: ${{ secrets.RELEASE_PAT }}
@@ -12,7 +12,7 @@ jobs:
12
12
  contents: write
13
13
  steps:
14
14
  - name: Checkout repository
15
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
15
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
16
16
  with:
17
17
  fetch-depth: 0
18
18
  token: ${{ secrets.GITHUB_TOKEN }}
@@ -19,12 +19,12 @@ jobs:
19
19
  runs-on: ubuntu-latest
20
20
  steps:
21
21
  - name: Checkout
22
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
22
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
23
23
  with:
24
24
  fetch-depth: 0
25
25
 
26
26
  - name: Install uv
27
- uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
27
+ uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
28
28
 
29
29
  - name: Set up Python
30
30
  uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
@@ -52,10 +52,10 @@ jobs:
52
52
  python-version: ["3.11", "3.12", "3.13", "3.14"]
53
53
  steps:
54
54
  - name: Checkout
55
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
55
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
56
56
 
57
57
  - name: Install uv
58
- uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
58
+ uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
59
59
 
60
60
  - name: Set up Python ${{ matrix.python-version }}
61
61
  uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
@@ -13,10 +13,10 @@ jobs:
13
13
  runs-on: ubuntu-latest
14
14
  steps:
15
15
  - name: Checkout
16
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
16
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
17
17
 
18
18
  - name: Install uv
19
- uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
19
+ uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
20
20
 
21
21
  - name: Set up Python
22
22
  uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
@@ -34,10 +34,10 @@ jobs:
34
34
  python-version: ["3.13", "3.14"]
35
35
  steps:
36
36
  - name: Checkout
37
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
37
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
38
38
 
39
39
  - name: Install uv
40
- uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2
40
+ uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0
41
41
 
42
42
  - name: Set up Python ${{ matrix.python-version }}
43
43
  uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
@@ -64,13 +64,14 @@ class KilocodeIntegration(MarkdownIntegration):
64
64
  key = "kilocode"
65
65
  config = {
66
66
  "name": "Kilo Code",
67
- "folder": ".kilocode/",
68
- "commands_subdir": "workflows",
67
+ "folder": ".kilo/",
68
+ "commands_subdir": "commands",
69
69
  "install_url": None,
70
70
  "requires_cli": False,
71
71
  }
72
72
  registrar_config = {
73
- "dir": ".kilocode/workflows",
73
+ "dir": ".kilo/commands",
74
+ "legacy_dir": ".kilocode/workflows",
74
75
  "format": "markdown",
75
76
  "args": "$ARGUMENTS",
76
77
  "extension": ".md",
@@ -201,8 +202,8 @@ Only add custom setup logic when the agent needs non-standard behavior. Integrat
201
202
  specify init my-project --integration <key>
202
203
 
203
204
  # Verify files were created in the commands directory configured by
204
- # config["folder"] + config["commands_subdir"] (for example, .kilocode/workflows/)
205
- ls -R my-project/.kilocode/workflows/
205
+ # config["folder"] + config["commands_subdir"] (for example, .kilo/commands/)
206
+ ls -R my-project/.kilo/commands/
206
207
 
207
208
  # Uninstall cleanly
208
209
  cd my-project && specify integration uninstall <key>
@@ -2,6 +2,31 @@
2
2
 
3
3
  <!-- insert new changelog below this comment -->
4
4
 
5
+ ## [0.14.2] - 2026-07-24
6
+
7
+ ### Changed
8
+
9
+ - Update Intake Review Governance preset to v0.1.1 (#3729)
10
+ - Update Verify Review Ship extension to v0.3.0 (#3728)
11
+ - Update Architecture Guard extension to v1.13.1 (#3724)
12
+ - docs(upgrade): Claude Code files live in .claude/skills, not .claude/commands (#3708)
13
+ - fix(kilocode): install commands under .kilo/commands (#3672)
14
+ - fix(auth): normalize whitespace in auth-config env-var/id references at store time (#3691)
15
+ - fix(workflows): guard non-mapping 'inputs:' block in engine._resolve_inputs (#3696)
16
+ - Update Intake Authoring Governance preset to v0.2.0 (#3721)
17
+ - docs: clarify shell-step interpolation safety (#3719)
18
+ - [extension] Add Blueprint Index — Living Architecture Map extension to community catalog (#3718)
19
+ - fix(github-http): return None on malformed host in resolve_github_release_asset_api_url (#3715)
20
+ - fix(integrations): declare PiIntegration multi_install_safe (#3652)
21
+ - harden: remove shell parameter from run_command() (#3716)
22
+ - chore(deps): bump github/codeql-action/init from 4.37.1 to 4.37.3 (#3699)
23
+ - fix: auto-correct conflicting feature prefixes (#1829)
24
+ - chore(deps): bump actions/checkout from 6.0.3 to 7.0.1 (#3703)
25
+ - chore(deps): bump DavidAnson/markdownlint-cli2-action (#3702)
26
+ - chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0 (#3701)
27
+ - chore(deps): bump astral-sh/setup-uv from 8.3.2 to 9.0.0 (#3700)
28
+ - chore: release 0.14.1, begin 0.14.2.dev0 development (#3698)
29
+
5
30
  ## [0.14.1] - 2026-07-23
6
31
 
7
32
  ### Changed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: specify-cli
3
- Version: 0.14.1
3
+ Version: 0.14.2
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
@@ -36,6 +36,7 @@ The following community-contributed extensions are available in [`catalog.commun
36
36
  | Archive Extension | Archive merged features into main project memory. | `docs` | Read+Write | [spec-kit-archive](https://github.com/stn1slv/spec-kit-archive) |
37
37
  | 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) |
38
38
  | 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) |
39
+ | 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) |
39
40
  | Branch Convention | Configurable branch and folder naming conventions for /specify with presets and custom patterns | `process` | Read+Write | [spec-kit-branch-convention](https://github.com/Quratulain-bilal/spec-kit-branch-convention) |
40
41
  | Brownfield Bootstrap | Bootstrap spec-kit for existing codebases — auto-discover architecture and adopt SDD incrementally | `process` | Read+Write | [spec-kit-brownfield](https://github.com/Quratulain-bilal/spec-kit-brownfield) |
41
42
  | BrownKit | Evidence-driven capability discovery, security and QA risk assessment for existing codebases | `process` | Read+Write | [BrownKit](https://github.com/MaksimShevtsov/BrownKit) |
@@ -158,7 +159,7 @@ The following community-contributed extensions are available in [`catalog.commun
158
159
  | Token Economy | Token routing, measured savings, and context audit workflows | `process` | Read+Write | [spec-kit-token-economy](https://github.com/formin/spec-kit-token-economy) |
159
160
  | V-Model Extension Pack | Enforces V-Model paired generation of development specs and test specs with full traceability | `docs` | Read+Write | [spec-kit-v-model](https://github.com/leocamello/spec-kit-v-model) |
160
161
  | Verify Extension | Post-implementation quality gate that validates implemented code against specification artifacts | `code` | Read-only | [spec-kit-verify](https://github.com/ismaelJimenez/spec-kit-verify) |
161
- | Verify Review Ship | Adds post-implementation verify, review, and ship readiness gates to Spec Kit workflows | `process` | Read-only | [spec-kit-verify-review-ship](https://github.com/cadugevaerd/spec-kit-verify-review-ship) |
162
+ | Verify Review Ship | Adds verify and review quality gates plus transactional merge, cleanup, and delivery summary | `process` | Read+Write | [spec-kit-verify-review-ship](https://github.com/cadugevaerd/spec-kit-verify-review-ship) |
162
163
  | Verify Tasks Extension | Detect phantom completions: tasks marked [X] in tasks.md with no real implementation | `code` | Read-only | [spec-kit-verify-tasks](https://github.com/datastone-inc/spec-kit-verify-tasks) |
163
164
  | Version Guard | Verify tech stack versions against live npm registries before planning and implementation | `process` | Read-only | [spec-kit-version-guard](https://github.com/KevinBrown5280/spec-kit-version-guard) |
164
165
  | What-if Analysis | Preview the downstream impact (complexity, effort, tasks, risks) of requirement changes before committing to them | `visibility` | Read-only | [spec-kit-whatif](https://github.com/DevAbdullah90/spec-kit-whatif) |
@@ -19,8 +19,8 @@ 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 | Creates traceable Spec Kit intakes from ordered text sources and now truthfully adopts legacy intakes without inventing predecessor receipts. | 7 templates, 2 commands, 2 scripts | — | [spec-kit-preset-intake-authoring-governance](https://github.com/hindermath/spec-kit-preset-intake-authoring-governance) |
23
- | Intake Review Governance | Adds hash-bound review, repair, and status gates for single, series, and campaign intake files before interactive, autonomous, or parallel Spec Kit execution. | 8 templates, 3 commands, 2 scripts | — | [spec-kit-preset-intake-review-governance](https://github.com/hindermath/spec-kit-preset-intake-review-governance) |
22
+ | Intake Authoring Governance | Governs traceable intake CRUD, bounded public HTTPS sources, and explicitly approved single or series authoring without granting execution authority. | 10 templates, 5 commands, 4 scripts | — | [spec-kit-preset-intake-authoring-governance](https://github.com/hindermath/spec-kit-preset-intake-authoring-governance) |
23
+ | Intake Review Governance | Reviews single, series, and campaign intake files before Spec Kit execution and binds accepted outcomes to normalized content hashes. | 8 templates, 3 commands, 2 scripts | — | [spec-kit-preset-intake-review-governance](https://github.com/hindermath/spec-kit-preset-intake-review-governance) |
24
24
  | iSAQB Architecture Governance | Adds iSAQB/CPSA-F and arc42 architecture governance with audit-ready evidence for goals, views, resumability, partial-failure scenarios, ADRs, risks, and technical debt. | 13 templates, 3 commands | — | [spec-kit-preset-isaqb-architecture-governance](https://github.com/hindermath/spec-kit-preset-isaqb-architecture-governance) |
25
25
  | Jira Issue Tracking | Overrides `speckit.taskstoissues` to create Jira epics, stories, and tasks instead of GitHub Issues via Atlassian MCP tools | 1 command | — | [spec-kit-preset-jira](https://github.com/luno/spec-kit-preset-jira) |
26
26
  | Model Driven Engineering | Focuses on streamlined commands, app repository support, cross-spec support, and capability-aware project memory for model-driven engineering workflows | 6 templates, 11 commands | MDE extension | [spec-kit-preset-mde](https://github.com/AI-MDE/spec-kit-preset-mde) |
@@ -25,7 +25,7 @@ The Specify CLI supports a wide range of AI coding agents. When you run `specify
25
25
  | [Hermes](https://github.com/NousResearch/hermes-agent) | `hermes` | Skills-based integration; installs skills globally into `~/.hermes/skills/` |
26
26
  | [IBM Bob](https://www.ibm.com/products/bob) | `bob` | Skills-based integration by default; installs skills as `speckit-<command>/SKILL.md` under `.bob/skills/` and invokes them as `/speckit-<command>`. Pass `--integration-options="--legacy-commands"` to scaffold the deprecated Bob 1.x layout (`.bob/commands/*.md`) instead; that flag will be removed in a future release. Existing legacy installs can migrate with `specify integration upgrade bob --integration-options="--skills"`, which converts them to the skills layout and removes the old command files. If preset overrides are installed, the migration is rejected with an actionable error (preset artifacts cannot yet be reconciled across a layout change) — remove the preset(s), migrate, then reinstall them. |
27
27
  | [Junie](https://junie.jetbrains.com/) | `junie` | |
28
- | [Kilo Code](https://github.com/Kilo-Org/kilocode) | `kilocode` | |
28
+ | [Kilo Code](https://github.com/Kilo-Org/kilocode) | `kilocode` | Installs commands into `.kilo/commands`; legacy `.kilocode/workflows` installs remain supported as a registration fallback |
29
29
  | [Kimi Code](https://code.kimi.com/) | `kimi` | Skills-based integration; installs into `.kimi-code/skills/`. `--migrate-legacy` moves old `.kimi/skills/` installs to the new paths |
30
30
  | [Kiro CLI](https://kiro.dev/docs/cli/) | `kiro-cli` | Kiro CLI does not substitute `$ARGUMENTS` in file-based prompts, so Spec Kit ships a prose fallback at render time (see [Manage prompts](https://kiro.dev/docs/cli/chat/manage-prompts/) and issue [#1926](https://github.com/github/spec-kit/issues/1926)). Alias: `--integration kiro` |
31
31
  | [Lingma](https://lingma.aliyun.com/) | `lingma` | Skills-based integration; skills are installed automatically |
@@ -269,13 +269,16 @@ The currently declared multi-install safe integrations are:
269
269
  | `codebuddy` | `.codebuddy/commands` |
270
270
  | `codex` | `.agents/skills` |
271
271
  | `cursor-agent` | `.cursor/skills` |
272
+ | `droid` | `.factory/skills` |
272
273
  | `firebender` | `.firebender/commands` |
273
274
  | `gemini` | `.gemini/commands` |
274
275
  | `grok` | `.grok/skills` |
275
276
  | `junie` | `.junie/commands` |
276
- | `kilocode` | `.kilocode/workflows` |
277
+ | `kilocode` | `.kilo/commands` |
277
278
  | `kiro-cli` | `.kiro/prompts` |
279
+ | `lingma` | `.lingma/skills` |
278
280
  | `omp` | `.omp/commands` |
281
+ | `pi` | `.pi/prompts` |
279
282
  | `qodercli` | `.qoder/commands` |
280
283
  | `qwen` | `.qwen/commands` |
281
284
  | `shai` | `.shai/commands` |