prjct-cli 0.25.2 → 0.27.0

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
@@ -1,5 +1,219 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.27.0] - 2026-01-08
4
+
5
+ ### Fix: prjct Commit Signature (CRITICAL)
6
+
7
+ **Problem:** Commits were only showing Claude's Co-Authored-By, missing the prjct signature.
8
+
9
+ **Solution:** Made prjct signature NON-NEGOTIABLE in all commit-related templates:
10
+ - `templates/commands/ship.md` - Updated commit format with HEREDOC
11
+ - `templates/commands/git.md` - Updated commit message format
12
+ - `CLAUDE.md` and `templates/global/CLAUDE.md` - Made footer CRITICAL
13
+
14
+ **Correct commit format:**
15
+ ```
16
+ feat: description
17
+
18
+ 🤖 Generated with [p/](https://www.prjct.app/)
19
+ Designed for [Claude](https://www.anthropic.com/claude)
20
+
21
+ ```
22
+
23
+ The `🤖 Generated with [p/]` line MUST appear in ALL prjct commits.
24
+
25
+ ---
26
+
27
+ ### Feature: Claude Code Skill Integration (AGENTIC)
28
+
29
+ Agents are now linked to Claude Code skills from claude-plugins.dev. **Skills are discovered and installed AGENTICALLY** - Claude searches the marketplace dynamically to find the best matching skill for each agent.
30
+
31
+ **New Capabilities:**
32
+
33
+ 1. **Agentic Skill Discovery** (`p. sync` Step 7.5)
34
+ - Searches `https://claude-plugins.dev/skills?q={searchTerm}` for each agent
35
+ - Analyzes results: prefers @anthropics, high downloads, recent updates
36
+ - Downloads skill content from GitHub source
37
+ - Installs to `~/.claude/skills/{name}.md`
38
+ - Creates custom skill if no marketplace match found
39
+ - Updates agent frontmatter with discovered skill name
40
+
41
+ 2. **Skill Invocation in Tasks** (`p. task`)
42
+ - Phase 2 (Exploration): Invokes skills based on task type
43
+ - Phase 4 (Design): Loads agent skills for domain expertise
44
+ - Example: UI tasks automatically use `/frontend-design`
45
+
46
+ 3. **Agent → Skill Mapping**
47
+
48
+ | Agent | Skill | Source |
49
+ |-------|-------|--------|
50
+ | `frontend.md` | `frontend-design` | @anthropics/claude-code-plugins |
51
+ | `uxui.md` | `frontend-design` | @anthropics/claude-code-plugins |
52
+ | `backend.md` | `javascript-typescript` | @wshobson/claude-code-workflows |
53
+ | `testing.md` | `developer-kit` | @claudebase/marketplace |
54
+ | `devops.md` | `developer-kit` | @claudebase/marketplace |
55
+ | `prjct-planner.md` | `feature-dev` | @anthropics/claude-code-plugins |
56
+ | `prjct-shipper.md` | `code-review` | @anthropics/claude-code-plugins |
57
+
58
+ **New Files:**
59
+
60
+ - `templates/config/skill-mappings.json` - Maps agents to skills
61
+ - `templates/agentic/skill-integration.md` - Integration guide
62
+
63
+ **Updated Files:**
64
+
65
+ - `templates/commands/sync.md` - Added Step 7.5 for skill installation
66
+ - `templates/commands/task.md` - Added skill invocation in Phase 2 & 4
67
+ - `templates/agentic/subagent-generation.md` - Added skills to agent format
68
+ - All subagent templates - Added `skills` field to frontmatter
69
+ - `templates/global/CLAUDE.md` - Added skill integration section
70
+ - `CLAUDE.md` - Added skill integration docs
71
+
72
+ **Why This Matters:**
73
+
74
+ - `frontend-design` provides anti-AI-slop patterns (no Inter + purple gradients)
75
+ - `code-review` ensures quality before shipping
76
+ - `javascript-typescript` provides Node.js/TypeScript best practices
77
+ - `developer-kit` provides testing and DevOps automation
78
+
79
+ **Usage:**
80
+
81
+ ```bash
82
+ p. sync # Installs skills automatically
83
+ p. task "create login form" # Uses frontend-design skill
84
+ p. ship "auth" # Uses code-review skill
85
+ ```
86
+
87
+ ---
88
+
89
+ ## [0.26.1] - 2026-01-08
90
+
91
+ ### Fix: Claude Context Efficiency (Critical)
92
+
93
+ **Problem:** After v0.26.0, Claude was losing context, not analyzing properly, not applying skills, and making poor decisions across ALL commands.
94
+
95
+ **Root Cause:**
96
+ 1. Templates were too long and procedural (~7000 lines total)
97
+ 2. `task.md` had 791 lines of pseudo-code scripts
98
+ 3. CLAUDE.md only referenced docs but Claude didn't read them proactively
99
+ 4. 11-phase workflow created too much cognitive overhead
100
+ 5. `context/CLAUDE.md` generated by sync only had stats, no behavioral rules
101
+
102
+ **Solution:**
103
+
104
+ 1. **Simplified `task.md`**: 791 → 277 lines (65% reduction)
105
+ - Removed procedural bloat
106
+ - Focus on GUIDANCE not SCRIPTS
107
+ - Claude uses intelligence to adapt, not follow rigidly
108
+
109
+ 2. **Enhanced `templates/global/CLAUDE.md`**: 75 → 177 lines
110
+ - Added "HOW TO USE PRJCT" section
111
+ - Included architecture inline (not just references)
112
+ - Added "INTELLIGENT BEHAVIOR" section
113
+ - Key insight: "Templates are GUIDANCE, not scripts"
114
+
115
+ 3. **Rich `context/CLAUDE.md` on sync**: Complete rewrite
116
+ - Added "MANDATORY RULES (DO NOT IGNORE)" section
117
+ - Added "DO vs DON'T" table for clear behavior
118
+ - Added "HOW TO USE PRJCT" with command reference
119
+ - Added "EXPECTED BEHAVIOR" guidelines
120
+ - Includes current state, available agents
121
+ - **ALWAYS OVERWRITE on sync** to ensure latest rules
122
+
123
+ 4. **Reduced workflow complexity**: 11 → 5 phases for `p. task`
124
+ - Discovery → Exploration → Questions → Design → Implementation
125
+ - Simpler mental model, less overhead
126
+
127
+ **Key Changes:**
128
+ - `p. sync` now overwrites `context/CLAUDE.md` with rich behavioral context
129
+ - Rules are NON-NEGOTIABLE and clearly marked
130
+ - Claude gets explicit DO/DON'T guidance
131
+ - All commands benefit from consistent context
132
+
133
+ 5. **TRULY Agentic Project Analysis (NEW)**
134
+ - Detects ecosystem: Ruby, Python, Go, Rust, Node.js, PHP, Java, .NET, Elixir, etc.
135
+ - Detects project type: Rails, Django, Next.js, Go API, etc.
136
+ - Analyzes ACTUAL files to determine commands
137
+ - No hardcoded rules - Claude REASONS about what it finds
138
+ - Saves to `analysis/repo-analysis.json`
139
+
140
+ 6. **Contextual CLAUDE.md (Ecosystem-Aware)**
141
+ - Shows correct commands for THIS ecosystem
142
+ - Rails: `bundle install`, `rails s`, `rspec`
143
+ - Python: `poetry install`, `pytest`
144
+ - Go: `go build`, `go test ./...`
145
+ - Node/bun: `bun install`, `bun test`
146
+ - Project-specific DO/DON'T table based on analysis
147
+
148
+ **Example: Rails project generates:**
149
+ ```
150
+ Ecosystem: Ruby | Type: Rails
151
+ Commands:
152
+ - Install: bundle install
153
+ - Dev server: rails s
154
+ - Tests: rspec
155
+ - Migrations: rails db:migrate
156
+ ```
157
+
158
+ **Example: Go project generates:**
159
+ ```
160
+ Ecosystem: Go | Type: Go API
161
+ Commands:
162
+ - Build: go build
163
+ - Tests: go test ./...
164
+ - Run: go run .
165
+ ```
166
+
167
+ **Files Changed:**
168
+ - `templates/global/CLAUDE.md` - Rich context, intelligent guidance
169
+ - `templates/commands/task.md` - Simplified, agentic approach
170
+ - `templates/commands/sync.md` - Agentic analysis + contextual CLAUDE.md
171
+ - `CLAUDE.md` - Updated project docs
172
+ - `package.json` - Version bump
173
+
174
+ ## [0.26.0] - 2026-01-01
175
+
176
+ ### Complete Development Cycle with Workflow Integrity
177
+
178
+ Major feature: 11-phase workflow system that ensures all development steps are completed. No more skipped version bumps, missing changelogs, or untracked ships.
179
+
180
+ **New Commands:**
181
+ - `p. test` - Run tests, advance from implement → test phase
182
+ - `p. review` - MCP code review + GitHub approvals, advance test → review
183
+ - `p. merge` - Merge PR to main, advance review → merge
184
+ - `p. verify` - Validate all 11 checkpoints complete, close workflow
185
+
186
+ **Workflow Phases:**
187
+ ```
188
+ p. task → (implement) → p. test → p. review → p. merge → p. ship → p. verify
189
+ ```
190
+
191
+ | Phase | Command | Action |
192
+ |-------|---------|--------|
193
+ | 1. analyze | p. task | PM agent breakdown |
194
+ | 2. branch | p. task | Create feature branch |
195
+ | 3. implement | (manual) | Write code |
196
+ | 4. test | p. test | Run tests |
197
+ | 5. review | p. review | MCP + GitHub approvals |
198
+ | 6. merge | p. merge | Merge PR |
199
+ | 7-10. ship | p. ship | Tag, release, deploy, register |
200
+ | 11. verify | p. verify | Validate & close |
201
+
202
+ **Phase Validation:**
203
+ Each command validates the workflow phase before executing. Cannot skip steps.
204
+
205
+ **Checkpoint Tracking:**
206
+ - All phases tracked in `state.json` with timestamps
207
+ - Events logged to `memory/events.jsonl`
208
+ - Full audit trail for every workflow
209
+
210
+ **Updated Commands:**
211
+ - `task.md` - Initializes workflow with 11 checkpoints
212
+ - `ship.md` - Validates merge phase, sets 4 checkpoints atomically
213
+ - `done.md` - Clarified as subtask completion
214
+ - `pause.md` - Preserves workflow state
215
+ - `resume.md` - Shows workflow phase on resume
216
+
3
217
  ## [0.25.1] - 2026-01-01
