prjct-cli 0.7.3 → 0.8.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.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,157 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.8.1] - 2025-10-05
11
+
12
+ ### Fixed
13
+
14
+ - **Critical Installation Bug** - Fixed incorrect path in `install.sh` line 315
15
+ - Changed `./core/command-installer` → `./core/infrastructure/command-installer`
16
+ - Resolves "Cannot find module" error during installation
17
+
18
+ - **Missing Method Error** - Added `installToAll()` method to command-installer
19
+ - Implements method called by install.sh line 316
20
+ - Acts as alias for `installCommands()` for backward compatibility
21
+
22
+ - **Commands Not Auto-Updating** - Implemented automatic command synchronization
23
+ - After `git pull`, commands in `~/.claude/commands/p/` now update automatically
24
+ - Added visual confirmation: "Commands synchronized ✓"
25
+
26
+ - **Missing Visual Confirmation** - Added ASCII confirmation in setup.sh
27
+ - Displays "✨ Setup Complete! ✨" after successful npm install
28
+ - Clear feedback that installation succeeded
29
+
30
+ ### Added
31
+
32
+ - **Update Script** - New `scripts/update.sh` for easy updates
33
+ - Single command to update prjct-cli: `npm run update`
34
+ - Handles: git pull → npm install → command updates
35
+ - Visual progress indicators and confirmation
36
+
37
+ - **Enhanced Logging** - Improved updateCommands() with visual feedback
38
+ - Shows "🔄 Updating commands with latest templates..."
39
+ - Displays "✅ Updated X commands" on success
40
+
41
+ ### Changed
42
+
43
+ - **Installation Flow** - Simplified and more reliable
44
+ - Auto-updates commands after git pull (no manual reinstall needed)
45
+ - Single npm install (eliminated duplication)
46
+ - Clear visual feedback at each step
47
+
48
+ ## [0.8.0] - 2025-10-05
49
+
50
+ ### Added
51
+
52
+ - **3-Tier Guided Workflow System** - Zero memorization interface for confused users
53
+ - **`/p:help`** - Contextual interactive guide that adapts to project state
54
+ - 5 different response contexts (Not initialized, Empty queue, Has active task, Has queue, Lost/confused)
55
+ - Shows relevant options based on current situation
56
+ - Educational approach with examples
57
+ - **`/p:ask`** - Intent to action translator with explanations
58
+ - Natural language understanding for any intent
59
+ - Recommends appropriate command flows with reasoning
60
+ - Works in any language (English, Spanish, etc.)
61
+ - Educational responses explain the "why" behind each recommendation
62
+ - Intent categories: Feature Development, Performance, Bug Fixing, Design, Lost/Confused
63
+ - **`/p:suggest`** - Context-aware smart recommendations
64
+ - Analyzes project state (active tasks, queue, velocity, momentum)
65
+ - Detects patterns: stuck tasks, losing momentum, over-planning, ready to work
66
+ - Provides urgency levels and actionable next steps
67
+ - Scenario-based suggestions with clear actions
68
+ - Updated from 9 to 13 core commands
69
+ - Version bumped to 0.7.0 → 0.8.0
70
+
71
+ - **Enhanced Feature Templates** - Quick start templates for common workflows
72
+ - 6 interactive template categories: UI/UX, Performance, Features, Quality, Bugs, Docs
73
+ - Each category includes examples and natural language alternatives
74
+ - Integrated into `/p:feature` command for faster feature initialization
75
+
76
+ - **Enhanced Onboarding** - Conversational first-time experience
77
+ - Updated `/p:init` with "What do you want to do first?" section
78
+ - 5 clear options with examples and natural language alternatives
79
+ - Guides users to appropriate commands based on their needs
80
+
81
+ ### Changed
82
+
83
+ - **Website Transformation** - Complete shift from "memorize commands" to "conversational/agentic"
84
+
85
+ - **Hero Section** (`Hero.tsx`)
86
+ - Changed layout from centered to 60/40 asymmetric grid (better space utilization on LG screens)
87
+ - Updated messaging: "Just talk: 'p. I want to add auth' → Claude handles the rest"
88
+ - Added 3 conversational example cards showing real usage patterns
89
+ - Removed sequential command flow in favor of natural language examples
90
+ - Better visual hierarchy with left column (60%) for main content, right column (40%) for examples
91
+
92
+ - **Terminal Demo** (`Terminal.tsx`)
93
+ - Replaced 4 rotating examples with single comprehensive flow
94
+ - Shows complete journey: Installation → Setup → Usage → Progress → Shipping
95
+ - Demonstrates real `p.` trigger usage throughout
96
+ - Improved timing: 3500ms between steps (was 1500ms) for better comprehension
97
+ - 12s restart delay (was 10s) for proper reading time
98
+ - Title: "See It In Action - From installation to shipping"
99
+
100
+ - **How It Works Section** (`HowItWorks.tsx`)
101
+ - New 3-step visual flow: Talk Naturally → Claude Understands → You Ship
102
+ - Removed misleading chat-style UI examples (product is terminal-only)
103
+ - Clean, honest representation of terminal-based workflow
104
+ - Icon-based visual guide with examples
105
+
106
+ - **Command Guide** (`CommandGuide.tsx`)
107
+ - Added 2 priority scenarios at top:
108
+ - "I'm new/lost/don't know what to do" → `/p:help`, `/p:ask`, `/p:suggest`
109
+ - "I know what I want but not how to do it" → `/p:ask` (preferred)
110
+ - Updated Quick Decision Matrix to prioritize help commands
111
+ - All examples show `p.` trigger as preferred option with `/p:*` alternatives
112
+
113
+ - **Commands Page** (`Commands.tsx`)
114
+ - Added prominent "Start Here - No Memorization Needed" section
115
+ - Highlights 3 essential commands: `/p:help`, `/p:ask`, `/p:suggest`
116
+ - Moved all specific commands to "Advanced Reference" section
117
+ - Clear message: "You only need these 3 commands. Everything else? Just talk naturally."
118
+
119
+ - **Command Registry Updates** (`command-registry.js`)
120
+ - Added `ask` and `suggest` to core commands
121
+ - Updated version from 0.7.0 to 0.8.0
122
+ - Increased core command count from 9 to 13
123
+ - Enhanced metadata for new help system commands
124
+
125
+ - **Documentation Updates** (`CLAUDE.md`)
126
+ - Added complete "Guided Workflow System" section
127
+ - Documented 3-tier help architecture with examples
128
+ - Updated natural language system philosophy
129
+ - Added context validation patterns and examples
130
+
131
+ ### Philosophy Shift
132
+
133
+ This release represents a fundamental shift in how users interact with prjct:
134
+
135
+ **Before (0.7.x)**: "Learn these sequential commands: `/p:feature → /p:done → /p:ship`"
136
+ **After (0.8.0)**: "Just talk: `p. I want to add auth` → Claude handles the rest"
137
+
138
+ The 3-tier help system solves the core user frustration: **users know WHAT they want but don't know HOW to execute it**. Now they don't need to - they just describe their intent and the system guides them.
139
+
140
+ ### Technical Details
141
+
142
+ - **New Templates**:
143
+ - `templates/commands/ask.md` - Intent translation with educational responses
144
+ - `templates/commands/suggest.md` - Context-aware recommendations
145
+ - Updated `templates/commands/help.md` - Contextual interactive guide
146
+ - Updated `templates/commands/init.md` - Conversational onboarding
147
+ - Updated `templates/commands/feature.md` - Interactive mode with templates
148
+
149
+ - **Website Optimization**:
150
+ - Hero grid: `lg:grid-cols-5` with `lg:col-span-3` (60%) + `lg:col-span-2` (40%)
151
+ - Terminal timing: 3500ms step delay, 12s restart delay
152
+ - Removed chat UI mockups to avoid false expectations
153
+ - Consistent `p.` trigger examples throughout
154
+
155
+ - **User Experience**:
156
+ - Zero memorization required for basic usage
157
+ - Natural language works in any language (English, Spanish, etc.)
158
+ - Context-aware help adapts to project state
159
+ - Educational responses explain the "why" behind recommendations
160
+
10
161
  ## [0.7.3] - 2025-10-05
