spec-kitty-cli 0.9.0__tar.gz → 0.10.9__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 (208) hide show
  1. spec_kitty_cli-0.10.9/.kittify/missions/research/command-templates/implement.md +78 -0
  2. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/command-templates/merge.md +1 -13
  3. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/command-templates/plan.md +0 -15
  4. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/command-templates/review.md +5 -17
  5. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/templates/tasks-template.md +3 -3
  6. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/command-templates/accept.md +0 -4
  7. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/command-templates/analyze.md +0 -4
  8. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/command-templates/checklist.md +0 -4
  9. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/command-templates/clarify.md +0 -4
  10. spec_kitty_cli-0.10.9/.kittify/missions/software-dev/command-templates/implement.md +11 -0
  11. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/command-templates/merge.md +1 -13
  12. {spec_kitty_cli-0.9.0/templates → spec_kitty_cli-0.10.9/.kittify/missions/software-dev}/command-templates/plan.md +5 -16
  13. spec_kitty_cli-0.10.9/.kittify/missions/software-dev/command-templates/review.md +11 -0
  14. {spec_kitty_cli-0.9.0/templates → spec_kitty_cli-0.10.9/.kittify/missions/software-dev}/command-templates/specify.md +90 -84
  15. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/command-templates/tasks.md +15 -15
  16. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/templates/task-prompt-template.md +1 -1
  17. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/templates/tasks-template.md +5 -5
  18. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/AGENTS.md +66 -31
  19. spec_kitty_cli-0.10.9/.kittify/templates/claudeignore-template +58 -0
  20. spec_kitty_cli-0.10.9/.kittify/templates/command-templates/accept.md +141 -0
  21. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/command-templates/analyze.md +2 -2
  22. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/command-templates/checklist.md +2 -2
  23. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/command-templates/clarify.md +2 -2
  24. spec_kitty_cli-0.10.9/.kittify/templates/command-templates/implement.md +78 -0
  25. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/command-templates/merge.md +15 -3
  26. {spec_kitty_cli-0.9.0/.kittify/missions/software-dev → spec_kitty_cli-0.10.9/.kittify/templates}/command-templates/plan.md +13 -42
  27. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/command-templates/review.md +16 -40
  28. {spec_kitty_cli-0.9.0/.kittify/missions/software-dev → spec_kitty_cli-0.10.9/.kittify/templates}/command-templates/specify.md +46 -4
  29. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/command-templates/tasks.md +9 -10
  30. spec_kitty_cli-0.10.9/.kittify/templates/git-hooks/pre-commit +22 -0
  31. spec_kitty_cli-0.10.9/.kittify/templates/git-hooks/pre-commit-agent-check +37 -0
  32. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/task-prompt-template.md +9 -16
  33. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/tasks-template.md +5 -5
  34. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/CHANGELOG.md +278 -0
  35. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/PKG-INFO +75 -24
  36. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/README.md +72 -23
  37. spec_kitty_cli-0.10.9/kitty-specs/008-unified-python-cli/tasks/README.md +69 -0
  38. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/pyproject.toml +7 -5
  39. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/scripts/tasks/tasks_cli.py +14 -7
  40. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/__init__.py +2 -0
  41. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/__init__.py +4 -0
  42. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/accept.py +3 -1
  43. spec_kitty_cli-0.10.9/src/specify_cli/cli/commands/agent/__init__.py +21 -0
  44. spec_kitty_cli-0.10.9/src/specify_cli/cli/commands/agent/context.py +191 -0
  45. spec_kitty_cli-0.10.9/src/specify_cli/cli/commands/agent/feature.py +622 -0
  46. spec_kitty_cli-0.10.9/src/specify_cli/cli/commands/agent/release.py +11 -0
  47. spec_kitty_cli-0.10.9/src/specify_cli/cli/commands/agent/tasks.py +510 -0
  48. spec_kitty_cli-0.10.9/src/specify_cli/cli/commands/agent/workflow.py +385 -0
  49. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/dashboard.py +2 -1
  50. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/init.py +4 -8
  51. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/merge.py +3 -1
  52. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/mission.py +4 -1
  53. spec_kitty_cli-0.10.9/src/specify_cli/cli/commands/repair.py +70 -0
  54. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/research.py +2 -1
  55. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/upgrade.py +3 -1
  56. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/validate_encoding.py +2 -1
  57. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/validate_tasks.py +2 -1
  58. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/verify.py +2 -1
  59. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/helpers.py +51 -1
  60. spec_kitty_cli-0.10.9/src/specify_cli/core/agent_context.py +311 -0
  61. spec_kitty_cli-0.10.9/src/specify_cli/core/paths.py +148 -0
  62. spec_kitty_cli-0.10.9/src/specify_cli/core/version_checker.py +239 -0
  63. spec_kitty_cli-0.10.9/src/specify_cli/core/worktree.py +415 -0
  64. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/handlers/features.py +91 -0
  65. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/handlers/router.py +8 -0
  66. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/static/dashboard/dashboard.js +106 -6
  67. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/templates/index.html +10 -0
  68. spec_kitty_cli-0.10.9/src/specify_cli/frontmatter.py +339 -0
  69. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/manifest.py +2 -2
  70. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/tasks_support.py +36 -2
  71. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/template/asset_generator.py +1 -1
  72. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/template/manager.py +12 -3
  73. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/__init__.py +12 -0
  74. spec_kitty_cli-0.10.9/src/specify_cli/upgrade/migrations/m_0_10_0_python_only.py +329 -0
  75. spec_kitty_cli-0.10.9/src/specify_cli/upgrade/migrations/m_0_10_1_populate_slash_commands.py +187 -0
  76. spec_kitty_cli-0.10.9/src/specify_cli/upgrade/migrations/m_0_10_2_update_slash_commands.py +162 -0
  77. spec_kitty_cli-0.10.9/src/specify_cli/upgrade/migrations/m_0_10_6_workflow_simplification.py +155 -0
  78. spec_kitty_cli-0.10.9/src/specify_cli/upgrade/migrations/m_0_10_8_fix_memory_structure.py +252 -0
  79. spec_kitty_cli-0.10.9/src/specify_cli/upgrade/migrations/m_0_10_9_repair_templates.py +168 -0
  80. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_4_8_gitignore_agents.py +3 -2
  81. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_6_7_ensure_missions.py +1 -1
  82. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_9_0_frontmatter_only_lanes.py +32 -20
  83. spec_kitty_cli-0.10.9/src/specify_cli/upgrade/migrations/m_0_9_1_complete_lane_migration.py +540 -0
  84. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/registry.py +7 -1
  85. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/runner.py +1 -1
  86. spec_kitty_cli-0.9.0/.kittify/missions/research/command-templates/implement.md +0 -308
  87. spec_kitty_cli-0.9.0/.kittify/missions/software-dev/command-templates/implement.md +0 -271
  88. spec_kitty_cli-0.9.0/.kittify/missions/software-dev/command-templates/review.md +0 -83
  89. spec_kitty_cli-0.9.0/scripts/bash/accept-feature.sh +0 -17
  90. spec_kitty_cli-0.9.0/scripts/bash/check-prerequisites.sh +0 -186
  91. spec_kitty_cli-0.9.0/scripts/bash/common.sh +0 -739
  92. spec_kitty_cli-0.9.0/scripts/bash/create-new-feature.sh +0 -527
  93. spec_kitty_cli-0.9.0/scripts/bash/mark-task-status.sh +0 -99
  94. spec_kitty_cli-0.9.0/scripts/bash/merge-feature.sh +0 -40
  95. spec_kitty_cli-0.9.0/scripts/bash/move-task-to-doing.sh +0 -43
  96. spec_kitty_cli-0.9.0/scripts/bash/refresh-kittify-tasks.sh +0 -108
  97. spec_kitty_cli-0.9.0/scripts/bash/setup-plan.sh +0 -73
  98. spec_kitty_cli-0.9.0/scripts/bash/setup-sandbox.sh +0 -179
  99. spec_kitty_cli-0.9.0/scripts/bash/tasks-add-history-entry.sh +0 -17
  100. spec_kitty_cli-0.9.0/scripts/bash/tasks-list-lanes.sh +0 -17
  101. spec_kitty_cli-0.9.0/scripts/bash/tasks-move-to-lane.sh +0 -40
  102. spec_kitty_cli-0.9.0/scripts/bash/tasks-rollback-move.sh +0 -17
  103. spec_kitty_cli-0.9.0/scripts/bash/update-agent-context.sh +0 -748
  104. spec_kitty_cli-0.9.0/scripts/bash/validate-task-workflow.sh +0 -45
  105. spec_kitty_cli-0.9.0/scripts/powershell/Merge-Feature.ps1 +0 -38
  106. spec_kitty_cli-0.9.0/scripts/powershell/Set-TaskStatus.ps1 +0 -39
  107. spec_kitty_cli-0.9.0/scripts/powershell/accept-feature.ps1 +0 -21
  108. spec_kitty_cli-0.9.0/scripts/powershell/check-prerequisites.ps1 +0 -148
  109. spec_kitty_cli-0.9.0/scripts/powershell/common.ps1 +0 -238
  110. spec_kitty_cli-0.9.0/scripts/powershell/create-new-feature.ps1 +0 -271
  111. spec_kitty_cli-0.9.0/scripts/powershell/setup-plan.ps1 +0 -72
  112. spec_kitty_cli-0.9.0/scripts/powershell/tasks-add-history-entry.ps1 +0 -21
  113. spec_kitty_cli-0.9.0/scripts/powershell/tasks-list-lanes.ps1 +0 -21
  114. spec_kitty_cli-0.9.0/scripts/powershell/tasks-move-to-lane.ps1 +0 -79
  115. spec_kitty_cli-0.9.0/scripts/powershell/tasks-rollback-move.ps1 +0 -21
  116. spec_kitty_cli-0.9.0/scripts/powershell/update-agent-context.ps1 +0 -452
  117. spec_kitty_cli-0.9.0/templates/command-templates/accept.md +0 -66
  118. spec_kitty_cli-0.9.0/templates/command-templates/implement.md +0 -277
  119. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.gitignore +0 -0
  120. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/memory/constitution.md +0 -0
  121. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/mission.yaml +0 -0
  122. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/templates/data-model-template.md +0 -0
  123. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/templates/plan-template.md +0 -0
  124. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/templates/research/evidence-log.csv +0 -0
  125. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/templates/research/source-register.csv +0 -0
  126. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/templates/research-template.md +0 -0
  127. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/research/templates/spec-template.md +0 -0
  128. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/command-templates/constitution.md +0 -0
  129. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/command-templates/dashboard.md +0 -0
  130. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/constitution/principles.md +0 -0
  131. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/mission.yaml +0 -0
  132. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/templates/plan-template.md +0 -0
  133. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/.kittify/missions/software-dev/templates/spec-template.md +0 -0
  134. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/POWERSHELL_SYNTAX.md +0 -0
  135. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/agent-file-template.md +0 -0
  136. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/checklist-template.md +0 -0
  137. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/command-templates/constitution.md +0 -0
  138. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/command-templates/dashboard.md +0 -0
  139. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/command-templates/research.md +0 -0
  140. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/git-hooks/pre-commit-encoding-check +0 -0
  141. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/plan-template.md +0 -0
  142. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/spec-template.md +0 -0
  143. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9/.kittify}/templates/vscode-settings.json +0 -0
  144. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/LICENSE +0 -0
  145. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/docs/README.md +0 -0
  146. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/kitty-specs/007-frontmatter-only-lane/tasks/README.md +0 -0
  147. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/node_modules/@playwright/test/LICENSE +0 -0
  148. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/node_modules/@playwright/test/README.md +0 -0
  149. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/node_modules/playwright/LICENSE +0 -0
  150. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/node_modules/playwright/README.md +0 -0
  151. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/node_modules/playwright-core/LICENSE +0 -0
  152. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/node_modules/playwright-core/README.md +0 -0
  153. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/scripts/debug-dashboard-scan.py +0 -0
  154. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/scripts/git-hooks/pre-commit-task-workflow.sh +0 -0
  155. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/scripts/release/README.md +0 -0
  156. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/scripts/release/extract_changelog.py +0 -0
  157. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/scripts/release/validate_release.py +0 -0
  158. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/scripts/tasks/acceptance_support.py +0 -0
  159. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/scripts/tasks/task_helpers.py +0 -0
  160. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/scripts/validate_encoding.py +0 -0
  161. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/acceptance.py +0 -0
  162. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/__init__.py +0 -0
  163. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/commands/init_help.py +0 -0
  164. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/step_tracker.py +0 -0
  165. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/cli/ui.py +0 -0
  166. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/core/__init__.py +0 -0
  167. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/core/config.py +0 -0
  168. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/core/git_ops.py +0 -0
  169. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/core/project_resolver.py +0 -0
  170. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/core/tool_checker.py +0 -0
  171. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/core/utils.py +0 -0
  172. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/__init__.py +0 -0
  173. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/diagnostics.py +0 -0
  174. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/handlers/__init__.py +0 -0
  175. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/handlers/api.py +0 -0
  176. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/handlers/base.py +0 -0
  177. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/handlers/static.py +0 -0
  178. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/lifecycle.py +0 -0
  179. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/scanner.py +0 -0
  180. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/server.py +0 -0
  181. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/static/dashboard/dashboard.css +0 -0
  182. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/static/spec-kitty.png +0 -0
  183. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/dashboard/templates/__init__.py +0 -0
  184. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/gitignore_manager.py +0 -0
  185. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/guards.py +0 -0
  186. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/legacy_detector.py +0 -0
  187. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/mission.py +0 -0
  188. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/plan_validation.py +0 -0
  189. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/task_metadata_validation.py +0 -0
  190. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/template/__init__.py +0 -0
  191. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/template/github_client.py +0 -0
  192. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/template/renderer.py +0 -0
  193. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/text_sanitization.py +0 -0
  194. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/__init__.py +0 -0
  195. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/detector.py +0 -0
  196. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/metadata.py +0 -0
  197. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/base.py +0 -0
  198. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_2_0_specify_to_kittify.py +0 -0
  199. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_5_0_encoding_hooks.py +0 -0
  200. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_6_5_commands_rename.py +0 -0
  201. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_7_2_worktree_commands_dedup.py +0 -0
  202. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_7_3_update_scripts.py +0 -0
  203. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_8_0_remove_active_mission.py +0 -0
  204. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/upgrade/migrations/m_0_8_0_worktree_agents_symlink.py +0 -0
  205. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/validators/__init__.py +0 -0
  206. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/validators/paths.py +0 -0
  207. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/validators/research.py +0 -0
  208. {spec_kitty_cli-0.9.0 → spec_kitty_cli-0.10.9}/src/specify_cli/verify_enhanced.py +0 -0
