prjct-cli 1.45.4 → 1.45.6
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 +27 -2
- package/dist/bin/prjct-core.mjs +160 -160
- package/dist/cli/jira.mjs +1 -1
- package/dist/cli/linear.mjs +1 -1
- package/dist/daemon/entry.mjs +99 -99
- package/dist/templates.json +1 -1
- package/package.json +2 -1
- package/templates/agentic/agent-routing.md +45 -0
- package/templates/agentic/agents/uxui.md +63 -0
- package/templates/agentic/checklist-routing.md +98 -0
- package/templates/agentic/orchestrator.md +68 -0
- package/templates/agentic/task-fragmentation.md +89 -0
- package/templates/agents/AGENTS.md +67 -0
- package/templates/analysis/analyze.md +84 -0
- package/templates/analysis/patterns.md +60 -0
- package/templates/antigravity/SKILL.md +39 -0
- package/templates/architect/discovery.md +67 -0
- package/templates/architect/phases.md +59 -0
- package/templates/baseline/anti-patterns/nextjs.json +18 -0
- package/templates/baseline/anti-patterns/react.json +18 -0
- package/templates/baseline/anti-patterns/typescript.json +18 -0
- package/templates/baseline/patterns/nextjs.json +18 -0
- package/templates/baseline/patterns/react.json +18 -0
- package/templates/baseline/patterns/typescript.json +18 -0
- package/templates/checklists/architecture.md +28 -0
- package/templates/checklists/code-quality.md +28 -0
- package/templates/checklists/data.md +33 -0
- package/templates/checklists/documentation.md +33 -0
- package/templates/checklists/infrastructure.md +33 -0
- package/templates/checklists/performance.md +33 -0
- package/templates/checklists/security.md +33 -0
- package/templates/checklists/testing.md +33 -0
- package/templates/checklists/ux-ui.md +37 -0
- package/templates/codex/SKILL.md +36 -0
- package/templates/commands/analyze.md +11 -0
- package/templates/commands/auth.md +15 -0
- package/templates/commands/bug.md +28 -0
- package/templates/commands/cleanup.md +11 -0
- package/templates/commands/dash.md +16 -0
- package/templates/commands/design.md +11 -0
- package/templates/commands/done.md +33 -0
- package/templates/commands/enrich.md +20 -0
- package/templates/commands/git.md +17 -0
- package/templates/commands/history.md +13 -0
- package/templates/commands/idea.md +13 -0
- package/templates/commands/impact.md +13 -0
- package/templates/commands/init.md +11 -0
- package/templates/commands/jira.md +88 -0
- package/templates/commands/learnings.md +11 -0
- package/templates/commands/linear.md +82 -0
- package/templates/commands/merge.md +25 -0
- package/templates/commands/next.md +12 -0
- package/templates/commands/p.md +62 -0
- package/templates/commands/p.toml +37 -0
- package/templates/commands/pause.md +16 -0
- package/templates/commands/plan.md +13 -0
- package/templates/commands/prd.md +21 -0
- package/templates/commands/resume.md +12 -0
- package/templates/commands/review.md +20 -0
- package/templates/commands/serve.md +11 -0
- package/templates/commands/sessions.md +13 -0
- package/templates/commands/setup.md +11 -0
- package/templates/commands/ship.md +46 -0
- package/templates/commands/skill.md +13 -0
- package/templates/commands/spec.md +20 -0
- package/templates/commands/status.md +11 -0
- package/templates/commands/sync.md +23 -0
- package/templates/commands/task.md +52 -0
- package/templates/commands/test.md +22 -0
- package/templates/commands/update.md +11 -0
- package/templates/commands/verify.md +11 -0
- package/templates/commands/workflow.md +69 -0
- package/templates/config/skill-mappings.json +82 -0
- package/templates/context/dashboard.md +251 -0
- package/templates/context/roadmap.md +221 -0
- package/templates/cursor/commands/bug.md +8 -0
- package/templates/cursor/commands/done.md +4 -0
- package/templates/cursor/commands/pause.md +6 -0
- package/templates/cursor/commands/resume.md +4 -0
- package/templates/cursor/commands/ship.md +8 -0
- package/templates/cursor/commands/sync.md +4 -0
- package/templates/cursor/commands/task.md +8 -0
- package/templates/cursor/p.md +29 -0
- package/templates/cursor/router.mdc +28 -0
- package/templates/design/api.md +95 -0
- package/templates/design/architecture.md +77 -0
- package/templates/design/component.md +89 -0
- package/templates/design/database.md +78 -0
- package/templates/design/flow.md +94 -0
- package/templates/global/ANTIGRAVITY.md +17 -0
- package/templates/global/CLAUDE.md +20 -0
- package/templates/global/CURSOR.mdc +20 -0
- package/templates/global/GEMINI.md +17 -0
- package/templates/global/STORAGE-SPEC.md +328 -0
- package/templates/global/WINDSURF.md +22 -0
- package/templates/global/modules/CLAUDE-commands.md +1 -0
- package/templates/global/modules/CLAUDE-core.md +16 -0
- package/templates/global/modules/CLAUDE-git.md +1 -0
- package/templates/global/modules/CLAUDE-intelligence.md +1 -0
- package/templates/global/modules/CLAUDE-storage.md +1 -0
- package/templates/global/modules/module-config.json +12 -0
- package/templates/mcp-config.json +29 -0
- package/templates/permissions/default.jsonc +60 -0
- package/templates/permissions/permissive.jsonc +49 -0
- package/templates/permissions/strict.jsonc +58 -0
- package/templates/planning-methodology.md +195 -0
- package/templates/skills/code-review.md +47 -0
- package/templates/skills/debug.md +61 -0
- package/templates/skills/refactor.md +47 -0
- package/templates/subagents/agent-base.md +21 -0
- package/templates/subagents/domain/backend.md +109 -0
- package/templates/subagents/domain/database.md +121 -0
- package/templates/subagents/domain/devops.md +152 -0
- package/templates/subagents/domain/frontend.md +103 -0
- package/templates/subagents/domain/testing.md +169 -0
- package/templates/subagents/pm-expert.md +366 -0
- package/templates/subagents/workflow/chief-architect.md +653 -0
- package/templates/subagents/workflow/prjct-planner.md +120 -0
- package/templates/subagents/workflow/prjct-shipper.md +175 -0
- package/templates/subagents/workflow/prjct-workflow.md +82 -0
- package/templates/tools/bash.txt +22 -0
- package/templates/tools/edit.txt +18 -0
- package/templates/tools/glob.txt +19 -0
- package/templates/tools/grep.txt +21 -0
- package/templates/tools/read.txt +14 -0
- package/templates/tools/task.txt +20 -0
- package/templates/tools/webfetch.txt +16 -0
- package/templates/tools/websearch.txt +18 -0
- package/templates/tools/write.txt +17 -0
- package/templates/windsurf/router.md +28 -0
- package/templates/windsurf/workflows/bug.md +8 -0
- package/templates/windsurf/workflows/done.md +4 -0
- package/templates/windsurf/workflows/pause.md +4 -0
- package/templates/windsurf/workflows/resume.md +4 -0
- package/templates/windsurf/workflows/ship.md +8 -0
- package/templates/windsurf/workflows/sync.md +4 -0
- package/templates/windsurf/workflows/task.md +8 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "prjct-cli",
|
|
3
|
-
"version": "1.45.
|
|
3
|
+
"version": "1.45.6",
|
|
4
4
|
"description": "Context layer for AI agents. Project context for Claude Code, Gemini CLI, and more.",
|
|
5
5
|
"main": "dist/bin/prjct.mjs",
|
|
6
6
|
"bin": {
|
|
@@ -88,6 +88,7 @@
|
|
|
88
88
|
"assets/",
|
|
89
89
|
"bin/prjct",
|
|
90
90
|
"dist/",
|
|
91
|
+
"templates/",
|
|
91
92
|
"scripts/postinstall.js",
|
|
92
93
|
"scripts/install.sh",
|
|
93
94
|
"LICENSE",
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
allowed-tools: [Read]
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Agent Routing
|
|
6
|
+
|
|
7
|
+
Determine best agent for a task.
|
|
8
|
+
|
|
9
|
+
## Process
|
|
10
|
+
|
|
11
|
+
1. **Understand task**: What files? What work? What knowledge?
|
|
12
|
+
2. **Read project context**: Technologies, structure, patterns
|
|
13
|
+
3. **Match to agent**: Based on analysis, not assumptions
|
|
14
|
+
|
|
15
|
+
## Agent Types
|
|
16
|
+
|
|
17
|
+
| Type | Domain |
|
|
18
|
+
|------|--------|
|
|
19
|
+
| Frontend/UX | UI components, styling |
|
|
20
|
+
| Backend | API, server logic |
|
|
21
|
+
| Database | Schema, queries, migrations |
|
|
22
|
+
| DevOps/QA | Testing, CI/CD |
|
|
23
|
+
| Full-stack | Cross-cutting concerns |
|
|
24
|
+
|
|
25
|
+
## Delegation
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
Task(
|
|
29
|
+
subagent_type: 'general-purpose',
|
|
30
|
+
prompt: '
|
|
31
|
+
Read: ~/.prjct-cli/projects/{projectId}/agents/{agent}.md
|
|
32
|
+
Task: {description}
|
|
33
|
+
Execute using agent patterns.
|
|
34
|
+
'
|
|
35
|
+
)
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
**Pass PATH, not CONTENT** - subagent reads what it needs.
|
|
39
|
+
|
|
40
|
+
## Output
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
✅ Delegated to: {agent}
|
|
44
|
+
Result: {summary}
|
|
45
|
+
```
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: uxui
|
|
3
|
+
description: UX/UI Specialist. Use PROACTIVELY for interfaces. Priority: UX > UI.
|
|
4
|
+
tools: Read, Write, Glob, Grep
|
|
5
|
+
model: sonnet
|
|
6
|
+
skills: [frontend-design]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# UX/UI Design Specialist
|
|
10
|
+
|
|
11
|
+
**Priority: UX > UI** - Experience over aesthetics.
|
|
12
|
+
|
|
13
|
+
## UX Principles
|
|
14
|
+
|
|
15
|
+
### Before Designing
|
|
16
|
+
1. Who is the user?
|
|
17
|
+
2. What problem does it solve?
|
|
18
|
+
3. What's the happy path?
|
|
19
|
+
4. What can go wrong?
|
|
20
|
+
|
|
21
|
+
### Core Rules
|
|
22
|
+
- Clarity > Creativity (understand in < 3 sec)
|
|
23
|
+
- Immediate feedback for every action
|
|
24
|
+
- Minimize friction (smart defaults, autocomplete)
|
|
25
|
+
- Clear, actionable error messages
|
|
26
|
+
- Accessibility: 4.5:1 contrast, keyboard nav, 44px touch targets
|
|
27
|
+
|
|
28
|
+
## UI Guidelines
|
|
29
|
+
|
|
30
|
+
### Typography (avoid AI slop)
|
|
31
|
+
**USE**: Clash Display, Cabinet Grotesk, Satoshi, Geist
|
|
32
|
+
**AVOID**: Inter, Space Grotesk, Roboto, Poppins
|
|
33
|
+
|
|
34
|
+
### Color
|
|
35
|
+
60-30-10 framework: dominant, secondary, accent
|
|
36
|
+
**AVOID**: Generic purple/blue gradients
|
|
37
|
+
|
|
38
|
+
### Animation
|
|
39
|
+
**USE**: Staggered entrances, hover micro-motion, skeleton loaders
|
|
40
|
+
**AVOID**: Purposeless animation, excessive bounces
|
|
41
|
+
|
|
42
|
+
## Checklist
|
|
43
|
+
|
|
44
|
+
### UX (Required)
|
|
45
|
+
- [ ] User understands immediately
|
|
46
|
+
- [ ] Actions have feedback
|
|
47
|
+
- [ ] Errors are clear
|
|
48
|
+
- [ ] Keyboard works
|
|
49
|
+
- [ ] Contrast >= 4.5:1
|
|
50
|
+
- [ ] Touch targets >= 44px
|
|
51
|
+
|
|
52
|
+
### UI
|
|
53
|
+
- [ ] Clear aesthetic direction
|
|
54
|
+
- [ ] Distinctive typography
|
|
55
|
+
- [ ] Personality in color
|
|
56
|
+
- [ ] Key animations
|
|
57
|
+
- [ ] Avoids "AI generic"
|
|
58
|
+
|
|
59
|
+
## Anti-Patterns
|
|
60
|
+
|
|
61
|
+
**AI Slop**: Inter everywhere, purple gradients, generic illustrations, centered layouts without personality
|
|
62
|
+
|
|
63
|
+
**Bad UX**: No validation, no loading states, unclear errors, tiny touch targets
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
---
|
|
2
|
+
allowed-tools: [Read, Glob]
|
|
3
|
+
description: 'Determine which quality checklists to apply - Claude decides'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Checklist Routing Instructions
|
|
7
|
+
|
|
8
|
+
## Objective
|
|
9
|
+
|
|
10
|
+
Determine which quality checklists are relevant for a task by analyzing the ACTUAL task and its scope.
|
|
11
|
+
|
|
12
|
+
## Step 1: Understand the Task
|
|
13
|
+
|
|
14
|
+
Read the task description and identify:
|
|
15
|
+
|
|
16
|
+
- What type of work is being done? (new feature, bug fix, refactor, infra, docs)
|
|
17
|
+
- What domains are affected? (code, UI, API, database, deployment)
|
|
18
|
+
- What is the scope? (small fix, major feature, architectural change)
|
|
19
|
+
|
|
20
|
+
## Step 2: Consider Task Domains
|
|
21
|
+
|
|
22
|
+
Each task can touch multiple domains. Consider:
|
|
23
|
+
|
|
24
|
+
| Domain | Signals |
|
|
25
|
+
|--------|---------|
|
|
26
|
+
| Code Quality | Writing/modifying any code |
|
|
27
|
+
| Architecture | New components, services, or major refactors |
|
|
28
|
+
| UX/UI | User-facing changes, CLI output, visual elements |
|
|
29
|
+
| Infrastructure | Deployment, containers, CI/CD, cloud resources |
|
|
30
|
+
| Security | Auth, user data, external inputs, secrets |
|
|
31
|
+
| Testing | New functionality, bug fixes, critical paths |
|
|
32
|
+
| Documentation | Public APIs, complex features, breaking changes |
|
|
33
|
+
| Performance | Data processing, loops, network calls, rendering |
|
|
34
|
+
| Accessibility | User interfaces (web, mobile, CLI) |
|
|
35
|
+
| Data | Database operations, caching, data transformations |
|
|
36
|
+
|
|
37
|
+
## Step 3: Match Task to Checklists
|
|
38
|
+
|
|
39
|
+
Based on your analysis, select relevant checklists:
|
|
40
|
+
|
|
41
|
+
**DO NOT assume:**
|
|
42
|
+
- Every task needs all checklists
|
|
43
|
+
- "Frontend" = only UX checklist
|
|
44
|
+
- "Backend" = only Code Quality checklist
|
|
45
|
+
|
|
46
|
+
**DO analyze:**
|
|
47
|
+
- What the task actually touches
|
|
48
|
+
- What quality dimensions matter for this specific work
|
|
49
|
+
- What could go wrong if not checked
|
|
50
|
+
|
|
51
|
+
## Available Checklists
|
|
52
|
+
|
|
53
|
+
Located in `templates/checklists/`:
|
|
54
|
+
|
|
55
|
+
| Checklist | When to Apply |
|
|
56
|
+
|-----------|---------------|
|
|
57
|
+
| `code-quality.md` | Any code changes (any language) |
|
|
58
|
+
| `architecture.md` | New modules, services, significant structural changes |
|
|
59
|
+
| `ux-ui.md` | User-facing interfaces (web, mobile, CLI, API DX) |
|
|
60
|
+
| `infrastructure.md` | Deployment, containers, CI/CD, cloud resources |
|
|
61
|
+
| `security.md` | ALWAYS for: auth, user input, external APIs, secrets |
|
|
62
|
+
| `testing.md` | New features, bug fixes, refactors |
|
|
63
|
+
| `documentation.md` | Public APIs, complex features, configuration changes |
|
|
64
|
+
| `performance.md` | Data-intensive operations, critical paths |
|
|
65
|
+
| `accessibility.md` | Any user interface work |
|
|
66
|
+
| `data.md` | Database, caching, data transformations |
|
|
67
|
+
|
|
68
|
+
## Decision Process
|
|
69
|
+
|
|
70
|
+
1. Read task description
|
|
71
|
+
2. Identify primary work domain
|
|
72
|
+
3. List secondary domains affected
|
|
73
|
+
4. Select 2-4 most relevant checklists
|
|
74
|
+
5. Consider Security (almost always relevant)
|
|
75
|
+
|
|
76
|
+
## Output
|
|
77
|
+
|
|
78
|
+
Return selected checklists with reasoning:
|
|
79
|
+
|
|
80
|
+
```json
|
|
81
|
+
{
|
|
82
|
+
"checklists": ["code-quality", "security", "testing"],
|
|
83
|
+
"reasoning": "Task involves new API endpoint (code), handles user input (security), and adds business logic (testing)",
|
|
84
|
+
"priority_items": ["Input validation", "Error handling", "Happy path tests"],
|
|
85
|
+
"skipped": {
|
|
86
|
+
"accessibility": "No user interface changes",
|
|
87
|
+
"infrastructure": "No deployment changes"
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Rules
|
|
93
|
+
|
|
94
|
+
- **Task-driven** - Focus on what the specific task needs
|
|
95
|
+
- **Less is more** - 2-4 focused checklists beat 10 unfocused
|
|
96
|
+
- **Security is special** - Default to including unless clearly irrelevant
|
|
97
|
+
- **Explain your reasoning** - Don't just pick, justify selections AND skips
|
|
98
|
+
- **Context matters** - Small typo fix ≠ major refactor in checklist needs
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Orchestrator
|
|
2
|
+
|
|
3
|
+
Load project context for task execution.
|
|
4
|
+
|
|
5
|
+
## Flow
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
p. {command} → Load Config → Load State → Load Agents → Execute
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Step 1: Load Config
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
READ: .prjct/prjct.config.json → {projectId}
|
|
15
|
+
SET: {globalPath} = ~/.prjct-cli/projects/{projectId}
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Step 2: Load State
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
prjct dash compact
|
|
22
|
+
# Parse output to determine: {hasActiveTask}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Step 3: Load Agents
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
GLOB: {globalPath}/agents/*.md
|
|
29
|
+
FOR EACH agent: READ and store content
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Step 4: Detect Domains
|
|
33
|
+
|
|
34
|
+
Analyze task → identify domains:
|
|
35
|
+
- frontend: UI, forms, components
|
|
36
|
+
- backend: API, server logic
|
|
37
|
+
- database: Schema, queries
|
|
38
|
+
- testing: Tests, mocks
|
|
39
|
+
- devops: CI/CD, deployment
|
|
40
|
+
|
|
41
|
+
IF task spans 3+ domains → fragment into subtasks
|
|
42
|
+
|
|
43
|
+
## Step 5: Build Context
|
|
44
|
+
|
|
45
|
+
Combine: state + agents + detected domains → execute
|
|
46
|
+
|
|
47
|
+
## Output Format
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
🎯 Task: {description}
|
|
51
|
+
📦 Context: Agent: {name} | State: {status} | Domains: {list}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Error Handling
|
|
55
|
+
|
|
56
|
+
| Situation | Action |
|
|
57
|
+
|-----------|--------|
|
|
58
|
+
| No config | "Run `p. init` first" |
|
|
59
|
+
| No state | Create default |
|
|
60
|
+
| No agents | Warn, continue |
|
|
61
|
+
|
|
62
|
+
## Disable
|
|
63
|
+
|
|
64
|
+
```yaml
|
|
65
|
+
---
|
|
66
|
+
orchestrator: false
|
|
67
|
+
---
|
|
68
|
+
```
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# Task Fragmentation
|
|
2
|
+
|
|
3
|
+
Break complex multi-domain tasks into subtasks.
|
|
4
|
+
|
|
5
|
+
## When to Fragment
|
|
6
|
+
|
|
7
|
+
- Spans 3+ domains (frontend + backend + database)
|
|
8
|
+
- Has natural dependency order
|
|
9
|
+
- Too large for single execution
|
|
10
|
+
|
|
11
|
+
## When NOT to Fragment
|
|
12
|
+
|
|
13
|
+
- Single domain only
|
|
14
|
+
- Small, focused change
|
|
15
|
+
- Already atomic
|
|
16
|
+
|
|
17
|
+
## Dependency Order
|
|
18
|
+
|
|
19
|
+
1. **Database** (models first)
|
|
20
|
+
2. **Backend** (API using models)
|
|
21
|
+
3. **Frontend** (UI using API)
|
|
22
|
+
4. **Testing** (tests for all)
|
|
23
|
+
5. **DevOps** (deploy)
|
|
24
|
+
|
|
25
|
+
## Subtask Format
|
|
26
|
+
|
|
27
|
+
```json
|
|
28
|
+
{
|
|
29
|
+
"subtasks": [{
|
|
30
|
+
"id": "subtask-1",
|
|
31
|
+
"description": "Create users table",
|
|
32
|
+
"domain": "database",
|
|
33
|
+
"agent": "database.md",
|
|
34
|
+
"dependsOn": []
|
|
35
|
+
}]
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Output
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
🎯 Task: {task}
|
|
43
|
+
|
|
44
|
+
📋 Subtasks:
|
|
45
|
+
├─ 1. [database] Create schema
|
|
46
|
+
├─ 2. [backend] Create API
|
|
47
|
+
└─ 3. [frontend] Create form
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Delegation
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
Task(
|
|
54
|
+
subagent_type: 'general-purpose',
|
|
55
|
+
prompt: '
|
|
56
|
+
Read: {agentsPath}/{domain}.md
|
|
57
|
+
Subtask: {description}
|
|
58
|
+
Previous: {previousSummary}
|
|
59
|
+
Focus ONLY on this subtask.
|
|
60
|
+
'
|
|
61
|
+
)
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Progress
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
📊 Progress: 2/4 (50%)
|
|
68
|
+
✅ 1. [database] Done
|
|
69
|
+
✅ 2. [backend] Done
|
|
70
|
+
▶️ 3. [frontend] ← CURRENT
|
|
71
|
+
⏳ 4. [testing]
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Error Handling
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
❌ Subtask 2/4 failed
|
|
78
|
+
|
|
79
|
+
Options:
|
|
80
|
+
1. Retry
|
|
81
|
+
2. Skip and continue
|
|
82
|
+
3. Abort
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Anti-Patterns
|
|
86
|
+
|
|
87
|
+
- Over-fragmentation: 10 subtasks for "add button"
|
|
88
|
+
- Under-fragmentation: 1 subtask for "add auth system"
|
|
89
|
+
- Wrong order: Frontend before backend
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# AGENTS.md
|
|
2
|
+
|
|
3
|
+
AI assistant guidance for **prjct-cli** - context layer for AI coding agents. Works with Claude Code, Gemini CLI, and more.
|
|
4
|
+
|
|
5
|
+
## What This Is
|
|
6
|
+
|
|
7
|
+
**NOT** project management. NO sprints, story points, ceremonies, or meetings.
|
|
8
|
+
|
|
9
|
+
**IS** a context layer that gives AI agents the project knowledge they need to work effectively.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Dynamic Agent Generation
|
|
14
|
+
|
|
15
|
+
Generate agents during `p. sync` based on analysis:
|
|
16
|
+
|
|
17
|
+
```javascript
|
|
18
|
+
await generator.generateDynamicAgent('agent-name', {
|
|
19
|
+
role: 'Role Description',
|
|
20
|
+
expertise: 'Technologies, versions, tools',
|
|
21
|
+
responsibilities: 'What they handle'
|
|
22
|
+
})
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### Guidelines
|
|
26
|
+
1. Read `analysis/repo-summary.md` first
|
|
27
|
+
2. Create specialists for each major technology
|
|
28
|
+
3. Name descriptively: `go-backend` not `be`
|
|
29
|
+
4. Include versions and frameworks found
|
|
30
|
+
5. Follow project-specific patterns
|
|
31
|
+
|
|
32
|
+
## Architecture
|
|
33
|
+
|
|
34
|
+
**Global**: `~/.prjct-cli/projects/{id}/`
|
|
35
|
+
```
|
|
36
|
+
prjct.db # SQLite database (all state)
|
|
37
|
+
context/ # now.md, next.md
|
|
38
|
+
agents/ # domain specialists
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
**Local**: `.prjct/prjct.config.json` (read-only)
|
|
42
|
+
|
|
43
|
+
## Commands
|
|
44
|
+
|
|
45
|
+
| Command | Action |
|
|
46
|
+
|---------|--------|
|
|
47
|
+
| `p. init` | Initialize |
|
|
48
|
+
| `p. sync` | Analyze + generate agents |
|
|
49
|
+
| `p. task X` | Start task |
|
|
50
|
+
| `p. done` | Complete subtask |
|
|
51
|
+
| `p. ship` | Ship feature |
|
|
52
|
+
| `p. next` | Show queue |
|
|
53
|
+
|
|
54
|
+
## Intent Detection
|
|
55
|
+
|
|
56
|
+
| Intent | Command |
|
|
57
|
+
|--------|---------|
|
|
58
|
+
| Start task | `p. task` |
|
|
59
|
+
| Finish | `p. done` |
|
|
60
|
+
| Ship | `p. ship` |
|
|
61
|
+
| What's next | `p. next` |
|
|
62
|
+
|
|
63
|
+
## Implementation
|
|
64
|
+
|
|
65
|
+
- Atomic operations via `prjct` CLI
|
|
66
|
+
- CLI handles all state persistence (SQLite)
|
|
67
|
+
- Handle missing config gracefully
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
allowed-tools: [Read, Bash]
|
|
3
|
+
description: 'Analyze codebase and generate comprehensive summary'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /p:analyze
|
|
7
|
+
|
|
8
|
+
## Instructions for Claude
|
|
9
|
+
|
|
10
|
+
You are analyzing a codebase to generate a comprehensive summary. **NO predetermined patterns** - analyze based on what you actually find.
|
|
11
|
+
|
|
12
|
+
## Your Task
|
|
13
|
+
|
|
14
|
+
1. **Read project files** using the analyzer helpers:
|
|
15
|
+
- package.json, Cargo.toml, go.mod, requirements.txt, etc.
|
|
16
|
+
- Directory structure
|
|
17
|
+
- Git history and stats
|
|
18
|
+
- Key source files
|
|
19
|
+
|
|
20
|
+
2. **Understand the stack** - DON'T use predetermined lists:
|
|
21
|
+
- What language(s) are used?
|
|
22
|
+
- What frameworks are used?
|
|
23
|
+
- What tools and libraries are important?
|
|
24
|
+
- What's the architecture?
|
|
25
|
+
|
|
26
|
+
3. **Identify features** - based on actual code, not assumptions:
|
|
27
|
+
- What has been built?
|
|
28
|
+
- What's the current state?
|
|
29
|
+
- What patterns do you see?
|
|
30
|
+
|
|
31
|
+
4. **Generate agents** - create specialists for THIS project:
|
|
32
|
+
- Read the stack you identified
|
|
33
|
+
- Create agents for each major technology
|
|
34
|
+
- Use descriptive names (e.g., 'express-backend', 'react-frontend', 'postgres-db')
|
|
35
|
+
- Include specific versions and tools found
|
|
36
|
+
|
|
37
|
+
## Guidelines
|
|
38
|
+
|
|
39
|
+
- **No assumptions** - only report what you find
|
|
40
|
+
- **No predefined maps** - don't assume express = "REST API server"
|
|
41
|
+
- **Read and understand** - look at actual code structure
|
|
42
|
+
- **Any stack works** - Elixir, Rust, Go, Python, Ruby, whatever exists
|
|
43
|
+
- **Be specific** - include versions, specific tools, actual patterns
|
|
44
|
+
|
|
45
|
+
## Output Format
|
|
46
|
+
|
|
47
|
+
Generate `analysis/repo-summary.md` with:
|
|
48
|
+
|
|
49
|
+
```markdown
|
|
50
|
+
# Project Analysis
|
|
51
|
+
|
|
52
|
+
## Stack
|
|
53
|
+
|
|
54
|
+
[What you found - languages, frameworks, tools with versions]
|
|
55
|
+
|
|
56
|
+
## Architecture
|
|
57
|
+
|
|
58
|
+
[How it's organized - based on actual structure]
|
|
59
|
+
|
|
60
|
+
## Features
|
|
61
|
+
|
|
62
|
+
[What has been built - based on code and git history]
|
|
63
|
+
|
|
64
|
+
## Statistics
|
|
65
|
+
|
|
66
|
+
- Total files: [count]
|
|
67
|
+
- Contributors: [count]
|
|
68
|
+
- Age: [age]
|
|
69
|
+
- Last activity: [date]
|
|
70
|
+
|
|
71
|
+
## Recommendations
|
|
72
|
+
|
|
73
|
+
[What agents to generate, what's next, etc.]
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## After Analysis
|
|
77
|
+
|
|
78
|
+
1. Save summary to `analysis/repo-summary.md`
|
|
79
|
+
2. Generate agents using `generator.generateDynamicAgent()`
|
|
80
|
+
3. Report what was found
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
**Remember**: You decide EVERYTHING based on analysis. No if/else, no predetermined patterns.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
allowed-tools: [Read, Glob, Grep]
|
|
3
|
+
description: 'Analyze code patterns and conventions'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Code Pattern Analysis
|
|
7
|
+
|
|
8
|
+
## Detection Steps
|
|
9
|
+
|
|
10
|
+
1. **Structure** (5-10 files): File org, exports, modules
|
|
11
|
+
2. **Patterns**: SOLID, DRY, factory/singleton/observer
|
|
12
|
+
3. **Conventions**: Naming, style, error handling, async
|
|
13
|
+
4. **Anti-patterns**: God class, spaghetti, copy-paste, magic numbers
|
|
14
|
+
5. **Performance**: Memoization, N+1 queries, leaks
|
|
15
|
+
|
|
16
|
+
## Output: analysis/patterns.md
|
|
17
|
+
|
|
18
|
+
```markdown
|
|
19
|
+
# Code Patterns - {Project}
|
|
20
|
+
|
|
21
|
+
> Generated: {GetTimestamp()}
|
|
22
|
+
|
|
23
|
+
## Patterns Detected
|
|
24
|
+
- **{Pattern}**: {Where} - {Example}
|
|
25
|
+
|
|
26
|
+
## SOLID Compliance
|
|
27
|
+
| Principle | Status | Evidence |
|
|
28
|
+
|-----------|--------|----------|
|
|
29
|
+
| Single Responsibility | ✅/⚠️/❌ | {evidence} |
|
|
30
|
+
| Open/Closed | ✅/⚠️/❌ | {evidence} |
|
|
31
|
+
| Liskov Substitution | ✅/⚠️/❌ | {evidence} |
|
|
32
|
+
| Interface Segregation | ✅/⚠️/❌ | {evidence} |
|
|
33
|
+
| Dependency Inversion | ✅/⚠️/❌ | {evidence} |
|
|
34
|
+
|
|
35
|
+
## Conventions (MUST FOLLOW)
|
|
36
|
+
- Functions: {camelCase/snake_case}
|
|
37
|
+
- Classes: {PascalCase}
|
|
38
|
+
- Files: {kebab-case/camelCase}
|
|
39
|
+
- Quotes: {single/double}
|
|
40
|
+
- Async: {async-await/promises}
|
|
41
|
+
|
|
42
|
+
## Anti-Patterns ⚠️
|
|
43
|
+
|
|
44
|
+
### High Priority
|
|
45
|
+
1. **{Issue}**: {file:line} - Fix: {action}
|
|
46
|
+
|
|
47
|
+
### Medium Priority
|
|
48
|
+
1. **{Issue}**: {file:line} - Fix: {action}
|
|
49
|
+
|
|
50
|
+
## Recommendations
|
|
51
|
+
1. {Immediate action}
|
|
52
|
+
2. {Best practice}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Rules
|
|
56
|
+
|
|
57
|
+
1. Check patterns.md FIRST before writing code
|
|
58
|
+
2. Match conventions exactly
|
|
59
|
+
3. NEVER introduce anti-patterns
|
|
60
|
+
4. Warn if asked to violate patterns
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: prjct
|
|
3
|
+
description: Project context layer for AI coding agents. Use when user says "p. sync", "p. task", "p. done", "p. ship", or asks about project context, tasks, shipping features, or project state management.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# prjct - Context Layer for AI Agents
|
|
7
|
+
|
|
8
|
+
You are using **prjct**, a context layer for AI coding agents.
|
|
9
|
+
|
|
10
|
+
## Load Full Instructions
|
|
11
|
+
|
|
12
|
+
1. Run: `npm root -g` to get the npm global root
|
|
13
|
+
2. Read: `{npmRoot}/prjct-cli/templates/global/ANTIGRAVITY.md`
|
|
14
|
+
3. Follow those instructions for ALL `p. <command>` requests
|
|
15
|
+
|
|
16
|
+
## Quick Reference
|
|
17
|
+
|
|
18
|
+
| Command | Action |
|
|
19
|
+
|---------|--------|
|
|
20
|
+
| `p. sync` | Analyze project, generate agents |
|
|
21
|
+
| `p. task "..."` | Start a task |
|
|
22
|
+
| `p. done` | Complete subtask |
|
|
23
|
+
| `p. ship` | Ship with PR + version |
|
|
24
|
+
| `p. pause` | Pause current task |
|
|
25
|
+
| `p. resume` | Resume paused task |
|
|
26
|
+
|
|
27
|
+
## Critical Rule
|
|
28
|
+
|
|
29
|
+
**PLAN BEFORE ACTION**: For ANY prjct command, you MUST:
|
|
30
|
+
1. Create a plan showing what will be done
|
|
31
|
+
2. Wait for user approval
|
|
32
|
+
3. Only then execute
|
|
33
|
+
|
|
34
|
+
Never skip the plan step. This is non-negotiable.
|
|
35
|
+
|
|
36
|
+
## Note
|
|
37
|
+
|
|
38
|
+
This skill auto-regenerates with `p. sync` if deleted.
|
|
39
|
+
Full instructions are in the npm package (always up-to-date).
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: architect-discovery
|
|
3
|
+
description: Discovery phase for architecture generation
|
|
4
|
+
allowed-tools: [Read, AskUserQuestion]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Discovery Phase
|
|
8
|
+
|
|
9
|
+
Conduct discovery for the given idea to understand requirements and constraints.
|
|
10
|
+
|
|
11
|
+
## Input
|
|
12
|
+
- Idea: {{idea}}
|
|
13
|
+
- Context: {{context}}
|
|
14
|
+
|
|
15
|
+
## Discovery Steps
|
|
16
|
+
|
|
17
|
+
1. **Understand the Problem**
|
|
18
|
+
- What problem does this solve?
|
|
19
|
+
- Who experiences this problem?
|
|
20
|
+
- How critical is it?
|
|
21
|
+
|
|
22
|
+
2. **Identify Target Users**
|
|
23
|
+
- Who are the primary users?
|
|
24
|
+
- What are their goals?
|
|
25
|
+
- What's their technical level?
|
|
26
|
+
|
|
27
|
+
3. **Define Constraints**
|
|
28
|
+
- Budget limitations?
|
|
29
|
+
- Timeline requirements?
|
|
30
|
+
- Team size?
|
|
31
|
+
- Regulatory needs?
|
|
32
|
+
|
|
33
|
+
4. **Set Success Metrics**
|
|
34
|
+
- How will we measure success?
|
|
35
|
+
- What's the MVP threshold?
|
|
36
|
+
- Key performance indicators?
|
|
37
|
+
|
|
38
|
+
## Output Format
|
|
39
|
+
|
|
40
|
+
Return structured discovery:
|
|
41
|
+
```json
|
|
42
|
+
{
|
|
43
|
+
"problem": {
|
|
44
|
+
"statement": "...",
|
|
45
|
+
"painPoints": ["..."],
|
|
46
|
+
"impact": "high|medium|low"
|
|
47
|
+
},
|
|
48
|
+
"users": {
|
|
49
|
+
"primary": { "persona": "...", "goals": ["..."] },
|
|
50
|
+
"secondary": [...]
|
|
51
|
+
},
|
|
52
|
+
"constraints": {
|
|
53
|
+
"budget": "...",
|
|
54
|
+
"timeline": "...",
|
|
55
|
+
"teamSize": 1
|
|
56
|
+
},
|
|
57
|
+
"successMetrics": {
|
|
58
|
+
"primary": "...",
|
|
59
|
+
"mvpThreshold": "..."
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Guidelines
|
|
65
|
+
- Ask clarifying questions if needed
|
|
66
|
+
- Be realistic about constraints
|
|
67
|
+
- Focus on MVP scope
|