prjct-cli 0.8.8 → 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.
@@ -1,47 +1,17 @@
1
1
  ---
2
2
  allowed-tools: [Read, Write, GetTimestamp]
3
- description: 'Start task with agent assignment'
4
- timestamp-rule: 'CRITICAL - ALWAYS use GetTimestamp() tool for id and started fields. NEVER generate timestamps manually.'
3
+ description: 'Start task'
4
+ timestamp-rule: 'GetTimestamp() for id and started'
5
5
  ---
6
6
 
7
7
  # /p:build
8
8
 
9
- ## Validation
10
-
11
- - Blocks if: `core/now.md` has active task
12
- - Error: "Complete current task first. Use /p:done"
9
+ ## Check
10
+ Block if `core/now.md` active
13
11
 
14
12
  ## Flow
15
-
16
- 1. Parse: task desc OR queue # (1-5)
17
- 2. Detect: `TaskSchema.detectAgent(task)` + complexity
18
- 3. Get: GitHub dev from `git config user.name` + remote
19
- 4. Create: task metadata with agent, complexity, estimate
20
- 5. Write: `core/now.md` with frontmatter (use GetTimestamp() for id and started)
21
-
22
- ## Frontmatter
23
-
24
- **Use GetTimestamp() tool for both id and started fields:**
25
-
26
- ```yaml
27
- ---
28
- id: task-{GetTimestamp()}
29
- agent: {detected_agent}
30
- dev: @{github_username}
31
- complexity: {trivial|simple|moderate|complex|epic}
32
- estimated: {time_range}
33
- started: {GetTimestamp()}
34
- ---
35
- {task_description}
36
- ```
13
+ 1. Parse task/# → Detect agent + complexity
14
+ 2. Write now.md: id={GetTimestamp()}, agent, started={GetTimestamp()}
37
15
 
38
16
  ## Response
39
-
40
- ```
41
- 🎯 {task}
42
- {agent_icon} {agent_name}
43
- Est: {time_estimate}
44
- Complexity: {level}
45
-
46
- /p:done when finished
47
- ```
17
+ `🎯 {task} | {agent} | Est: {time} | Done: /p:done`
@@ -1,42 +1,19 @@
1
1
  ---
2
2
  allowed-tools: [Read, Edit, Bash]
3
- description: 'Code cleanup and optimization'
3
+ description: 'Code cleanup'
4
4
  ---
5
5
 
6
6
  # /p:cleanup
7
7
 
8
- ## Usage
9
-
10
- ```
11
- /p:cleanup [--type code|imports|files|deps|all] [--dry-run]
12
- ```
13
-
14
- ## Flow
15
-
16
- 1. Parse: type + mode
17
- 2. Backup: create if needed
18
- 3. Execute: cleanup by type
19
- 4. Validate: syntax check
20
- 5. Log: `memory/cleanup-log.jsonl`
21
-
22
8
  ## Types
9
+ - **code**: Remove logs, dead code
10
+ - **imports**: Clean unused
11
+ - **files**: Remove temp/empty
12
+ - **deps**: Find unused
13
+ - **all**: Everything
23
14
 
24
- - **code**: Remove console.logs, commented code, dead code
25
- - **imports**: Remove unused, organize imports
26
- - **files**: Remove temp files, empty files
27
- - **deps**: Analyze unused dependencies
28
- - **all**: All cleanup types
15
+ ## Flow
16
+ Parse type Backup Clean → Validate → Log
29
17
 
30
18
  ## Response