11
162
 
12
163
  ### Added
package/CLAUDE.md CHANGED
@@ -504,6 +504,213 @@ User: "/p:workflow"
504
504
 
505
505
  **Key Difference**: `/p:idea` captures NEW ideas. `/p:workflow` manages EXISTING multi-step tasks.
506
506
 
507
+ ## Guided Workflow System
508
+
509
+ **NEW: Enhanced usability for confused users** - The biggest user frustration is knowing WHAT they want but not HOW to do it with prjct.
510
+
511
+ ### The Problem
512
+
513
+ Users frequently ask:
514
+ - "How do I start?"
515
+ - "What command should I use?"
516
+ - "I want to improve performance, but how?"
517
+ - "What should I do next?"
518
+
519
+ They have clear **INTENT** but struggle with **EXECUTION**.
520
+
521
+ ### The Solution: 3-Tier Help System
522
+
523
+ #### Tier 1: `/p:help` - Contextual Interactive Guide
524
+
525
+ **Purpose**: Adapts to user's current state and provides relevant guidance
526
+
527
+ **Behavior**:
528
+ - Reads project state (active task, queue, last ship, etc.)
529
+ - Shows different help based on context:
530
+ - Not initialized → Guides setup
531
+ - Empty queue → Suggests adding features
532
+ - Active task → Shows completion options
533
+ - Has queue → Recommends starting work
534
+ - Lost/confused → Comprehensive guide
535
+
536
+ **Example**:
537
+ ```
538
+ User in state: "No active task, 5 tasks in queue"
539
+
540
+ /p:help shows:
541
+ → Start working (recommended)
542
+ → See priority queue
543
+ → Add new feature
544
+ → Check progress
545
+
546
+ With examples and natural language alternatives
547
+ ```
548
+
549
+ #### Tier 2: `/p:ask` - Intent to Action Translator
550
+
551
+ **Purpose**: Translate vague natural language intent into specific command flows
552
+
553
+ **Behavior**:
554
+ - User describes what they want in natural language
555
+ - Claude analyzes intent and context
556
+ - Recommends step-by-step command flow
557
+ - Explains WHY each command
558
+ - Offers interactive confirmation
559
+ - Educational - teaches the system
560
+
561
+ **Example**:
562
+ ```
563
+ User: /p:ask "I want to improve performance and fix memory leaks"
564
+
565
+ Claude responds:
566
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━
567
+ 🎯 I understand: performance optimization + memory leak fixes
568
+
569
+ 📊 YOUR CONTEXT:
570
+ • No active task
571
+ • 3 tasks in queue
572
+ • Last ship: 2 days ago
573
+
574
+ 💡 RECOMMENDED FLOW:
575
+
576
+ 1. /p:feature "optimize performance and memory leaks"
577
+ → Value analysis (Impact: HIGH, Effort: 8h)
578
+ → Task breakdown:
579
+ • Setup profiler
580
+ • Identify memory leaks
581
+ • Optimize re-renders
582
+ • Code splitting
583
+ • Measure improvements
584
+
585
+ 2. /p:build 1 → Start with profiling
586
+
587
+ 3. /p:done → After each task
588
+
589
+ 4. /p:ship "performance optimization"
590
+
591
+ ✨ WHY THIS FLOW:
592
+ → /p:feature: Analyzes value first, creates roadmap
593
+ → /p:build: Focus on one task, track time
594
+ → /p:done: Register progress, maintain momentum
595
+ → /p:ship: Commit + celebrate win
596
+
597
+ Ready to start?
598
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━
599
+ ```
600
+
601
+ **Key Features**:
602
+ - Works in any language (English, Spanish, etc.)
603
+ - No execution until user confirms
604
+ - Shows command + natural language alternatives
605
+ - Educational explanations
606
+ - Contextual (checks project state first)
607
+
608
+ #### Tier 3: `/p:suggest` - Smart Recommendations
609
+
610
+ **Purpose**: Analyze project state and suggest next best actions
611
+
612
+ **Behavior**:
613
+ - Reads all project state files
614
+ - Calculates metrics (velocity, days since ship, queue size, etc.)
615
+ - Detects patterns (stuck task, losing momentum, over-planning, etc.)
616
+ - Provides urgency-based recommendations
617
+ - Motivational but honest
618
+
619
+ **Scenarios Detected**:
620
+ 1. **Ready to work** → Suggests starting top priority task
621
+ 2. **Long-running task** → Checks if stuck, suggests help
622
+ 3. **No ships recently** → Urgency alert, suggests shipping something small
623
+ 4. **Empty queue** → Suggests planning (feature/analyze/roadmap)
624
+ 5. **High velocity** → Positive reinforcement, quality suggestions
625
+ 6. **Queue too large** → Warns about over-planning, suggests executing
626
+
627
+ **Example**:
628
+ ```
629
+ User: /p:suggest
630
+
631
+ Claude analyzes:
632
+ - No active task
633
+ - 8 tasks in queue
634
+ - Last ship: 5 days ago
635
+ - Velocity: 0.4 features/week
636
+
637
+ Response:
638
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━
639
+ 💡 PERSONALIZED SUGGESTIONS
640
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━
641
+
642
+ 📊 ANALYSIS:
643
+ • 5 days since last ship ⚠️
644
+ • Queue: 8 tasks
645
+ • Velocity: Low
646
+
647
+ 🔥 URGENT: Momentum is dropping!
648
+
649
+ 🎯 RECOMMENDATIONS:
650
+
651
+ 1. ⚡ SHIP SOMETHING TODAY
652
+ → /p:next (find quick win)
653
+ → /p:build {easiest task}
654
+ → /p:done → /p:ship SAME DAY
655
+
656
+ 2. 🎯 STOP PLANNING, START DOING
657
+ → 8 tasks is too many
658
+ → Ship > Plan
659
+
660
+ 3. 💡 MAINTAIN MOMENTUM
661
+ → Ship every 1-2 days
662
+ → Small wins > Big tasks
663
+
664
+ Momentum = Motivation. Let's ship! 🚀
665
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━
666
+ ```
667
+
668
+ ### Enhanced Onboarding
669
+
670
+ **After `/p:init`**: Conversational "What do you want to do first?" section
671
+ - 5 clear options with examples
672
+ - Natural language alternatives
673
+ - No overwhelming command lists
674
+ - Guides to action immediately
675
+
676
+ **After `/p:feature` (no params)**: Interactive template mode
677
+ - 6 categories (UI/UX, Performance, Features, Quality, Bugs, Docs)
678
+ - Examples for each category
679
+ - Impact/effort estimates
680
+ - User can describe freely OR choose template
681
+
682
+ ### Integration with Natural Language System
683
+
684
+ All help commands work seamlessly with the "p." trigger and natural language detection:
685
+
686
+ ```
687
+ User: "p. I don't know what to do"
688
+ → Detects confusion → Executes /p:suggest
689
+
690
+ User: "p. how do I start?"
691
+ → Detects help need → Executes /p:help
692
+
693
+ User: "p. I want to optimize performance"
694
+ → Detects feature intent → Shows /p:ask flow OR /p:feature
695
+ ```
696
+
697
+ ### Key Principles
698
+
699
+ 1. **Never leave users confused** - Always provide clear next steps
700
+ 2. **Educational, not prescriptive** - Teach the system while guiding
701
+ 3. **Contextual, not generic** - Different help for different states
702
+ 4. **Natural language first** - Commands as alternative, not requirement
703
+ 5. **Momentum-focused** - Push toward action, not endless planning
704
+
705
+ ### Success Metrics
706
+
707
+ After using the guided system, users should:
708
+ - ✅ Know exactly what command to use
709
+ - ✅ Understand WHY that command
710
+ - ✅ Feel confident to proceed
711
+ - ✅ Learn the system through use
712
+ - ✅ Never feel stuck or frustrated
713
+
507
714
  ### Available Commands