@@ -0,0 +1,78 @@
1
+ ---
2
+ description: Execute the implementation plan by processing and executing all tasks defined in tasks.md
3
+ ---
4
+
5
+ ## Work Package Selection
6
+
7
+ **User specified**: `$ARGUMENTS`
8
+
9
+ **Your task**: Determine which WP to implement:
10
+ - If `$ARGUMENTS` is empty → Find first WP file with `lane: "planned"` in `tasks/` directory
11
+ - If `$ARGUMENTS` provided → Normalize it:
12
+ - `wp01` → `WP01`
13
+ - `WP01` → `WP01`
14
+ - `WP01-foo-bar` → `WP01`
15
+ - Then find: `tasks/WP01*.md`
16
+
17
+ **Once you know which WP**, proceed to setup.
18
+
19
+ ---
20
+
21
+ ## Setup (Do This First)
22
+
23
+ **1. Move WP to doing lane:**
24
+ ```bash
25
+ spec-kitty agent tasks move-task <WPID> --to doing --note "Started implementation" --agent "codex"
26
+ ```
27
+ This updates frontmatter, captures shell PID, adds activity log, and creates a commit.
28
+
29
+ **2. Get the prompt file path:**
30
+ The WP file is at: `kitty-specs/<feature>/tasks/<WPID>-<slug>.md`
31
+ Find the full absolute path.
32
+
33
+ **3. Verify the move worked:**
34
+ ```bash
35
+ git log -1 # Should show "Start <WPID>: Move to doing lane"
36
+ ```
37
+
38
+ ---
39
+
40
+ ## Implementation (Do This Second)
41
+
42
+ **1. READ THE PROMPT FILE** (`tasks/<WPID>-slug.md`)
43
+ - This is your complete implementation guide
44
+ - Check `review_status` in frontmatter:
45
+ - If `has_feedback` → Read `## Review Feedback` section first
46
+ - Treat action items as your TODO list
47
+
48
+ **2. Read supporting docs:**
49
+ - `tasks.md` - Full task breakdown
50
+ - `plan.md` - Tech stack and architecture
51
+ - `spec.md` - Requirements
52
+ - `data-model.md`, `contracts/`, `research.md`, `quickstart.md` (if exist)
53
+
54
+ **3. Implement following the prompt's guidance:**
55
+ - Follow subtask order
56
+ - Respect dependencies (sequential vs parallel `[P]`)
57
+ - Run tests if required
58
+ - Commit as you complete major milestones
59
+
60
+ **4. When complete:**
61
+ ```bash
62
+ spec-kitty agent tasks move-task <WPID> --to for_review --note "Ready for review"
63
+ git add <your-changes>
64
+ git commit -m "Complete <WPID>: <description>"
65
+ ```
66
+
67
+ ---
68
+
69
+ ## That's It
70
+
71
+ **Simple workflow:**
72
+ 1. Find which WP (from `$ARGUMENTS` or first planned)
73
+ 2. Move it to doing
74
+ 3. Read the prompt file
75
+ 4. Do the work
76
+ 5. Move to for_review
77
+
78
+ **No busywork, no shell PID tracking, just implement.**
@@ -1,9 +1,5 @@
1
1
  ---