4
218
 
5
219
  ### Bug Fix: npm install symlink resolution
package/CLAUDE.md CHANGED
@@ -4,155 +4,125 @@ This file provides guidance to Claude Code when working with prjct-cli.
4
4
 
5
5
  ## Project Overview
6
6
 
7
- **prjct-cli** is a developer momentum tool. Track progress through slash commands without meetings or traditional PM overhead.
7
+ **prjct-cli** is a developer momentum tool. Track progress through natural language commands (`p. <command>`) without meetings or traditional PM overhead.
8
+
9
+ ## HOW PRJCT WORKS
10
+
11
+ When user types `p. <command>`, load the template from `templates/commands/{command}.md` and execute it **intelligently** - templates are GUIDANCE, not rigid scripts.
12
+
13
+ ```
14
+ p. sync → Analyze project, generate domain agents
15
+ p. task X → Start task with classification + breakdown
16
+ p. done → Complete current subtask
17
+ p. ship X → Ship feature with PR + version bump
18
+ ```
19
+
20
+ ---
8
21
 
9
22
  ## CRITICAL RULES
10
23
 
11
- ### 1. Path Resolution
24
+ ### 1. Path Resolution (MOST IMPORTANT)
12
25
  **ALL writes go to global storage**: `~/.prjct-cli/projects/{projectId}/`
