specpulse 1.0.6__tar.gz → 1.1.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.
Files changed (79) hide show
  1. {specpulse-1.0.6/specpulse.egg-info → specpulse-1.1.0}/PKG-INFO +35 -35
  2. {specpulse-1.0.6 → specpulse-1.1.0}/README.md +34 -34
  3. {specpulse-1.0.6 → specpulse-1.1.0}/pyproject.toml +1 -2
  4. {specpulse-1.0.6 → specpulse-1.1.0}/setup.py +1 -1
  5. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/__init__.py +1 -1
  6. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/cli/main.py +598 -617
  7. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/core/specpulse.py +1110 -1105
  8. specpulse-1.1.0/specpulse/resources/commands/claude/sp-continue.md +203 -0
  9. specpulse-1.0.6/specpulse/resources/commands/claude/plan.md → specpulse-1.1.0/specpulse/resources/commands/claude/sp-plan.md +53 -38
  10. specpulse-1.1.0/specpulse/resources/commands/claude/sp-pulse.md +142 -0
  11. specpulse-1.0.6/specpulse/resources/commands/claude/spec.md → specpulse-1.1.0/specpulse/resources/commands/claude/sp-spec.md +36 -23
  12. specpulse-1.1.0/specpulse/resources/commands/claude/sp-status.md +170 -0
  13. specpulse-1.0.6/specpulse/resources/commands/claude/task.md → specpulse-1.1.0/specpulse/resources/commands/claude/sp-task.md +68 -48
  14. specpulse-1.1.0/specpulse/resources/commands/gemini/sp-continue.toml +56 -0
  15. specpulse-1.1.0/specpulse/resources/commands/gemini/sp-plan.toml +68 -0
  16. specpulse-1.0.6/specpulse/resources/commands/gemini/pulse.toml → specpulse-1.1.0/specpulse/resources/commands/gemini/sp-pulse.toml +12 -6
  17. specpulse-1.1.0/specpulse/resources/commands/gemini/sp-spec.toml +54 -0
  18. specpulse-1.1.0/specpulse/resources/commands/gemini/sp-status.toml +61 -0
  19. specpulse-1.1.0/specpulse/resources/commands/gemini/sp-task.toml +79 -0
  20. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/resources/memory/constitution.md +5 -5
  21. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/resources/memory/context.md +12 -1
  22. specpulse-1.0.6/specpulse/resources/scripts/pulse-init.py → specpulse-1.1.0/specpulse/resources/scripts/sp-pulse-init.py +6 -6
  23. specpulse-1.0.6/specpulse/resources/scripts/pulse-init.sh → specpulse-1.1.0/specpulse/resources/scripts/sp-pulse-init.sh +95 -95
  24. specpulse-1.0.6/specpulse/resources/scripts/pulse-plan.py → specpulse-1.1.0/specpulse/resources/scripts/sp-pulse-plan.py +32 -7
  25. specpulse-1.0.6/specpulse/resources/scripts/pulse-plan.sh → specpulse-1.1.0/specpulse/resources/scripts/sp-pulse-plan.sh +136 -126
  26. specpulse-1.0.6/specpulse/resources/scripts/pulse-spec.py → specpulse-1.1.0/specpulse/resources/scripts/sp-pulse-spec.py +26 -6
  27. specpulse-1.0.6/specpulse/resources/scripts/pulse-spec.sh → specpulse-1.1.0/specpulse/resources/scripts/sp-pulse-spec.sh +126 -103
  28. specpulse-1.0.6/specpulse/resources/scripts/pulse-task.py → specpulse-1.1.0/specpulse/resources/scripts/sp-pulse-task.py +42 -6
  29. specpulse-1.0.6/specpulse/resources/scripts/pulse-task.sh → specpulse-1.1.0/specpulse/resources/scripts/sp-pulse-task.sh +32 -16
  30. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/resources/templates/plan.md +206 -206
  31. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/resources/templates/spec.md +125 -125
  32. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/resources/templates/task.md +164 -163
  33. {specpulse-1.0.6 → specpulse-1.1.0/specpulse.egg-info}/PKG-INFO +35 -35
  34. specpulse-1.1.0/specpulse.egg-info/SOURCES.txt +48 -0
  35. specpulse-1.0.6/specpulse/resources/commands/claude/pulse.md +0 -91
  36. specpulse-1.0.6/specpulse/resources/commands/gemini/plan.toml +0 -59
  37. specpulse-1.0.6/specpulse/resources/commands/gemini/spec.toml +0 -45
  38. specpulse-1.0.6/specpulse/resources/commands/gemini/task.toml +0 -69
  39. specpulse-1.0.6/specpulse/resources/scripts/pulse-init.ps1 +0 -186
  40. specpulse-1.0.6/specpulse/resources/scripts/pulse-plan.ps1 +0 -251
  41. specpulse-1.0.6/specpulse/resources/scripts/pulse-spec.ps1 +0 -185
  42. specpulse-1.0.6/specpulse/resources/scripts/pulse-task.ps1 +0 -263
  43. specpulse-1.0.6/specpulse.egg-info/SOURCES.txt +0 -68
  44. specpulse-1.0.6/tests/test_100_coverage.py +0 -328
  45. specpulse-1.0.6/tests/test_100_percent_coverage.py +0 -461
  46. specpulse-1.0.6/tests/test_ai_commands.py +0 -136
  47. specpulse-1.0.6/tests/test_cli.py +0 -184
  48. specpulse-1.0.6/tests/test_cli_advanced.py +0 -277
  49. specpulse-1.0.6/tests/test_cli_comprehensive.py +0 -611
  50. specpulse-1.0.6/tests/test_command_integration.py +0 -182
  51. specpulse-1.0.6/tests/test_complete_coverage.py +0 -338
  52. specpulse-1.0.6/tests/test_console_advanced.py +0 -230
  53. specpulse-1.0.6/tests/test_console_comprehensive.py +0 -561
  54. specpulse-1.0.6/tests/test_core.py +0 -235
  55. specpulse-1.0.6/tests/test_core_comprehensive.py +0 -486
  56. specpulse-1.0.6/tests/test_cross_platform_scripts.py +0 -317
  57. specpulse-1.0.6/tests/test_full_coverage.py +0 -541
  58. specpulse-1.0.6/tests/test_gemini_commands.py +0 -130
  59. specpulse-1.0.6/tests/test_git_utils.py +0 -270
  60. specpulse-1.0.6/tests/test_git_utils_comprehensive.py +0 -698
  61. specpulse-1.0.6/tests/test_powershell_scripts.py +0 -464
  62. specpulse-1.0.6/tests/test_python_scripts.py +0 -470
  63. specpulse-1.0.6/tests/test_validator_comprehensive.py +0 -613
  64. {specpulse-1.0.6 → specpulse-1.1.0}/LICENSE +0 -0
  65. {specpulse-1.0.6 → specpulse-1.1.0}/MANIFEST.in +0 -0
  66. {specpulse-1.0.6 → specpulse-1.1.0}/requirements.txt +0 -0
  67. {specpulse-1.0.6 → specpulse-1.1.0}/setup.cfg +0 -0
  68. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/cli/__init__.py +0 -0
  69. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/core/__init__.py +0 -0
  70. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/core/validator.py +0 -0
  71. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/resources/memory/decisions.md +0 -0
  72. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/utils/__init__.py +0 -0
  73. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/utils/console.py +0 -0
  74. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse/utils/git_utils.py +0 -0
  75. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse.egg-info/dependency_links.txt +0 -0
  76. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse.egg-info/entry_points.txt +0 -0
  77. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse.egg-info/not-zip-safe +0 -0
  78. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse.egg-info/requires.txt +0 -0
  79. {specpulse-1.0.6 → specpulse-1.1.0}/specpulse.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: specpulse