2
2
  description: Merge a completed feature into the main branch and clean up worktree
3
- scripts:
4
- sh: ".kittify/scripts/bash/merge-feature.sh"
5
- ps: ".kittify/scripts/powershell/Merge-Feature.ps1"
6
- ---
7
3
 
8
4
  # Merge Feature Branch
9
5
 
@@ -14,7 +10,7 @@ This command merges a completed feature branch into the main/target branch and h
14
10
  Before running this command:
15
11
 
16
12
  1. ✅ Feature must pass `/spec-kitty.accept` checks
17
- 2. ✅ All work packages must be in `tasks/done/`
13
+ 2. ✅ All work packages must be in `tasks/`
18
14
  3. ✅ Working directory must be clean (no uncommitted changes)
19
15
  4. ✅ You must be on the feature branch (or in its worktree)
20
16
 
@@ -23,14 +19,6 @@ Before running this command:
23
19
  Before merging, verify you are in the correct working directory by running the shared pre-flight validation:
24
20
 
25
21
  ```python
26
- from specify_cli.guards import validate_worktree_location
27
-
28
- # Validate location
29
- result = validate_worktree_location()
30
- if not result.is_valid:
31
- print(result.format_error())
32
- print("\nThis command MUST run from a feature worktree, not the main repository.")
33
- exit(1)
34
22
  ```