13
- - NEVER write to `.prjct/` (config only)
14
- - NEVER write to `./` (current directory)
26
+ - **NEVER** write to `.prjct/` (config only, read-only)
27
+ - **NEVER** write to `./` (current directory)
15
28
 
16
- ### 2. Timestamps
17
- ```bash
18
- # Prefer bun, fallback to node
19
- bun -e "console.log(new Date().toISOString())" 2>/dev/null || node -e "console.log(new Date().toISOString())"
29
+ ### 2. Before Any Command
30
+ ```
31
+ 1. Read .prjct/prjct.config.json get projectId
32
+ 2. Set globalPath = ~/.prjct-cli/projects/{projectId}
33
+ 3. Execute using globalPath for all writes
34
+ 4. Log to {globalPath}/memory/events.jsonl
20
35
  ```
21
- - Result: `"2025-12-20T10:30:00.000Z"`
22
- - NEVER hardcode dates or times
23
36
 
24
- ### 3. UUIDs
37
+ ### 3. Timestamps & UUIDs
25
38
  ```bash
39
+ # Timestamp (NEVER hardcode)
40
+ bun -e "console.log(new Date().toISOString())" 2>/dev/null || node -e "console.log(new Date().toISOString())"
41
+
42
+ # UUID
26
43
  bun -e "console.log(crypto.randomUUID())" 2>/dev/null || node -e "console.log(require('crypto').randomUUID())"
