prjct-cli 1.45.5 → 1.45.7

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 (136) hide show
  1. package/CHANGELOG.md +30 -4
  2. package/dist/bin/prjct-core.mjs +124 -124
  3. package/dist/cli/jira.mjs +1 -1
  4. package/dist/cli/linear.mjs +1 -1
  5. package/dist/templates.json +1 -1
  6. package/package.json +2 -1
  7. package/templates/agentic/agent-routing.md +45 -0
  8. package/templates/agentic/agents/uxui.md +63 -0
  9. package/templates/agentic/checklist-routing.md +98 -0
  10. package/templates/agentic/orchestrator.md +68 -0
  11. package/templates/agentic/task-fragmentation.md +89 -0
  12. package/templates/agents/AGENTS.md +67 -0
  13. package/templates/analysis/analyze.md +84 -0
  14. package/templates/analysis/patterns.md +60 -0
  15. package/templates/antigravity/SKILL.md +39 -0
  16. package/templates/architect/discovery.md +67 -0
  17. package/templates/architect/phases.md +59 -0
  18. package/templates/baseline/anti-patterns/nextjs.json +18 -0
  19. package/templates/baseline/anti-patterns/react.json +18 -0
  20. package/templates/baseline/anti-patterns/typescript.json +18 -0
  21. package/templates/baseline/patterns/nextjs.json +18 -0
  22. package/templates/baseline/patterns/react.json +18 -0
  23. package/templates/baseline/patterns/typescript.json +18 -0
  24. package/templates/checklists/architecture.md +28 -0
  25. package/templates/checklists/code-quality.md +28 -0
  26. package/templates/checklists/data.md +33 -0
  27. package/templates/checklists/documentation.md +33 -0
  28. package/templates/checklists/infrastructure.md +33 -0
  29. package/templates/checklists/performance.md +33 -0
  30. package/templates/checklists/security.md +33 -0
  31. package/templates/checklists/testing.md +33 -0
  32. package/templates/checklists/ux-ui.md +37 -0
  33. package/templates/codex/SKILL.md +36 -0
  34. package/templates/commands/analyze.md +11 -0
  35. package/templates/commands/auth.md +15 -0
  36. package/templates/commands/bug.md +28 -0
  37. package/templates/commands/cleanup.md +11 -0
  38. package/templates/commands/dash.md +16 -0
  39. package/templates/commands/design.md +11 -0
  40. package/templates/commands/done.md +33 -0
  41. package/templates/commands/enrich.md +20 -0
  42. package/templates/commands/git.md +17 -0
  43. package/templates/commands/history.md +13 -0
  44. package/templates/commands/idea.md +13 -0
  45. package/templates/commands/impact.md +13 -0
  46. package/templates/commands/init.md +11 -0
  47. package/templates/commands/jira.md +88 -0
  48. package/templates/commands/learnings.md +11 -0
  49. package/templates/commands/linear.md +82 -0
  50. package/templates/commands/merge.md +25 -0
  51. package/templates/commands/next.md +12 -0
  52. package/templates/commands/p.md +62 -0
  53. package/templates/commands/p.toml +37 -0
  54. package/templates/commands/pause.md +16 -0
  55. package/templates/commands/plan.md +13 -0
  56. package/templates/commands/prd.md +21 -0
  57. package/templates/commands/resume.md +12 -0
  58. package/templates/commands/review.md +20 -0
  59. package/templates/commands/serve.md +11 -0
  60. package/templates/commands/sessions.md +13 -0
  61. package/templates/commands/setup.md +11 -0
  62. package/templates/commands/ship.md +46 -0
  63. package/templates/commands/skill.md +13 -0
  64. package/templates/commands/spec.md +20 -0
  65. package/templates/commands/status.md +11 -0
  66. package/templates/commands/sync.md +23 -0
  67. package/templates/commands/task.md +52 -0
  68. package/templates/commands/test.md +22 -0
  69. package/templates/commands/update.md +11 -0
  70. package/templates/commands/verify.md +11 -0
  71. package/templates/commands/workflow.md +69 -0
  72. package/templates/config/skill-mappings.json +82 -0
  73. package/templates/context/dashboard.md +251 -0
  74. package/templates/context/roadmap.md +221 -0
  75. package/templates/cursor/commands/bug.md +8 -0
  76. package/templates/cursor/commands/done.md +4 -0
  77. package/templates/cursor/commands/pause.md +6 -0
  78. package/templates/cursor/commands/resume.md +4 -0
  79. package/templates/cursor/commands/ship.md +8 -0
  80. package/templates/cursor/commands/sync.md +4 -0
  81. package/templates/cursor/commands/task.md +8 -0
  82. package/templates/cursor/p.md +29 -0
  83. package/templates/cursor/router.mdc +28 -0
  84. package/templates/design/api.md +95 -0
  85. package/templates/design/architecture.md +77 -0
  86. package/templates/design/component.md +89 -0
  87. package/templates/design/database.md +78 -0
  88. package/templates/design/flow.md +94 -0
  89. package/templates/global/ANTIGRAVITY.md +17 -0
  90. package/templates/global/CLAUDE.md +20 -0
  91. package/templates/global/CURSOR.mdc +20 -0
  92. package/templates/global/GEMINI.md +17 -0
  93. package/templates/global/STORAGE-SPEC.md +328 -0
  94. package/templates/global/WINDSURF.md +22 -0
  95. package/templates/global/modules/CLAUDE-commands.md +1 -0
  96. package/templates/global/modules/CLAUDE-core.md +16 -0
  97. package/templates/global/modules/CLAUDE-git.md +1 -0
  98. package/templates/global/modules/CLAUDE-intelligence.md +1 -0
  99. package/templates/global/modules/CLAUDE-storage.md +1 -0
  100. package/templates/global/modules/module-config.json +12 -0
  101. package/templates/mcp-config.json +29 -0
  102. package/templates/permissions/default.jsonc +60 -0
  103. package/templates/permissions/permissive.jsonc +49 -0
  104. package/templates/permissions/strict.jsonc +58 -0
  105. package/templates/planning-methodology.md +195 -0
  106. package/templates/skills/code-review.md +47 -0
  107. package/templates/skills/debug.md +61 -0
  108. package/templates/skills/refactor.md +47 -0
  109. package/templates/subagents/agent-base.md +21 -0
  110. package/templates/subagents/domain/backend.md +109 -0
  111. package/templates/subagents/domain/database.md +121 -0
  112. package/templates/subagents/domain/devops.md +152 -0
  113. package/templates/subagents/domain/frontend.md +103 -0
  114. package/templates/subagents/domain/testing.md +169 -0
  115. package/templates/subagents/pm-expert.md +366 -0
  116. package/templates/subagents/workflow/chief-architect.md +653 -0
  117. package/templates/subagents/workflow/prjct-planner.md +120 -0
  118. package/templates/subagents/workflow/prjct-shipper.md +175 -0
  119. package/templates/subagents/workflow/prjct-workflow.md +82 -0
  120. package/templates/tools/bash.txt +22 -0
  121. package/templates/tools/edit.txt +18 -0
  122. package/templates/tools/glob.txt +19 -0
  123. package/templates/tools/grep.txt +21 -0
  124. package/templates/tools/read.txt +14 -0
  125. package/templates/tools/task.txt +20 -0
  126. package/templates/tools/webfetch.txt +16 -0
  127. package/templates/tools/websearch.txt +18 -0
  128. package/templates/tools/write.txt +17 -0
  129. package/templates/windsurf/router.md +28 -0
  130. package/templates/windsurf/workflows/bug.md +8 -0
  131. package/templates/windsurf/workflows/done.md +4 -0
  132. package/templates/windsurf/workflows/pause.md +4 -0
  133. package/templates/windsurf/workflows/resume.md +4 -0
  134. package/templates/windsurf/workflows/ship.md +8 -0
  135. package/templates/windsurf/workflows/sync.md +4 -0
  136. package/templates/windsurf/workflows/task.md +8 -0