35
23
 
36
24
  **What this validates**:
@@ -1,12 +1,5 @@
1
1
  ---
2
2
  description: Execute the implementation planning workflow using the plan template to generate design artifacts.
3
- scripts:
4
- sh: scripts/bash/setup-plan.sh --json
5
- ps: scripts/powershell/setup-plan.ps1 -Json
6
- agent_scripts:
7
- sh: scripts/bash/update-agent-context.sh __AGENT__
8
- ps: scripts/powershell/update-agent-context.ps1 -AgentType __AGENT__
9
- ---
10
3
 
11
4
  ## User Input
12
5
 
@@ -21,14 +14,6 @@ You **MUST** consider the user input before proceeding (if not empty).
21
14
  Before proceeding with planning, verify you are in the correct working directory by running the shared pre-flight validation:
22
15
 
23
16
  ```python
24
- from specify_cli.guards import validate_worktree_location
25
-
26
- # Validate location
27
- result = validate_worktree_location()
28
- if not result.is_valid:
29
- print(result.format_error())
30
- print("\nThis command MUST run from a feature worktree, not the main repository.")
31
- exit(1)
32
17
  ```
33
18
 
34
19
  **What this validates**:
@@ -1,9 +1,5 @@
1
1
  ---
2
2
  description: Perform structured research review with citation validation.
3
- scripts:
4
- sh: scripts/bash/check-prerequisites.sh --json --include-tasks
5
- ps: scripts/powershell/check-prerequisites.ps1 -Json -IncludeTasks
6
- ---
7
3
 
8
4
  ## User Input
9
5
 
@@ -18,14 +14,6 @@ You **MUST** consider the user input before proceeding (if not empty).
18
14
  Before proceeding with review, verify you are in the correct working directory by running the shared pre-flight validation:
19
15
 
20
16
  ```python
21
- from specify_cli.guards import validate_worktree_location
22
-
23
- # Validate location
24
- result = validate_worktree_location()
25
- if not result.is_valid:
26
- print(result.format_error())
27
- print("\nThis command MUST run from a feature worktree, not the main repository.")
28
- exit(1)
29
17
  ```
30
18
 
31
19
  **What this validates**:
@@ -76,8 +64,8 @@ if source_register.exists():
76
64
  1. Run `{SCRIPT}` from repo root; capture `FEATURE_DIR`, `AVAILABLE_DOCS`, and `tasks.md` path.
77
65
 
78
66
  2. Determine the review target:
79
- - If user input specifies a filename, validate it exists under `tasks/for_review/` (support phase subdirectories).
80
- - Otherwise, select the oldest file in `tasks/for_review/` (lexical order is sufficient because filenames retain task ordering).
67
+ - If user input specifies a filename, validate it exists under `tasks/` (flat structure, check `lane: "for_review"` in frontmatter).
68
+ - Otherwise, select the oldest file in `tasks/` (lexical order is sufficient because filenames retain task ordering).
81
69
  - Abort with instructional message if no files are waiting for review.
82
70
 
83
71
  3. Load context for the selected task:
@@ -96,15 +84,15 @@ if source_register.exists():
96
84
  * Append a new entry in the prompt’s **Activity Log** detailing feedback (include timestamp, reviewer agent, shell PID).
97
85
  * Update frontmatter `lane` back to `planned`, clear `assignee` if necessary, keep history entry.
98
86
  * Add/revise a `## Review Feedback` section (create if missing) summarizing action items.
99
- * Run `.kittify/scripts/bash/tasks-move-to-lane.sh <FEATURE> <TASK_ID> planned --note "Returned for changes"` (use the PowerShell equivalent on Windows) so the move and history update are staged consistently.
87
+ * Run `spec-kitty agent tasks move-task <FEATURE> <TASK_ID> planned --note "Returned for changes"` (use the PowerShell equivalent on Windows) so the move and history update are staged consistently.
100
88
  - **Approved**:
101
89
  * Append Activity Log entry capturing approval details (capture shell PID via `echo $$` or helper script).
102
90
  * Update frontmatter: set `lane=done`, set reviewer metadata (`agent`, `shell_pid`), optional `assignee` for approver.
103
91
  * Use helper script to mark the task complete in `tasks.md` (see Step 6).
104
- * Run `.kittify/scripts/bash/tasks-move-to-lane.sh <FEATURE> <TASK_ID> done --note "Approved for release"` (PowerShell variant available) to transition the prompt into `tasks/done/`.
92
+ * Run `spec-kitty agent tasks move-task <FEATURE> <TASK_ID> done --note "Approved for release"` (PowerShell variant available) to transition the prompt into `tasks/`.
105
93
 
106
94
  6. Update `tasks.md` automatically:
107
- - Run `scripts/bash/mark-task-status.sh --task-id <TASK_ID> --status done` (POSIX) or `scripts/powershell/Set-TaskStatus.ps1 -TaskId <TASK_ID> -Status done` (PowerShell) from repo root.
95
+ - Run `spec-kitty agent tasks mark-status --task-id <TASK_ID> --status done` (POSIX) or `spec-kitty agent tasks mark-status --task-id <TASK_ID> --status done` (PowerShell) from repo root.
108
96
  - Confirm the task entry now shows `[X]` and includes a reference to the prompt file in its notes.
109
97
 
110
98
  7. Produce a review report summarizing:
@@ -28,7 +28,7 @@ description: "Work package task list template for research methodology execution
28
28
 
29
29
  **Goal**: Identify and collect all relevant sources for the research question.
30
30
  **Independent Test**: `research/source-register.csv` contains the minimum required high-quality sources with relevance ratings.
31
- **Prompt**: `/tasks/planned/WP01-literature-search.md`
31
+ **Prompt**: `/tasks/WP01-literature-search.md`
32
32
 
33
33
  ### Included Subtasks
34
34
  - [ ] T001 Define search keywords and inclusion/exclusion criteria
@@ -49,7 +49,7 @@ description: "Work package task list template for research methodology execution
49
49
 
50
50
  **Goal**: Review prioritized sources and extract key findings.
51
51
  **Independent Test**: `research/evidence-log.csv` contains findings from all high-relevance sources with confidence levels.
52
- **Prompt**: `/tasks/planned/WP02-source-review.md`
52
+ **Prompt**: `/tasks/WP02-source-review.md`
53
53
 
54
54
  ### Included Subtasks