31
-
32
- ```
33
- 🧹 Cleanup complete!
34
-
35
- 📊 Results:
36
- • Console.logs: {N} removed
37
- • Dead code: {N} blocks
38
- • Unused imports: {N}
39
- • Space freed: {X} MB
40
-
41
- /p:test | /p:ship
42
- ```
19
+ `🧹 Cleaned: {N} logs, {N} dead code, {N} imports | Freed: {X}MB`
@@ -0,0 +1,241 @@
1
+ ---
2
+ allowed-tools: [Read, GetTimestamp, GetDate]
3
+ description: 'Unified dashboard - project status, progress, and roadmap'
4
+ timestamp-rule: 'ALWAYS use GetTimestamp() and GetDate() tools for timestamps'
5
+ ---
6
+
7
+ # /p:dash
8
+
9
+ ## Usage
10
+
11
+ ```
12
+ /p:dash # Full dashboard (default view)
13
+ /p:dash week # Weekly progress focus
14
+ /p:dash month # Monthly progress focus
15
+ /p:dash roadmap # Roadmap and planning focus
16
+ /p:dash compact # Minimal status only
17
+ ```
18
+
19
+ ## Flow
20
+
21
+ 1. **Read all relevant files**:
22
+ - `core/stack.jsonl` → Active and paused tasks
23
+ - `core/next.md` → Priority queue
24
+ - `progress/shipped.md` → Recent ships
25
+ - `planning/roadmap.md` → Active roadmap
26
+ - `planning/ideas.md` → Recent ideas
27
+ - `progress/metrics.md` → Velocity metrics
28
+
29
+ 2. **Calculate metrics**:
30
+ - Current task and elapsed time
31
+ - Tasks completed today/week/month
32
+ - Paused tasks count
33
+ - Queue depth
34
+ - Days since last ship
35
+ - Velocity (tasks/week)
36
+ - Sprint progress percentage
37
+
38
+ 3. **Generate view based on param**:
39
+ - Default → Balanced overview
40
+ - Week/Month → Progress focused
41
+ - Roadmap → Planning focused
42
+ - Compact → Just essentials
43
+
44
+ ## Response Formats
45
+
46
+ ### Default Dashboard
47
+
48
+ ```
49
+ ┌─────────────────────────────────────────┐
50
+ │ 📊 PROJECT DASHBOARD │
51
+ ├─────────────────────────────────────────┤
52
+ │ 🎯 Current Focus │
53
+ │ {active_task} │
54
+ │ Started: {time_ago} | Agent: {agent} │
55
+ ├─────────────────────────────────────────┤
56
+ │ ⏸️ Paused Tasks: {count} │
57
+ │ 1. {task} (paused {time} ago) │
58
+ ├─────────────────────────────────────────┤
59
+ │ 📋 Priority Queue │
60
+ │ • {next_task_1} ({estimate}) │
61
+ │ • {next_task_2} ({estimate}) │
62
+ │ • {next_task_3} ({estimate}) │
63
+ │ → /p:next for full queue │
64
+ ├─────────────────────────────────────────┤
65
+ │ 📈 Progress This Week │
66
+ │ Sprint: [████████░░] 80% │
67
+ │ Completed: {N} tasks │
68
+ │ Shipped: {M} features │
69
+ │ Velocity: {V} tasks/week │
70
+ ├─────────────────────────────────────────┤
71
+ │ 🚀 Last Ship: {days} days ago │
72
+ │ {last_shipped_feature} │
73
+ ├─────────────────────────────────────────┤
74
+ │ 🗺️ Roadmap Status │
75
+ │ Phase: {current_phase} ({progress}%) │
76
+ │ Next milestone: {milestone} │
77
+ └─────────────────────────────────────────┘
78
+
79
+ 💡 Suggestions:
80
+ {contextual_suggestions_based_on_state}
81
+ ```
82
+
83
+ ### Weekly Progress View
84
+
85
+ ```
86
+ 📊 WEEKLY PROGRESS - Week of {week_start}
87
+
88
+ ## 🎯 This Week's Accomplishments
89
+
90
+ ### Completed Tasks ({count})
91
+ ✅ {task_1} - {duration}
92
+ ✅ {task_2} - {duration}
93
+ ✅ {task_3} - {duration}
94
+
95
+ ### Features Shipped ({count})
96
+ 🚀 {feature_1} - {complexity} - {date}
97
+ 🚀 {feature_2} - {complexity} - {date}
98
+
99
+ ## 📈 Metrics
100
+
101
+ **Velocity**: {tasks_per_day} tasks/day
102
+ **Focus Time**: {total_hours} hours
103
+ **Efficiency**: {completion_rate}%
104
+ **Interruptions**: {pause_count} pauses
105
+
106
+ ## 🔄 Week-over-Week
107
+
108
+ Compared to last week:
109
+ • Tasks: {trend} ({percentage}%)
110
+ • Velocity: {trend} ({percentage}%)
111
+ • Ships: {trend} ({count_diff})
112
+
113
+ ## 📋 Upcoming
114
+
115
+ Next week's priorities:
116
+ 1. {priority_1}
117
+ 2. {priority_2}
118
+ 3. {priority_3}
119
+ ```
120
+
121
+ ### Roadmap View
122
+
123
+ ```
124
+ 🗺️ ROADMAP & PLANNING
125
+
126
+ ## Current Phase: {phase_name}
127
+ Progress: [████████░░] {percentage}%
128
+ Timeline: {start_date} → {end_date}
129
+ Status: {on_track|at_risk|delayed}
130
+
131
+ ### Phase Goals
132
+ • {goal_1} - {status}
133
+ • {goal_2} - {status}
134
+ • {goal_3} - {status}
135
+
136
+ ### Completed Milestones
137
+ ✅ {milestone_1} - {date}
138
+ ✅ {milestone_2} - {date}
139
+
140
+ ### Upcoming Milestones
141
+ 🎯 {milestone_1} - {eta}
142
+ 🎯 {milestone_2} - {eta}
143
+
144
+ ## Future Phases
145
+
146
+ **Phase 2**: {name} ({estimate})
147
+ - {key_feature_1}
148
+ - {key_feature_2}
149
+
150
+ **Phase 3**: {name} ({estimate})
151
+ - {key_feature_1}
152
+ - {key_feature_2}
153
+
154
+ ## 💡 Recent Ideas ({count})
155
+ • {idea_1} - {priority}
156
+ • {idea_2} - {priority}
157
+ • {idea_3} - {priority}
158
+
159
+ → /p:idea for new ideas
160
+ → /p:feature to add to roadmap
161
+ ```
162
+
163
+ ### Compact View
164
+
165
+ ```
166
+ 🎯 {active_task} ({time_elapsed})
167
+ 📋 Queue: {queue_count} | ⏸️ Paused: {paused_count}
168
+ 📈 Week: {tasks_done} done | {velocity}/day
169
+ 🚀 Last ship: {days}d ago
170
+
171
+ → /p:done | /p:next | /p:ship
172
+ ```
173
+
174
+ ## Contextual Suggestions
175
+
176
+ Based on project state, suggest next actions:
177
+
178
+ ### If no active task
179
+ ```
180
+ 💡 Start working:
181
+ → /p:work 1 (from queue)
182
+ → /p:resume (paused task)
183
+ ```
184
+
185
+ ### If haven't shipped recently
186
+ ```
187
+ ⚠️ {days} days since last ship!
188
+ → /p:ship "{feature}"
189
+ → Find quick win in /p:next
190
+ ```
191
+
192
+ ### If velocity dropping
193
+ ```
194
+ 📉 Velocity trend down
195
+ → Check if tasks too complex
196
+ → Consider breaking down with /p:feature
197
+ ```
198
+
199
+ ### If many paused tasks
200
+ ```
201
+ ⏸️ {count} tasks paused
202
+ → Review with /p:stack
203
+ → Consider completing or dropping
204
+ ```
205
+
206
+ ## Natural Language Support
207
+
208
+ Detect intent:
209
+ - "p. dashboard" → Full dashboard
210
+ - "p. status" → Default view
211
+ - "p. progress" → Weekly view
212
+ - "p. how am I doing" → Default view
213
+ - "p. roadmap" → Roadmap view
214
+ - "p. weekly" → Weekly progress
215
+
216
+ ## ASCII Art Helpers
217
+
218
+ For progress bars:
219
+ ```
220
+ Empty: ░░░░░░░░░░
221
+ Full: ██████████
222
+ Mixed: ████████░░
223
+ ```
224
+
225
+ For borders:
226
+ ```
227
+ ┌─┬─┐
228
+ │ │ │
229
+ ├─┼─┤
230
+ └─┴─┘
231
+ ```
232
+
233
+ ## Migration Note
234
+
235
+ This command replaces:
236
+ - `/p:status` → Use `/p:dash`
237
+ - `/p:recap` → Use `/p:dash`
238
+ - `/p:progress` → Use `/p:dash week`
239
+ - `/p:roadmap` → Use `/p:dash roadmap`
240
+
241
+ Old commands will show deprecation notice and redirect here.
@@ -1,38 +1,15 @@
1
1
  ---
