-
Notifications
You must be signed in to change notification settings - Fork 1.7k
feat: integrate upstream spec-kit improvements with enhanced Spec-Ops planning #290
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Changed banner colors from blue-cyan to orange-black gradient for better visual appeal. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Add fallback mechanism to download templates from GitHub when not found locally - Fixes issue where uvx installation couldn't find templates directory - Update version to 0.0.3 - Now supports both local development and distributed installation modes 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Create .claude/commands directory structure in templates - Add specify, plan, tasks, and detail commands with proper frontmatter - Add Claude Code settings.local.json with required permissions - Update copy logic to include .claude directory in project initialization - Remove duplicate commands directory to avoid conflicts This fixes the issue where Claude Code slash commands were not recognized. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Add cross-platform script support (bash and PowerShell variants) - Simplify plan template structure based on upstream changes - Add CHANGELOG.md and media assets from upstream - Update command templates to use new script paths - Preserve spec-ops customizations (task management, milestones) - Add new templates/commands/ directory structure - Update Claude commands to work with simplified structure Integration from github/spec-kit v0.0.34 while maintaining all spec-ops specific features and branding.
- Restore comprehensive Technical Context with full tech stack planning - Restore advanced Phase 1 architecture planning (architecture.md, data-design.md, deployment.md) - Restore mandatory documentation structure with task management - Restore milestone-based task planning and branch strategies - Update Claude commands to support enhanced architecture planning - Maintain upstream script integration (bash/powershell support) This provides the best of both worlds: upstream infrastructure improvements with Spec-Ops enterprise-grade planning capabilities for complex applications.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This pull request successfully integrates latest upstream improvements from github/spec-kit v0.0.34 while preserving and enhancing all Spec-Ops advanced planning capabilities. The changes provide cross-platform compatibility and comprehensive task management with milestone-based organization.
- Cross-platform script support added with bash and PowerShell variants for Windows/Linux compatibility
- Enhanced planning infrastructure with mandatory documentation structure including architecture.md, data-design.md, and deployment.md files
- Restored enterprise-level planning capabilities with milestone-based task organization and branch management
Reviewed Changes
Copilot reviewed 42 out of 43 changed files in this pull request and generated 6 comments.
Show a summary per file
File | Description |
---|---|
templates/tasks-template.md | Enhanced with milestone-based task organization and comprehensive status tracking |
templates/task-detail-template.md | New template for detailed task specifications with implementation guidance |
templates/plan-template.md | Updated with enhanced planning structure and mandatory documentation requirements |
src/specify_cli/init.py | Rebranded to Spec Ops with updated banner and local template support |
scripts/ | Added comprehensive PowerShell and Bash script variants for cross-platform support |
.claude/commands/ | Updated Claude Code commands with milestone-based task management |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
@@ -1,35 +1,80 @@ | |||
# Tasks: [FEATURE NAME] | |||
|
|||
**Input**: Design documents from `/specs/[###-feature-name]/` | |||
**Prerequisites**: plan.md (required), research.md, data-model.md, contracts/ | |||
**Prerequisites**: plan.md (required), research.md, data-design.md, architecture.md, contracts/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The filename 'data-design.md' is inconsistent with the old naming convention 'data-model.md' that appears elsewhere in the codebase. This inconsistency could cause confusion during the transition period and break existing workflows that expect the old filename.
**Prerequisites**: plan.md (required), research.md, data-design.md, architecture.md, contracts/ | |
**Prerequisites**: plan.md (required), research.md, data-model.md, architecture.md, contracts/ |
Copilot uses AI. Check for mistakes.
├── data-model.md # Phase 1 output (/plan command) | ||
├── architecture.md # Phase 1: MANDATORY - Services, structure, integration (/plan command) | ||
├── data-design.md # Phase 1: MANDATORY - Models, state, persistence, lifecycle (/plan command) | ||
├── deployment.md # Phase 1: MANDATORY - Deployment, security*, performance* (/plan command) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment format 'security*' and 'performance*' with asterisks is unclear. These asterisks don't have a corresponding legend or explanation, making it ambiguous what they signify.
├── deployment.md # Phase 1: MANDATORY - Deployment, security*, performance* (/plan command) | |
├── deployment.md # Phase 1: MANDATORY - Deployment, security, performance (/plan command) |
Copilot uses AI. Check for mistakes.
- ❌ data-model.md (OLD - DO NOT USE) | ||
- ❌ system-design.md (OLD - DO NOT USE) | ||
- ❌ services-architecture.md (OLD - DO NOT USE) | ||
- ✅ architecture.md (CORRECT) | ||
- ✅ data-design.md (CORRECT) | ||
- ✅ deployment.md (CORRECT) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This hardcoded list of deprecated filenames should be centralized in a constant or configuration file rather than embedded in the template. If naming conventions change again, this will require updating multiple template files instead of a single source of truth.
- ❌ data-model.md (OLD - DO NOT USE) | |
- ❌ system-design.md (OLD - DO NOT USE) | |
- ❌ services-architecture.md (OLD - DO NOT USE) | |
- ✅ architecture.md (CORRECT) | |
- ✅ data-design.md (CORRECT) | |
- ✅ deployment.md (CORRECT) | |
<!-- The list of deprecated and correct filenames is maintained in `templates/partials/filenames.md`. --> | |
<!-- To update, edit that file. --> | |
{% include "partials/filenames.md" %} |
Copilot uses AI. Check for mistakes.
Spec Ops CLI - Setup tool for Spec Ops projects | ||
|
||
Usage: | ||
uvx specify-cli.py init <project-name> | ||
uvx specify-cli.py init --here | ||
uvx --from git+https://github.com/rHedBull/spec-ops.git specops init <project-name> | ||
uvx --from git+https://github.com/rHedBull/spec-ops.git specops init --here | ||
|
||
Or install globally: | ||
uv tool install --from specify-cli.py specify-cli | ||
specify init <project-name> | ||
specify init --here | ||
uv tool install --from git+https://github.com/rHedBull/spec-ops.git spec-ops-cli |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The docstring still refers to 'Spec Ops CLI' but the actual command name has been changed to 'specops'. The documentation should consistently use the actual command name to avoid confusion.
Copilot uses AI. Check for mistakes.
eval $(get_feature_paths) | ||
check_feature_branch "$CURRENT_BRANCH" || exit 1 | ||
mkdir -p "$FEATURE_DIR" | ||
TEMPLATE="$REPO_ROOT/.specify/templates/plan-template.md" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The path references '.specify/templates/' but the actual template directory structure uses 'templates/' directly. This will cause the script to fail when trying to copy the template file.
TEMPLATE="$REPO_ROOT/.specify/templates/plan-template.md" | |
TEMPLATE="$REPO_ROOT/templates/plan-template.md" |
Copilot uses AI. Check for mistakes.
Given the context provided as an argument, do this: | ||
|
||
1. Run `scripts/check-task-prerequisites.sh --json` from repo root and parse FEATURE_DIR and AVAILABLE_DOCS list. All paths must be absolute. | ||
1. Run `{SCRIPT}` from repo root and parse FEATURE_DIR and AVAILABLE_DOCS list. All paths must be absolute. | ||
2. Load and analyze available design documents: | ||
- Always read plan.md for tech stack and libraries | ||
- IF EXISTS: Read data-model.md for entities |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This reference to 'data-model.md' is inconsistent with the new naming convention 'data-design.md' established elsewhere in the PR. This inconsistency will cause the command to look for the wrong filename.
- IF EXISTS: Read data-model.md for entities | |
- IF EXISTS: Read data-design.md for entities |
Copilot uses AI. Check for mistakes.
Summary
Successfully integrates latest upstream improvements from github/spec-kit v0.0.34 while preserving and enhancing all Spec-Ops advanced planning capabilities.
• ✅ Cross-platform script support - Added bash and PowerShell variants for Windows/Linux compatibility
• ✅ Enhanced infrastructure - Updated templates with script frontmatter and better organization
• ✅ Restored enterprise planning - Comprehensive architecture, data design, and deployment planning
• ✅ Maintained compatibility - All existing Spec-Ops workflows preserved and enhanced
Key Changes
Upstream Integration (Commit: e25715d)
scripts/bash/
andscripts/powershell/
directories with cross-platform scriptsEnhanced Planning Restoration (Commit: 0378199)
Documentation Structure
Benefits
Test Plan
🤖 Generated with Claude Code