55
55
  - [ ] T008 [P] Review high-relevance sources (parallelizable by researcher/source)
@@ -68,7 +68,7 @@ description: "Work package task list template for research methodology execution
68
68
 
69
69
  **Goal**: Synthesize findings and answer the research question.
70
70
  **Independent Test**: findings.md contains synthesized conclusions backed by citations.
71
- **Prompt**: `/tasks/planned/WP03-analysis-synthesis.md`
71
+ **Prompt**: `/tasks/WP03-analysis-synthesis.md`
72
72
 
73
73
  ### Included Subtasks
74
74
  - [ ] T013 Code findings by theme/category
@@ -1,9 +1,5 @@
1
1
  ---
2
2
  description: Validate feature readiness and guide final acceptance steps.
3
- scripts:
4
- sh: .kittify/scripts/bash/accept-feature.sh --json {ARGS}
5
- ps: .kittify/scripts/powershell/accept-feature.ps1 --json {ARGS}
6
- ---
7
3
 
8
4
  ## User Input
9
5
 
@@ -1,9 +1,5 @@
1
1
  ---
2
2
  description: Perform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation.
3
- scripts:
4
- sh: scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks
5
- ps: scripts/powershell/check-prerequisites.ps1 -Json -RequireTasks -IncludeTasks
6
- ---
7
3
 
8
4
  ## User Input
9
5
 
@@ -1,9 +1,5 @@
1
1
  ---
2
2
  description: Generate a custom checklist for the current feature based on user requirements.
3
- scripts:
4
- sh: scripts/bash/check-prerequisites.sh --json
5
- ps: scripts/powershell/check-prerequisites.ps1 -Json
6
- ---
7
3
 
8
4
  ## Checklist Purpose: "Unit Tests for English"
9
5
 
@@ -1,9 +1,5 @@
1
1
  ---
2
2
  description: Identify underspecified areas in the current feature spec by asking up to 5 highly targeted clarification questions and encoding answers back into the spec.
3
- scripts:
4
- sh: scripts/bash/check-prerequisites.sh --json --paths-only
5
- ps: scripts/powershell/check-prerequisites.ps1 -Json -PathsOnly
6
- ---
7
3
 
8
4
  ## User Input
9
5
 
@@ -0,0 +1,11 @@
1
+ ---
2
+ description: Execute the implementation plan by processing and executing all tasks defined in tasks.md
3
+ ---
4
+
5
+ Run this command to get your work package prompt and instructions:
6
+
7
+ ```bash
8
+ spec-kitty agent workflow implement $ARGUMENTS
9
+ ```
10
+
11
+ If no WP ID is provided, it will automatically find the first work package with `lane: "planned"` and move it to "doing" for you.
@@ -1,9 +1,5 @@
1
1
  ---
2
2
  description: Merge a completed feature into the main branch and clean up worktree
3
- scripts:
4
- sh: ".kittify/scripts/bash/merge-feature.sh"
5
- ps: ".kittify/scripts/powershell/Merge-Feature.ps1"
6
- ---
7
3
 
8
4
  # Merge Feature Branch
9
5
 
@@ -14,7 +10,7 @@ This command merges a completed feature branch into the main/target branch and h
14
10
  Before running this command:
15
11
 
16
12
  1. ✅ Feature must pass `/spec-kitty.accept` checks
17
- 2. ✅ All work packages must be in `tasks/done/`
13
+ 2. ✅ All work packages must be in `tasks/`
18
14
  3. ✅ Working directory must be clean (no uncommitted changes)
19
15
  4. ✅ You must be on the feature branch (or in its worktree)
20
16
 
@@ -23,14 +19,6 @@ Before running this command:
23
19
  Before merging, verify you are in the correct working directory by running the shared pre-flight validation:
24
20
 
25
21
  ```python
26
- from specify_cli.guards import validate_worktree_location
27
-
28
- # Validate location
29
- result = validate_worktree_location()
30
- if not result.is_valid:
31
- print(result.format_error())
32
- print("\nThis command MUST run from a feature worktree, not the main repository.")
33
- exit(1)
34
22
  ```
35
23
 
36
24
  **What this validates**:
@@ -1,11 +1,5 @@
1
1
  ---
2
2
  description: Execute the implementation planning workflow using the plan template to generate design artifacts.
3
- scripts:
4
- sh: scripts/bash/setup-plan.sh --json
5
- ps: scripts/powershell/setup-plan.ps1 -Json
6
- agent_scripts:
7
- sh: scripts/bash/update-agent-context.sh __AGENT__
8
- ps: scripts/powershell/update-agent-context.ps1 -AgentType __AGENT__
9
3
  ---
10
4
 
11
5
  ## User Input
@@ -21,14 +15,6 @@ You **MUST** consider the user input before proceeding (if not empty).
21
15
  Before proceeding with planning, verify you are in the correct working directory by running the shared pre-flight validation:
22
16
 
23
17
  ```python
24
- from specify_cli.guards import validate_worktree_location
25
-
26
- # Validate location
27
- result = validate_worktree_location()
28
- if not result.is_valid:
29
- print(result.format_error())
30
- print("\nThis command MUST run from a feature worktree, not the main repository.")
31
- exit(1)
32
18
  ```
33
19
 
34
20
  **What this validates**:
@@ -68,10 +54,13 @@ Planning requirements (scale to complexity):
68
54
  ## Outline
69
55
 
70
56
  1. **Check planning discovery status**:
71
- - If any planning questions remain unanswered or the user has not confirmed the **Engineering Alignment** summary, stay in the one-question cadence, capture the users response, update your internal table, and end with `WAITING_FOR_PLANNING_INPUT`. Do **not** surface the table. Do **not** run `{SCRIPT}` yet.
57
+ - If any planning questions remain unanswered or the user has not confirmed the **Engineering Alignment** summary, stay in the one-question cadence, capture the user's response, update your internal table, and end with `WAITING_FOR_PLANNING_INPUT`. Do **not** surface the table. Do **not** run the setup command yet.
72
58
  - Once every planning question has a concrete answer and the alignment summary is confirmed by the user, continue.
73
59
 
74
- 2. **Setup**: Run `{SCRIPT}` from repo root and parse JSON for FEATURE_SPEC, IMPL_PLAN, SPECS_DIR, BRANCH.
60
+ 2. **Setup**: Run `spec-kitty agent feature setup-plan --json` from the worktree root and parse JSON for:
61
+ - `result`: "success" or error message
62
+ - `plan_file`: Absolute path to the created plan.md
63
+ - `feature_dir`: Absolute path to the feature directory
75
64
 
