prjct-cli 0.8.6 → 0.9.1

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 (47) hide show
  1. package/CHANGELOG.md +216 -0
  2. package/CLAUDE.md +34 -0
  3. package/core/agentic/agent-router.js +482 -0
  4. package/core/agentic/command-executor.js +70 -15
  5. package/core/agentic/context-builder.js +4 -3
  6. package/core/agentic/context-filter.js +545 -0
  7. package/core/agentic/prompt-builder.js +48 -38
  8. package/core/agentic/tool-registry.js +35 -0
  9. package/core/command-registry.js +104 -164
  10. package/core/commands.js +84 -0
  11. package/core/domain/agent-generator.js +55 -44
  12. package/core/domain/architecture-generator.js +561 -0
  13. package/core/domain/task-stack.js +496 -0
  14. package/core/infrastructure/legacy-installer-detector.js +546 -0
  15. package/core/infrastructure/session-manager.js +14 -2
  16. package/core/infrastructure/setup.js +29 -11
  17. package/core/utils/jsonl-helper.js +137 -0
  18. package/package.json +1 -1
  19. package/scripts/install.sh +45 -8
  20. package/scripts/postinstall.js +5 -5
  21. package/templates/agents/AGENTS.md +3 -3
  22. package/templates/commands/analyze.md +10 -53
  23. package/templates/commands/ask.md +25 -338
  24. package/templates/commands/bug.md +11 -70
  25. package/templates/commands/build.md +8 -35
  26. package/templates/commands/cleanup.md +9 -32
  27. package/templates/commands/dash.md +241 -0
  28. package/templates/commands/design.md +5 -28
  29. package/templates/commands/done.md +6 -20
  30. package/templates/commands/feature.md +12 -225
  31. package/templates/commands/help.md +26 -313
  32. package/templates/commands/idea.md +7 -25
  33. package/templates/commands/init.md +15 -191
  34. package/templates/commands/migrate-all.md +25 -84
  35. package/templates/commands/next.md +6 -26
  36. package/templates/commands/now.md +6 -25
  37. package/templates/commands/pause.md +18 -0
  38. package/templates/commands/progress.md +5 -50
  39. package/templates/commands/recap.md +5 -54
  40. package/templates/commands/resume.md +97 -0
  41. package/templates/commands/ship.md +14 -135
  42. package/templates/commands/status.md +7 -32
  43. package/templates/commands/suggest.md +36 -495
  44. package/templates/commands/sync.md +7 -24
  45. package/templates/commands/work.md +44 -0
  46. package/templates/commands/workflow.md +3 -25
  47. package/templates/planning-methodology.md +195 -0
