spec-kitty-cli 0.7.0__tar.gz → 0.9.0__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.
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/plan.md +28 -1
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/specify.md +41 -3
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/templates/task-prompt-template.md +16 -6
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/CHANGELOG.md +247 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/PKG-INFO +6 -2
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/README.md +5 -1
- spec_kitty_cli-0.9.0/kitty-specs/007-frontmatter-only-lane/tasks/README.md +71 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/pyproject.toml +1 -1
- spec_kitty_cli-0.9.0/scripts/bash/common.sh +739 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/create-new-feature.sh +206 -71
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/common.ps1 +15 -5
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/create-new-feature.ps1 +16 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/tasks/acceptance_support.py +37 -11
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/tasks/task_helpers.py +124 -10
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/tasks/tasks_cli.py +113 -176
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/__init__.py +13 -28
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/acceptance.py +46 -12
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/init.py +9 -15
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/mission.py +39 -125
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/handlers/features.py +17 -1
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/scanner.py +115 -56
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/static/dashboard/dashboard.js +1 -1
- spec_kitty_cli-0.9.0/src/specify_cli/legacy_detector.py +83 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/mission.py +141 -2
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/tasks_support.py +87 -11
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/migrations/__init__.py +10 -0
- spec_kitty_cli-0.9.0/src/specify_cli/upgrade/migrations/m_0_7_2_worktree_commands_dedup.py +89 -0
- spec_kitty_cli-0.9.0/src/specify_cli/upgrade/migrations/m_0_7_3_update_scripts.py +100 -0
- spec_kitty_cli-0.9.0/src/specify_cli/upgrade/migrations/m_0_8_0_remove_active_mission.py +82 -0
- spec_kitty_cli-0.9.0/src/specify_cli/upgrade/migrations/m_0_8_0_worktree_agents_symlink.py +148 -0
- spec_kitty_cli-0.9.0/src/specify_cli/upgrade/migrations/m_0_9_0_frontmatter_only_lanes.py +279 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/AGENTS.md +31 -6
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/dashboard.md +3 -1
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/plan.md +44 -24
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/task-prompt-template.md +16 -6
- spec_kitty_cli-0.7.0/scripts/bash/common.sh +0 -331
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.gitignore +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/command-templates/implement.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/command-templates/merge.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/command-templates/plan.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/command-templates/review.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/mission.yaml +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/templates/data-model-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/templates/plan-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/templates/research/evidence-log.csv +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/templates/research/source-register.csv +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/templates/research-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/templates/spec-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/research/templates/tasks-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/accept.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/analyze.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/checklist.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/clarify.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/constitution.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/dashboard.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/implement.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/merge.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/review.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/command-templates/tasks.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/constitution/principles.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/mission.yaml +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/templates/plan-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/templates/spec-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/.kittify/missions/software-dev/templates/tasks-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/LICENSE +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/docs/README.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/memory/constitution.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/node_modules/@playwright/test/LICENSE +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/node_modules/@playwright/test/README.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/node_modules/playwright/LICENSE +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/node_modules/playwright/README.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/node_modules/playwright-core/LICENSE +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/node_modules/playwright-core/README.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/accept-feature.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/check-prerequisites.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/mark-task-status.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/merge-feature.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/move-task-to-doing.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/refresh-kittify-tasks.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/setup-plan.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/setup-sandbox.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/tasks-add-history-entry.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/tasks-list-lanes.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/tasks-move-to-lane.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/tasks-rollback-move.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/update-agent-context.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/bash/validate-task-workflow.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/debug-dashboard-scan.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/git-hooks/pre-commit-task-workflow.sh +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/Merge-Feature.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/Set-TaskStatus.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/accept-feature.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/check-prerequisites.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/setup-plan.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/tasks-add-history-entry.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/tasks-list-lanes.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/tasks-move-to-lane.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/tasks-rollback-move.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/powershell/update-agent-context.ps1 +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/release/README.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/release/extract_changelog.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/release/validate_release.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/scripts/validate_encoding.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/__init__.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/__init__.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/accept.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/dashboard.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/init_help.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/merge.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/research.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/upgrade.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/validate_encoding.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/validate_tasks.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/commands/verify.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/helpers.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/step_tracker.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/cli/ui.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/core/__init__.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/core/config.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/core/git_ops.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/core/project_resolver.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/core/tool_checker.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/core/utils.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/__init__.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/diagnostics.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/handlers/__init__.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/handlers/api.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/handlers/base.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/handlers/router.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/handlers/static.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/lifecycle.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/server.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/static/dashboard/dashboard.css +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/static/spec-kitty.png +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/templates/__init__.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/dashboard/templates/index.html +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/gitignore_manager.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/guards.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/manifest.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/plan_validation.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/task_metadata_validation.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/template/__init__.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/template/asset_generator.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/template/github_client.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/template/manager.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/template/renderer.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/text_sanitization.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/__init__.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/detector.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/metadata.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/migrations/base.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/migrations/m_0_2_0_specify_to_kittify.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/migrations/m_0_4_8_gitignore_agents.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/migrations/m_0_5_0_encoding_hooks.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/migrations/m_0_6_5_commands_rename.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/migrations/m_0_6_7_ensure_missions.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/registry.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/upgrade/runner.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/validators/__init__.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/validators/paths.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/validators/research.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/src/specify_cli/verify_enhanced.py +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/POWERSHELL_SYNTAX.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/agent-file-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/checklist-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/accept.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/analyze.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/checklist.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/clarify.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/constitution.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/implement.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/merge.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/research.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/review.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/specify.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/command-templates/tasks.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/git-hooks/pre-commit-encoding-check +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/plan-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/spec-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/tasks-template.md +0 -0
- {spec_kitty_cli-0.7.0 → spec_kitty_cli-0.9.0}/templates/vscode-settings.json +0 -0
|
@@ -84,7 +84,9 @@ Planning requirements (scale to complexity):
|
|
|
84
84
|
- Phase 1: Update agent context by running the agent script
|
|
85
85
|
- Re-evaluate Constitution Check post-design, asking the user to resolve new gaps before proceeding
|
|
86
86
|
|
|
87
|
-
5. **
|
|
87
|
+
5. **STOP and report**: This command ends after Phase 1 planning. Report branch, IMPL_PLAN path, and generated artifacts.
|
|
88
|
+
|
|
89
|
+
**⚠️ CRITICAL: DO NOT proceed to task generation!** The user must explicitly run `/spec-kitty.tasks` to generate work packages. Your job is COMPLETE after reporting the planning artifacts.
|
|
88
90
|
|
|
89
91
|
## Phases
|
|
90
92
|
|
|
@@ -137,3 +139,28 @@ Planning requirements (scale to complexity):
|
|
|
137
139
|
|
|
138
140
|
- Use absolute paths
|
|
139
141
|
- ERROR on gate failures or unresolved clarifications
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## ⛔ MANDATORY STOP POINT
|
|
146
|
+
|
|
147
|
+
**This command is COMPLETE after generating planning artifacts.**
|
|
148
|
+
|
|
149
|
+
After reporting:
|
|
150
|
+
- `plan.md` path
|
|
151
|
+
- `research.md` path (if generated)
|
|
152
|
+
- `data-model.md` path (if generated)
|
|
153
|
+
- `contracts/` contents (if generated)
|
|
154
|
+
- Agent context file updated
|
|
155
|
+
|
|
156
|
+
**YOU MUST STOP HERE.**
|
|
157
|
+
|
|
158
|
+
Do NOT:
|
|
159
|
+
- ❌ Generate `tasks.md`
|
|
160
|
+
- ❌ Create work package (WP) files
|
|
161
|
+
- ❌ Create `tasks/` subdirectories
|
|
162
|
+
- ❌ Proceed to implementation
|
|
163
|
+
|
|
164
|
+
The user will run `/spec-kitty.tasks` when they are ready to generate work packages.
|
|
165
|
+
|
|
166
|
+
**Next suggested command**: `/spec-kitty.tasks` (user must invoke this explicitly)
|
|
@@ -40,6 +40,42 @@ Discovery requirements (scale to feature complexity):
|
|
|
40
40
|
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.
|
|
41
41
|
4. If user explicitly asks to skip questions or says "just testing", acknowledge and proceed with minimal discovery.
|
|
42
42
|
|
|
43
|
+
## Mission Selection
|
|
44
|
+
|
|
45
|
+
After completing discovery and confirming the Intent Summary, determine the appropriate mission for this feature.
|
|
46
|
+
|
|
47
|
+
### Available Missions
|
|
48
|
+
|
|
49
|
+
- **software-dev**: For building software features, APIs, CLI tools, applications
|
|
50
|
+
- Phases: research → design → implement → test → review
|
|
51
|
+
- Best for: code changes, new features, bug fixes, refactoring
|
|
52
|
+
|
|
53
|
+
- **research**: For investigations, literature reviews, technical analysis
|
|
54
|
+
- Phases: question → methodology → gather → analyze → synthesize → publish
|
|
55
|
+
- Best for: feasibility studies, market research, technology evaluation
|
|
56
|
+
|
|
57
|
+
### Mission Inference
|
|
58
|
+
|
|
59
|
+
1. **Analyze the feature description** to identify the primary goal:
|
|
60
|
+
- Building, coding, implementing, creating software → **software-dev**
|
|
61
|
+
- Researching, investigating, analyzing, evaluating → **research**
|
|
62
|
+
|
|
63
|
+
2. **Check for explicit mission requests** in the user's description:
|
|
64
|
+
- If user mentions "research project", "investigation", "analysis" → use research
|
|
65
|
+
- If user mentions "build", "implement", "create feature" → use software-dev
|
|
66
|
+
|
|
67
|
+
3. **Confirm with user** (unless explicit):
|
|
68
|
+
> "Based on your description, this sounds like a **[software-dev/research]** project.
|
|
69
|
+
> I'll use the **[mission name]** mission. Does that work for you?"
|
|
70
|
+
|
|
71
|
+
4. **Handle user response**:
|
|
72
|
+
- If confirmed: proceed with selected mission
|
|
73
|
+
- If user wants different mission: use their choice
|
|
74
|
+
|
|
75
|
+
5. **Handle --mission flag**: If the user provides `--mission <key>` in their command, skip inference and use the specified mission directly.
|
|
76
|
+
|
|
77
|
+
Store the final mission selection to pass to the script via `--mission "<selected-mission>"`.
|
|
78
|
+
|
|
43
79
|
## Outline
|
|
44
80
|
|
|
45
81
|
### 0. Generate a Friendly Feature Title
|
|
@@ -60,13 +96,15 @@ Given that feature description, do this:
|
|
|
60
96
|
- Only proceed once every discovery question has an explicit answer and the user has acknowledged the Intent Summary.
|
|
61
97
|
- 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.
|
|
62
98
|
|
|
63
|
-
2. When discovery is complete and the intent summary **and
|
|
99
|
+
2. When discovery is complete and the intent summary, **title**, and **mission** are confirmed, run the script `{SCRIPT}` from repo root, inserting `--feature-name "<Friendly Title>"` and `--mission "<selected-mission>"` immediately before the feature description argument. For example:
|
|
64
100
|
|
|
65
|
-
- **bash/zsh**: `.kittify/scripts/bash/create-new-feature.sh --json --feature-name "Checkout Upsell Flow" "$ARGUMENTS"`
|
|
66
|
-
- **PowerShell**: `.kittify/scripts/powershell/create-new-feature.ps1 -Json -FeatureName "Checkout Upsell Flow" "$ARGUMENTS"`
|
|
101
|
+
- **bash/zsh**: `.kittify/scripts/bash/create-new-feature.sh --json --feature-name "Checkout Upsell Flow" --mission "software-dev" "$ARGUMENTS"`
|
|
102
|
+
- **PowerShell**: `.kittify/scripts/powershell/create-new-feature.ps1 -Json -FeatureName "Checkout Upsell Flow" -Mission "software-dev" "$ARGUMENTS"`
|
|
67
103
|
|
|
68
104
|
Parse its JSON output for `BRANCH_NAME`, `SPEC_FILE`, `FEATURE_NUM`, and `FRIENDLY_NAME`. All file paths must be absolute.
|
|
69
105
|
|
|
106
|
+
**Note**: The `--mission` flag writes the mission to the feature's `meta.json`, which downstream commands will read to use the correct templates.
|
|
107
|
+
|
|
70
108
|
**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.
|
|
71
109
|
3. Load `templates/spec-template.md` to understand required sections.
|
|
72
110
|
|
|
@@ -4,7 +4,7 @@ subtasks:
|
|
|
4
4
|
- "Txxx"
|
|
5
5
|
title: "Replace with work package title"
|
|
6
6
|
phase: "Phase N - Replace with phase name"
|
|
7
|
-
lane: "planned" #
|
|
7
|
+
lane: "planned" # DO NOT EDIT - use: tasks_cli.py move <feature> <WP> <lane>
|
|
8
8
|
assignee: "" # Optional friendly name when in doing/for_review
|
|
9
9
|
agent: "" # CLI agent identifier (claude, codex, etc.)
|
|
10
10
|
shell_pid: "" # PID captured when the task moved to the current lane
|
|
@@ -102,11 +102,21 @@ Use language identifiers in code blocks: ````python`, ````bash`
|
|
|
102
102
|
|
|
103
103
|
### Updating Metadata When Changing Lanes
|
|
104
104
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
105
|
+
**IMPORTANT: Never manually edit the `lane:` field.** The lane is determined by the file's directory location, not the YAML field. Editing the field without moving the file creates a mismatch that breaks the system.
|
|
106
|
+
|
|
107
|
+
**Always use the move command:**
|
|
108
|
+
```bash
|
|
109
|
+
python3 .kittify/scripts/tasks/tasks_cli.py move <FEATURE> <WPID> <lane> --note "Your note"
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
This command:
|
|
113
|
+
1. Moves the file to the correct `tasks/<lane>/` directory
|
|
114
|
+
2. Updates the `lane:` field in YAML
|
|
115
|
+
3. Updates `agent` and `shell_pid` metadata
|
|
116
|
+
4. Appends an entry to the Activity Log
|
|
117
|
+
5. Stages the changes for commit
|
|
118
|
+
|
|
119
|
+
You can add `--agent <name>` and `--shell-pid <pid>` flags for explicit metadata.
|
|
110
120
|
|
|
111
121
|
### Optional Phase Subdirectories
|
|
112
122
|
|
|
@@ -9,6 +9,253 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
9
9
|
|
|
10
10
|
## [Unreleased]
|
|
11
11
|
|
|
12
|
+
## [0.9.0] - 2025-12-17
|
|
13
|
+
|
|
14
|
+
### 🎯 Major Release: Frontmatter-Only Lane Management
|
|
15
|
+
|
|
16
|
+
This release fundamentally changes how Spec Kitty manages work package lanes, eliminating directory-based lane tracking in favor of a simpler, conflict-free frontmatter-only system.
|
|
17
|
+
|
|
18
|
+
### ⚠️ Breaking Changes
|
|
19
|
+
|
|
20
|
+
- **Lane system completely redesigned**
|
|
21
|
+
- Work packages now live in a flat `kitty-specs/<feature>/tasks/` directory
|
|
22
|
+
- Lane status determined **solely by `lane:` frontmatter field** (no more subdirectories)
|
|
23
|
+
- Old system: `tasks/planned/WP01.md`, `tasks/doing/WP02.md` ❌
|
|
24
|
+
- New system: `tasks/WP01.md` with `lane: "planned"` ✅
|
|
25
|
+
|
|
26
|
+
- **Command renamed: `move` → `update`**
|
|
27
|
+
- `tasks_cli.py move` command removed
|
|
28
|
+
- Use `tasks_cli.py update <feature> <WP> <lane>` instead
|
|
29
|
+
- Semantic clarity: command updates metadata, doesn't move files
|
|
30
|
+
- Legacy format detection: `update` command refuses to work on old directory-based structure
|
|
31
|
+
|
|
32
|
+
- **Direct frontmatter editing now supported**
|
|
33
|
+
- You can now directly edit the `lane:` field in WP frontmatter
|
|
34
|
+
- Previous "DO NOT EDIT" warnings removed from all templates
|
|
35
|
+
- System recognizes manual lane changes immediately
|
|
36
|
+
- No file movement required for lane transitions
|
|
37
|
+
|
|
38
|
+
### 🆕 Added
|
|
39
|
+
|
|
40
|
+
- **Migration command: `spec-kitty upgrade`**
|
|
41
|
+
- Automatically migrates features from directory-based to frontmatter-only format
|
|
42
|
+
- Preserves all lane assignments during migration
|
|
43
|
+
- Idempotent: safe to run multiple times
|
|
44
|
+
- Cleans up empty lane subdirectories after migration
|
|
45
|
+
- Migrates both main repo and worktree features
|
|
46
|
+
|
|
47
|
+
- **Legacy format detection**
|
|
48
|
+
- `is_legacy_format()` function detects old directory-based structure
|
|
49
|
+
- CLI commands display helpful warnings when legacy format detected
|
|
50
|
+
- Dashboard shows migration prompt for legacy features
|
|
51
|
+
- Non-blocking: legacy features remain functional until migrated
|
|
52
|
+
|
|
53
|
+
- **Enhanced status command**
|
|
54
|
+
- Better formatted output with lane grouping
|
|
55
|
+
- Auto-detects feature from branch/worktree when not specified
|
|
56
|
+
- Shows work packages organized by current lane
|
|
57
|
+
- Works with both legacy and new formats
|
|
58
|
+
|
|
59
|
+
### 🔧 Changed
|
|
60
|
+
|
|
61
|
+
- **Work package location logic**
|
|
62
|
+
- `locate_work_package()` now searches flat `tasks/` directory first
|
|
63
|
+
- Falls back to legacy subdirectory search for backwards compatibility
|
|
64
|
+
- Exact WP ID matching (WP04 won't match WP04b)
|
|
65
|
+
|
|
66
|
+
- **Lane extraction utilities**
|
|
67
|
+
- New `get_lane_from_frontmatter()` function extracts lane from YAML
|
|
68
|
+
- Defaults to "planned" when `lane:` field missing
|
|
69
|
+
- Validates lane values against allowed set
|
|
70
|
+
- Available in both `task_helpers.py` and `tasks_support.py`
|
|
71
|
+
|
|
72
|
+
- **Dashboard scanner updates**
|
|
73
|
+
- Reads lane from frontmatter instead of directory location
|
|
74
|
+
- Displays legacy format warnings
|
|
75
|
+
- Works seamlessly with both formats during transition
|
|
76
|
+
|
|
77
|
+
- **Activity log behavior**
|
|
78
|
+
- Lane transitions still append activity log entries
|
|
79
|
+
- Captures agent, shell PID, and timestamp
|
|
80
|
+
- No file movement logged (because no movement occurs)
|
|
81
|
+
|
|
82
|
+
### 📚 Documentation
|
|
83
|
+
|
|
84
|
+
- **Updated all templates**
|
|
85
|
+
- `.kittify/templates/task-prompt-template.md` - Removed "DO NOT EDIT" warnings
|
|
86
|
+
- `.kittify/templates/tasks-template.md` - Updated for flat structure
|
|
87
|
+
- `.kittify/templates/AGENTS.md` - New lane management instructions
|
|
88
|
+
- `tasks/README.md` - Rewritten for flat directory layout
|
|
89
|
+
|
|
90
|
+
- **Updated mission templates**
|
|
91
|
+
- All mission-specific templates updated (software-dev, research)
|
|
92
|
+
- Command templates updated (`implement.md`, `review.md`, `merge.md`)
|
|
93
|
+
- Examples updated to show new workflow
|
|
94
|
+
|
|
95
|
+
- **Updated main documentation**
|
|
96
|
+
- `README.md` - Updated quick start examples
|
|
97
|
+
- `docs/quickstart.md` - New lane management workflow
|
|
98
|
+
- `docs/multi-agent-orchestration.md` - Updated collaboration examples
|
|
99
|
+
- All `examples/` updated with new commands
|
|
100
|
+
|
|
101
|
+
### 🧪 Testing
|
|
102
|
+
|
|
103
|
+
- 286 tests passing (0 failures)
|
|
104
|
+
- New tests for frontmatter-only lane system
|
|
105
|
+
- Legacy format detection tests
|
|
106
|
+
- Migration command tests
|
|
107
|
+
- Dual-format compatibility tests
|
|
108
|
+
|
|
109
|
+
### 🚀 Migration Guide
|
|
110
|
+
|
|
111
|
+
**For existing projects:**
|
|
112
|
+
|
|
113
|
+
1. **Back up your work** (commit changes, push to remote)
|
|
114
|
+
2. **Run migration**: `spec-kitty upgrade`
|
|
115
|
+
3. **Verify**: `spec-kitty status --feature <your-feature>`
|
|
116
|
+
4. **Update workflows**: Replace `move` with `update` in scripts/docs
|
|
117
|
+
|
|
118
|
+
**Key benefits of upgrading:**
|
|
119
|
+
|
|
120
|
+
- ✅ No file conflicts during lane changes (especially in worktrees)
|
|
121
|
+
- ✅ Direct editing of `lane:` field supported
|
|
122
|
+
- ✅ Better multi-agent compatibility
|
|
123
|
+
- ✅ Simpler mental model (one directory, not four)
|
|
124
|
+
- ✅ Fewer git operations per lane change
|
|
125
|
+
|
|
126
|
+
**Legacy format still works** - You can continue using old directory structure until ready to migrate. All commands detect format automatically.
|
|
127
|
+
|
|
128
|
+
### 🐛 Fixed
|
|
129
|
+
|
|
130
|
+
- File conflicts during simultaneous lane changes by multiple agents
|
|
131
|
+
- Git staging issues with lane transitions
|
|
132
|
+
- Race conditions in worktree-based parallel development
|
|
133
|
+
- Lane mismatch validation errors (no longer possible with frontmatter-only)
|
|
134
|
+
|
|
135
|
+
### 🔗 Related
|
|
136
|
+
|
|
137
|
+
- Feature implementation: `007-frontmatter-only-lane`
|
|
138
|
+
- All 6 work packages completed and reviewed
|
|
139
|
+
- Comprehensive test coverage added
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## [0.8.2] - 2025-12-17
|
|
144
|
+
|
|
145
|
+
### Added
|
|
146
|
+
|
|
147
|
+
- **Task lane management documentation** - Added clear instructions to AGENTS.md and task templates warning agents never to manually edit the `lane:` YAML field
|
|
148
|
+
- Lane is determined by directory location, not YAML field
|
|
149
|
+
- Editing `lane:` without moving the file creates a mismatch that breaks the system
|
|
150
|
+
- All templates now include YAML comment: `# DO NOT EDIT - use: tasks_cli.py move`
|
|
151
|
+
- Added "Task Lane Management Rule" section to project AGENTS.md
|
|
152
|
+
|
|
153
|
+
## [0.8.1] - 2025-12-17
|
|
154
|
+
|
|
155
|
+
### Fixed
|
|
156
|
+
|
|
157
|
+
- **Work package move race conditions** - Multiple agents can now work on different WPs simultaneously without blocking each other
|
|
158
|
+
- Conflict detection now only blocks on changes to the same WP, not unrelated WP files
|
|
159
|
+
- Agents working on WP05 no longer block moves of WP04
|
|
160
|
+
|
|
161
|
+
- **Exact WP ID matching** - `WP04` no longer incorrectly matches `WP04b`
|
|
162
|
+
- Changed from prefix matching to exact boundary matching
|
|
163
|
+
- Pattern now requires WP ID to be followed by `-`, `_`, `.`, or end of filename
|
|
164
|
+
|
|
165
|
+
- **Cleanup no longer leaves staged deletions** - Stale copy cleanup uses filesystem delete instead of `git rm`
|
|
166
|
+
- Prevents orphaned staged deletions from blocking subsequent operations
|
|
167
|
+
- Automatically unstages any previously staged changes to cleaned files
|
|
168
|
+
|
|
169
|
+
## [0.8.0] - 2025-12-15
|
|
170
|
+
|
|
171
|
+
### Breaking Changes
|
|
172
|
+
|
|
173
|
+
- **Mission system refactored to per-feature model**
|
|
174
|
+
- Missions are now selected during `/spec-kitty.specify` instead of `spec-kitty init`
|
|
175
|
+
- Each feature stores its mission in `meta.json` (field: `"mission": "software-dev"`)
|
|
176
|
+
- `.kittify/active-mission` symlink/file is no longer used
|
|
177
|
+
- Run `spec-kitty upgrade` to clean up existing projects
|
|
178
|
+
|
|
179
|
+
- **Removed commands**
|
|
180
|
+
- `spec-kitty mission switch` - Missions are now per-feature, not per-project
|
|
181
|
+
- Running this command now shows a helpful error message explaining the new workflow
|
|
182
|
+
|
|
183
|
+
- **Removed flags**
|
|
184
|
+
- `--mission` flag from `spec-kitty init` - Use `/spec-kitty.specify` instead
|
|
185
|
+
- Flag is hidden but shows deprecation warning if used
|
|
186
|
+
|
|
187
|
+
### Added
|
|
188
|
+
|
|
189
|
+
- **Mission inference during `/spec-kitty.specify`** - LLM analyzes feature description and suggests appropriate mission:
|
|
190
|
+
- "Build a REST API" → suggests `software-dev`
|
|
191
|
+
- "Research best practices" → suggests `research`
|
|
192
|
+
- User confirms or overrides the suggestion
|
|
193
|
+
- Explicit `--mission` flag bypasses inference
|
|
194
|
+
|
|
195
|
+
- **Per-feature mission storage** - Selected mission stored in feature's `meta.json`:
|
|
196
|
+
- All downstream commands read mission from feature context
|
|
197
|
+
- Legacy features without mission field default to `software-dev`
|
|
198
|
+
|
|
199
|
+
- **Mission discovery** - New `discover_missions()` function returns all available missions with source indicators
|
|
200
|
+
|
|
201
|
+
- **Updated `spec-kitty mission list`** - Shows source column (project/built-in) for each mission
|
|
202
|
+
|
|
203
|
+
- **Migration for v0.8.0** - `spec-kitty upgrade` removes obsolete `.kittify/active-mission` file
|
|
204
|
+
|
|
205
|
+
- **AGENTS.md worktree fix** - New worktrees get AGENTS.md symlink, and `spec-kitty upgrade` fixes existing worktrees
|
|
206
|
+
|
|
207
|
+
### Changed
|
|
208
|
+
|
|
209
|
+
- All downstream commands (`/spec-kitty.plan`, `/spec-kitty.tasks`, `/spec-kitty.implement`, `/spec-kitty.review`, `/spec-kitty.accept`) now read mission from feature's `meta.json`
|
|
210
|
+
- `create-new-feature.sh` accepts `--mission <key>` parameter to set mission in meta.json
|
|
211
|
+
- Common bash/PowerShell scripts updated to resolve mission from feature directory
|
|
212
|
+
- `spec-kitty mission current` shows current default mission (for informational purposes)
|
|
213
|
+
- Dashboard template now includes dynamic AGENTS.md path discovery instructions
|
|
214
|
+
|
|
215
|
+
### Deprecated
|
|
216
|
+
|
|
217
|
+
- `set_active_mission()` function - Shows deprecation warning, will be removed in future version
|
|
218
|
+
|
|
219
|
+
### Migration Guide
|
|
220
|
+
|
|
221
|
+
1. Run `spec-kitty upgrade` to remove `.kittify/active-mission`
|
|
222
|
+
2. Existing features without `mission` field will use `software-dev` by default
|
|
223
|
+
3. New features will have mission set during `/spec-kitty.specify`
|
|
224
|
+
|
|
225
|
+
## [0.7.4] - 2025-12-14
|
|
226
|
+
|
|
227
|
+
### Added
|
|
228
|
+
|
|
229
|
+
- **Script Update Migration** – `spec-kitty upgrade` now updates project scripts:
|
|
230
|
+
- Copies latest `create-new-feature.sh` from package to project
|
|
231
|
+
- Fixes worktree feature numbering bug in existing projects
|
|
232
|
+
- Previously, projects kept old scripts from when they were initialized
|
|
233
|
+
|
|
234
|
+
## [0.7.3] - 2025-12-14
|
|
235
|
+
|
|
236
|
+
### Fixed
|
|
237
|
+
|
|
238
|
+
- **Duplicate Feature Numbers with Worktrees** – Script now scans both `kitty-specs/` AND `.worktrees/` for existing feature numbers:
|
|
239
|
+
- Previously only scanned `kitty-specs/` which was empty when using worktrees
|
|
240
|
+
- This caused new features to get `001` even when `001-*` worktree already existed
|
|
241
|
+
- Now correctly finds highest number across both locations
|
|
242
|
+
|
|
243
|
+
## [0.7.2] - 2025-12-14
|
|
244
|
+
|
|
245
|
+
### Fixed
|
|
246
|
+
|
|
247
|
+
- **Duplicate Slash Commands in Worktrees (Corrected)** – Fixed the fix from v0.7.1:
|
|
248
|
+
- v0.7.1 incorrectly removed commands from main repo (broke `/` commands there)
|
|
249
|
+
- v0.7.2 removes commands from **worktrees** instead (they inherit from main repo)
|
|
250
|
+
- Claude Code traverses UP, so worktrees find main repo's `.claude/commands/`
|
|
251
|
+
- Main repo keeps commands, worktrees don't need their own copy
|
|
252
|
+
|
|
253
|
+
## [0.7.1] - 2025-12-14 [YANKED]
|
|
254
|
+
|
|
255
|
+
### Fixed
|
|
256
|
+
|
|
257
|
+
- ~~Duplicate Slash Commands in Worktrees~~ – **Incorrect fix, replaced by v0.7.2**
|
|
258
|
+
|
|
12
259
|
## [0.7.0] - 2025-12-14
|
|
13
260
|
|
|
14
261
|
### Added
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: spec-kitty-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.9.0
|
|
4
4
|
Summary: Spec Kitty CLI, a community fork of GitHub's Spec Kit for bootstrapping Spec-Driven Development (SDD) projects.
|
|
5
5
|
Project-URL: Repository, https://github.com/spec-kitty/spec-kit
|
|
6
6
|
Project-URL: Issues, https://github.com/spec-kitty/spec-kit/issues
|
|
@@ -58,7 +58,7 @@ Description-Content-Type: text/markdown
|
|
|
58
58
|
|
|
59
59
|
<div align="center">
|
|
60
60
|
<img src="https://github.com/Priivacy-ai/spec-kitty/raw/main/media/logo_small.webp" alt="Spec Kitty Logo"/>
|
|
61
|
-
<h1
|
|
61
|
+
<h1>Spec Kitty</h1>
|
|
62
62
|
<h3><em>Real-Time AI Development Dashboard for Spec-Driven Multi-Agent Workflows</em></h3>
|
|
63
63
|
</div>
|
|
64
64
|
|
|
@@ -89,6 +89,10 @@ Description-Content-Type: text/markdown
|
|
|
89
89
|
|
|
90
90
|
> **Note:** Spec Kitty is a community-maintained fork of GitHub's [Spec Kit](https://github.com/github/spec-kit). We retain the original attribution per the Spec Kit license while evolving the toolkit under the Spec Kitty banner.
|
|
91
91
|
|
|
92
|
+
> **🎉 Version 0.9.0 Released - Frontmatter-Only Lane Management**
|
|
93
|
+
> Work packages now use a flat `tasks/` directory with lane status in frontmatter (no more lane subdirectories).
|
|
94
|
+
> **Existing projects:** Run `spec-kitty upgrade` to migrate. Legacy format still works. [See CHANGELOG](CHANGELOG.md#090---2025-12-17) for full details.
|
|
95
|
+
|
|
92
96
|
<details>
|
|
93
97
|
<summary><b>🔄 What's Different from GitHub Spec Kit?</b></summary>
|
|
94
98
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<img src="https://github.com/Priivacy-ai/spec-kitty/raw/main/media/logo_small.webp" alt="Spec Kitty Logo"/>
|
|
3
|
-
<h1
|
|
3
|
+
<h1>Spec Kitty</h1>
|
|
4
4
|
<h3><em>Real-Time AI Development Dashboard for Spec-Driven Multi-Agent Workflows</em></h3>
|
|
5
5
|
</div>
|
|
6
6
|
|
|
@@ -31,6 +31,10 @@
|
|
|
31
31
|
|
|
32
32
|
> **Note:** Spec Kitty is a community-maintained fork of GitHub's [Spec Kit](https://github.com/github/spec-kit). We retain the original attribution per the Spec Kit license while evolving the toolkit under the Spec Kitty banner.
|
|
33
33
|
|
|
34
|
+
> **🎉 Version 0.9.0 Released - Frontmatter-Only Lane Management**
|
|
35
|
+
> Work packages now use a flat `tasks/` directory with lane status in frontmatter (no more lane subdirectories).
|
|
36
|
+
> **Existing projects:** Run `spec-kitty upgrade` to migrate. Legacy format still works. [See CHANGELOG](CHANGELOG.md#090---2025-12-17) for full details.
|
|
37
|
+
|
|
34
38
|
<details>
|
|
35
39
|
<summary><b>🔄 What's Different from GitHub Spec Kit?</b></summary>
|
|
36
40
|
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Tasks Directory
|
|
2
|
+
|
|
3
|
+
This directory contains work package (WP) prompt files for the feature.
|
|
4
|
+
|
|
5
|
+
## Directory Structure
|
|
6
|
+
|
|
7
|
+
All WP files live in this flat directory:
|
|
8
|
+
```
|
|
9
|
+
tasks/
|
|
10
|
+
├── WP01-setup.md
|
|
11
|
+
├── WP02-implement.md
|
|
12
|
+
├── WP03-test.md
|
|
13
|
+
└── README.md
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Lane Management
|
|
17
|
+
|
|
18
|
+
Each WP file has a `lane:` field in its YAML frontmatter:
|
|
19
|
+
- `planned` - Not yet started
|
|
20
|
+
- `doing` - In progress
|
|
21
|
+
- `for_review` - Ready for review
|
|
22
|
+
- `done` - Complete
|
|
23
|
+
|
|
24
|
+
To change a WP's lane:
|
|
25
|
+
```bash
|
|
26
|
+
python3 .kittify/scripts/tasks/tasks_cli.py update <feature> <WP> <lane>
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Or edit the `lane:` field directly in the WP file.
|
|
30
|
+
|
|
31
|
+
## Work Package File Format
|
|
32
|
+
|
|
33
|
+
Each WP file **MUST** use YAML frontmatter:
|
|
34
|
+
|
|
35
|
+
```yaml
|
|
36
|
+
---
|
|
37
|
+
work_package_id: "WP01"
|
|
38
|
+
subtasks:
|
|
39
|
+
- "T001"
|
|
40
|
+
- "T002"
|
|
41
|
+
title: "Work Package Title"
|
|
42
|
+
phase: "Phase 1 - Setup"
|
|
43
|
+
lane: "planned" # Edit directly or use: tasks_cli.py update
|
|
44
|
+
assignee: ""
|
|
45
|
+
agent: ""
|
|
46
|
+
shell_pid: ""
|
|
47
|
+
review_status: ""
|
|
48
|
+
reviewed_by: ""
|
|
49
|
+
history:
|
|
50
|
+
- timestamp: "2025-01-01T00:00:00Z"
|
|
51
|
+
lane: "planned"
|
|
52
|
+
agent: "system"
|
|
53
|
+
shell_pid: ""
|
|
54
|
+
action: "Prompt generated via /spec-kitty.tasks"
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
# Work Package Prompt: WP01 - Work Package Title
|
|
58
|
+
|
|
59
|
+
[Content follows...]
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## File Naming
|
|
63
|
+
|
|
64
|
+
- Format: `WP01-kebab-case-slug.md` (no extra hyphens in WP number)
|
|
65
|
+
- Examples: `WP01-setup-infrastructure.md`, `WP02-user-auth.md`
|
|
66
|
+
|
|
67
|
+
## Viewing Status
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
python3 .kittify/scripts/tasks/tasks_cli.py status <feature>
|
|
71
|
+
```
|