3
- Version: 1.0.6
3
+ Version: 1.1.0
4
4
  Summary: Specification-Driven Development Framework
5
5
  Home-page: https://github.com/specpulse
6
6
  Author: SpecPulse
@@ -66,11 +66,12 @@ Dynamic: requires-python
66
66
 
67
67
  SpecPulse revolutionizes AI-assisted development by enforcing a **specification-first approach**. Instead of jumping straight into code, SpecPulse ensures every feature starts with clear specifications, validated plans, and tracked tasks - guaranteeing quality from day one.
68
68
 
69
- > **Latest Update (v1.0.6)**:
70
- > - 🐛 **Critical Bug Fix**: Fixed cross-platform template initialization bug
71
- > - **Proper Resource Management**: All cross-platform scripts now correctly copied from @specpulse/resources
72
- > - **Complete Script Availability**: All 12 scripts (4 types × 3 platforms) properly installed
73
- > - **Enhanced Package Configuration**: Fixed package data inclusion for Python and PowerShell scripts
69
+ > **Latest Update (v1.1.0)**:
70
+ > - 🔧 **Command Prefix System**: All commands now use `sp-` prefix to avoid conflicts
71
+ > - 📋 **Multi-Spec Workflow**: Support for multiple specs/plans/tasks per feature
72
+ > - 🗂️ **Versioned File System**: Automatic spec-001.md, plan-001.md, task-001.md naming
73
+ > - 🎯 **Context Detection**: Automatic feature detection using git branches
74
+ > - 🤖 **Enhanced AI Integration**: Improved manual workflow control
74
75
  > - ✅ **Improved Error Handling**: Better resource path resolution and script copying operations
75
76
 
76
77
  ### Why SpecPulse?
@@ -126,21 +127,21 @@ specpulse init --ai gemini
126
127
 
127
128
  ```bash
128
129
  # Initialize a new feature
129
- /pulse user-authentication
130
+ /sp-pulse user-authentication
130
131
  # Creates structure for 001-user-authentication feature
131
132
 
132
133
  # Create the specification
133
- /spec create user login with OAuth2 and email/password
134
- # Or just: /spec (for interactive mode)
134
+ /sp-spec create user login with OAuth2 and email/password
135
+ # Or just: /sp-spec (for interactive mode)
135
136
 
136
137
  # Generate implementation plan
137
- /plan generate
138
- # Or: /plan validate (to check existing plan)
138
+ /sp-plan generate
139
+ # Or: /sp-plan validate (to check existing plan)
139
140
 
140
141
  # Break down into tasks
141
- /task breakdown
142
- # Or: /task update (to update task status)
143
- # Or: /task status (to see progress)
142
+ /sp-task breakdown
143
+ # Or: /sp-task update (to update task status)
144
+ # Or: /sp-task status (to see progress)
144
145
  ```
145
146
 
146
147
  ### Step 4: Validate & Ship
@@ -264,23 +265,22 @@ Claude and Gemini use slash commands that accept arguments via `$ARGUMENTS`:
264
265
  - **Unicode Support**: Full international character support (≤, ≥, →, ←)
265
266
 
266
267
  ```bash
267
- /pulse user-authentication # Start new feature with name
268
- /spec create OAuth2 login # Create specification with description
269
- /spec update # Update existing specification
270
- /spec validate # Validate specification completeness
271
- /plan generate # Generate plan from specification
272
- /plan validate # Validate plan against constitution
273
- /task breakdown # Create task list from plan
274
- /task update # Update task statuses
275
- /task status # Show current progress
268
+ /sp-pulse user-authentication # Start new feature with name
269
+ /sp-spec create OAuth2 login # Create specification with description
270
+ /sp-spec update # Update existing specification
271
+ /sp-spec validate # Validate specification completeness
272
+ /sp-plan generate # Generate plan from specification
273
+ /sp-plan validate # Validate plan against constitution
274
+ /sp-task breakdown # Create task list from plan
275
+ /sp-task update # Update task statuses
276
+ /sp-task status # Show current progress
276
277
  ```
277
278
 
278
279
  **Behind the Scenes:**
279
280
  - Commands capture arguments using `$ARGUMENTS` variable
280
281
  - **Multi-platform scripts** in `resources/scripts/` folder process the arguments:
281
- - `pulse-*.py` - Python scripts (universal)
282
- - `pulse-*.ps1` - PowerShell scripts (Windows)
283
- - `pulse-*.sh` - Bash scripts (Linux/macOS)
282
+ - `sp-pulse-*.py` - Python scripts (universal)
283
+ - `sp-pulse-*.sh` - Bash scripts (Linux/macOS)
284
284
  - AI reads templates from `resources/templates/` folder
285
285
  - Results are saved in `specs/`, `plans/`, `tasks/` folders
286
286
  - Memory system tracks progress in `memory/` folder
@@ -325,19 +325,19 @@ my-project/
325
325
  │ └── decisions.md # Architecture Decision Records
326
326
  ├── specs/ # Feature specifications
327
327
  │ └── 001-feature/
328
- │ └── spec.md
328
+ │ └── spec-001.md
329
329
  ├── plans/ # Implementation plans
330
330
  │ └── 001-feature/
331
- │ └── plan.md
331
+ │ └── plan-001.md
332
332
  ├── tasks/ # Task breakdowns
333
333
  │ └── 001-feature/
334
- │ └── tasks.md
334
+ │ └── task-001.md
335
335
  ├── templates/ # Customizable templates
336
336
  ├── scripts/ # Shell scripts for AI execution