package/CHANGELOG.md CHANGED
@@ -7,6 +7,222 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.9.1] - 2024-11-22
11
+
12
+ ### 🎯 Context Optimization & Prompt Efficiency
13
+
14
+ Major performance improvements through context window optimization and prompt conciseness.
15
+
16
+ ### Added
17
+
18
+ - **Mandatory Agent Assignment System**
19
+ - Every task now requires specialized agent assignment
20
+ - Automatic expertise detection from task descriptions
21
+ - Universal technology support (Ruby, Go, Python, etc.)
22
+
23
+ - **Context Filtering System**
24
+ - 70-90% context window reduction per task
25
+ - Technology-specific file filtering
26
+ - Smart pattern detection for any framework
27
+
28
+ ### Changed
29
+
30
+ - **Optimized Command Templates** (~70% reduction)
31
+ - Concise, efficient prompts for AI understanding
32
+ - Removed verbose explanations
33
+ - Direct flow instructions with → and | notation
34
+
35
+ - **Agent Generation Improvements**
36
+ - Dynamic, concise agent prompts
37
+ - Removed 200+ lines of hardcoded patterns
38
+ - Universal technology detection
39
+
40
+ ### Performance
41
+
42
+ - Context window usage: **70-90% reduction**
43
+ - Template verbosity: **~70% average reduction**
44
+ - Agent specialization: True domain focus achieved
45
+
46
+ ## [0.9.0] - 2024-11-22
47
+
48
+ ### 🚀 Major Release: Simplified Commands + Pause/Resume + Intelligent Ideas
49
+
50
+ This release represents a **major simplification** of prjct-cli, reducing commands by 48% while adding powerful new capabilities including pause/resume for task interruptions and AI-powered idea development.
51
+
52
+ ### Added
53
+
54
+ - **Task Stack System** - Natural workflow with interruptions
55
+ - ✅ `/p:pause [reason]` - Pause active task to handle interruptions
56
+ - ✅ `/p:resume [task_id]` - Resume paused tasks with preserved context
57
+ - ✅ Multiple concurrent paused tasks supported
58
+ - ✅ Automatic duration tracking (excludes paused time)
59
+ - ✅ Migration from legacy `now.md` to new `stack.jsonl` format
60
+ - 📊 Impact: Handle urgent tasks without losing context
61
+
62
+ - **Intelligent Idea Development** - Transform ideas into complete architectures
63
+ - ✅ `/p:idea` enhanced to develop full technical specifications
64
+ - ✅ Simple ideas → Quick capture (< 20 words)
65
+ - ✅ Complex ideas → Complete architecture generation
66
+ - ✅ Interactive discovery process with AI
67
+ - ✅ Generates: Tech stack, API specs, database schema, roadmap
68
+ - ✅ Saves to `planning/architectures/{id}/` for reference
69
+ - 📊 Impact: Go from idea to implementation-ready specs in one command
70
+
71
+ - **Unified Commands** - Fewer commands, more power
72
+ - ✅ `/p:work [task]` - Replaces `/p:now` + `/p:build`
73
+ - No params → Show current task
74
+ - With task → Start new task
75
+ - ✅ `/p:dash [view]` - Replaces 4 dashboard commands
76
+ - Default → Full dashboard
77
+ - `week/month` → Progress views
78
+ - `roadmap` → Planning view
79
+ - `compact` → Minimal status
80
+ - ✅ `/p:help [topic]` - Enhanced to absorb 3 commands
81
+ - Absorbs `/p:ask`, `/p:suggest`, `/p:stuck`
82
+ - Context-aware suggestions
83
+ - Intent to action translation
84
+
85
+ ### Changed
86
+
87
+ - **Command Count** - Reduced from 23 → 13 (48% reduction)
88
+ - Core workflow remains 13 commands but simplified
89
+ - Removed redundant overlapping commands
90
+ - Better organization and clearer purpose
91
+
92
+ - **Architecture Generator** - New system for idea development
93
+ - `core/domain/architecture-generator.js` - Full architecture generation
94
+ - `core/domain/task-stack.js` - Pause/resume task management
95
+ - `templates/planning-methodology.md` - Comprehensive planning guide
96
+
97
+ ### Removed
98
+
99
+ - **Deprecated Commands** - Completely removed (not just marked deprecated)
100
+ - ❌ `/p:now` → Use `/p:work`
101
+ - ❌ `/p:build` → Use `/p:work "task"`
102
+ - ❌ `/p:status` → Use `/p:dash`
103
+ - ❌ `/p:roadmap` → Use `/p:dash roadmap`
104
+ - ❌ `/p:recap` → Use `/p:dash`
105
+ - ❌ `/p:progress` → Use `/p:dash week`
106
+ - ❌ `/p:ask` → Use `/p:help`
107
+ - ❌ `/p:suggest` → Use `/p:help`
108
+ - ❌ `/p:stuck` → Use `/p:help stuck:`
109
+ - ❌ `/p:workflow` → Automatic in `/p:ship`
110
+ - ❌ `/p:task` → Use `/p:feature` for breakdown
111
+
112
+ ### Migration Guide
113
+
114
+ **For existing users:**
115
+ 1. First run will automatically migrate `now.md` to new stack system
116
+ 2. Old commands will show error with suggestion to use new command
117
+ 3. All data preserved during migration
118
+
119
+ **Command mapping:**
120
+ ```bash
121
+ # Old → New
122
+ /p:now → /p:work
123
+ /p:build "task" → /p:work "task"
124
+ /p:status → /p:dash
125
+ /p:roadmap → /p:dash roadmap
126
+ /p:ask "question" → /p:help ask: "question"
127
+ /p:suggest → /p:help
128
+ /p:stuck "issue" → /p:help stuck: "issue"
129
+ ```
130
+
131
+ **New workflow:**
132
+ ```bash
133
+ /p:idea "build CRM" # Develop complete architecture
134
+ /p:work "implement auth" # Start task
135
+ /p:pause # Urgent interruption
136
+ /p:work "fix bug" # Handle urgent task
137
+ /p:done # Complete bug
138
+ /p:resume # Back to auth
139
+ /p:ship "auth feature" # Ship when done
140
+ ```
141
+
142
+ ### Technical Details
143
+
144
+ - New files: 10 templates, 3 domain modules
145
+ - Modified: Command registry, core commands
146
+ - Lines of code: +2000 (new features), -3000 (removed redundancy)
147
+ - Breaking changes: Yes (old commands removed)
148
+ - Data migration: Automatic
149
+
150
+ ## [0.8.8] - 2025-10-06
151
+
152
+ ### Added
153
+
154
+ - **System timestamp tools** - LLM now gets real date/time from system instead of guessing
155
+ - ✅ `GetTimestamp()` tool - Returns ISO timestamp from system clock
156
+ - ✅ `GetDate()` tool - Returns YYYY-MM-DD from system clock
157
+ - ✅ `GetDateTime()` tool - Returns full date/time object with components
158
+ - 🐛 **Bug fixed**: Tasks no longer show January 1st dates when it's October
159
+ - 📊 Impact: Session files now use correct dates, analytics work properly
160
+
161
+ - **Template optimization** - Phase 1 complete: Top 7 critical templates optimized
162
+ - ✅ Reduced from 2006 → 605 lines (69.8% reduction, saved 1401 lines)
163
+ - ✅ All templates now in English only (removed Spanish examples)
164
+ - ✅ Preserved 100% of business logic and decision-making patterns
165
+ - ✅ Removed verbose examples, success criteria, redundant explanations
166
+ - 📊 Impact: Faster LLM processing, lower token usage, clearer instructions
167
+
168
+ - **Legacy installation cleanup** - Automatic detection and removal of curl-based installations
169
+ - ✅ Detects legacy `~/.prjct-cli/` from curl install.sh (pre-v0.8.2)
170
+ - ✅ Migrates project data to npm global location automatically
171
+ - ✅ Removes legacy installation files (bin/, core/, templates/, etc.)
172
+ - ✅ Preserves user data (projects/ directory migrated safely)
173
+ - ✅ Cleans up shell PATH entries (bash/zsh/PowerShell)
174
+ - ✅ Removes legacy symlinks on Unix systems
175
+ - 🎯 **Impact**: Users on old curl installations automatically migrate to npm
176
+ - 🔧 **Windows compatible**: Handles PowerShell profiles, skips Unix-only operations
177
+
178
+ ### Changed
179
+
180
+ - **Critical timestamp rule in CLAUDE.md** - Added prominent warning about LLM timestamp limitations
181
+ - LLM knowledge cutoff is January 2025, cannot generate accurate timestamps
182
+ - All templates now include `timestamp-rule` in frontmatter
183
+ - Templates updated: feature.md, ship.md, now.md, build.md, idea.md
184
+ - Hardcoded example dates replaced with GetTimestamp()/GetDate() tool calls
185
+
186
+ - **Templates optimized** (Phase 1 - Top 7)
187
+ - suggest.md: 555 → 96 lines (82.7% reduction)
188
+ - ask.md: 386 → 73 lines (81.1% reduction)
189
+ - help.md: 348 → 90 lines (74.1% reduction)
190
+ - feature.md: 239 → 93 lines (61.1% reduction)
191
+ - init.md: 210 → 113 lines (46.2% reduction)
192
+ - ship.md: 148 → 79 lines (46.6% reduction)
193
+ - migrate-all.md: 120 → 61 lines (49.2% reduction)
194
+
195
+ - **context-builder.js** - Enhanced timestamp documentation
196
+ - Clarified that timestamps come from system clock, not LLM
197
+ - Added inline comments explaining ISO format and YYYY-MM-DD format
198
+
199
+ - **install.sh deprecation** - Enhanced messaging with legacy detection
200
+ - Now detects if user has legacy curl installation
201
+ - Shows version and location of legacy install
202
+ - Provides clear migration instructions
203
+ - Explains automatic cleanup process
204
+
205
+ - **All Spanish removed from codebase** - 100% English documentation
206
+ - Updated all JSDoc comments to English
207
+ - Removed Spanish examples from templates
208
+ - Fixed: setup.js, postinstall.js, AGENTS.md
209
+
210
+ ### Fixed
211
+
212
+ - **Session date accuracy** - All session files now use correct system date
213
+ - Previously: LLM generated timestamps (often January 1st)
214
+ - Now: System clock provides accurate timestamps via GetTimestamp() tool
215
+ - Duration calculations now accurate
216
+ - Progress tracking and analytics now reliable
217
+
218
+ - **Windows compatibility** - Full cross-platform support
219
+ - Legacy installer detector works on Windows
220
+ - Platform detection via `process.platform === 'win32'`
221
+ - PowerShell profile cleanup (instead of bash/zsh)
222
+ - Skips symlink cleanup on Windows (Unix-only feature)
223
+ - Cross-platform path handling with `os.homedir()` and `path.join()`
224
+ - Command installer already works on Windows (no changes needed)
225
+
10
226
  ## [0.8.6] - 2025-10-05
