-
Notifications
You must be signed in to change notification settings - Fork 0
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: ACNet-AI/MetaSpec
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.9.6
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: ACNet-AI/MetaSpec
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.9.7
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 4 commits
- 9 files changed
- 1 contributor
Commits on Nov 22, 2025
-
refactor: Simplify slash_commands to array format for clarity
## Changes Simplified slash_commands metadata format from detailed TOML tables to simple array: ### Before (Verbose) ```toml [[tool.metaspec.slash_commands]] name = "show-spec" description = "Display specification" source = "generic" [[tool.metaspec.slash_commands]] name = "get-template" description = "Get template" source = "generic" ``` ### After (Concise) ```toml sd_type = "generic" slash_commands = ["show-spec", "get-template"] ``` ## Rationale 1. **Consistency**: Matches cli_commands format 2. **Simplicity**: 50+ lines → ~10 lines 3. **Maintainability**: Easier to scan and update 4. **Sufficient**: Detailed info available in command files ## Updated Files **Templates**: - pyproject.toml.j2: Generate simplified format * Support custom sd_type detection (e.g., "sdm") * Output slash_commands as array **Documentation**: - metaspec-metadata-examples.md: All 5 examples updated * Example 4: Marketing → SDM system (custom SD-X) * All use array format - implement.md.j2: 4 scenario examples updated * Added Scenario 3: SDM example ## Benefits - ✅ Easier to read and maintain - ✅ Consistent with CLI commands format - ✅ 80% less boilerplate - ✅ Supports custom SD-X systems (like SDM)
Configuration menu - View commit details
-
Copy full SHA for 7be1944 - Browse repository at this point
Copy the full SHA 7be1944View commit details -
refactor: Standardize SD-X naming convention - replace 'generic' with…
… 'custom' ## Motivation Enforce consistent SD-X naming pattern: `sd<domain>` where domain is 1-3 letter abbreviation **Problem**: `"generic"` doesn't follow SD-X pattern (missing 'sd' prefix) ## Changes ### Terminology Update - ❌ Before: `sd_type = "generic"` (inconsistent) - ✅ After: `sd_type = "custom"` (clearer meaning) ### SD-X Naming Convention **Standard SD-X Systems** (follow pattern): - `sds` - **S**pec-**D**riven **S**pecification - `sdd` - **S**pec-**D**riven **D**evelopment - `sdm` - **S**pec-**D**riven **M**arketing - `sdt` - **S**pec-**D**riven **T**esting - `sdo` - **S**pec-**D**riven **O**perations **Non-SD-X**: - `custom` - Custom commands (not following SD-X workflow pattern) - `none` - No slash commands ### Updated Files **Templates**: - `pyproject.toml.j2`: Change detection from "generic" → "custom" - `implement.md.j2`: Update guidance and examples - `README.md`: Update source mapping documentation - `library/*/README.md`: Update source references **Documentation**: - `metaspec-metadata-examples.md`: * Update field descriptions * Update all 5 examples * Update detection logic table * Update use case code samples ## Benefits 1. ✅ **Consistent**: All SD-X systems follow `sd<domain>` pattern 2. ✅ **Extensible**: Clear path for new SD-X systems (sdt, sdo, etc.) 3. ✅ **Semantic**: "custom" better describes non-SD-X commands 4. ✅ **Discoverable**: Easy to identify SD-X vs custom systems ## Migration For existing speckits using `"generic"`: - Change `source: "generic"` → `source: "custom"` - Change `sd_type = "generic"` → `sd_type = "custom"` - No functional changes, pure terminology update
Configuration menu - View commit details
-
Copy full SHA for 8b2baea - Browse repository at this point
Copy the full SHA 8b2baeaView commit details -
feat: Add precision-guided navigation for long slash commands
## Motivation Generated speckit commands can exceed 500-1000 lines (e.g., marketing-spec-kit has 4 commands >800 lines), consuming excessive tokens when AI reads them. ## Solution Add guidance in `implement.md.j2` for AI to generate navigation tables for long commands (>500 lines). ## Changes ### Added Section: "3. Optimize Long Slash Commands" **Location**: After pyproject.toml guidance (lines 433-508, 75 lines) **Content**: 1. **When**: Commands exceed 500 lines 2. **Why**: Save 70-90% token consumption 3. **How**: Add navigation guide at file start 4. **Template**: Complete navigation template with: - Section breakdown (4-6 sections, 100-300 lines each) - Line numbers and read_file usage - Token savings calculation - Typical usage patterns 5. **Guidelines**: - Threshold: 500 lines - Token estimate: ~3.5 tokens/line - Section design principles 6. **Example**: 847-line command breakdown ### Updated Navigation Table **File size**: 1084 → 1158 lines (+74 lines) **Main table**: - Section 7: 275-464 (189) → 275-525 (251 lines) +62 - Section 8-10: 465-556 → 526-617 +61 - Section 11-13: 557-681 → 618-742 +61 - Section 14-15: 682-808 → 743-869 +61 - Section 16: 809-1096 → 870-1158 +61 **Section 7 subsections**: - Python: 306-446 (141) → 306-508 (203 lines) * Now includes: command navigation guidance (74 lines) **Phase-specific**: - Added: Command Navigation (433-508, 75 lines) - Updated all phase line numbers **Token savings**: - Full file: ~3800 → ~4050 tokens - Command navigation: 75 lines (~260 tokens) → **94% savings** ## Benefits 1. ✅ **Token optimization**: 70-90% savings for long commands 2. ✅ **Consistency**: Matches MetaSpec's own command style 3. ✅ **Best practice**: Guides AI to follow precision navigation pattern 4. ✅ **Scalability**: Works for any domain (SDM, SDT, SDO, etc.) ## Example Use Cases - marketing-spec-kit: 4 commands >800 lines need navigation - Future speckits with complex workflows - Any SD-X system with detailed command guidance
Configuration menu - View commit details
-
Copy full SHA for 38928fe - Browse repository at this point
Copy the full SHA 38928feView commit details -
## Version Updates - src/metaspec/__init__.py: 0.9.6 → 0.9.7 - pyproject.toml: 0.9.6 → 0.9.7 - CHANGELOG.md: Move Unreleased to [0.9.7] - 2025-11-22 ## Release Summary **v0.9.7 - Metadata & Navigation Enhancements** Three major improvements: 1. **Simplified slash_commands Format** (refactor) - Array format instead of TOML tables - 80% less boilerplate - Consistent with cli_commands style 2. **Standardized SD-X Naming** (refactor) - "generic" → "custom" for non-SD-X - Enforced sd<domain> pattern - Clear SD-X vs custom distinction 3. **Long Command Navigation** (feat) - Guidance for commands >500 lines - 70-90% token savings - Template + examples + guidelines Benefits: - ✅ Consistent metadata format - ✅ Clear system classification - ✅ Massive token savings - ✅ Best practices automated Commits: - 7be1944: Simplify slash_commands format - 8b2baea: Standardize SD-X naming - 38928fe: Add navigation guidance
Configuration menu - View commit details
-
Copy full SHA for d5bb793 - Browse repository at this point
Copy the full SHA d5bb793View commit details
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v0.9.6...v0.9.7