2
2
  allowed-tools: [Read, Write]
3
- description: 'Design architecture and APIs'
3
+ description: 'Design systems'
4
4
  ---
5
5
 
6
6
  # /p:design
7
7
 
8
- ## Usage
9
-
10
- ```
11
- /p:design [target] [--type architecture|api|component|database|flow]
12
- ```
13
-
14
- ## Flow
15
-
16
- 1. Parse: target + type
17
- 2. Generate: ASCII diagrams
18
- 3. Create: specifications
19
- 4. Save: `designs/{target}-{type}.md`
20
-
21
8
  ## Types
9
+ architecture | api | component | database | flow
22
10
 
23
- - **architecture**: System design, components, data flow
24
- - **api**: Endpoint specs, schemas, auth
25
- - **component**: Interfaces, props, state
26
- - **database**: Schema, relationships, indexes
27
- - **flow**: User journeys, workflows
11
+ ## Flow
12
+ Parse Generate ASCII diagrams → Specs → Save `designs/{target}-{type}.md`
28
13
 
29
14
  ## Response
30
-
31
- ```
32
- 🎨 Design complete!
33
-
34
- 📐 {target} - {type}
35
- 📄 Saved: designs/{target}-{type}.md
36
-
37
- /p:now "Implement {target}"
38
- ```
15
+ `🎨 {target} design | Saved: designs/{target}-{type}.md`
@@ -1,30 +1,16 @@
1
1
  ---
2
2
  allowed-tools: [Read, Write]
3
- description: 'Complete task, clear focus'
3
+ description: 'Complete task'
4
4
  ---
5
5
 
6
6
  # /p:done
7
7
 
8
- ## Validation
9
-
10
- - Requires: `.prjct/prjct.config.json` exists
11
- - Requires: `core/now.md` has content
12
- - Else: "Not working on anything. Use /p:now or /p:next"
8
+ ## Check
9
+ Requires: `core/now.md` has content
13
10
 
14
11
  ## Flow
15
-
16
- 1. Read: `core/now.md`calculate duration
17
- 2. Clear: `core/now.md`
18
- 3. Update: `progress/metrics.md`, `core/context.md`
19
- 4. Log: `memory/context.jsonl`
12
+ 1. Read `core/now.md` → calculate duration
13
+ 2. Clear now.md → Update metrics → Log
20
14
 
21
15
  ## Response
22
-
23
- ```
24
- ✅ {task} ({duration})
25
-
26
- Next?
27
- • "start {task}" → work
28
- • "ship {feature}" → celebrate
29
- • /p:now | /p:ship
30
- ```
16
+ `✅ {task} ({duration}) | Next: /p:now or /p:ship`
@@ -1,98 +1,26 @@
1
1
  ---
2
2
  allowed-tools: [Read, Write, Bash, GetTimestamp, GetDate]
3
3
  description: 'Value analysis + roadmap + task breakdown + auto-start'
4
- timestamp-rule: 'CRITICAL - ALWAYS use GetTimestamp() and GetDate() tools for ALL timestamps and dates. NEVER generate dates manually. LLM does not know current date.'
4
+ timestamp-rule: 'GetTimestamp() and GetDate() for ALL timestamps'
5
5
  ---
6
6
 
7
7
  # /p:feature
8
8
 
9
- ## Usage
10
-
11
- ```
12
- /p:feature "<description>" # Direct description
13
- /p:feature # Interactive mode with templates
14
- ```
15
-
16
- ## What It Does
17
-
18
- 1. **Value analysis**: Impact/effort/timing analysis
19
- 2. **Roadmap**: Positioning in project roadmap
20
- 3. **Task breakdown**: Smart breakdown into logical tasks
21
- 4. **Auto-start**: First task starts automatically
22
-
23
- ## Interactive Mode (No Parameters)
24
-
25
- When executed without parameters, show 6 category templates:
26
-
27
- **1. 🎨 UI/UX**: dark mode, redesign, responsiveness, animations
28
- **2. ⚡ Performance**: load time, memory leaks, code splitting, API speed
29
- **3. 🔐 Features**: authentication, payments, admin dashboard, notifications
30
- **4. 🧪 Quality**: unit tests, E2E testing, error tracking, coverage
31
- **5. 🐛 Bug Fixes**: refactoring, memory leaks, deprecated code, error handling
32
- **6. 📚 Docs**: API docs, onboarding, developer setup, examples
33
-
34
- User can: choose category number OR describe freely
35
-
36
9
  ## Flow
37
10
 
38
- 1. Analyze value (impact/effort/timing)
39
- 2. Position in roadmap
40
- 3. Break down into logical tasks (as many as needed)
41
- 4. **Write to session**: Append to `planning/sessions/{YYYY-MM}/{YYYY-MM-DD}.jsonl`
42
- 5. **Update index**: Add to `planning/roadmap.md` (lightweight, last 30 days only)
43
- 6. **Queue tasks**: Write to `core/next.md`
44
- 7. Auto-start first task
45
-
46
- ## Session Log Format
47
-
48
- Append to `planning/sessions/{YYYY-MM}/{YYYY-MM-DD}.jsonl`:
49
-
50
- **Use GetTimestamp() and GetDate() tools to get real system time:**
11
+ 1. **Value**: Impact/effort/timing → do_now/defer/blocked
12
+ 2. **Roadmap**: Add to `planning/roadmap.md` (30 days max)
13
+ 3. **Tasks**: Break down `core/next.md`
14
+ 4. **Session**: Log to `planning/sessions/{YYYY-MM}/{DD}.jsonl`
15
+ 5. **Start**: Auto-start task 1 with agent assignment
51
16
 
52
- ```jsonl
53
- {"ts":"{GetTimestamp()}","type":"feature_add","name":"{feature}","tasks":{N},"impact":"{high/med/low}","effort":"{Xh}","status":"queued"}
54
- ```
17
+ **No params**: Show 6 categories (UI/Performance/Features/Quality/Bugs/Docs)
55
18
 
56
- ## Index Update
19
+ ## Data
57
20
 
58
- Append to `planning/roadmap.md` (keep only last 30 days):
59
-
60
- **Use GetDate() tool for current date:**
61
-
62
- ```markdown
63
- ## Queued
64
- - [ ] {feature_name} ({N} tasks, {Xh} estimated) - Added {GetDate()}
65
- ```
66
-
67
- If roadmap.md > 30 days old entries, archive to `planning/archive/roadmap-{YYYY-MM}.md`
68
-
69
- ## Value Analysis Format
70
-
71
- ```
72
- Feature: {description}
73
-
74
- Value Analysis:
75
- • Impact: {high/medium/low}
76
- • Effort: {hours estimation}
77
- • Timing: {now/later/blocked_by}
78
- • Recommendation: {do_now/defer/needs_X_first}
79
- ```
21
+ Session: `{"ts":"{GetTimestamp()}","type":"feature_add","name":"{f}","tasks":{n},"impact":"{h/m/l}","effort":"{Xh}"}`
22
+ Roadmap: `- [ ] {feature} ({n} tasks, {Xh}) - {GetDate()}`
80
23
 
81
24
  ## Response
82
25
 
83
- ```
84
- ✅ Feature roadmap created!
85
-
86
- {feature_name}
87
- 📊 Value: {impact} | Effort: {hours}h
88
- ⏰ Recommendation: {timing_advice}
89
-
90
- Tasks:
91
- 1. {task_1}
92
- 2. {task_2}
93
- ...
94
-
95
- Ready to start with task 1?
96
-
97
- /p:done (when task complete) | /p:ship (when feature complete)
98
- ```
26
+ `✅ {feature} | Impact: {impact} | {n} tasks | Starting #{1}`
@@ -1,48 +1,19 @@
1
1
  ---
2
2
  allowed-tools: [Read]
3
- description: 'Interactive contextual guide - helps users based on their current state'
3
+ description: 'Contextual help'
4
4
  ---
5
5
 
6
6
  # /p:help
7
7
 
8
- ## Purpose
9
-
10
- Contextual help that analyzes project state and provides relevant guidance based on user's current situation.
11
-
12
8
  ## Flow
13
-
14
- 1. **Check project state**: Read core files if initialized
15
- 2. **Determine context**: What state is the user in?
16
- 3. **Provide relevant help**: Suggestions based on context
17
- 4. **Show examples**: Concrete examples for their situation
18
-
19
- ## Context-Based Responses
20
-
21
- ### 1. Not Initialized
22
- → Show welcome, explain `/p:init` vs `/p:init "idea"` (ARCHITECT MODE)
23
-
24
- ### 2. Empty Queue + No Active Task
25
- → Suggest: `/p:feature "{desc}"`, `/p:analyze`, `/p:roadmap`
26
- → Emphasize: Can talk naturally, no need to memorize commands
27
-
28
- ### 3. Has Active Task
29
- → Show: current task, duration, started time
30
- → Suggest: `/p:done` (finished?), `/p:stuck "{issue}"` (blocked?), `/p:next` (see queue?)
31
- → Emphasize: Focus on one task → Ship faster
32
-
33
- ### 4. Has Queue, No Active Task
34
- → Suggest: `/p:next` (see top 5), `/p:build 1` (start #1), `/p:build "{name}"` (start specific)
35
- → Show: queue size, last ship time
36
- → Tip: `/p:suggest` for personalized recommendations
37
-
38
- ### 5. Lost/Confused
39
- → Show 5 scenarios with examples:
40
- - Want to build? → `/p:feature "{desc}"`
41
- - Something broken? → `/p:bug "{desc}"`
42
- - Don't know what to do? → `/p:suggest`
43
- - See progress? → `/p:status` or `/p:recap`
44
- - Need guidance? → `/p:ask "{what you want}"`
45
- → Emphasize: Natural language works (English & Spanish)
9
+ Check state → Determine context → Show relevant help
10
+
11
+ ## Contexts
12
+ 1. **Not init**: Show `/p:init` guide
13
+ 2. **Empty**: Suggest `/p:feature` or `/p:analyze`
14
+ 3. **Active task**: Show task, suggest `/p:done`
15
+ 4. **Has queue**: Suggest `/p:work 1`
16
+ 5. **Lost**: Show all options with examples
46
17
 
47
18
  ## Response Format
48
19
 
@@ -1,37 +1,16 @@
1
1
  ---
2
- allowed-tools: [Write, GetTimestamp, GetDate]
2
+ allowed-tools: [Read, Write, GetTimestamp, GetDate]
3
3
  description: 'Quick idea capture'
4
- timestamp-rule: 'CRITICAL - ALWAYS use GetTimestamp() tool for timestamps. NEVER generate timestamps manually. LLM does not know current date/time.'
4
+ timestamp-rule: 'GetTimestamp() and GetDate() for timestamps'
5
5
  ---
6
6
 
7
7
  # /p:idea
8
8
 
9
- ## Usage
10
-
11
- ```
12
- /p:idea <text>
13
- ```
14
-
15
9
  ## Flow
16
-
17
- 1. **Append to session**: `planning/sessions/{YYYY-MM}/{YYYY-MM-DD}.jsonl` (use GetTimestamp())
18
- 2. **Update index**: Append to `planning/ideas.md` (keep only last 30 days, use GetDate())
19
- 3. If actionable → add to `core/next.md`
20
- 4. **Archive old**: If ideas.md > 30 days, move to `planning/archive/ideas-{YYYY-MM}.md`
21
-
22
- ## Session Log Format
23
-
24
- **Use GetTimestamp() tool for real system time:**
25
-
26
- ```jsonl
27
- {"ts":"{GetTimestamp()}","type":"idea_add","idea":"{text}","actionable":{true/false},"priority":"{high/med/low}"}
28
- ```
10
+ 1. Log: `planning/sessions/{YY-MM}/{DD}.jsonl`
11
+ `{"ts":"{GetTimestamp()}","type":"idea_add","idea":"{text}"}`
12
+ 2. Update: `planning/ideas.md` with {GetDate()}
13
+ 3. If actionable → `core/next.md`
29
14
 
30
15
  ## Response
31
-
32
- ```
33
- 💡 {idea}
34
- {✅ Added to queue | 📝 Saved to backlog}
35
-
36
- /p:now "{idea}" | /p:next
37
- ```
16
+ `💡 {idea} | Saved | Start: /p:feature "{idea}"`