11
227
 
12
228
  ### Fixed
package/CLAUDE.md CHANGED
@@ -6,6 +6,40 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
6
6
 
7
7
  **prjct-cli** is a developer momentum tool for solo builders, indie hackers, and small teams (2-5 people). Just ship. No BS. Track progress through slash commands without meetings, ceremonies, or traditional PM overhead.
8
8
 
9
+ ## ⚠️ CRITICAL: Timestamp Management
10
+
11
+ **LLM DOES NOT KNOW CURRENT DATE/TIME** - Your knowledge cutoff is January 2025, and you cannot generate accurate timestamps.
12
+
13
+ ### Timestamp Tools (MUST USE)
14
+
15
+ **ALWAYS use these tools for ALL timestamps and dates:**
16
+
17
+ - `GetTimestamp()` → Returns current system time in ISO format (e.g., "2025-10-07T14:30:00.000Z")
18
+ - `GetDate()` → Returns current date in YYYY-MM-DD format (e.g., "2025-10-07")
19
+ - `GetDateTime()` → Returns object with timestamp, date, year, month, day
20
+
21
+ ### Rules
22
+
23
+ 1. **NEVER generate timestamps manually** - All dates like "2025-10-04" or "2025-01-01" are WRONG
24
+ 2. **ALWAYS call GetTimestamp()** when writing to session files (*.jsonl)
25
+ 3. **ALWAYS call GetDate()** when adding entries to index files (shipped.md, roadmap.md, ideas.md)
26
+ 4. **Templates have `timestamp-rule`** in frontmatter - READ AND FOLLOW IT
27
+ 5. **Session files are organized by date** - Use system date to determine correct file path
28
+
29
+ ### Example (CORRECT)
30
+
31
+ ```jsonl
32
+ {"ts":"{GetTimestamp()}","type":"feature_add","name":"auth","tasks":5}
33
+ ```
34
+
35
+ ### Example (WRONG - DO NOT DO THIS)
36
+
37
+ ```jsonl
38
+ {"ts":"2025-10-04T14:30:00Z","type":"feature_add","name":"auth","tasks":5}
39
+ ```
40
+
41
+ **Why this matters**: Without system timestamps, all session data shows January 1st dates, making analytics and progress tracking completely broken.
42
+
9
43
  ## 🚀 Real-World Workflow (Simplified)
10
44
 
11
45
  prjct follows your **actual** development workflow with 5 essential commands: