prjct-cli 2.63.2 → 2.67.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.
Files changed (59) hide show
  1. package/CHANGELOG.md +20 -2
  2. package/README.md +18 -21
  3. package/assets/statusline/components/limits.sh +66 -0
  4. package/assets/statusline/default-config.json +5 -1
  5. package/assets/statusline/lib/cache.sh +48 -2
  6. package/assets/statusline/lib/config.sh +10 -4
  7. package/assets/statusline/statusline.sh +1 -1
  8. package/dist/bin/prjct-core.mjs +413 -407
  9. package/dist/daemon/entry.mjs +341 -335
  10. package/dist/mcp/server.mjs +201 -195
  11. package/dist/templates.json +1 -1
  12. package/package.json +1 -1
  13. package/scripts/install.sh +3 -3
  14. package/templates/antigravity/SKILL.md +2 -2
  15. package/templates/crew/agents/implementer.md +1 -1
  16. package/templates/cursor/router.mdc +1 -1
  17. package/templates/global/ANTIGRAVITY.md +1 -1
  18. package/templates/global/CURSOR.mdc +1 -1
  19. package/templates/global/GEMINI.md +1 -1
  20. package/templates/global/STORAGE-SPEC.md +4 -5
  21. package/templates/global/WINDSURF.md +1 -1
  22. package/templates/mcp-config.json +2 -2
  23. package/templates/windsurf/router.md +1 -1
  24. package/templates/agentic/checklist-routing.md +0 -98
  25. package/templates/agentic/orchestrator.md +0 -68
  26. package/templates/agentic/task-fragmentation.md +0 -89
  27. package/templates/agents/AGENTS.md +0 -67
  28. package/templates/checklists/architecture.md +0 -28
  29. package/templates/checklists/code-quality.md +0 -28
  30. package/templates/checklists/data.md +0 -33
  31. package/templates/checklists/documentation.md +0 -33
  32. package/templates/checklists/infrastructure.md +0 -33
  33. package/templates/checklists/performance.md +0 -33
  34. package/templates/checklists/security.md +0 -33
  35. package/templates/checklists/testing.md +0 -33
  36. package/templates/checklists/ux-ui.md +0 -37
  37. package/templates/config/skill-mappings.json +0 -82
  38. package/templates/context/dashboard.md +0 -251
  39. package/templates/context/roadmap.md +0 -221
  40. package/templates/cursor/commands/ship.md +0 -6
  41. package/templates/cursor/commands/task.md +0 -6
  42. package/templates/cursor/p.md +0 -6
  43. package/templates/permissions/default.jsonc +0 -60
  44. package/templates/permissions/permissive.jsonc +0 -49
  45. package/templates/permissions/strict.jsonc +0 -58
  46. package/templates/skills/code-review.md +0 -47
  47. package/templates/skills/debug.md +0 -61
  48. package/templates/skills/refactor.md +0 -47
  49. package/templates/tools/bash.txt +0 -22
  50. package/templates/tools/edit.txt +0 -18
  51. package/templates/tools/glob.txt +0 -19
  52. package/templates/tools/grep.txt +0 -21
  53. package/templates/tools/read.txt +0 -14
  54. package/templates/tools/task.txt +0 -20
  55. package/templates/tools/webfetch.txt +0 -16
  56. package/templates/tools/websearch.txt +0 -18
  57. package/templates/tools/write.txt +0 -17
  58. package/templates/windsurf/workflows/ship.md +0 -6
  59. package/templates/windsurf/workflows/task.md +0 -6