76
65
  3. **Load context**: Read FEATURE_SPEC and `.kittify/memory/constitution.md`. Load IMPL_PLAN template (already copied).
77
66
 
@@ -0,0 +1,11 @@
1
+ ---
2
+ description: Perform structured code review and kanban transitions for completed task prompt files
3
+ ---
4
+
5
+ Run this command to get the work package prompt and review instructions:
6
+
7
+ ```bash
8
+ spec-kitty agent workflow review $ARGUMENTS
9
+ ```
10
+
11
+ If no WP ID is provided, it will automatically find the first work package with `lane: "for_review"` and move it to "doing" for you.
@@ -1,14 +1,6 @@
1
1
  ---
2
2
  description: Create or update the feature specification from a natural language feature description.
3
- scripts:
4
- sh: .kittify/scripts/bash/create-new-feature.sh --json "{ARGS}"
5
- ps: .kittify/scripts/powershell/create-new-feature.ps1 -Json "{ARGS}"
6
3
  ---
7
- **Path reference rule:** When you mention directories or files, provide either the absolute path or a path relative to the project root (for example, `kitty-specs/<feature>/tasks/`). Never refer to a folder by name alone.
8
-
9
-
10
- *Path: [templates/commands/specify.md](templates/commands/specify.md)*
11
-
12
4
 
13
5
  ## User Input
14
6
 
@@ -18,44 +10,6 @@ $ARGUMENTS
18
10
 
19
11
  You **MUST** consider the user input before proceeding (if not empty).
20
12
 
21
- ---
22
-
23
- ## Workflow Entry Point Context
24
-
25
- **IMPORTANT**: This is the FIRST command in the spec-kitty feature workflow.
26
-
27
- **Location Context**:
28
- - **Before running {SCRIPT}**: You are in the main repository root
29
- - **After running {SCRIPT}**: A new feature worktree is created at `.worktrees/001-feature-name/`
30
-
31
- The script handles location setup automatically. You do NOT need to navigate anywhere before running it.
32
-
33
- **What {SCRIPT} Provides**:
34
- When you run the creation script, it returns JSON with:
35
- - **BRANCH_NAME**: Your feature branch name (e.g., "001-checkout-flow")
36
- - **SPEC_FILE**: Absolute path to newly created spec.md
37
- - **FEATURE_NUM**: Feature number (e.g., "001")
38
- - **FRIENDLY_NAME**: Your feature title (e.g., "Checkout Upsell Flow")
39
- - **WORKTREE_PATH**: Absolute path to your feature worktree (e.g., `.worktrees/001-checkout-flow`)
40
-
41
- ---
42
-
43
- ## Workflow Context
44
-
45
- **This is the START** of the spec-kitty feature lifecycle.
46
-
47
- **After this command**:
48
- 1. Navigate to your new worktree: `cd <WORKTREE_PATH>`
49
- 2. (Optional) Run `/spec-kitty.clarify` to resolve ambiguities in the spec
50
- 3. Run `/spec-kitty.plan` to create the implementation plan
51
- 4. Run `/spec-kitty.tasks` to break down into work packages
52
- 5. Run `/spec-kitty.implement` to write the code
53
- 6. Run `/spec-kitty.review` to get code feedback
54
- 7. Run `/spec-kitty.accept` to validate readiness
55
- 8. Run `/spec-kitty.merge` to integrate into main
56
-
57
- ---
58
-
59
13
  ## Discovery Gate (mandatory)
60
14
 
61
15
  Before running any scripts or writing to disk you **must** conduct a structured discovery interview.
@@ -83,6 +37,42 @@ Discovery requirements (scale to feature complexity):
83
37
  3. When you have sufficient context for the feature's scope, paraphrase into an **Intent Summary** and confirm. For trivial features, this can be very brief.
84
38
  4. If user explicitly asks to skip questions or says "just testing", acknowledge and proceed with minimal discovery.
85
39
 
40
+ ## Mission Selection
41
+
42
+ After completing discovery and confirming the Intent Summary, determine the appropriate mission for this feature.
43
+
44
+ ### Available Missions
45
+
46
+ - **software-dev**: For building software features, APIs, CLI tools, applications
47
+ - Phases: research → design → implement → test → review
48
+ - Best for: code changes, new features, bug fixes, refactoring
49
+
50
+ - **research**: For investigations, literature reviews, technical analysis
51
+ - Phases: question → methodology → gather → analyze → synthesize → publish
52
+ - Best for: feasibility studies, market research, technology evaluation
53
+
54
+ ### Mission Inference
55
+
56
+ 1. **Analyze the feature description** to identify the primary goal:
57
+ - Building, coding, implementing, creating software → **software-dev**
58
+ - Researching, investigating, analyzing, evaluating → **research**
59
+
60
+ 2. **Check for explicit mission requests** in the user's description:
61
+ - If user mentions "research project", "investigation", "analysis" → use research
62
+ - If user mentions "build", "implement", "create feature" → use software-dev
63
+
64
+ 3. **Confirm with user** (unless explicit):
65
+ > "Based on your description, this sounds like a **[software-dev/research]** project.
66
+ > I'll use the **[mission name]** mission. Does that work for you?"
67
+
68
+ 4. **Handle user response**:
69
+ - If confirmed: proceed with selected mission
70
+ - If user wants different mission: use their choice
71
+
72
+ 5. **Handle --mission flag**: If the user provides `--mission <key>` in their command, skip inference and use the specified mission directly.
73
+
74
+ Store the final mission selection to pass to the script via `--mission "<selected-mission>"`.
75
+
86
76
  ## Outline
87
77
 
88
78
  ### 0. Generate a Friendly Feature Title
@@ -99,44 +89,60 @@ Given that feature description, do this:
99
89
  - **Interactive Interview Mode (no arguments)**: Use the discovery interview to elicit all necessary context, synthesize the working feature description, and confirm it with the user before you generate any specification artifacts.
100
90
 
101
91
  1. **Check discovery status**:
102
- - If this is your first message or discovery questions remain unanswered, stay in the one-question loop, capture the users response, update your internal table, and end with `WAITING_FOR_DISCOVERY_INPUT`. Do **not** surface the table; keep it internal. Do **not** call `{SCRIPT}` yet.
92
+ - If this is your first message or discovery questions remain unanswered, stay in the one-question loop, capture the user's response, update your internal table, and end with `WAITING_FOR_DISCOVERY_INPUT`. Do **not** surface the table; keep it internal. Do **not** call the creation command yet.
103
93
  - Only proceed once every discovery question has an explicit answer and the user has acknowledged the Intent Summary.
104
- - Empty invocation rule: stay in interview mode until you can restate the agreed-upon feature description. Do **not** call `{SCRIPT}` while the description is missing or provisional.
105
-
106
- 2. When discovery is complete and the intent summary **and title** are confirmed, run the script `{SCRIPT}` from repo root, inserting `--feature-name "<Friendly Title>"` (replace the quoted text with the confirmed title) immediately before the feature description argument. For example:
107
-
108
- - **bash/zsh**: `.kittify/scripts/bash/create-new-feature.sh --json --feature-name "Checkout Upsell Flow" "$ARGUMENTS"`
109
- - **PowerShell**: `.kittify/scripts/powershell/create-new-feature.ps1 -Json -FeatureName "Checkout Upsell Flow" "$ARGUMENTS"`
110
-
111
- Parse its JSON output for `BRANCH_NAME`, `SPEC_FILE`, `FEATURE_NUM`, and `FRIENDLY_NAME`. All file paths must be absolute.
112
-
113
- **IMPORTANT** You must only ever run this script once. The JSON is provided in the terminal as output - always refer to it to get the actual content you're looking for.
114
- 3. Load `templates/spec-template.md` to understand required sections.
115
-
116
- 4. Follow this execution flow:
117
-
118
- 1. Use the discovery answers as your authoritative source of truth (do **not** rely on raw `$ARGUMENTS`). For empty invocations, treat the synthesized interview summary as the canonical feature description and propagate the confirmed friendly title anywhere `[FEATURE NAME]` appears.
119
- Identify: actors, actions, data, constraints, motivations, success metrics
120
- 2. For any remaining ambiguity:
121
- - Ask the user a focused follow-up question immediately and halt work until they answer
122
- - Only use `[NEEDS CLARIFICATION: …]` when the user explicitly defers the decision
123
- - Record any interim assumption in the Assumptions section and flag it for confirmation later
124
- - Prioritize clarifications by impact: scope > outcomes > risks/security > user experience > technical details
125
- 4. Fill User Scenarios & Testing section
126
- If no clear user flow: ERROR "Cannot determine user scenarios"
127
- 5. Generate Functional Requirements
128
- Each requirement must be testable
129
- Use reasonable defaults for unspecified details (document assumptions in Assumptions section)
130
- 6. Define Success Criteria
131
- Create measurable, technology-agnostic outcomes
132
- Include both quantitative metrics (time, performance, volume) and qualitative measures (user satisfaction, task completion)
133
- Each criterion must be verifiable without implementation details
134
- 7. Identify Key Entities (if data involved)
135
- 8. Return: SUCCESS (spec ready for planning)
136
-
137
- 4. Write the specification to SPEC_FILE using the template structure, replacing placeholders with concrete details derived from the feature description (arguments) while preserving section order and headings.
138
-
139
- 5. **Specification Quality Validation**: After writing the initial spec, validate it against quality criteria:
94
+ - Empty invocation rule: stay in interview mode until you can restate the agreed-upon feature description. Do **not** call the creation command while the description is missing or provisional.
95
+
96
+ 2. When discovery is complete and the intent summary, **title**, and **mission** are confirmed, run the feature creation command from repo root:
97
+
98
+ ```bash
99
+ spec-kitty agent feature create-feature "<slug>" --json
100
+ ```
101
+
102
+ Where `<slug>` is a kebab-case version of the friendly title (e.g., "Checkout Upsell Flow" → "checkout-upsell-flow").
103
+
104
+ The command returns JSON with:
105
+ - `result`: "success" or error message
106
+ - `feature`: Feature number and slug (e.g., "014-checkout-upsell-flow")
107
+ - `worktree_path`: Absolute path to the created worktree
108
+ - `feature_dir`: Absolute path to the feature directory inside the worktree
109
+
110
+ Parse these values for use in subsequent steps. All file paths are absolute.
111
+
112
+ **IMPORTANT**: You must only ever run this command once. The JSON is provided in the terminal output - always refer to it to get the actual paths you're looking for.
113
+ 3. **Navigate to the worktree**: After feature creation, change directory to the worktree path returned by the command.
114
+
115
+ 4. Load the spec template from `.kittify/templates/spec-template.md` (or `templates/spec-template.md`) to understand required sections.
116
+
117
+ 5. Create meta.json in the feature directory with:
118
+ ```json
119
+ {
120
+ "feature_number": "<number>",
121
+ "slug": "<full-slug>",
122
+ "friendly_name": "<Friendly Title>",
123
+ "mission": "<selected-mission>",
124
+ "source_description": "$ARGUMENTS",
125
+ "created_at": "<ISO timestamp>"
126
+ }
127
+ ```
128
+
129
+ 6. Generate the specification content by following this flow:
130
+ - Use the discovery answers as your authoritative source of truth (do **not** rely on raw `$ARGUMENTS`)
131
+ - For empty invocations, treat the synthesized interview summary as the canonical feature description
132
+ - Identify: actors, actions, data, constraints, motivations, success metrics
133
+ - For any remaining ambiguity:
134
+ * Ask the user a focused follow-up question immediately and halt work until they answer
135
+ * Only use `[NEEDS CLARIFICATION: …]` when the user explicitly defers the decision
136
+ * Record any interim assumption in the Assumptions section
137
+ * Prioritize clarifications by impact: scope > outcomes > risks/security > user experience > technical details
138
+ - Fill User Scenarios & Testing section (ERROR if no clear user flow can be determined)
139
+ - Generate Functional Requirements (each requirement must be testable)
140
+ - Define Success Criteria (measurable, technology-agnostic outcomes)
141
+ - Identify Key Entities (if data involved)
142
+
143
+ 7. Write the specification to `<feature_dir>/spec.md` using the template structure, replacing placeholders with concrete details derived from the feature description while preserving section order and headings.
144
+
145
+ 8. **Specification Quality Validation**: After writing the initial spec, validate it against quality criteria:
140
146
 
141
147
  a. **Create Spec Quality Checklist**: Generate a checklist file at `FEATURE_DIR/checklists/requirements.md` using the checklist template structure with these validation items:
142
148
 
@@ -212,7 +218,7 @@ Given that feature description, do this:
212
218
 