337
- │ ├── pulse-init.sh # Feature initialization
338
- │ ├── pulse-spec.sh # Specification creation
339
- │ ├── pulse-plan.sh # Plan generation
340
- │ └── pulse-task.sh # Task breakdown
337
+ │ ├── sp-pulse-init.sh # Feature initialization
338
+ │ ├── sp-pulse-spec.sh # Specification creation
339
+ │ ├── sp-pulse-plan.sh # Plan generation
340
+ │ └── sp-pulse-task.sh # Task breakdown
341
341
  └── PULSE.md # Project manifest
342
342
  ```
343
343
 
@@ -349,7 +349,7 @@ Create project-specific templates:
349
349
 
350
350
  ```bash
351
351
  # Copy and modify templates
352
- cp templates/spec.md templates/custom-spec.md
352
+ cp templates/spec-001.md templates/custom-spec.md
353
353
  # Edit to match your needs
354
354
  ```
355
355
 
@@ -413,7 +413,7 @@ specpulse validate --component constitution
413
413
  **Solution**: Check template path in config.yaml
414
414
 
415
415
  ### AI Commands Not Working
416
- **Problem**: `/pulse` commands not recognized
416
+ **Problem**: `/sp-pulse` commands not recognized
417
417
  **Solution**: Ensure you ran `specpulse init --ai claude` or `--ai gemini`
418
418
 
419
419
  </details>
@@ -21,11 +21,12 @@
21
21
 
22
22
  SpecPulse revolutionizes AI-assisted development by enforcing a **specification-first approach**. Instead of jumping straight into code, SpecPulse ensures every feature starts with clear specifications, validated plans, and tracked tasks - guaranteeing quality from day one.
23
23
 
24
- > **Latest Update (v1.0.6)**:
25
- > - 🐛 **Critical Bug Fix**: Fixed cross-platform template initialization bug
26
- > - **Proper Resource Management**: All cross-platform scripts now correctly copied from @specpulse/resources
27
- > - **Complete Script Availability**: All 12 scripts (4 types × 3 platforms) properly installed
28
- > - **Enhanced Package Configuration**: Fixed package data inclusion for Python and PowerShell scripts
24
+ > **Latest Update (v1.1.0)**:
25
+ > - 🔧 **Command Prefix System**: All commands now use `sp-` prefix to avoid conflicts
26
+ > - 📋 **Multi-Spec Workflow**: Support for multiple specs/plans/tasks per feature
27
+ > - 🗂️ **Versioned File System**: Automatic spec-001.md, plan-001.md, task-001.md naming
28
+ > - 🎯 **Context Detection**: Automatic feature detection using git branches
29
+ > - 🤖 **Enhanced AI Integration**: Improved manual workflow control
29
30
  > - ✅ **Improved Error Handling**: Better resource path resolution and script copying operations
30
31
 
31
32
  ### Why SpecPulse?
@@ -81,21 +82,21 @@ specpulse init --ai gemini
81
82
 
82
83
  ```bash
83
84
  # Initialize a new feature
84
- /pulse user-authentication
85
+ /sp-pulse user-authentication
85
86
  # Creates structure for 001-user-authentication feature
86
87
 
87
88
  # Create the specification
88
- /spec create user login with OAuth2 and email/password
89
- # Or just: /spec (for interactive mode)
89
+ /sp-spec create user login with OAuth2 and email/password
90
+ # Or just: /sp-spec (for interactive mode)
90
91
 
91
92
  # Generate implementation plan
92
- /plan generate
93
- # Or: /plan validate (to check existing plan)
93
+ /sp-plan generate
94
+ # Or: /sp-plan validate (to check existing plan)
94
95
 
95
96
  # Break down into tasks
96
- /task breakdown
97
- # Or: /task update (to update task status)
98
- # Or: /task status (to see progress)
97
+ /sp-task breakdown
98
+ # Or: /sp-task update (to update task status)
99
+ # Or: /sp-task status (to see progress)
99
100
  ```
100
101
 
101
102
  ### Step 4: Validate & Ship
@@ -219,23 +220,22 @@ Claude and Gemini use slash commands that accept arguments via `$ARGUMENTS`:
219
220
  - **Unicode Support**: Full international character support (≤, ≥, →, ←)
220
221
 
221
222
  ```bash
