prjct-cli 1.22.0 → 1.24.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 +230 -0
- package/bin/prjct +30 -13
- package/dist/bin/prjct-core.mjs +1748 -0
- package/dist/bin/prjct.mjs +17 -36672
- package/dist/cli/linear.mjs +14 -0
- package/dist/daemon/entry.mjs +1429 -0
- package/dist/templates.json +1 -0
- package/package.json +4 -5
- package/bin/prjct.ts +0 -342
- package/core/__tests__/agentic/analysis-injection.test.ts +0 -377
- package/core/__tests__/agentic/cache-eviction.test.ts +0 -294
- package/core/__tests__/agentic/command-context.test.ts +0 -281
- package/core/__tests__/agentic/command-executor.test.ts +0 -659
- package/core/__tests__/agentic/domain-classifier.test.ts +0 -330
- package/core/__tests__/agentic/injection-validator.test.ts +0 -255
- package/core/__tests__/agentic/memory-system.test.ts +0 -281
- package/core/__tests__/agentic/plan-mode.test.ts +0 -386
- package/core/__tests__/agentic/prompt-assembly.test.ts +0 -298
- package/core/__tests__/agentic/prompt-builder.test.ts +0 -243
- package/core/__tests__/agentic/response-validator.test.ts +0 -263
- package/core/__tests__/agentic/semantic-matching.test.ts +0 -131
- package/core/__tests__/agentic/smart-context.test.ts +0 -372
- package/core/__tests__/agentic/tech-normalizer.test.ts +0 -136
- package/core/__tests__/agentic/token-budget.test.ts +0 -294
- package/core/__tests__/ai-tools/formatters.test.ts +0 -476
- package/core/__tests__/domain/bm25.test.ts +0 -225
- package/core/__tests__/domain/change-propagator.test.ts +0 -100
- package/core/__tests__/domain/fibonacci.test.ts +0 -113
- package/core/__tests__/domain/file-hasher.test.ts +0 -146
- package/core/__tests__/domain/file-ranker.test.ts +0 -169
- package/core/__tests__/domain/git-cochange.test.ts +0 -121
- package/core/__tests__/domain/import-graph.test.ts +0 -156
- package/core/__tests__/domain/velocity.test.ts +0 -623
- package/core/__tests__/infrastructure/performance-tracker.test.ts +0 -328
- package/core/__tests__/schemas/model.test.ts +0 -272
- package/core/__tests__/services/dependency-validator.test.ts +0 -175
- package/core/__tests__/services/hierarchical-agent-resolver.test.ts +0 -359
- package/core/__tests__/services/nested-context-resolver.test.ts +0 -443
- package/core/__tests__/services/project-index.test.ts +0 -355
- package/core/__tests__/services/staleness-checker.test.ts +0 -204
- package/core/__tests__/storage/analysis-storage.test.ts +0 -641
- package/core/__tests__/storage/archive-storage.test.ts +0 -455
- package/core/__tests__/storage/safe-reader.test.ts +0 -262
- package/core/__tests__/storage/sqlite-migration.test.ts +0 -1016
- package/core/__tests__/storage/state-storage-feedback.test.ts +0 -463
- package/core/__tests__/storage/state-storage-history.test.ts +0 -469
- package/core/__tests__/storage/storage-manager.test.ts +0 -383
- package/core/__tests__/storage/subtask-handoff.test.ts +0 -237
- package/core/__tests__/types/fs.test.ts +0 -125
- package/core/__tests__/utils/date-helper.test.ts +0 -449
- package/core/__tests__/utils/output.test.ts +0 -278
- package/core/__tests__/utils/preserve-sections.test.ts +0 -216
- package/core/__tests__/utils/project-commands.test.ts +0 -71
- package/core/__tests__/utils/retry.test.ts +0 -381
- package/core/__tests__/workflow/state-machine.test.ts +0 -216
- package/core/agentic/agent-router.ts +0 -150
- package/core/agentic/anti-hallucination.ts +0 -141
- package/core/agentic/chain-of-thought.ts +0 -234
- package/core/agentic/command-classifier.ts +0 -141
- package/core/agentic/command-context.ts +0 -168
- package/core/agentic/command-executor.ts +0 -471
- package/core/agentic/context-builder.ts +0 -285
- package/core/agentic/domain-classifier.ts +0 -525
- package/core/agentic/environment-block.ts +0 -102
- package/core/agentic/ground-truth.ts +0 -706
- package/core/agentic/index.ts +0 -193
- package/core/agentic/injection-validator.ts +0 -208
- package/core/agentic/loop-detector.ts +0 -451
- package/core/agentic/memory-system.ts +0 -1547
- package/core/agentic/orchestrator-executor.ts +0 -579
- package/core/agentic/plan-mode.ts +0 -525
- package/core/agentic/prompt-builder.ts +0 -1069
- package/core/agentic/response-validator.ts +0 -98
- package/core/agentic/services.ts +0 -167
- package/core/agentic/skill-loader.ts +0 -106
- package/core/agentic/smart-context.ts +0 -393
- package/core/agentic/tech-normalizer.ts +0 -167
- package/core/agentic/template-executor.ts +0 -272
- package/core/agentic/template-loader.ts +0 -109
- package/core/agentic/token-budget.ts +0 -226
- package/core/agentic/tool-registry.ts +0 -146
- package/core/agents/index.ts +0 -28
- package/core/agents/performance.ts +0 -429
- package/core/ai-tools/formatters.ts +0 -341
- package/core/ai-tools/generator.ts +0 -144
- package/core/ai-tools/index.ts +0 -15
- package/core/ai-tools/registry.ts +0 -201
- package/core/bus/bus.ts +0 -314
- package/core/bus/index.ts +0 -8
- package/core/cli/linear.ts +0 -500
- package/core/cli/lint-meta-commentary.ts +0 -177
- package/core/cli/start.ts +0 -386
- package/core/commands/analysis.ts +0 -1274
- package/core/commands/analytics.ts +0 -342
- package/core/commands/base.ts +0 -118
- package/core/commands/cleanup.ts +0 -157
- package/core/commands/command-data.ts +0 -463
- package/core/commands/commands.ts +0 -306
- package/core/commands/context.ts +0 -238
- package/core/commands/design.ts +0 -77
- package/core/commands/index.ts +0 -19
- package/core/commands/maintenance.ts +0 -77
- package/core/commands/performance.ts +0 -114
- package/core/commands/planning.ts +0 -662
- package/core/commands/register.ts +0 -127
- package/core/commands/registry.ts +0 -444
- package/core/commands/setup.ts +0 -280
- package/core/commands/shipping.ts +0 -267
- package/core/commands/snapshots.ts +0 -297
- package/core/commands/uninstall.ts +0 -542
- package/core/commands/velocity.ts +0 -149
- package/core/commands/workflow.ts +0 -505
- package/core/config/command-context.config.json +0 -66
- package/core/constants/index.ts +0 -379
- package/core/context/generator.ts +0 -368
- package/core/context-tools/files-tool.ts +0 -577
- package/core/context-tools/imports-tool.ts +0 -400
- package/core/context-tools/index.ts +0 -434
- package/core/context-tools/recent-tool.ts +0 -301
- package/core/context-tools/signatures-tool.ts +0 -495
- package/core/context-tools/summary-tool.ts +0 -301
- package/core/context-tools/token-counter.ts +0 -273
- package/core/context-tools/types.ts +0 -253
- package/core/domain/agent-generator.ts +0 -186
- package/core/domain/agent-loader.ts +0 -419
- package/core/domain/analyzer.ts +0 -387
- package/core/domain/architecture-generator.ts +0 -108
- package/core/domain/bm25.ts +0 -525
- package/core/domain/change-propagator.ts +0 -162
- package/core/domain/context-estimator.ts +0 -175
- package/core/domain/fibonacci.ts +0 -128
- package/core/domain/file-hasher.ts +0 -296
- package/core/domain/file-ranker.ts +0 -151
- package/core/domain/git-cochange.ts +0 -250
- package/core/domain/import-graph.ts +0 -315
- package/core/domain/snapshot-manager.ts +0 -415
- package/core/domain/task-stack.ts +0 -578
- package/core/domain/velocity.ts +0 -470
- package/core/errors.ts +0 -335
- package/core/events/events.ts +0 -85
- package/core/events/index.ts +0 -8
- package/core/index.ts +0 -481
- package/core/infrastructure/agent-detector.ts +0 -135
- package/core/infrastructure/ai-provider.ts +0 -578
- package/core/infrastructure/author-detector.ts +0 -133
- package/core/infrastructure/capability-installer.ts +0 -76
- package/core/infrastructure/claude-agent.ts +0 -297
- package/core/infrastructure/command-installer.ts +0 -752
- package/core/infrastructure/config-manager.ts +0 -364
- package/core/infrastructure/editors-config.ts +0 -172
- package/core/infrastructure/path-manager.ts +0 -571
- package/core/infrastructure/performance-tracker.ts +0 -326
- package/core/infrastructure/permission-manager.ts +0 -289
- package/core/infrastructure/setup.ts +0 -1061
- package/core/infrastructure/update-checker.ts +0 -246
- package/core/integrations/issue-tracker/enricher.ts +0 -271
- package/core/integrations/issue-tracker/index.ts +0 -8
- package/core/integrations/issue-tracker/manager.ts +0 -286
- package/core/integrations/issue-tracker/types.ts +0 -310
- package/core/integrations/jira/cache.ts +0 -57
- package/core/integrations/jira/client.ts +0 -688
- package/core/integrations/jira/index.ts +0 -23
- package/core/integrations/jira/service.ts +0 -244
- package/core/integrations/linear/cache.ts +0 -68
- package/core/integrations/linear/client.ts +0 -436
- package/core/integrations/linear/index.ts +0 -20
- package/core/integrations/linear/service.ts +0 -260
- package/core/integrations/linear/sync.ts +0 -314
- package/core/outcomes/analyzer.ts +0 -286
- package/core/outcomes/index.ts +0 -34
- package/core/outcomes/recorder.ts +0 -195
- package/core/plugin/builtin/webhook.ts +0 -148
- package/core/plugin/hooks.ts +0 -315
- package/core/plugin/index.ts +0 -50
- package/core/plugin/loader.ts +0 -354
- package/core/plugin/registry.ts +0 -326
- package/core/schemas/agents.ts +0 -27
- package/core/schemas/analysis.ts +0 -530
- package/core/schemas/classification.ts +0 -91
- package/core/schemas/command-context.ts +0 -29
- package/core/schemas/enriched-task.ts +0 -291
- package/core/schemas/ideas.ts +0 -114
- package/core/schemas/index.ts +0 -53
- package/core/schemas/issues.ts +0 -159
- package/core/schemas/llm-output.ts +0 -170
- package/core/schemas/metrics.ts +0 -143
- package/core/schemas/model.ts +0 -153
- package/core/schemas/outcomes.ts +0 -487
- package/core/schemas/performance.ts +0 -128
- package/core/schemas/permissions.ts +0 -180
- package/core/schemas/prd.ts +0 -450
- package/core/schemas/project.ts +0 -57
- package/core/schemas/roadmap.ts +0 -322
- package/core/schemas/schemas.ts +0 -38
- package/core/schemas/shipped.ts +0 -109
- package/core/schemas/state.ts +0 -284
- package/core/schemas/velocity.ts +0 -103
- package/core/server/index.ts +0 -21
- package/core/server/routes-extended.ts +0 -566
- package/core/server/routes.ts +0 -176
- package/core/server/server.ts +0 -149
- package/core/server/sse.ts +0 -192
- package/core/services/agent-generator.ts +0 -385
- package/core/services/agent-service.ts +0 -168
- package/core/services/breakdown-service.ts +0 -124
- package/core/services/context-generator.ts +0 -445
- package/core/services/context-selector.ts +0 -429
- package/core/services/dependency-validator.ts +0 -318
- package/core/services/diff-generator.ts +0 -313
- package/core/services/doctor-service.ts +0 -423
- package/core/services/file-categorizer.ts +0 -448
- package/core/services/file-scorer.ts +0 -270
- package/core/services/git-analyzer.ts +0 -293
- package/core/services/hierarchical-agent-resolver.ts +0 -236
- package/core/services/hooks-service.ts +0 -685
- package/core/services/index.ts +0 -46
- package/core/services/local-state-generator.ts +0 -158
- package/core/services/memory-service.ts +0 -181
- package/core/services/nested-context-resolver.ts +0 -842
- package/core/services/project-index.ts +0 -911
- package/core/services/project-service.ts +0 -155
- package/core/services/session-tracker.ts +0 -287
- package/core/services/skill-installer.ts +0 -447
- package/core/services/skill-lock.ts +0 -132
- package/core/services/skill-service.ts +0 -306
- package/core/services/stack-detector.ts +0 -229
- package/core/services/staleness-checker.ts +0 -327
- package/core/services/sync-service.ts +0 -1515
- package/core/services/sync-verifier.ts +0 -253
- package/core/services/watch-service.ts +0 -312
- package/core/session/compaction.ts +0 -248
- package/core/session/index.ts +0 -35
- package/core/session/log-migration.ts +0 -88
- package/core/session/metrics.ts +0 -323
- package/core/session/session-log-manager.ts +0 -307
- package/core/session/task-session-manager.ts +0 -404
- package/core/session/utils.ts +0 -51
- package/core/storage/analysis-storage.ts +0 -373
- package/core/storage/archive-storage.ts +0 -205
- package/core/storage/database.ts +0 -575
- package/core/storage/ideas-storage.ts +0 -298
- package/core/storage/index-storage.ts +0 -523
- package/core/storage/index.ts +0 -79
- package/core/storage/metrics-storage.ts +0 -321
- package/core/storage/migrate-json.ts +0 -720
- package/core/storage/queue-storage.ts +0 -336
- package/core/storage/safe-reader.ts +0 -105
- package/core/storage/shipped-storage.ts +0 -253
- package/core/storage/state-storage.ts +0 -1035
- package/core/storage/storage-manager.ts +0 -205
- package/core/storage/storage.ts +0 -177
- package/core/storage/velocity-storage.ts +0 -149
- package/core/sync/auth-config.ts +0 -138
- package/core/sync/index.ts +0 -31
- package/core/sync/oauth-handler.ts +0 -143
- package/core/sync/sync-client.ts +0 -251
- package/core/sync/sync-manager.ts +0 -327
- package/core/tsconfig.json +0 -22
- package/core/types/agentic.ts +0 -760
- package/core/types/agents.ts +0 -150
- package/core/types/bus.ts +0 -193
- package/core/types/citations.ts +0 -22
- package/core/types/commands.ts +0 -399
- package/core/types/config.ts +0 -92
- package/core/types/core.ts +0 -96
- package/core/types/diff.ts +0 -41
- package/core/types/domain.ts +0 -71
- package/core/types/errors.ts +0 -111
- package/core/types/events.ts +0 -42
- package/core/types/fs.ts +0 -72
- package/core/types/index.ts +0 -510
- package/core/types/infrastructure.ts +0 -210
- package/core/types/integrations.ts +0 -31
- package/core/types/jira.ts +0 -51
- package/core/types/logger.ts +0 -17
- package/core/types/memory.ts +0 -313
- package/core/types/outcomes.ts +0 -190
- package/core/types/output.ts +0 -47
- package/core/types/plugin.ts +0 -25
- package/core/types/project-sync.ts +0 -129
- package/core/types/provider.ts +0 -163
- package/core/types/server.ts +0 -71
- package/core/types/services.ts +0 -84
- package/core/types/session.ts +0 -135
- package/core/types/stack.ts +0 -19
- package/core/types/storage.ts +0 -318
- package/core/types/sync-verifier.ts +0 -33
- package/core/types/sync.ts +0 -121
- package/core/types/task.ts +0 -72
- package/core/types/template.ts +0 -24
- package/core/types/utils.ts +0 -92
- package/core/types/workflow.ts +0 -23
- package/core/utils/agent-stream.ts +0 -140
- package/core/utils/animations.ts +0 -251
- package/core/utils/branding.ts +0 -88
- package/core/utils/cache.ts +0 -187
- package/core/utils/citations.ts +0 -39
- package/core/utils/collection-filters.ts +0 -209
- package/core/utils/date-helper.ts +0 -176
- package/core/utils/error-messages.ts +0 -38
- package/core/utils/file-helper.ts +0 -277
- package/core/utils/fs-helpers.ts +0 -14
- package/core/utils/help.ts +0 -314
- package/core/utils/jsonl-helper.ts +0 -290
- package/core/utils/keychain.ts +0 -127
- package/core/utils/logger.ts +0 -77
- package/core/utils/markdown-builder.ts +0 -280
- package/core/utils/next-steps.ts +0 -95
- package/core/utils/output.ts +0 -403
- package/core/utils/preserve-sections.ts +0 -218
- package/core/utils/project-commands.ts +0 -126
- package/core/utils/project-credentials.ts +0 -143
- package/core/utils/provider-cache.ts +0 -49
- package/core/utils/retry.ts +0 -318
- package/core/utils/runtime.ts +0 -108
- package/core/utils/session-helper.ts +0 -278
- package/core/utils/subtask-table.ts +0 -227
- package/core/utils/version.ts +0 -128
- package/core/wizard/index.ts +0 -13
- package/core/wizard/onboarding.ts +0 -633
- package/core/workflow/index.ts +0 -7
- package/core/workflow/state-machine.ts +0 -198
- package/core/workflow/workflow-preferences.ts +0 -294
- package/dist/core/infrastructure/command-installer.js +0 -1141
- package/dist/core/infrastructure/editors-config.js +0 -177
- package/dist/core/infrastructure/setup.js +0 -2244
- package/dist/core/utils/version.js +0 -141
- package/templates/agentic/agent-routing.md +0 -45
- package/templates/agentic/agents/uxui.md +0 -63
- package/templates/agentic/checklist-routing.md +0 -98
- package/templates/agentic/orchestrator.md +0 -68
- package/templates/agentic/task-fragmentation.md +0 -89
- package/templates/agents/AGENTS.md +0 -68
- package/templates/analysis/analyze.md +0 -84
- package/templates/analysis/patterns.md +0 -60
- package/templates/antigravity/SKILL.md +0 -39
- package/templates/architect/discovery.md +0 -67
- package/templates/architect/phases.md +0 -59
- package/templates/checklists/architecture.md +0 -28
- package/templates/checklists/code-quality.md +0 -28
- package/templates/checklists/data.md +0 -33
- package/templates/checklists/documentation.md +0 -33
- package/templates/checklists/infrastructure.md +0 -33
- package/templates/checklists/performance.md +0 -33
- package/templates/checklists/security.md +0 -33
- package/templates/checklists/testing.md +0 -33
- package/templates/checklists/ux-ui.md +0 -37
- package/templates/commands/analyze.md +0 -56
- package/templates/commands/auth.md +0 -234
- package/templates/commands/bug.md +0 -163
- package/templates/commands/cleanup.md +0 -19
- package/templates/commands/dash.md +0 -99
- package/templates/commands/design.md +0 -15
- package/templates/commands/done.md +0 -291
- package/templates/commands/enrich.md +0 -174
- package/templates/commands/git.md +0 -295
- package/templates/commands/history.md +0 -389
- package/templates/commands/idea.md +0 -88
- package/templates/commands/impact.md +0 -864
- package/templates/commands/init.md +0 -54
- package/templates/commands/jira.md +0 -278
- package/templates/commands/linear.md +0 -288
- package/templates/commands/merge.md +0 -206
- package/templates/commands/next.md +0 -80
- package/templates/commands/p.md +0 -67
- package/templates/commands/p.toml +0 -37
- package/templates/commands/pause.md +0 -136
- package/templates/commands/plan.md +0 -696
- package/templates/commands/prd.md +0 -356
- package/templates/commands/resume.md +0 -171
- package/templates/commands/review.md +0 -276
- package/templates/commands/serve.md +0 -118
- package/templates/commands/setup.md +0 -91
- package/templates/commands/ship.md +0 -475
- package/templates/commands/skill.md +0 -259
- package/templates/commands/spec.md +0 -218
- package/templates/commands/status.md +0 -207
- package/templates/commands/sync.md +0 -104
- package/templates/commands/task.md +0 -312
- package/templates/commands/test.md +0 -93
- package/templates/commands/update.md +0 -63
- package/templates/commands/verify.md +0 -204
- package/templates/commands/workflow.md +0 -150
- package/templates/config/skill-mappings.json +0 -82
- package/templates/context/dashboard.md +0 -256
- package/templates/context/roadmap.md +0 -221
- package/templates/cursor/commands/bug.md +0 -8
- package/templates/cursor/commands/done.md +0 -4
- package/templates/cursor/commands/pause.md +0 -6
- package/templates/cursor/commands/resume.md +0 -4
- package/templates/cursor/commands/ship.md +0 -8
- package/templates/cursor/commands/sync.md +0 -4
- package/templates/cursor/commands/task.md +0 -8
- package/templates/cursor/p.md +0 -29
- package/templates/cursor/router.mdc +0 -28
- package/templates/design/api.md +0 -95
- package/templates/design/architecture.md +0 -77
- package/templates/design/component.md +0 -89
- package/templates/design/database.md +0 -78
- package/templates/design/flow.md +0 -94
- package/templates/global/ANTIGRAVITY.md +0 -254
- package/templates/global/CLAUDE.md +0 -497
- package/templates/global/CURSOR.mdc +0 -266
- package/templates/global/GEMINI.md +0 -293
- package/templates/global/STORAGE-SPEC.md +0 -391
- package/templates/global/WINDSURF.md +0 -266
- package/templates/global/modules/CLAUDE-commands.md +0 -70
- package/templates/global/modules/CLAUDE-core.md +0 -105
- package/templates/global/modules/CLAUDE-git.md +0 -50
- package/templates/global/modules/CLAUDE-intelligence.md +0 -92
- package/templates/global/modules/CLAUDE-storage.md +0 -50
- package/templates/global/modules/module-config.json +0 -36
- package/templates/mcp-config.json +0 -19
- package/templates/permissions/default.jsonc +0 -60
- package/templates/permissions/permissive.jsonc +0 -49
- package/templates/permissions/strict.jsonc +0 -58
- package/templates/planning-methodology.md +0 -195
- package/templates/skills/code-review.md +0 -47
- package/templates/skills/debug.md +0 -61
- package/templates/skills/refactor.md +0 -47
- package/templates/subagents/agent-base.md +0 -20
- package/templates/subagents/domain/backend.md +0 -109
- package/templates/subagents/domain/database.md +0 -121
- package/templates/subagents/domain/devops.md +0 -152
- package/templates/subagents/domain/frontend.md +0 -103
- package/templates/subagents/domain/testing.md +0 -169
- package/templates/subagents/pm-expert.md +0 -366
- package/templates/subagents/workflow/chief-architect.md +0 -657
- package/templates/subagents/workflow/prjct-planner.md +0 -159
- package/templates/subagents/workflow/prjct-shipper.md +0 -188
- package/templates/subagents/workflow/prjct-workflow.md +0 -98
- package/templates/tools/bash.txt +0 -22
- package/templates/tools/edit.txt +0 -18
- package/templates/tools/glob.txt +0 -19
- package/templates/tools/grep.txt +0 -21
- package/templates/tools/read.txt +0 -14
- package/templates/tools/task.txt +0 -20
- package/templates/tools/webfetch.txt +0 -16
- package/templates/tools/websearch.txt +0 -18
- package/templates/tools/write.txt +0 -17
- package/templates/windsurf/router.md +0 -28
- package/templates/windsurf/workflows/bug.md +0 -8
- package/templates/windsurf/workflows/done.md +0 -4
- package/templates/windsurf/workflows/pause.md +0 -4
- package/templates/windsurf/workflows/resume.md +0 -4
- package/templates/windsurf/workflows/ship.md +0 -8
- package/templates/windsurf/workflows/sync.md +0 -4
- package/templates/windsurf/workflows/task.md +0 -8
|
@@ -1,276 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
allowed-tools: [Bash, Read, Write, Task, AskUserQuestion]
|
|
3
|
-
description: 'Code review with MCP agent and GitHub approvals'
|
|
4
|
-
timestamp-rule: 'GetTimestamp() for ALL timestamps'
|
|
5
|
-
architecture: 'Write-Through (JSON -> MD -> Events)'
|
|
6
|
-
storage-layer: true
|
|
7
|
-
source-of-truth: 'storage/state.json'
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# /p:review
|
|
11
|
-
|
|
12
|
-
Run MCP code review agent and wait for GitHub PR approvals.
|
|
13
|
-
|
|
14
|
-
## Usage
|
|
15
|
-
|
|
16
|
-
```
|
|
17
|
-
/p:review [--skip-mcp] # Skip MCP agent review
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
## Context Variables
|
|
21
|
-
- `{projectId}`: From `.prjct/prjct.config.json`
|
|
22
|
-
- `{globalPath}`: `~/.prjct-cli/projects/{projectId}`
|
|
23
|
-
- `{statePath}`: `{globalPath}/storage/state.json`
|
|
24
|
-
- `{memoryPath}`: `{globalPath}/memory/events.jsonl`
|
|
25
|
-
- `{syncPath}`: `{globalPath}/sync/pending.json`
|
|
26
|
-
|
|
27
|
-
## Step 1: Validate Project
|
|
28
|
-
|
|
29
|
-
READ: `.prjct/prjct.config.json`
|
|
30
|
-
EXTRACT: `projectId`
|
|
31
|
-
|
|
32
|
-
IF file not found:
|
|
33
|
-
OUTPUT: "No prjct project. Run /p:init first."
|
|
34
|
-
STOP
|
|
35
|
-
|
|
36
|
-
## Step 2: Validate Workflow Phase
|
|
37
|
-
|
|
38
|
-
READ: `{globalPath}/storage/state.json`
|
|
39
|
-
|
|
40
|
-
IF currentTask is null:
|
|
41
|
-
OUTPUT: "No active task. Use p. task to start one."
|
|
42
|
-
STOP
|
|
43
|
-
|
|
44
|
-
IF currentTask.workflow exists:
|
|
45
|
-
IF currentTask.workflow.phase != "test":
|
|
46
|
-
OUTPUT:
|
|
47
|
-
```
|
|
48
|
-
Cannot start review. Current phase: {currentTask.workflow.phase}
|
|
49
|
-
|
|
50
|
-
Required phase: test
|
|
51
|
-
|
|
52
|
-
Workflow: analyze → branch → implement → test → review → merge → ship → verify
|
|
53
|
-
|
|
54
|
-
Run p. test first to advance to test phase.
|
|
55
|
-
```
|
|
56
|
-
STOP
|
|
57
|
-
|
|
58
|
-
## Step 3: Run MCP Code Review (unless --skip-mcp)
|
|
59
|
-
|
|
60
|
-
IF NOT --skip-mcp:
|
|
61
|
-
OUTPUT: "Running MCP code review..."
|
|
62
|
-
|
|
63
|
-
### Get changed files
|
|
64
|
-
BASH: `git diff --name-only HEAD~1..HEAD 2>/dev/null || git diff --name-only`
|
|
65
|
-
SET: {changedFiles} = result
|
|
66
|
-
|
|
67
|
-
### Analyze with MCP agent
|
|
68
|
-
FOR each file in {changedFiles}:
|
|
69
|
-
READ: file
|
|
70
|
-
ANALYZE for:
|
|
71
|
-
- Security issues (hardcoded secrets, injection vulnerabilities)
|
|
72
|
-
- Logic errors
|
|
73
|
-
- Missing error handling
|
|
74
|
-
- Performance issues
|
|
75
|
-
- Code style violations
|
|
76
|
-
|
|
77
|
-
ASSIGN confidence score (0-100):
|
|
78
|
-
- 90-100: Definite bug/security issue
|
|
79
|
-
- 70-89: Likely problem
|
|
80
|
-
- 50-69: Maybe a problem
|
|
81
|
-
- 0-49: Nitpick/style
|
|
82
|
-
|
|
83
|
-
SET: {issues} = issues with confidence >= 70
|
|
84
|
-
SET: {mcpScore} = 100 - (count of high-confidence issues * 10)
|
|
85
|
-
|
|
86
|
-
IF {issues}.length > 0:
|
|
87
|
-
OUTPUT:
|
|
88
|
-
```
|
|
89
|
-
## MCP Code Review Results
|
|
90
|
-
|
|
91
|
-
Found {issues.length} issues (confidence >= 70%):
|
|
92
|
-
|
|
93
|
-
{FOR each issue:}
|
|
94
|
-
- [{confidence}%] {description}
|
|
95
|
-
File: {file}:{line}
|
|
96
|
-
{END FOR}
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
USE AskUserQuestion:
|
|
100
|
-
```
|
|
101
|
-
question: "Code review found {issues.length} issues. How to proceed?"
|
|
102
|
-
header: "Review Issues"
|
|
103
|
-
options:
|
|
104
|
-
- label: "Fix issues first"
|
|
105
|
-
description: "Return to implement phase to fix"
|
|
106
|
-
- label: "Proceed anyway"
|
|
107
|
-
description: "Continue with PR creation"
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
IF choice == "Fix issues first":
|
|
111
|
-
OUTPUT: "Returning to implement phase. Fix issues and run p. test again."
|
|
112
|
-
STOP
|
|
113
|
-
ELSE:
|
|
114
|
-
OUTPUT: "✓ MCP review passed. No high-confidence issues found."
|
|
115
|
-
SET: {mcpScore} = 100
|
|
116
|
-
|
|
117
|
-
## Step 4: Create/Check PR
|
|
118
|
-
|
|
119
|
-
### Check if PR exists
|
|
120
|
-
BASH: `gh pr view --json url,number,state 2>/dev/null`
|
|
121
|
-
|
|
122
|
-
IF PR exists:
|
|
123
|
-
SET: {prUrl} = result.url
|
|
124
|
-
SET: {prNumber} = result.number
|
|
125
|
-
SET: {prState} = result.state
|
|
126
|
-
OUTPUT: "PR exists: {prUrl}"
|
|
127
|
-
ELSE:
|
|
128
|
-
OUTPUT: "Creating PR..."
|
|
129
|
-
|
|
130
|
-
SET: {branchName} = currentTask.branch.name
|
|
131
|
-
SET: {baseBranch} = currentTask.branch.baseBranch OR "main"
|
|
132
|
-
|
|
133
|
-
BASH: `git push -u origin {branchName} 2>&1`
|
|
134
|
-
|
|
135
|
-
SET: {prTitle} = "{currentTask.type}: {currentTask.description}"
|
|
136
|
-
SET: {prBody} = """
|
|
137
|
-
## Summary
|
|
138
|
-
{currentTask.description}
|
|
139
|
-
|
|
140
|
-
## Workflow Phase
|
|
141
|
-
- [x] Analyze
|
|
142
|
-
- [x] Branch
|
|
143
|
-
- [x] Implement
|
|
144
|
-
- [x] Test
|
|
145
|
-
- [ ] Review ← current
|
|
146
|
-
- [ ] Merge
|
|
147
|
-
- [ ] Ship
|
|
148
|
-
- [ ] Verify
|
|
149
|
-
|
|
150
|
-
## MCP Review Score
|
|
151
|
-
{mcpScore}/100
|
|
152
|
-
|
|
153
|
-
---
|
|
154
|
-
Generated with [p/](https://www.prjct.app/)
|
|
155
|
-
"""
|
|
156
|
-
|
|
157
|
-
BASH: `gh pr create --title "{prTitle}" --base {baseBranch} --body "$(cat <<'PREOF'
|
|
158
|
-
{prBody}
|
|
159
|
-
PREOF
|
|
160
|
-
)"`
|
|
161
|
-
|
|
162
|
-
EXTRACT: {prUrl}, {prNumber} from output
|
|
163
|
-
|
|
164
|
-
## Step 5: Check GitHub Approvals
|
|
165
|
-
|
|
166
|
-
OUTPUT: "Checking for approvals..."
|
|
167
|
-
|
|
168
|
-
BASH: `gh pr view {prNumber} --json reviews,reviewDecision`
|
|
169
|
-
SET: {reviews} = result.reviews
|
|
170
|
-
SET: {decision} = result.reviewDecision
|
|
171
|
-
|
|
172
|
-
IF {decision} == "APPROVED":
|
|
173
|
-
SET: {approved} = true
|
|
174
|
-
SET: {approvals} = reviews where state == "APPROVED"
|
|
175
|
-
OUTPUT: "✓ PR approved by {approvals.length} reviewer(s)"
|
|
176
|
-
ELSE IF {decision} == "CHANGES_REQUESTED":
|
|
177
|
-
OUTPUT:
|
|
178
|
-
```
|
|
179
|
-
⚠️ Changes requested
|
|
180
|
-
|
|
181
|
-
{FOR each review where state == "CHANGES_REQUESTED":}
|
|
182
|
-
- {review.author}: {review.body}
|
|
183
|
-
{END FOR}
|
|
184
|
-
|
|
185
|
-
Address feedback, push changes, and run p. review again.
|
|
186
|
-
```
|
|
187
|
-
STOP
|
|
188
|
-
ELSE:
|
|
189
|
-
OUTPUT:
|
|
190
|
-
```
|
|
191
|
-
⏳ Waiting for approvals
|
|
192
|
-
|
|
193
|
-
PR: {prUrl}
|
|
194
|
-
|
|
195
|
-
Request review from team members, then run p. review again.
|
|
196
|
-
```
|
|
197
|
-
STOP
|
|
198
|
-
|
|
199
|
-
## Step 6: Update Workflow Phase
|
|
200
|
-
|
|
201
|
-
SET: {now} = GetTimestamp()
|
|
202
|
-
|
|
203
|
-
SET: currentTask.workflow.phase = "review"
|
|
204
|
-
SET: currentTask.workflow.checkpoints.review = {
|
|
205
|
-
"completedAt": "{now}",
|
|
206
|
-
"data": {
|
|
207
|
-
"mcpScore": {mcpScore},
|
|
208
|
-
"approvals": {approvals},
|
|
209
|
-
"prUrl": "{prUrl}",
|
|
210
|
-
"prNumber": {prNumber}
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
SET: currentTask.workflow.lastCheckpoint = "review"
|
|
214
|
-
SET: currentTask.branch.prUrl = "{prUrl}"
|
|
215
|
-
SET: currentTask.branch.prNumber = {prNumber}
|
|
216
|
-
|
|
217
|
-
WRITE: `{statePath}`
|
|
218
|
-
|
|
219
|
-
## Step 7: Log Events
|
|
220
|
-
|
|
221
|
-
APPEND to `{memoryPath}`:
|
|
222
|
-
```json
|
|
223
|
-
{"timestamp":"{now}","action":"phase_advanced","taskId":"{currentTask.id}","from":"test","to":"review"}
|
|
224
|
-
{"timestamp":"{now}","action":"checkpoint_completed","taskId":"{currentTask.id}","checkpoint":"review","data":{"mcpScore":{mcpScore},"approvals":{approvals.length}}}
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
APPEND to `{syncPath}`:
|
|
228
|
-
```json
|
|
229
|
-
{"type":"workflow.phase_advanced","data":{"taskId":"{currentTask.id}","from":"test","to":"review","prUrl":"{prUrl}"},"timestamp":"{now}"}
|
|
230
|
-
```
|
|
231
|
-
|
|
232
|
-
## Output
|
|
233
|
-
|
|
234
|
-
```
|
|
235
|
-
✓ Review Complete
|
|
236
|
-
|
|
237
|
-
Task: {currentTask.description}
|
|
238
|
-
MCP Score: {mcpScore}/100
|
|
239
|
-
Approvals: {approvals.length}
|
|
240
|
-
PR: {prUrl}
|
|
241
|
-
|
|
242
|
-
Phase: review (5/11 checkpoints)
|
|
243
|
-
|
|
244
|
-
Workflow:
|
|
245
|
-
1. analyze ✓
|
|
246
|
-
2. branch ✓
|
|
247
|
-
3. implement ✓
|
|
248
|
-
4. test ✓
|
|
249
|
-
5. review ✓
|
|
250
|
-
6. merge ← next
|
|
251
|
-
|
|
252
|
-
Next: p. merge to merge PR
|
|
253
|
-
```
|
|
254
|
-
|
|
255
|
-
## Error Handling
|
|
256
|
-
|
|
257
|
-
| Error | Response | Action |
|
|
258
|
-
|-------|----------|--------|
|
|
259
|
-
| No project | "No prjct project" | STOP |
|
|
260
|
-
| No active task | "No active task" | STOP |
|
|
261
|
-
| Wrong phase | Show required phase | STOP |
|
|
262
|
-
| MCP issues found | Ask user | WAIT |
|
|
263
|
-
| Changes requested | Show feedback | STOP |
|
|
264
|
-
| No approvals | Show PR URL | STOP |
|
|
265
|
-
| gh CLI missing | "Install gh CLI" | STOP |
|
|
266
|
-
|
|
267
|
-
## Natural Language Triggers
|
|
268
|
-
|
|
269
|
-
- `p. review` -> /p:review
|
|
270
|
-
- `p. code review` -> /p:review
|
|
271
|
-
- `p. pr` -> /p:review
|
|
272
|
-
|
|
273
|
-
## References
|
|
274
|
-
|
|
275
|
-
- Architecture: `~/.prjct-cli/docs/architecture.md`
|
|
276
|
-
- Workflow: `~/.prjct-cli/docs/workflow.md`
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
allowed-tools: [Read, Bash]
|
|
3
|
-
description: 'Start prjct web server for dashboard access'
|
|
4
|
-
timestamp-rule: 'GetTimestamp() for session start'
|
|
5
|
-
architecture: 'HTTP server with REST API and SSE'
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# /p:serve - Start Web Server
|
|
9
|
-
|
|
10
|
-
Starts the prjct HTTP server for web dashboard access and API.
|
|
11
|
-
|
|
12
|
-
## Usage
|
|
13
|
-
|
|
14
|
-
```
|
|
15
|
-
/p:serve [port]
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
- `port`: Optional port number (default: 3478)
|
|
19
|
-
|
|
20
|
-
## Flow
|
|
21
|
-
|
|
22
|
-
### Step 1: Validate Project
|
|
23
|
-
1. Read `.prjct/prjct.config.json` → extract projectId
|
|
24
|
-
2. If not found: "No prjct project. Run /p:init first." → STOP
|
|
25
|
-
|
|
26
|
-
### Step 2: Check Port
|
|
27
|
-
1. Default port: 3478 ("prjct" on phone keypad)
|
|
28
|
-
2. If port specified, validate it's a number between 1024-65535
|
|
29
|
-
3. Check if port is available
|
|
30
|
-
|
|
31
|
-
### Step 3: Start Server
|
|
32
|
-
Execute with Bun:
|
|
33
|
-
```bash
|
|
34
|
-
bun -e "
|
|
35
|
-
const { startServer } = require('./core/server');
|
|
36
|
-
startServer('{projectId}', '{projectPath}', {port});
|
|
37
|
-
"
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### Step 4: Output Server Info
|
|
41
|
-
|
|
42
|
-
```
|
|
43
|
-
🚀 prjct server started
|
|
44
|
-
|
|
45
|
-
URL: http://localhost:{port}
|
|
46
|
-
Project: {projectId}
|
|
47
|
-
|
|
48
|
-
Endpoints:
|
|
49
|
-
- GET /api/state Current task
|
|
50
|
-
- GET /api/queue Task queue
|
|
51
|
-
- GET /api/ideas Ideas backlog
|
|
52
|
-
- GET /api/roadmap Feature roadmap
|
|
53
|
-
- GET /api/shipped Shipped items
|
|
54
|
-
- GET /api/dashboard Combined data
|
|
55
|
-
- GET /api/events SSE stream
|
|
56
|
-
|
|
57
|
-
Press Ctrl+C to stop
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
## API Endpoints
|
|
61
|
-
|
|
62
|
-
| Endpoint | Method | Description |
|
|
63
|
-
|----------|--------|-------------|
|
|
64
|
-
| `/health` | GET | Server health check |
|
|
65
|
-
| `/api/state` | GET | Current task state |
|
|
66
|
-
| `/api/queue` | GET | Task queue |
|
|
67
|
-
| `/api/ideas` | GET | Ideas backlog |
|
|
68
|
-
| `/api/roadmap` | GET | Feature roadmap |
|
|
69
|
-
| `/api/shipped` | GET | Shipped items |
|
|
70
|
-
| `/api/dashboard` | GET | All data combined |
|
|
71
|
-
| `/api/events` | GET | SSE real-time stream |
|
|
72
|
-
| `/api/context/:name` | GET | Context markdown files |
|
|
73
|
-
|
|
74
|
-
## Real-Time Updates (SSE)
|
|
75
|
-
|
|
76
|
-
Connect to `/api/events` for live updates:
|
|
77
|
-
|
|
78
|
-
```javascript
|
|
79
|
-
const events = new EventSource('http://localhost:3478/api/events');
|
|
80
|
-
|
|
81
|
-
events.addEventListener('task:started', (e) => {
|
|
82
|
-
console.log('Task started:', JSON.parse(e.data));
|
|
83
|
-
});
|
|
84
|
-
|
|
85
|
-
events.addEventListener('task:completed', (e) => {
|
|
86
|
-
console.log('Task completed:', JSON.parse(e.data));
|
|
87
|
-
});
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
## Event Types
|
|
91
|
-
|
|
92
|
-
- `connected` - Initial connection established
|
|
93
|
-
- `heartbeat` - Keep-alive ping (every 30s)
|
|
94
|
-
- `task:started` - New task started
|
|
95
|
-
- `task:completed` - Task finished
|
|
96
|
-
- `task:paused` - Task paused
|
|
97
|
-
- `feature:shipped` - Feature shipped
|
|
98
|
-
- `state:updated` - State changed
|
|
99
|
-
- `queue:updated` - Queue changed
|
|
100
|
-
|
|
101
|
-
## Error Handling
|
|
102
|
-
|
|
103
|
-
| Error | Response |
|
|
104
|
-
|-------|----------|
|
|
105
|
-
| Project not initialized | Exit with message |
|
|
106
|
-
| Port in use | Suggest alternative port |
|
|
107
|
-
| Permission denied | Request elevated permissions |
|
|
108
|
-
|
|
109
|
-
## Output Format
|
|
110
|
-
|
|
111
|
-
```
|
|
112
|
-
🚀 prjct server started
|
|
113
|
-
|
|
114
|
-
URL: http://localhost:3478
|
|
115
|
-
Project: abc-123-def
|
|
116
|
-
|
|
117
|
-
Dashboard ready at http://localhost:3478
|
|
118
|
-
```
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
# /p:setup - Reconfigure prjct-cli Installation
|
|
2
|
-
|
|
3
|
-
Reconfigures prjct-cli installation for Claude Code and Claude Desktop.
|
|
4
|
-
|
|
5
|
-
## Usage
|
|
6
|
-
|
|
7
|
-
```
|
|
8
|
-
/p:setup [--force]
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## What This Command Does
|
|
12
|
-
|
|
13
|
-
1. **Detects Claude Installation**
|
|
14
|
-
- Checks if `~/.claude/` directory exists
|
|
15
|
-
- Verifies Claude Code or Claude Desktop is installed
|
|
16
|
-
|
|
17
|
-
2. **Syncs Commands to Claude**
|
|
18
|
-
- Updates all `/p:*` commands in `~/.claude/commands/p/`
|
|
19
|
-
- Adds new commands from latest version
|
|
20
|
-
- Updates existing commands with latest templates
|
|
21
|
-
- Removes orphaned/deprecated commands
|
|
22
|
-
|
|
23
|
-
3. **Installs MCP Servers**
|
|
24
|
-
- Reads `templates/mcp-config.json` for MCP server definitions
|
|
25
|
-
- Merges into `~/.claude/settings.json` (preserves existing settings)
|
|
26
|
-
- Installs Context7 for library documentation lookup
|
|
27
|
-
- Installs Atlassian for JIRA/Confluence (OAuth, SSO compatible)
|
|
28
|
-
- Does NOT overwrite existing MCP configurations
|
|
29
|
-
|
|
30
|
-
4. **Installs/Updates Global Configuration**
|
|
31
|
-
- Creates or updates `~/.claude/CLAUDE.md`
|
|
32
|
-
- Adds prjct-specific instructions for Claude
|
|
33
|
-
- Adds Context7 and Atlassian usage instructions
|
|
34
|
-
- Preserves existing user configuration
|
|
35
|
-
|
|
36
|
-
5. **Reports Results**
|
|
37
|
-
- Shows commands added, updated, removed
|
|
38
|
-
- Shows MCP servers installed
|
|
39
|
-
- Displays any errors encountered
|
|
40
|
-
- Confirms successful installation
|
|
41
|
-
|
|
42
|
-
## Options
|
|
43
|
-
|
|
44
|
-
- `--force`: Remove existing installation and reinstall from scratch
|
|
45
|
-
|
|
46
|
-
## When to Use
|
|
47
|
-
|
|
48
|
-
- **After updating prjct-cli**: `npm update -g prjct-cli && /p:setup`
|
|
49
|
-
- **Commands not working**: If `/p:*` commands aren't recognized
|
|
50
|
-
- **Fresh installation**: After installing on a new machine
|
|
51
|
-
- **Troubleshooting**: When encountering command-related issues
|
|
52
|
-
|
|
53
|
-
## Requirements
|
|
54
|
-
|
|
55
|
-
- Claude Code or Claude Desktop must be installed
|
|
56
|
-
- Write permissions to `~/.claude/` directory
|
|
57
|
-
|
|
58
|
-
## Output Example
|
|
59
|
-
|
|
60
|
-
```
|
|
61
|
-
🔧 Reconfiguring prjct...
|
|
62
|
-
|
|
63
|
-
📦 Installing /p:* commands...
|
|
64
|
-
✓ 3 new, 12 updated, 1 removed
|
|
65
|
-
|
|
66
|
-
🔌 Installing MCP servers...
|
|
67
|
-
✓ context7 (library documentation)
|
|
68
|
-
✓ Atlassian (JIRA/Confluence via OAuth)
|
|
69
|
-
|
|
70
|
-
📝 Installing global configuration...
|
|
71
|
-
✓ Updated ~/.claude/CLAUDE.md
|
|
72
|
-
✓ Updated ~/.claude/settings.json
|
|
73
|
-
|
|
74
|
-
✅ Setup complete!
|
|
75
|
-
|
|
76
|
-
MCP Tools Available:
|
|
77
|
-
• context7: resolve-library-id, get-library-docs
|
|
78
|
-
• Atlassian: jira_search_issues, jira_get_issue, jira_transition_issue
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
## Error Handling
|
|
82
|
-
|
|
83
|
-
- **Claude not detected**: Shows installation URLs for Claude Code/Desktop
|
|
84
|
-
- **Permission errors**: Reports which files couldn't be written
|
|
85
|
-
- **Template errors**: Lists which commands failed to install
|
|
86
|
-
|
|
87
|
-
## Notes
|
|
88
|
-
|
|
89
|
-
- This command does NOT require an initialized prjct project
|
|
90
|
-
- Safe to run multiple times (idempotent)
|
|
91
|
-
- Will not overwrite user customizations in `~/.claude/CLAUDE.md`
|