213
219
  d. **Update Checklist**: After each validation iteration, update the checklist file with current pass/fail status
214
220
 
215
- 6. Report completion with branch name, spec file path, checklist results, and readiness for the next phase (`/spec-kitty.clarify` or `/spec-kitty.plan`).
221
+ 9. Report completion with worktree path, feature directory, spec file path, checklist results, and readiness for the next phase (`/spec-kitty.clarify` or `/spec-kitty.plan`).
216
222
 
217
223
  **NOTE:** The script creates and checks out the new branch and initializes the spec file before writing.
218
224
 
@@ -1,8 +1,5 @@
1
1
  ---
2
2
  description: Generate grouped work packages with actionable subtasks and matching prompt files for the feature in one pass.
3
- scripts:
4
- sh: scripts/bash/check-prerequisites.sh --json --include-tasks
5
- ps: scripts/powershell/check-prerequisites.ps1 -Json -IncludeTasks
6
3
  ---
7
4
 
8
5
  ## User Input
@@ -37,20 +34,21 @@ The script will fail if you're not in a feature worktree. This is intentional -
37
34
 
38
35
  ## Outline
39
36
 
40
- 1. **Setup**: Run `{SCRIPT}` from repo root and capture `FEATURE_DIR` plus `AVAILABLE_DOCS`. All paths must be absolute.
37
+ 1. **Setup**: Run `spec-kitty agent feature check-prerequisites --json --paths-only --include-tasks` from the worktree root and capture `FEATURE_DIR` plus `AVAILABLE_DOCS`. All paths must be absolute.
41
38
 
42
- **CRITICAL**: The script returns JSON with `FEATURE_DIR` as an ABSOLUTE path (e.g., `/Users/robert/Code/new_specify/kitty-specs/001-feature-name`).
39
+ **CRITICAL**: The command returns JSON with `FEATURE_DIR` as an ABSOLUTE path (e.g., `/Users/robert/Code/new_specify/kitty-specs/001-feature-name`).
43
40
 
44
41
  **YOU MUST USE THIS PATH** for ALL subsequent file operations. Example:
45
42
  ```
46
43
  FEATURE_DIR = "/Users/robert/Code/new_specify/kitty-specs/001-a-simple-hello"
47
44
  tasks.md location: FEATURE_DIR + "/tasks.md"
48
- prompt location: FEATURE_DIR + "/tasks/planned/WP01-slug.md"
45
+ prompt location: FEATURE_DIR + "/tasks/WP01-slug.md"
49
46
  ```
50
47
 
51
48
  **DO NOT CREATE** paths like:
52
- - ❌ `tasks/planned/WP01-slug.md` (missing FEATURE_DIR prefix)
53
- - ❌ `/tasks/planned/WP01-slug.md` (wrong root)
49
+ - ❌ `tasks/WP01-slug.md` (missing FEATURE_DIR prefix)
50
+ - ❌ `/tasks/WP01-slug.md` (wrong root)
51
+ - ❌ `FEATURE_DIR/tasks/planned/WP01-slug.md` (WRONG - no subdirectories!)
54
52
  - ❌ `WP01-slug.md` (wrong directory)
55
53
 
56
54
  2. **Load design documents** from `FEATURE_DIR` (only those present):
@@ -80,22 +78,24 @@ The script will fail if you're not in a feature worktree. This is intentional -
80
78
  - Preserve the checklist style so implementers can mark progress
81
79
 
82
80
  6. **Generate prompt files (one per work package)**:
83
- - **CRITICAL PATH RULE**: All task directories and prompt files MUST be created under `FEATURE_DIR/tasks/`, NOT in the repo root!
84
- - Correct structure: `FEATURE_DIR/tasks/planned/WPxx-slug.md`, `FEATURE_DIR/tasks/doing/`, `FEATURE_DIR/tasks/for_review/`, `FEATURE_DIR/tasks/done/`
85
- - WRONG (do not create): `/tasks/planned/`, `tasks/planned/`, or any path not under FEATURE_DIR
86
- - Ensure `FEATURE_DIR/tasks/planned/` exists (create `FEATURE_DIR/tasks/doing/`, `FEATURE_DIR/tasks/for_review/`, `FEATURE_DIR/tasks/done/` if missing)
87
- - Create optional phase subfolders under each lane when teams will benefit (e.g., `FEATURE_DIR/tasks/planned/phase-1-setup/`)
81
+ - **CRITICAL PATH RULE**: All work package files MUST be created in a FLAT `FEATURE_DIR/tasks/` directory, NOT in subdirectories!
82
+ - Correct structure: `FEATURE_DIR/tasks/WPxx-slug.md` (flat, no subdirectories)
83
+ - WRONG (do not create): `FEATURE_DIR/tasks/planned/`, `FEATURE_DIR/tasks/doing/`, or ANY lane subdirectories
84
+ - WRONG (do not create): `/tasks/`, `tasks/`, or any path not under FEATURE_DIR
85
+ - Ensure `FEATURE_DIR/tasks/` exists (create as flat directory, NO subdirectories)
88
86
  - For each work package:
89
87
  - Derive a kebab-case slug from the title; filename: `WPxx-slug.md`
90
- - Full path example: `FEATURE_DIR/tasks/planned/WP01-create-html-page.md` (use ABSOLUTE path from FEATURE_DIR variable)
88
+ - Full path example: `FEATURE_DIR/tasks/WP01-create-html-page.md` (use ABSOLUTE path from FEATURE_DIR variable)
91
89
  - Use `.kittify/templates/task-prompt-template.md` to capture:
92
- - Frontmatter with `work_package_id`, `subtasks` array, `lane=planned`, history entry
90
+ - Frontmatter with `work_package_id`, `subtasks` array, `lane: "planned"`, history entry
93
91
  - Objective, context, detailed guidance per subtask
94
92
  - Test strategy (only if requested)
95
93
  - Definition of Done, risks, reviewer guidance
96
94
  - Update `tasks.md` to reference the prompt filename
97
95
  - Keep prompts exhaustive enough that a new agent can complete the work package unaided
98
96
 
97
+ **IMPORTANT**: All WP files live in flat `tasks/` directory. Lane status is tracked ONLY in the `lane:` frontmatter field, NOT by directory location. Agents can change lanes by editing the `lane:` field directly or using `tasks_cli.py update`.
98
+
99
99
  7. **Report**: Provide a concise outcome summary:
100
100
  - Path to `tasks.md`
101
101
  - Work package count and per-package subtask tallies