508
715
 
509
716
  The following commands are available in Claude Code (commands marked with ⚠️ are not yet implemented):
@@ -544,11 +751,21 @@ The following commands are available in Claude Code (commands marked with ⚠️
544
751
  - **Empty dir, no idea**: Asks for idea
545
752
  - **Empty dir + idea**: ARCHITECT MODE (conversational discovery → generates plan)
546
753
  - **Existing code**: Regular init + suggests analyze
754
+ - `/p:help` - Interactive contextual guide (adapts to project state)
755
+ - `/p:ask "<what you want to do>"` - Conversational intent to action translator
756
+ - Natural language understanding
757
+ - Recommends command flow with explanations
758
+ - Works in any language
759
+ - Educational and interactive
760
+ - `/p:suggest` - Context-aware next steps suggestions
761
+ - Analyzes project state and momentum
762
+ - Detects urgencies and patterns
763
+ - Personalized recommendations
764
+ - Helps maintain momentum
547
765
  - `/p:stuck <issue description>` - Get contextual help with problems
548
766
  - `/p:analyze` - Analyze repository and sync tasks
549
767
  - `/p:sync` - Sync project state and update workflow agents
550
768
  - ⚠️ `/p:fix [error]` - Quick troubleshooting and automatic fixes
551
- - ⚠️ `/p:help` - Interactive guide - talk naturally, no memorization needed
552
769
 
553
770
  #### Version Control
554
771
 
@@ -558,7 +775,7 @@ The following commands are available in Claude Code (commands marked with ⚠️
558
775
 
559
776
  - ⚠️ `/p:test` - Run tests and auto-fix simple failures
560
777
 
561
- **Total: 23 implemented, 29 total commands**
778
+ **Total: 26 implemented, 30 total commands** (✅ +3 new: /p:help, /p:ask, /p:suggest)
562
779
  **Status**: Check `core/command-registry.js` for current implementation status
563
780
 
564
781
  ## Agent Generation
@@ -8,11 +8,11 @@
8
8
  * - CLAUDE.md (AI assistant instructions)
9
9
  * - scripts/validate-commands.js (validation)
10
10
  *
11
- * @version 0.6.0 - Simplified workflow with 9 core commands
11
+ * @version 0.8.0 - Conversational interface with zero memorization
12
12
  */
13
13
 
14
14
  const COMMANDS = [
15
- // ===== CORE WORKFLOW COMMANDS (9 essential) =====
15
+ // ===== CORE WORKFLOW COMMANDS (13 essential) =====
16
16
 
17
17
  // 1. Initialize
18
18
  {
@@ -267,7 +267,55 @@ const COMMANDS = [
267
267
  ],
268
268
  },
269
269
 
270
- // 11. Architect Execute
270
+ // 11. Ask - Intent to Action
271
+ {
272
+ name: 'ask',
273
+ category: 'core',
274
+ description: 'Conversational intent to action translator',
275
+ usage: {
276
+ claude: '/p:ask "what you want to do"',
277
+ terminal: 'prjct ask "what you want to do"',
278
+ },
279
+ params: '<description>',
280
+ implemented: true,
281
+ hasTemplate: true,
282
+ icon: 'MessageCircle',
283
+ requiresInit: false, // Can work before init to guide setup
284
+ blockingRules: null,
285
+ features: [
286
+ 'Natural language understanding',
287
+ 'Recommends command flow',
288
+ 'Educational explanations',
289
+ 'Interactive confirmation',
290
+ 'Works in any language',
291
+ ],
292
+ },
293
+
294
+ // 12. Suggest - Context-Aware Recommendations
295
+ {
296
+ name: 'suggest',
297
+ category: 'core',
298
+ description: 'Context-aware next steps suggestions',
299
+ usage: {
300
+ claude: '/p:suggest',
301
+ terminal: 'prjct suggest',
302
+ },
303
+ params: null,
304
+ implemented: true,
305
+ hasTemplate: true,
306
+ icon: 'Lightbulb',
307
+ requiresInit: true,
308
+ blockingRules: null,
309
+ features: [
310
+ 'Analyzes project state',
311
+ 'Recommends actions',
312
+ 'Urgency detection',
313
+ 'Momentum tracking',
314
+ 'Personalized suggestions',
315
+ ],
316
+ },
317
+
318
+ // 13. Architect Execute
271
319
  {
272
320
  name: 'architect',
273
321
  category: 'core',
@@ -446,7 +494,7 @@ const CATEGORIES = {
446
494
  core: {
447
495
  title: 'Core Workflow',
448
496
  icon: 'Zap',
449
- description: '9 essential commands for daily development workflow',
497
+ description: '13 essential commands for daily development workflow',
450
498
  order: 1,
451
499
  },
452
500
  optional: {
@@ -200,6 +200,20 @@ class CommandInstaller {
200
200
  */
201
201
  async updateCommands() {
202
202
  // Simply reinstall - will overwrite with latest templates
203
+ console.log('🔄 Updating commands with latest templates...')
204
+ const result = await this.installCommands()
205
+ if (result.success) {
206
+ console.log(`✅ Updated ${result.installed.length} commands`)
207
+ }
208
+ return result
209
+ }
210
+
211
+ /**
212
+ * Install to all detected editors (alias for installCommands)
213
+ * @param {boolean} interactive - Whether to show interactive prompts
214
+ * @returns {Promise<Object>} Installation results
215
+ */
216
+ async installToAll(interactive = false) {
203
217
  return await this.installCommands()
204
218
  }
205
219
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prjct-cli",
3
- "version": "0.7.3",
3
+ "version": "0.8.1",
4
4
  "description": "Built for Claude - Ship fast, track progress, stay focused. Developer momentum tool for indie hackers.",
5
5
  "main": "core/index.js",
6
6
  "bin": {
@@ -12,6 +12,7 @@
12
12
  },
13
13
  "scripts": {
14
14
  "install-global": "./scripts/install.sh",
15
+ "update": "./scripts/update.sh",
15
16
  "test": "vitest run --workspace=vitest.workspace.js",
16
17
  "test:watch": "vitest --workspace=vitest.workspace.js",
17
18
  "test:coverage": "vitest run --coverage --workspace=vitest.workspace.js",
@@ -105,7 +105,7 @@ echo -e " ${BOLD}${CYAN}██████╔╝██████╔╝
105
105
  echo -e " ${BOLD}${CYAN}██╔═══╝ ██╔══██╗██ ██║██║ ██║${NC}"
106
106
  echo -e " ${BOLD}${CYAN}██║ ██║ ██║╚█████╔╝╚██████╗ ██║${NC}"
107
107
  echo -e " ${BOLD}${CYAN}╚═╝ ╚═╝ ╚═╝ ╚════╝ ╚═════╝ ╚═╝${NC}"
108
- echo -e " ${BOLD}${CYAN}prjct${NC}${MAGENTA}/${NC}${GREEN}cli${NC} ${DIM}${WHITE}v0.3.1${NC}"
108
+ echo -e " ${BOLD}${CYAN}prjct${NC}${MAGENTA}/${NC}${GREEN}cli${NC} ${DIM}${WHITE}v0.8.1${NC}"
109
109
  echo ""
110
110
  echo -e " ${DIM}Turn ideas into AI-ready roadmaps${NC}"
111
111
  echo ""
@@ -244,6 +244,18 @@ if [ -d "$INSTALL_DIR" ]; then
244
244
  ) &
245
245
  spin $!
246
246
  echo -e " ${GREEN}${CHECK}${NC} Updated to v${REMOTE_VERSION}"
247
+
248
+ # Auto-update commands after git pull
249
+ printf " ${ARROW} Updating commands"
250
+ (
251
+ cd "$INSTALL_DIR"
252
+ node -e "
253
+ const installer = require('./core/infrastructure/command-installer');
254
+ installer.updateCommands();
255
+ " > /dev/null 2>&1
256
+ ) &
257
+ spin $!
258
+ echo -e " ${GREEN}${CHECK}${NC} Commands synchronized"
247
259
  else
248
260
  printf " ${ARROW} Cloning repository"
249
261
  (
@@ -312,7 +324,7 @@ else
312
324
  printf " ${ARROW} Auto-installing to all detected editors...\n"
313
325
 
314
326
  INSTALL_RESULT=$(node -e "
315
- const installer = require('./core/command-installer');
327
+ const installer = require('./core/infrastructure/command-installer');
316
328
  installer.installToAll(false).then(result => {
317
329
  console.log('__RESULT_START__');
318
330
  console.log(JSON.stringify(result));