@@ -0,0 +1,366 @@
1
+ ---
2
+ name: PM Expert
3
+ role: Product-Technical Bridge Agent
4
+ triggers: [enrichment, task-creation, dependency-analysis]
5
+ skills: [scrum, agile, user-stories, technical-analysis]
6
+ ---
7
+
8
+ # PM Expert Agent
9
+
10
+ **Mission:** Transform minimal product descriptions into complete technical tasks, following Agile/Scrum best practices, and detecting dependencies before execution.
11
+
12
+ ## Problem It Solves
13
+
14
+ | Before | After |
15
+ |--------|-------|
16
+ | PO writes: "Login broken" | Complete task with technical context |
17
+ | Dev guesses what to do | Clear instructions for LLM |
18
+ | Dependencies discovered late | Dependencies detected before starting |
19
+ | PM can't see real progress | Real-time dashboard |
20
+ | See all team issues (noise) | **Only your assigned issues** |
21
+
22
+ ---
23
+
24
+ ## Per-Project Configuration
25
+
26
+ Each project can have a **different issue tracker**. Configuration is stored per-project.
27
+
28
+ ```
29
+ ~/.prjct-cli/projects/
30
+ ├── project-a/ # Uses Linear
31
+ │ └── project.json → issueTracker: { provider: 'linear', teamKey: 'ENG' }
32
+ ├── project-b/ # Uses GitHub Issues
33
+ │ └── project.json → issueTracker: { provider: 'github', repo: 'org/repo' }
34
+ ├── project-c/ # Uses Jira
35
+ │ └── project.json → issueTracker: { provider: 'jira', projectKey: 'PROJ' }
36
+ └── project-d/ # No issue tracker (standalone)
37
+ └── project.json → issueTracker: null
38
+ ```
39
+
40
+ ### Supported Providers
41
+
42
+ | Provider | Status | Auth |
43
+ |----------|--------|------|
44
+ | Linear | ✅ Ready | MCP (OAuth) |
45
+ | GitHub Issues | 🔜 Soon | `GITHUB_TOKEN` |
46
+ | Jira | 🔜 Soon | MCP (OAuth) |
47
+ | Monday | 🔜 Soon | `MONDAY_API_KEY` |
48
+ | None | ✅ Ready | - |
49
+
50
+ ### Setup per Project
51
+
52
+ ```bash
53
+ # In project directory
54
+ p. linear setup # Configure Linear for THIS project
55
+ p. github setup # Configure GitHub for THIS project
56
+ p. jira setup # Configure Jira for THIS project
57
+ ```
58
+
59
+ ---
60
+
61
+ ## User-Scoped View
62
+
63
+ **Critical:** prjct only shows issues assigned to YOU. No noise from other team members' work.
64
+
65
+ ```
66
+ ┌────────────────────────────────────────────────────────────┐
67
+ │ Your Issues @jlopez │
68
+ ├────────────────────────────────────────────────────────────┤
69
+ │ │
70
+ │ ✓ Only issues assigned to you │
71
+ │ ✓ Filtered by your default team │
72
+ │ ✓ Sorted by priority │
73
+ │ │
74
+ │ ENG-123 🔴 High Login broken on mobile │
75
+ │ ENG-456 🟡 Medium Add password reset │
76
+ │ ENG-789 🟢 Low Update footer links │
77
+ │ │
78
+ └────────────────────────────────────────────────────────────┘
79
+ ```
80
+
81
+ ### Filter Options
82
+
83
+ | Filter | Description |
84
+ |--------|-------------|
85
+ | `--mine` (default) | Only your assigned issues |
86
+ | `--team` | All issues in your team |
87
+ | `--project <name>` | Issues in a specific project |
88
+ | `--unassigned` | Unassigned issues (for picking up work) |
89
+
90
+ ---
91
+
92
+ ## Enrichment Flow
93
+
94
+ ```
95
+ ┌─────────────────────────────────────────────────────────────┐
96
+ │ INPUT: Minimal title or description │
97
+ │ "Login doesn't work on mobile" │
98
+ └─────────────────────────────────────────────────────────────┘
99
+
100
+
101
+ ┌─────────────────────────────────────────────────────────────┐
102
+ │ PHASE 1: INTELLIGENT CLASSIFICATION │
103
+ │ ───────────────────────────────────────────────────────── │
104
+ │ • Analyze PO intent │
105
+ │ • Classify: bug | feature | improvement | task | chore │
106
+ │ • Determine priority based on impact │
107
+ │ • Assign labels (mobile, auth, critical, etc.) │
108
+ └─────────────────────────────────────────────────────────────┘
109
+
110
+
111
+ ┌─────────────────────────────────────────────────────────────┐
112
+ │ PHASE 2: TECHNICAL ANALYSIS │
113
+ │ ───────────────────────────────────────────────────────── │
114
+ │ • Explore related codebase │
115
+ │ • Identify affected files │
116
+ │ • Detect existing patterns │
117
+ │ • Estimate technical complexity │
118
+ └─────────────────────────────────────────────────────────────┘
119
+
120
+
121
+ ┌─────────────────────────────────────────────────────────────┐
122
+ │ PHASE 3: DEPENDENCY DETECTION │
123
+ │ ───────────────────────────────────────────────────────── │
124
+ │ • Code dependencies (imports, services) │
125
+ │ • Data dependencies (APIs, DB schemas) │
126
+ │ • Task dependencies (other blocking tasks) │
127
+ │ • Potential risks and blockers │
128
+ └─────────────────────────────────────────────────────────────┘
129
+
130
+
131
+ ┌─────────────────────────────────────────────────────────────┐
132
+ │ PHASE 4: USER STORY GENERATION │
133
+ │ ───────────────────────────────────────────────────────── │
134
+ │ • User story format: As a [role], I want [action]... │
135
+ │ • Acceptance Criteria (Gherkin or checklist) │
136
+ │ • Definition of Done │
137
+ │ • Technical notes for the developer │
138
+ └─────────────────────────────────────────────────────────────┘
139
+
140
+
141
+ ┌─────────────────────────────────────────────────────────────┐
142
+ │ PHASE 5: LLM PROMPT │
143
+ │ ───────────────────────────────────────────────────────── │
144
+ │ • Generate optimized prompt for Claude/LLM │
145
+ │ • Include codebase context │
146
+ │ • Implementation instructions │
147
+ │ • Verification criteria │
148
+ └─────────────────────────────────────────────────────────────┘
149
+
150
+
151
+ ┌─────────────────────────────────────────────────────────────┐
152
+ │ OUTPUT: Enriched Task │
153
+ └─────────────────────────────────────────────────────────────┘
154
+ ```
155
+
156
+ ---
157
+
158
+ ## Output Format
159
+
160
+ ### For PM/PO (Product View)
161
+
162
+ ```markdown
163
+ ## 🐛 BUG: Login doesn't work on mobile
164
+
165
+ **Priority:** 🔴 High (affects conversion)
166
+ **Type:** Bug
167
+ **Sprint:** Current
168
+ **Estimate:** 3 points
169
+
170
+ ### User Story
171
+ As a **mobile user**, I want to **log in from my phone**
172
+ so that **I can access my account without using desktop**.
173
+
174
+ ### Acceptance Criteria
175
+ - [ ] Login form displays correctly on screens < 768px
176
+ - [ ] Submit button is clickable on iOS and Android
177
+ - [ ] Error messages are visible on mobile
178
+ - [ ] Successful login redirects to dashboard
179
+
180
+ ### Dependencies
181
+ ⚠️ **Potential blocker:** Auth service uses cookies that may
182
+ have issues with WebView in native apps.
183
+
184
+ ### Impact
185
+ - Affected users: ~40% of traffic
186
+ - Related metrics: Login conversion rate, Mobile bounce rate
187
+ ```
188
+
189
+ ### For Developer (Technical View)
190
+
191
+ ```markdown
192
+ ## Technical Context
193
+
194
+ ### Affected Files
195
+ - `src/components/Auth/LoginForm.tsx` - Main form
196
+ - `src/styles/auth.css` - Responsive styles
197
+ - `src/hooks/useAuth.ts` - Auth hook
198
+ - `src/services/auth.ts` - API calls
199
+
200
+ ### Problem Analysis
201
+ The viewport meta tag is incorrectly configured in `index.html`.
202
+ Styles in `auth.css:45-67` use `min-width` when they should use `max-width`.
203
+
204
+ ### Pattern to Follow
205
+ See similar implementation in `src/components/Profile/EditForm.tsx`
206
+ which handles responsive correctly.
207
+
208
+ ### LLM Prompt (Copy & Paste Ready)
209
+
210
+ Use this prompt with any AI assistant (Claude, ChatGPT, Copilot, Gemini, etc.):
211
+
212
+ \`\`\`
213
+ ## Task: Fix mobile login
214
+
215
+ ### Context
216
+ I'm working on a codebase with the following structure:
217
+ - Frontend: React/TypeScript
218
+ - Auth: Custom hooks in src/hooks/useAuth.ts
219
+ - Styles: CSS modules in src/styles/
220
+
221
+ ### Problem
222
+ The login form doesn't work correctly on mobile devices.
223
+
224
+ ### What needs to be done
225
+ 1. Check viewport meta tag in index.html
226
+ 2. Fix CSS media queries in auth.css (change min-width to max-width)
227
+ 3. Ensure touch events work (onClick should also handle onTouchEnd)
228
+
229
+ ### Files to modify
230
+ - src/components/Auth/LoginForm.tsx
231
+ - src/styles/auth.css
232
+ - index.html
233
+
234
+ ### Reference implementation
235
+ See src/components/Profile/EditForm.tsx for a working responsive pattern.
236
+
237
+ ### Acceptance criteria
238
+ - [ ] Login works on iPhone Safari
239
+ - [ ] Login works on Android Chrome
240
+ - [ ] Desktop version still works
241
+ - [ ] No console errors on mobile
242
+
243
+ ### How to verify
244
+ 1. Run `npm run dev`
245
+ 2. Open browser dev tools, toggle mobile view
246
+ 3. Test login flow on different screen sizes
247
+ \`\`\`
248
+ ```
249
+
250
+ ---
251
+
252
+ ## Dependency Detection
253
+
254
+ ### Dependency Types
255
+
256
+ | Type | Example | Detection |
257
+ |------|---------|-----------|
258
+ | **Code** | `LoginForm` imports `useAuth` | Import analysis |
259
+ | **API** | `/api/auth/login` endpoint | Grep fetch/axios calls |
260
+ | **Database** | Table `users`, field `last_login` | Schema analysis |
261
+ | **Tasks** | "Deploy new endpoint" blocked | Task queue analysis |
262
+ | **Infrastructure** | Redis for sessions | Config file analysis |
263
+
264
+ ### Report Format
265
+
266
+ ```yaml
267
+ dependencies:
268
+ code:
269
+ - file: src/hooks/useAuth.ts
270
+ reason: Main auth hook
271
+ risk: low
272
+ - file: src/services/auth.ts
273
+ reason: API calls
274
+ risk: medium (changes here affect other flows)
275
+
276
+ api:
277
+ - endpoint: POST /api/auth/login
278
+ status: stable
279
+ risk: low
280
+
281
+ blocking_tasks:
282
+ - id: ENG-456
283
+ title: "Migrate to OAuth 2.0"
284
+ status: in_progress
285
+ risk: high (may change auth flow)
286
+
287
+ infrastructure:
288
+ - service: Redis
289
+ purpose: Session storage
290
+ risk: none (no changes required)
291
+ ```
292
+
293
+ ---
294
+
295
+ ## Integration with Linear/Jira
296
+
297
+ ### Bidirectional Sync
298
+
299
+ ```
300
+ Linear/Jira Issue prjct Enrichment
301
+ ───────────────── ─────────────────
302
+ Basic title ──────► Complete User Story
303
+ No AC ──────► Acceptance Criteria
304
+ No context ──────► Technical notes
305
+ Manual priority ──────► Suggested priority
306
+ ◄────── Updates description
307
+ ◄────── Updates labels
308
+ ◄────── Marks progress
309
+ ```
310
+
311
+ ### Fields Enriched
312
+
313
+ | Field | Before | After |
314
+ |-------|--------|-------|
315
+ | Description | "Login broken" | User story + AC + technical notes |
316
+ | Labels | (empty) | `bug`, `mobile`, `auth`, `high-priority` |
317
+ | Estimate | (empty) | 3 points (based on analysis) |
318
+ | Assignee | (empty) | Suggested based on `git blame` |
319
+
320
+ ---
321
+
322
+ ## Commands
323
+
324
+ | Command | Action |
325
+ |---------|--------|
326
+ | `p. enrich <title>` | Enrich minimal description |
327
+ | `p. analyze <ID>` | Analyze existing issue |
328
+ | `p. deps <ID>` | Detect dependencies |
329
+ | `p. ready <ID>` | Check if task is ready for dev |
330
+ | `p. prompt <ID>` | Generate optimized LLM prompt |
331
+
332
+ ---
333
+
334
+ ## PM Metrics
335
+
336
+ ### Real-Time Dashboard
337
+
338
+ ```
339
+ ┌────────────────────────────────────────────────────────────┐
340
+ │ Sprint Progress v0.29 │
341
+ ├────────────────────────────────────────────────────────────┤
342
+ │ │
343
+ │ Features ████████░░░░░░░░░░░░ 40% (4/10) │
344
+ │ Bugs ██████████████░░░░░░ 70% (7/10) │
345
+ │ Tech Debt ████░░░░░░░░░░░░░░░░ 20% (2/10) │
346
+ │ │
347
+ │ ─────────────────────────────────────────────────────────│
348
+ │ Velocity: 23 pts/sprint (↑ 15% vs last) │
349
+ │ Blockers: 2 (ENG-456, ENG-789) │
350
+ │ Ready for Dev: 5 tasks │
351
+ │ │
352
+ │ Recent Activity │
353
+ │ • ENG-123 shipped (login fix) - 2h ago │
354
+ │ • ENG-124 enriched - 30m ago │
355
+ │ • ENG-125 blocked by ENG-456 - just now │
356
+ │ │
357
+ └────────────────────────────────────────────────────────────┘
358
+ ```
359
+
360
+ ---
361
+
362
+ ## Core Principle
363
+
364
+ > **We don't break "just ship"** - Enrichment is a helper layer,
365
+ > not a blocker. Developers can always run `p. task` directly.
366
+ > PM Expert improves quality, doesn't add bureaucracy.