@@ -1,82 +0,0 @@
1
- {
2
- "version": "3.0.0",
3
- "description": "Skill packages from skills.sh for auto-installation during sync",
4
- "sources": {
5
- "primary": {
6
- "name": "skills.sh",
7
- "url": "https://skills.sh",
8
- "installCmd": "npx skills add {package}"
9
- },
10
- "fallback": {
11
- "name": "GitHub direct",
12
- "installFormat": "owner/repo"
13
- }
14
- },
15
- "skillsDirectory": "~/.claude/skills/",
16
- "skillFormat": {
17
- "required": ["name", "description"],
18
- "optional": ["license", "compatibility", "metadata", "allowed-tools"],
19
- "fileStructure": {
20
- "required": "SKILL.md",
21
- "optional": ["scripts/", "references/", "assets/"]
22
- }
23
- },
24
- "agentToSkillMap": {
25
- "frontend": {
26
- "packages": [
27
- "anthropics/skills/frontend-design",
28
- "vercel-labs/agent-skills/vercel-react-best-practices"
29
- ]
30
- },
31
- "uxui": {
32
- "packages": ["anthropics/skills/frontend-design"]
33
- },
34
- "backend": {
35
- "packages": ["obra/superpowers/systematic-debugging"]
36
- },
37
- "database": {
38
- "packages": []
39
- },
40
- "testing": {
41
- "packages": ["obra/superpowers/test-driven-development", "anthropics/skills/webapp-testing"]
42
- },
43
- "devops": {
44
- "packages": ["anthropics/skills/mcp-builder"]
45
- },
46
- "prjct-planner": {
47
- "packages": ["obra/superpowers/brainstorming"]
48
- },
49
- "prjct-shipper": {
50
- "packages": []
51
- },
52
- "prjct-workflow": {
53
- "packages": []
54
- }
55
- },
56
- "documentSkills": {
57
- "note": "Official Anthropic document creation skills",
58
- "source": "anthropics/skills",
59
- "skills": {
60
- "pdf": {
61
- "name": "pdf",
62
- "description": "Create and edit PDF documents",
63
- "path": "skills/pdf"
64
- },
65
- "docx": {
66
- "name": "docx",
67
- "description": "Create and edit Word documents",
68
- "path": "skills/docx"
69
- },
70
- "pptx": {
71
- "name": "pptx",
72
- "description": "Create PowerPoint presentations",
73
- "path": "skills/pptx"
74
- },
75
- "xlsx": {
76
- "name": "xlsx",
77
- "description": "Create Excel spreadsheets",
78
- "path": "skills/xlsx"
79
- }
80
- }
81
- }
82
- }
@@ -1,251 +0,0 @@
1
- ---
2
- description: 'Template for generated dashboard context'
3
- generated-by: 'p. dashboard'
4
- data-source: 'prjct.db (SQLite)'
5
- ---
6
-
7
- # Dashboard Context Template
8
-
9
- This template defines the format for `{globalPath}/context/dashboard.md` generated by `p. dashboard`.
10
-
11
- ---
12
-
13
- ## Template
14
-
15
- ```markdown
16
- # Dashboard
17
-
18
- **Project:** {projectName}
19
- **Generated:** {timestamp}
20
-
21
- ---
22
-
23
- ## Health Score
24
-
25
- **Overall:** {healthScore}/100
26
-
27
- | Component | Score | Weight | Contribution |
28
- |-----------|-------|--------|--------------|
29
- | Roadmap Progress | {roadmapScore}/100 | 25% | {roadmapContribution} |
30
- | Estimation Accuracy | {estimationScore}/100 | 25% | {estimationContribution} |
31
- | Success Rate | {successScore}/100 | 25% | {successContribution} |
32
- | Velocity Trend | {velocityScore}/100 | 25% | {velocityContribution} |
33
-
34
- ---
35
-
36
- ## Quick Stats
37
-
38
- | Metric | Value | Trend |
39
- |--------|-------|-------|
40
- | Features Shipped | {shippedCount} | {shippedTrend} |
41
- | PRDs Created | {prdCount} | {prdTrend} |
42
- | Avg Cycle Time | {avgCycleTime}d | {cycleTrend} |
43
- | Estimation Accuracy | {estimationAccuracy}% | {accuracyTrend} |
44
- | Success Rate | {successRate}% | {successTrend} |
45
- | ROI Score | {avgROI} | {roiTrend} |
46
-
47
- ---
48
-
49
- ## Active Quarter: {activeQuarter.id}
50
-
51
- **Theme:** {activeQuarter.theme}
52
- **Status:** {activeQuarter.status}
53
-
54
- ### Progress
55
-
56
- ```
57
- Features: {featureBar} {quarterFeatureProgress}%
58
- Capacity: {capacityBar} {capacityUtilization}%
59
- Timeline: {timelineBar} {timelineProgress}%
60
- ```
61
-
62
- ### Features
63
-
64
- | Feature | Status | Progress | Owner |
65
- |---------|--------|----------|-------|
66
- {FOR EACH feature in quarterFeatures:}
67
- | {feature.name} | {statusEmoji(feature.status)} | {feature.progress}% | {feature.agent || '-'} |
68
- {END FOR}
69
-
70
- ---
71
-
72
- ## Current Work
73
-
74
- ### Active Task
75
- {IF currentTask:}
76
- **{currentTask.description}**
77
-
78
- - Type: {currentTask.type}
79
- - Started: {currentTask.startedAt}
80
- - Elapsed: {elapsed}
81
- - Branch: {currentTask.branch?.name || 'N/A'}
82
-
83
- Subtasks: {completedSubtasks}/{totalSubtasks}
84
- {ELSE:}
85
- *No active task*
86
- {END IF}
87
-
88
- ### In Progress Features
89
-
90
- {FOR EACH feature in activeFeatures:}
91
- #### {feature.name}
92
-
93
- - Progress: {progressBar(feature.progress)} {feature.progress}%
94
- - Quarter: {feature.quarter || 'Unassigned'}
95
- - PRD: {feature.prdId || 'None'}
96
- - Dependencies: {feature.dependencies?.join(', ') || 'None'}
97
- {END FOR}
98
-
99
- ---
100
-
101
- ## Pipeline
102
-
103
- ```
104
- PRDs Features Active Shipped
105
- ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐
106
- │ Draft │──▶│ Planned │──▶│ Active │──▶│ Shipped │
107
- │ ({draft}) │ │ ({planned}) │ │ ({active}) │ │ ({shipped}) │
108
- └─────────┘ └─────────┘ └─────────┘ └─────────┘
109
-
110
-
111
- ┌─────────┐
112
- │Approved │
113
- │ ({approved}) │
114
- └─────────┘
115
- ```
116
-
117
- ---
118
-
119
- ## Metrics Trends (Last 4 Weeks)
120
-
121
- ### Velocity
122
- ```
123
- W-3: {velocityW3Bar} {velocityW3}
124
- W-2: {velocityW2Bar} {velocityW2}
125
- W-1: {velocityW1Bar} {velocityW1}
126
- W-0: {velocityW0Bar} {velocityW0}
127
- ```
128
-
129
- ### Estimation Accuracy
130
- ```
131
- W-3: {accuracyW3Bar} {accuracyW3}%
132
- W-2: {accuracyW2Bar} {accuracyW2}%
133
- W-1: {accuracyW1Bar} {accuracyW1}%
134
- W-0: {accuracyW0Bar} {accuracyW0}%
135
- ```
136
-
137
- ---
138
-
139
- ## Alerts & Actions
140
-
141
- ### Warnings
142
- {FOR EACH alert in alerts:}
143
- - {alert.icon} {alert.message}
144
- {END FOR}
145
-
146
- ### Suggested Actions
147
- {FOR EACH action in suggestedActions:}
148
- 1. {action.description}
149
- - Command: `{action.command}`
150
- {END FOR}
151
-
152
- ---
153
-
154
- ## Recent Activity
155
-
156
- | Date | Action | Details |
157
- |------|--------|---------|
158
- {FOR EACH event in recentEvents.slice(0, 10):}
159
- | {event.date} | {event.action} | {event.details} |
160
- {END FOR}
161
-
162
- ---
163
-
164
- ## Learnings Summary
165
-
166
- ### Top Patterns
167
- {FOR EACH pattern in topPatterns.slice(0, 5):}
168
- - {pattern.insight} ({pattern.frequency}x)
169
- {END FOR}
170
-
171
- ### Improvement Areas
172
- {FOR EACH area in improvementAreas:}
173
- - **{area.name}**: {area.suggestion}
174
- {END FOR}
175
-
176
- ---
177
-
178
- *Generated by prjct-cli | https://prjct.app*
179
- ```
180
-
181
- ---
182
-
183
- ## Health Score Calculation
184
-
185
- ```javascript
186
- const healthScore = Math.round(
187
- (roadmapProgress * 0.25) +
188
- (estimationAccuracy * 0.25) +
189
- (successRate * 0.25) +
190
- (normalizedVelocity * 0.25)
191
- )
192
- ```
193
-
194
- | Score Range | Health Level | Color |
195
- |-------------|--------------|-------|
196
- | 80-100 | Excellent | Green |
197
- | 60-79 | Good | Blue |
198
- | 40-59 | Needs Attention | Yellow |
199
- | 0-39 | Critical | Red |
200
-
201
- ---
202
-
203
- ## Alert Definitions
204
-
205
- | Condition | Alert | Severity |
206
- |-----------|-------|----------|
207
- | `capacityUtilization > 90` | Quarter capacity nearly full | Warning |
208
- | `estimationAccuracy < 60` | Estimation accuracy below target | Warning |
209
- | `activeFeatures.length > 3` | Too many features in progress | Info |
210
- | `draftPRDs.length > 3` | PRDs awaiting review | Info |
211
- | `successRate < 70` | Success rate declining | Warning |
212
- | `velocityTrend < -20` | Velocity dropping | Warning |
213
- | `currentTask && elapsed > 4h` | Task running long | Info |
214
-
215
- ---
216
-
217
- ## Suggested Actions Matrix
218
-
219
- | Condition | Suggested Action | Command |
220
- |-----------|------------------|---------|
221
- | No active task | Start a task | `p. task` |
222
- | PRDs in draft | Review PRDs | `p. prd list` |
223
- | Features pending review | Record impact | `p. impact` |
224
- | Quarter ending soon | Plan next quarter | `p. plan quarter` |
225
- | Low estimation accuracy | Analyze estimates | `p. dashboard estimates` |
226
-
227
- ---
228
-
229
- ## Integration with Linear/Jira/Monday
230
-
231
- The dashboard context maps to PM tool dashboards:
232
-
233
- | Dashboard Section | Linear | Jira | Monday |
234
- |-------------------|--------|------|--------|
235
- | Health Score | Project Health | Dashboard Gadget | Board Overview |
236
- | Active Quarter | Cycle | Sprint | Timeline |
237
- | Pipeline | Workflow Board | Kanban | Board |
238
- | Velocity | Velocity Chart | Velocity Report | Chart Widget |
239
- | Alerts | Notifications | Issues | Notifications |
240
-
241
- ---
242
-
243
- ## Refresh Frequency
244
-
245
- | Data Type | Refresh Trigger |
246
- |-----------|-----------------|
247
- | Current Task | Real-time (on state change) |
248
- | Features | On feature status change |
249
- | Metrics | On `p. dashboard` execution |
250
- | Aggregates | On `p. impact` completion |
251
- | Alerts | Calculated on view |
@@ -1,221 +0,0 @@
1
- ---
2
- description: 'Template for generated roadmap context'
3
- generated-by: 'p. plan, p. sync'
4
- data-source: 'prjct.db (SQLite)'
5
- ---
6
-
7
- # Roadmap Context Template
8
-
9
- This template defines the format for `{globalPath}/context/roadmap.md` generated by:
10
- - `p. plan` - After quarter planning
11
- - `p. sync` - After roadmap generation from git
12
-
13
- ---
14
-
15
- ## Template
16
-
17
- ```markdown
18
- # Roadmap
19
-
20
- **Last Updated:** {lastUpdated}
21
-
22
- ---
23
-
24
- ## Strategy
25
-
26
- **Goal:** {strategy.goal}
27
-
28
- ### Phases
29
- {FOR EACH phase in strategy.phases:}
30
- - **{phase.id}**: {phase.name} ({phase.status})
31
- {END FOR}
32
-
33
- ### Success Metrics
34
- {FOR EACH metric in strategy.successMetrics:}
35
- - {metric}
36
- {END FOR}
37
-
38
- ---
39
-
40
- ## Quarters
41
-
42
- {FOR EACH quarter in quarters:}
43
- ### {quarter.id}: {quarter.name}
44
-
45
- **Status:** {quarter.status}
46
- **Theme:** {quarter.theme}
47
- **Capacity:** {capacity.allocatedHours}/{capacity.totalHours}h ({utilization}%)
48
-
49
- #### Goals
50
- {FOR EACH goal in quarter.goals:}
51
- - {goal}
52
- {END FOR}
53
-
54
- #### Features
55
- {FOR EACH featureId in quarter.features:}
56
- - [{status icon}] **{feature.name}** ({feature.status}, {feature.progress}%)
57
- - PRD: {feature.prdId || 'None (legacy)'}
58
- - Estimated: {feature.effortTracking?.estimated?.hours || '?'}h
59
- - Value Score: {feature.valueScore || 'N/A'}
60
- - Dependencies: {feature.dependencies?.join(', ') || 'None'}
61
- {END FOR}
62
-
63
- {END FOR}
64
-
65
- ---
66
-
67
- ## Active Work
68
-
69
- {FOR EACH feature WHERE status == 'active':}
70
- ### {feature.name}
71
-
72
- | Attribute | Value |
73
- |-----------|-------|
74
- | Progress | {feature.progress}% |
75
- | Branch | {feature.branch || 'N/A'} |
76
- | Quarter | {feature.quarter || 'Unassigned'} |
77
- | PRD | {feature.prdId || 'Legacy (no PRD)'} |
78
- | Started | {feature.createdAt} |
79
-
80
- #### Tasks
81
- {FOR EACH task in feature.tasks:}
82
- - [{task.completed ? 'x' : ' '}] {task.description}
83
- {END FOR}
84
-
85
- {END FOR}
86
-
87
- ---
88
-
89
- ## Completed Features
90
-
91
- {FOR EACH feature WHERE status == 'completed' OR status == 'shipped':}
92
- - **{feature.name}** (v{feature.version || 'N/A'})
93
- - Shipped: {feature.shippedAt || feature.completedDate}
94
- - Actual: {feature.effortTracking?.actual?.hours || '?'}h vs Est: {feature.effortTracking?.estimated?.hours || '?'}h
95
- {END FOR}
96
-
97
- ---
98
-
99
- ## Backlog
100
-
101
- Priority-ordered list of unscheduled items:
102
-
103
- | Priority | Item | Value | Effort | Score |
104
- |----------|------|-------|--------|-------|
105
- {FOR EACH item in backlog:}
106
- | {rank} | {item.title} | {item.valueScore} | {item.effortEstimate}h | {priorityScore} |
107
- {END FOR}
108
-
109
- ---
110
-
111
- ## Legacy Features
112
-
113
- Features detected from git history (no PRD required):
114
-
115
- {FOR EACH feature WHERE legacy == true:}
116
- - **{feature.name}**
117
- - Inferred From: {feature.inferredFrom}
118
- - Status: {feature.status}
119
- - Commits: {feature.commits?.length || 0}
120
- {END FOR}
121
-
122
- ---
123
-
124
- ## Dependencies
125
-
126
- ```
127
- {FOR EACH feature WHERE dependencies?.length > 0:}
128
- {feature.name}
129
- {FOR EACH depId in feature.dependencies:}
130
- └── {dependency.name}
131
- {END FOR}
132
- {END FOR}
133
- ```
134
-
135
- ---
136
-
137
- ## Metrics Summary
138
-
139
- | Metric | Value |
140
- |--------|-------|
141
- | Total Features | {features.length} |
142
- | Planned | {planned.length} |
143
- | Active | {active.length} |
144
- | Completed | {completed.length} |
145
- | Shipped | {shipped.length} |
146
- | Legacy | {legacy.length} |
147
- | PRD-Backed | {prdBacked.length} |
148
- | Backlog | {backlog.length} |
149
-
150
- ### Capacity by Quarter
151
-
152
- | Quarter | Allocated | Total | Utilization |
153
- |---------|-----------|-------|-------------|
154
- {FOR EACH quarter in quarters:}
155
- | {quarter.id} | {capacity.allocatedHours}h | {capacity.totalHours}h | {utilization}% |
156
- {END FOR}
157
-
158
- ### Effort Accuracy (Shipped Features)
159
-
160
- | Feature | Estimated | Actual | Variance |
161
- |---------|-----------|--------|----------|
162
- {FOR EACH feature WHERE status == 'shipped' AND effortTracking:}
163
- | {feature.name} | {estimated.hours}h | {actual.hours}h | {variance}% |
164
- {END FOR}
165
-
166
- **Average Variance:** {averageVariance}%
167
-
168
- ---
169
-
170
- *Generated by prjct-cli | https://prjct.app*
171
- ```
172
-
173
- ---
174
-
175
- ## Status Icons
176
-
177
- | Status | Icon |
178
- |--------|------|
179
- | planned | [ ] |
180
- | active | [~] |
181
- | completed | [x] |
182
- | shipped | [+] |
183
-
184
- ---
185
-
186
- ## Variable Reference
187
-
188
- | Variable | Source | Description |
189
- |----------|--------|-------------|
190
- | `lastUpdated` | roadmap.lastUpdated | ISO timestamp |
191
- | `strategy` | roadmap.strategy | Strategy object |
192
- | `quarters` | roadmap.quarters | Array of quarters |
193
- | `features` | roadmap.features | Array of features |
194
- | `backlog` | roadmap.backlog | Array of backlog items |
195
- | `utilization` | Calculated | (allocated/total) * 100 |
196
- | `priorityScore` | Calculated | valueScore / (effort/10) |
197
-
198
- ---
199
-
200
- ## Generation Rules
201
-
202
- 1. **Quarters** - Show only `planned` and `active` quarters by default
203
- 2. **Features** - Group by status (active first, then planned)
204
- 3. **Backlog** - Sort by priority score (descending)
205
- 4. **Legacy** - Always show separately to distinguish from PRD-backed
206
- 5. **Dependencies** - Only show features with dependencies
207
- 6. **Metrics** - Always include for dashboard views
208
-
209
- ---
210
-
211
- ## Integration with Linear/Jira/Monday
212
-
213
- The context file maps to PM tool exports:
214
-
215
- | Context Section | Linear | Jira | Monday |
216
- |-----------------|--------|------|--------|
217
- | Quarters | Cycles | Sprints | Timelines |
218
- | Features | Issues | Stories | Items |
219
- | Backlog | Backlog | Backlog | Inbox |
220
- | Status | State | Status | Status |
221
- | Capacity | Estimates | Story Points | Time |
@@ -1,6 +0,0 @@
1
- # /ship - Ship feature
2
-
3
- **ARGUMENTS**: {{args}}
4
-
5
- Run: `prjct ship {{args}} --md`
6
- Follow CLI output.
@@ -1,6 +0,0 @@
1
- # /task - Start a task
2
-
3
- **ARGUMENTS**: {{args}}
4
-
5
- Run: `prjct task {{args}} --md`
6
- Follow CLI output.
@@ -1,6 +0,0 @@
1
- # p. Command Router for Cursor IDE
2
-
3
- **ARGUMENTS**: {{args}}
4
-
5
- Run: `prjct {{first_word_of_args}} {{rest_of_args}} --md`
6
- Follow CLI output.
@@ -1,60 +0,0 @@
1
- {
2
- // Default permissions preset for prjct-cli
3
- // Safe defaults with protection against destructive operations
4
-
5
- "bash": {
6
- // Safe read-only commands - always allowed
7
- "git status*": "allow",
8
- "git log*": "allow",
9
- "git diff*": "allow",
10
- "git branch*": "allow",
11
- "ls*": "allow",
12
- "pwd": "allow",
13
- "cat*": "allow",
14
- "head*": "allow",
15
- "tail*": "allow",
16
- "grep*": "allow",
17
- "find*": "allow",
18
- "which*": "allow",
19
- "node -e*": "allow",
20
- "bun -e*": "allow",
21
- "npm list*": "allow",
22
- "npx tsc --noEmit*": "allow",
23
-
24
- // Potentially destructive - ask first
25
- "rm -rf*": "ask",
26
- "rm -r*": "ask",
27
- "git push*": "ask",
28
- "git reset --hard*": "ask",
29
- "npm publish*": "ask",
30
- "chmod*": "ask",
31
-
32
- // Always denied - too dangerous
33
- "rm -rf /*": "deny",
34
- "rm -rf ~/*": "deny",
35
- "sudo*": "deny"
36
- },
37
-
38
- "files": {
39
- "read": {
40
- "**/*": "allow"
41
- },
42
- "write": {
43
- "**/*": "allow"
44
- },
45
- "delete": {
46
- "**/*": "ask"
47
- }
48
- },
49
-
50
- "web": {
51
- "enabled": true
52
- },
53
-
54
- "doomLoop": {
55
- "enabled": true,
56
- "maxRetries": 3
57
- },
58
-
59
- "externalDirectories": "ask"
60
- }
@@ -1,49 +0,0 @@
1
- {
2
- // Permissive preset for prjct-cli
3
- // For trusted environments - minimal restrictions
4
-
5
- "bash": {
6
- // Most commands allowed
7
- "git*": "allow",
8
- "npm*": "allow",
9
- "bun*": "allow",
10
- "node*": "allow",
11
- "ls*": "allow",
12
- "cat*": "allow",
13
- "mkdir*": "allow",
14
- "cp*": "allow",
15
- "mv*": "allow",
16
- "rm*": "allow",
17
- "chmod*": "allow",
18
-
19
- // Still protect against catastrophic mistakes
20
- "rm -rf /*": "deny",
21
- "rm -rf ~/*": "deny",
22
- "sudo rm -rf*": "deny",
23
- ":(){ :|:& };:*": "deny"
24
- },
25
-
26
- "files": {
27
- "read": {
28
- "**/*": "allow"
29
- },
30
- "write": {
31
- "**/*": "allow"
32
- },
33
- "delete": {
34
- "**/*": "allow",
35
- "**/node_modules/**": "deny" // Protect dependencies
36
- }
37
- },
38
-
39
- "web": {
40
- "enabled": true
41
- },
42
-
43
- "doomLoop": {
44
- "enabled": true,
45
- "maxRetries": 5
46
- },
47
-
48
- "externalDirectories": "allow"
49
- }