222
- /pulse user-authentication # Start new feature with name
223
- /spec create OAuth2 login # Create specification with description
224
- /spec update # Update existing specification
225
- /spec validate # Validate specification completeness
226
- /plan generate # Generate plan from specification
227
- /plan validate # Validate plan against constitution
228
- /task breakdown # Create task list from plan
229
- /task update # Update task statuses
230
- /task status # Show current progress
223
+ /sp-pulse user-authentication # Start new feature with name
224
+ /sp-spec create OAuth2 login # Create specification with description
225
+ /sp-spec update # Update existing specification
226
+ /sp-spec validate # Validate specification completeness
227
+ /sp-plan generate # Generate plan from specification
228
+ /sp-plan validate # Validate plan against constitution
229
+ /sp-task breakdown # Create task list from plan
230
+ /sp-task update # Update task statuses
231
+ /sp-task status # Show current progress
231
232
  ```
232
233
 
233
234
  **Behind the Scenes:**
234
235
  - Commands capture arguments using `$ARGUMENTS` variable
235
236
  - **Multi-platform scripts** in `resources/scripts/` folder process the arguments:
236
- - `pulse-*.py` - Python scripts (universal)
237
- - `pulse-*.ps1` - PowerShell scripts (Windows)
238
- - `pulse-*.sh` - Bash scripts (Linux/macOS)
237
+ - `sp-pulse-*.py` - Python scripts (universal)
238
+ - `sp-pulse-*.sh` - Bash scripts (Linux/macOS)
239
239
  - AI reads templates from `resources/templates/` folder
240
240
  - Results are saved in `specs/`, `plans/`, `tasks/` folders
241
241
  - Memory system tracks progress in `memory/` folder
@@ -280,19 +280,19 @@ my-project/
280
280
  │ └── decisions.md # Architecture Decision Records
281
281
  ├── specs/ # Feature specifications
282
282
  │ └── 001-feature/
283
- │ └── spec.md
283
+ │ └── spec-001.md
284
284
  ├── plans/ # Implementation plans
285
285
  │ └── 001-feature/
286
- │ └── plan.md
286
+ │ └── plan-001.md
287
287
  ├── tasks/ # Task breakdowns
288
288
  │ └── 001-feature/
289
- │ └── tasks.md
289
+ │ └── task-001.md
290
290
  ├── templates/ # Customizable templates
291
291
  ├── scripts/ # Shell scripts for AI execution
292
- │ ├── pulse-init.sh # Feature initialization
293
- │ ├── pulse-spec.sh # Specification creation
294
- │ ├── pulse-plan.sh # Plan generation
295
- │ └── pulse-task.sh # Task breakdown
292
+ │ ├── sp-pulse-init.sh # Feature initialization
293
+ │ ├── sp-pulse-spec.sh # Specification creation
294
+ │ ├── sp-pulse-plan.sh # Plan generation
295
+ │ └── sp-pulse-task.sh # Task breakdown
296
296
  └── PULSE.md # Project manifest
297
297
  ```
298
298
 
@@ -304,7 +304,7 @@ Create project-specific templates:
304
304
 
305
305
  ```bash
306
306
  # Copy and modify templates
307
- cp templates/spec.md templates/custom-spec.md
307
+ cp templates/spec-001.md templates/custom-spec.md
308
308
  # Edit to match your needs
309
309
  ```
310
310
 
@@ -368,7 +368,7 @@ specpulse validate --component constitution
368
368
  **Solution**: Check template path in config.yaml
369
369
 
370
370
  ### AI Commands Not Working
371
- **Problem**: `/pulse` commands not recognized
371
+ **Problem**: `/sp-pulse` commands not recognized
372
372
  **Solution**: Ensure you ran `specpulse init --ai claude` or `--ai gemini`
373
373
 
374
374
  </details>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "specpulse"
7
- version = "1.0.6"
7
+ version = "1.1.0"
8
8
  description = "Specification-Driven Development Framework"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -89,7 +89,6 @@ specpulse = [
89
89
  "resources/memory/*.md",
90
90
  "resources/scripts/*.sh",
91
91
  "resources/scripts/*.py",
92
- "resources/scripts/*.ps1",
93
92
  "resources/commands/claude/*.md",
94
93
  "resources/commands/gemini/*.toml",
95
94
  ]
@@ -11,7 +11,7 @@ long_description = (this_directory / "README.md").read_text(encoding="utf-8")
11
11
 
12
12
  setup(
13
13
  name="specpulse",
14
- version="1.0.6",
14
+ version="1.1.0",
15
15
  author="SpecPulse",
16
16
  author_email="",
17
17
  description="Next-Generation Specification-Driven Development Framework",
@@ -3,7 +3,7 @@ SpecPulse: Specification-Driven Development Framework
3
3
  Built for the AI era
4
4
  """
5
5
 
6
- __version__ = "1.0.6"
6
+ __version__ = "1.1.0"
7
7
  __author__ = "SpecPulse"
8
8
  __url__ = "https://github.com/specpulse"
9
9