27
44
  ```
28
45
 
29
- ### 4. Git Commit Footer
46
+ ### 4. Git Commit Footer (CRITICAL - ALWAYS INCLUDE)
47
+
48
+ **Every commit MUST include the prjct signature:**
49
+
30
50
  ```
31
51
  🤖 Generated with [p/](https://www.prjct.app/)
32
52
  Designed for [Claude](https://www.anthropic.com/claude)
53
+
33
54
  ```
34
55
 
35
- ## Architecture: Write-Through Pattern
56
+ **NON-NEGOTIABLE: The `🤖 Generated with [p/]` line identifies prjct-powered commits.**
57
+
58
+ ---
59
+
60
+ ## ARCHITECTURE: Write-Through Pattern
36
61
 
37
62
  ```
38
63
  User Action → Storage (JSON) → Context (MD) → Sync Events
39
64
  ```
40
65
 
41
- ### Layer System (10 layers)
42
-
43
66
  | Layer | Path | Purpose |
44
67
  |-------|------|---------|
45
- | **Storage** | `storage/*.json` | Source of truth (state, queue, shipped) |
46
- | **Context** | `context/*.md` | Claude-readable generated files |
47
- | **Core** | `core/` | Current task data |
48
- | **Progress** | `progress/` | Historical progress tracking |
49
- | **Planning** | `planning/` | Ideas, roadmap, specs, tasks |
50
- | **Analysis** | `analysis/` | Repo analysis, tech stack |
51
- | **Memory** | `memory/` | Events, patterns, semantic memories |
52
- | **Agents** | `agents/` | Domain specialists (auto-generated) |
53
- | **Sessions** | `sessions/YYYY/MM/DD/` | Daily session logs |
54
- | **Sync** | `sync/` | Backend sync events |
68
+ | **Storage** | `storage/*.json` | Source of truth |
69
+ | **Context** | `context/*.md` | Claude-readable summaries |
70
+ | **Memory** | `memory/events.jsonl` | Audit trail (append-only) |
71
+ | **Agents** | `agents/*.md` | Domain specialists |
55
72
 
56
73
  ### File Structure
57
74
  ```
58
75
  ~/.prjct-cli/projects/{projectId}/
59
- ├── project.json # Project config (authors, version)
60
76
  ├── storage/
61
- │ ├── state.json # Current task (source of truth)
62
- │ ├── queue.json # Priority queue
63
- │ └── shipped.json # Shipped features
77
+ │ ├── state.json # Current task (SOURCE OF TRUTH)
78
+ │ ├── queue.json # Task queue
79
+ │ └── shipped.json # Shipped features
64
80
  ├── context/
65
- │ ├── now.md # Generated from state.json
66
- ├── next.md # Generated from queue.json
67
- │ └── shipped.md # Generated from shipped.json
68
- ├── core/ # Current task context
69
- ├── progress/ # Historical metrics
70
- ├── planning/
71
- │ ├── ideas.json # Captured ideas
72
- │ ├── roadmap.json # Feature roadmap
73
- │ └── tasks/ # Task breakdowns
74
- ├── analysis/
75
- │ └── repo-analysis.json # Tech stack, patterns
81
+ │ ├── now.md # Current task (generated)
82
+ └── next.md # Queue (generated)
76
83
  ├── memory/
77
- ├── events.jsonl # Audit trail
78
- │ └── context.jsonl # Semantic memories
79
- ├── agents/ # Auto-generated domain specialists
80
- ├── sessions/ # Daily session logs (YYYY/MM/DD/)
84
+ └── events.jsonl # Audit trail
85
+ ├── agents/ # Domain specialists
81
86
  └── sync/
82
- ├── pending.json # Events pending sync
83
- └── last-sync.json # Last sync timestamp
87
+ └── pending.json # Backend events
84
88
  ```
85
89
 
86
- ## Core Workflow
87
-
88
- ```
89
- /p:sync → /p:task "description" → [work] → /p:done → /p:ship
90
- ```
90
+ ---
91
91
 
92
- ## Commands
92
+ ## COMMANDS
93
93
 
94
- ### Core Commands
95
- | Command | Purpose |
94
+ | Trigger | Purpose |
96
95
  |---------|---------|
97
- | `/p:init` | Initialize project with deep analysis |
98
- | `/p:idea` | Transform ideas into architectures |
99
- | `/p:task` | Start task with agentic classification + 7-phase workflow |
100
- | `/p:spec` | Create detailed specifications |
101
- | `/p:pause` | Pause active task |
102
- | `/p:resume` | Resume paused task |
103
- | `/p:next` | Show priority queue |
104
- | `/p:done` | Complete current task |
105
- | `/p:ship` | Ship with quality checks |
106
- | `/p:bug` | Report bug with auto-priority |
107
- | `/p:dash` | Unified dashboard |
108
- | `/p:sync` | Analyze repo, generate agents |
109
- | `/p:suggest` | Context-aware recommendations |
110
-
111
- ### Deprecated Commands
112
- | Command | Migration |
113
- |---------|-----------|
114
- | `/p:now` | Use `/p:task` instead |
115
- | `/p:feature` | Use `/p:task` instead |
116
- | `/p:work` | Use `/p:task` instead |
117
-
118
- ### Optional Commands
119
- | Command | Purpose |
120
- |---------|---------|
121
- | `/p:design` | System architecture design |
122
- | `/p:cleanup` | Clean temp files |
123
- | `/p:analyze` | Deep repo analysis |
124
- | `/p:undo` / `/p:redo` | Snapshot management |
125
- | `/p:git` | Smart git operations |
126
- | `/p:test` | Run tests with auto-fix |
127
-
128
- ## Natural Language Trigger
96
+ | `p. init` | Initialize project with deep analysis |
97
+ | `p. sync` | Analyze repo, generate agents |
98
+ | `p. task <desc>` | Start task with agentic classification |
99
+ | `p. done` | Complete current subtask |
100
+ | `p. ship [name]` | Ship with PR + version bump |
101
+ | `p. pause` | Pause active task |
102
+ | `p. resume` | Resume paused task |
103
+ | `p. bug <desc>` | Report bug with auto-priority |
129
104
 
130
- Messages starting with `p.` trigger commands:
105
+ ### Workflow
131
106
  ```
132
- p. task add auth/p:task "add auth"
133
- p. task fix login → /p:task "fix login"
134
- p. done → /p:done
135
- p. ship login → /p:ship "login"
107
+ p. sync → p. task "description" [work] → p. done → p. ship
136
108
  ```
137
109
 
138
- ## Template-Driven Execution
110
+ ---
139
111
 
140
- Templates define command behavior:
141
- ```
142
- templates/commands/{command}.md
143
- ```
112
+ ## INTELLIGENT BEHAVIOR
144
113
 
145
- Claude reads template executes flow → generates response.
114
+ Templates provide guidance. Use your intelligence to:
146
115
 
147
- ## Key Rules
116
+ 1. **Read before write** - Always read existing files first
117
+ 2. **Explore before coding** - Use Task(Explore) to understand codebase
118
+ 3. **Ask when uncertain** - Use AskUserQuestion to clarify
119
+ 4. **Load agents** - Read from `{globalPath}/agents/` for domain expertise
120
+ 5. **Adapt templates** - They're guidance, not rigid scripts
121
+ 6. **Log everything** - Append to memory/events.jsonl
148
122
 
149
- 1. **Read files before editing** - Never assume structure
150
- 2. **Use node commands for timestamps** - Never hardcode dates
151
- 3. **Follow template instructions** - Templates are source of truth
152
- 4. **Log to memory** - Append to `memory/events.jsonl`
153
- 5. **Suggest next actions** - Maintain user momentum
123
+ ---
154
124
 
155
- ## Output Format
125
+ ## OUTPUT FORMAT
156
126
 
157
127
  Concise responses (< 4 lines):
158
128
  ```
@@ -162,10 +132,39 @@ Concise responses (< 4 lines):
162
132
  Next: [suggested action]
163
133
  ```
164
134
 
165
- ## Documentation
135
+ ---
136
+
137
+ ## KEY RULES
138
+
139
+ 1. **Read files before editing** - Never assume structure
140
+ 2. **Use node/bun for timestamps** - Never hardcode dates
141
+ 3. **Follow template guidance** - But adapt intelligently
142
+ 4. **Log to memory** - Append to `memory/events.jsonl`
143
+ 5. **Suggest next actions** - Maintain user momentum
144
+ 6. **Use linked skills** - Agents have skills in frontmatter
145
+
146
+ ---
147
+
148
+ ## SKILL INTEGRATION (v0.27)
149
+
150
+ Agents are linked to Claude Code skills from claude-plugins.dev.
151
+
152
+ ### Agent → Skill Mapping
153
+
154
+ | Agent | Skill |
155
+ |-------|-------|
156
+ | `frontend.md` | `frontend-design` |
157
+ | `uxui.md` | `frontend-design` |
158
+ | `backend.md` | `javascript-typescript` |
159
+ | `testing.md` | `developer-kit` |
160
+ | `devops.md` | `developer-kit` |
161
+ | `prjct-planner.md` | `feature-dev` |
162
+ | `prjct-shipper.md` | `code-review` |
163
+
164
+ ### Usage
165
+
166
+ - `p. sync` installs required skills automatically
167
+ - `p. task` invokes skills based on task type
168
+ - Skills config: `{globalPath}/config/skills.json`
166
169
 
167
- For detailed information:
168
- - Architecture: `~/.prjct-cli/docs/architecture.md`
169
- - Commands: `~/.prjct-cli/docs/commands.md`
170
- - Validation: `~/.prjct-cli/docs/validation.md`
171
- - Agents: `~/.prjct-cli/docs/agents.md`
170
+ See `templates/agentic/skill-integration.md` for details.
@@ -163,6 +163,9 @@ export class CommandInstaller {
163
163
 
164
164
  constructor() {
165
165
  this.homeDir = os.homedir()
166
+ // Commands are stored in p/ subdirectory, accessed via p. trigger
167
+ // Note: Claude Code bug #2422 prevents native slash command discovery
168
+ // We use the p.md router in commands/ root instead
166
169
  this.claudeCommandsPath = path.join(this.homeDir, '.claude', 'commands', 'p')
167
170
  this.claudeConfigPath = path.join(this.homeDir, '.claude')
168
171
  this.templatesDir = path.join(__dirname, '..', '..', 'templates', 'commands')
@@ -227,6 +230,9 @@ export class CommandInstaller {
227
230
  }
228
231
 
229
232
  try {
233
+ // Install the p.md router to enable "p. task" trigger
234
+ await this.installRouter()
235
+
230
236
  // Ensure commands directory exists
231
237
  await fs.mkdir(this.claudeCommandsPath, { recursive: true })
232
238
 
@@ -378,6 +384,24 @@ export class CommandInstaller {
378
384
  }
379
385
  }
380
386
 
387
+ /**
388
+ * Install the p.md router to ~/.claude/commands/
389
+ * This enables the "p. task" natural language trigger
390
+ * Claude Code bug #2422 prevents subdirectory slash command discovery
391
+ */
392
+ async installRouter(): Promise<boolean> {
393
+ try {
394
+ const routerSource = path.join(this.templatesDir, 'p.md')
395
+ const routerDest = path.join(this.homeDir, '.claude', 'commands', 'p.md')
396
+
397
+ const content = await fs.readFile(routerSource, 'utf-8')
398
+ await fs.writeFile(routerDest, content, 'utf-8')
399
+ return true
400
+ } catch {
401
+ return false
402
+ }
403
+ }
404
+
381
405
  /**
382
406
  * Sync commands - intelligent update that detects and removes orphans
383
407
  */
@@ -395,6 +419,9 @@ export class CommandInstaller {
395
419
  }
396
420
 
397
421
  try {
422
+ // Install the p.md router to enable "p. task" trigger
423
+ await this.installRouter()
424
+
398
425
  // Ensure commands directory exists
399
426
  await fs.mkdir(this.claudeCommandsPath, { recursive: true })
400
427
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prjct-cli",
3
- "version": "0.25.2",
3
+ "version": "0.27.0",
4
4
  "description": "Built for Claude - Ship fast, track progress, stay focused. Developer momentum tool for indie hackers.",
5
5
  "main": "core/index.ts",
6
6
  "bin": {
@@ -1,3 +1,11 @@
1
+ ---
2
+ name: uxui
3
+ description: UX/UI Design Specialist. Use PROACTIVELY when user works on interfaces, components, or user experience. Priority UX > UI.
4
+ tools: Read, Write, Glob, Grep
5
+ model: sonnet
6
+ skills: [frontend-design]
7
+ ---
8
+
1
9
  # AGENT: UX/UI Design Specialist
2
10
 
3
11
  Role: User Experience and Interface Design Expert