prjct-cli 3.60.0 → 3.62.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,18 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [3.62.0] - 2026-07-14
6
+
7
+ ### Features
8
+
9
+ - upload compact structural code graph to cloud 3D (#572)
10
+
11
+
12
+ ## [3.61.0] - 2026-07-14
13
+
14
+ ### Added
15
+ - clean comments readme align
16
+
5
17
  ## [3.60.0] - 2026-07-14
6
18
 
7
19
  ### Added
package/README.md CHANGED
@@ -106,13 +106,17 @@ After install, **next session in any prjct-cli project**:
106
106
  - **Lookup-first protocol**: Claude queries prjct (`prjct search`, `prjct context memory`, MCP `prjct_*`) BEFORE re-exploring source. Cuts ~10K tokens of exploration per session.
107
107
  - **Auto-capture**: Stop hook scans the assistant transcript and persists durable insights (decisions/learnings/gotchas) tagged for dedup. The next session finds them via recall.
108
108
  - **Pattern detection**: Stop hook detects hot files (>3 changes in 7 days), recurring bugs (gotchas with the same topic), tech-debt growth (TODO/FIXME count rising). All persisted as learnings, surfaced next session.
109
- - **5 quality workflows** activated by natural language ("review this branch", "qa the UI", "security check", "investigate this bug"):
109
+ - **6 quality workflows** activated by natural language ("review this branch", "qa the UI", "security check", "investigate this bug"):
110
110
  - `review` — Production Bug Hunt + Completeness Gate (3 modes)
111
111
  - `qa` — Real Browser, Atomic Fixes, Regression Tests
112
112
  - `security` — OWASP Top 10 + STRIDE, 8/10 confidence gate, concrete exploit per finding
113
113
  - `investigate` — Iron Law (no fix without investigation), max 3 failed hypotheses
114
- - `ship` (endurecido) — Coverage Gate + Auto-Document
114
+ - `ship` (hardened) — Coverage Gate + Auto-Document
115
+ - `audit` — one-shot orchestrator: review + security + investigate combined
115
116
  - **Delivery-geometry advisory** (`prjct review-risk`): reads the committed changeset vs the merge-base and suggests a size tier (trivial/normal/large) + whether to ship direct, as one PR, or split — with the touched top-level dirs as natural split lines. Purely advisory: never gates, never mutates git.
117
+ - **Session ceremonies**: `prjct prime` restores the full work state at session start; `prjct land` closes it — hand-off persisted to SQLite plus memory consolidation via `prjct dream` when its gates open.
118
+ - **Multi-agent work graph**: dependency edges, ready frontier, race-free `prjct claim`, topological `prjct phases` — fan several agents out on one cycle without collisions. `prjct crew` runs the leader / implementers / reviewer flow.
119
+ - **Code symbol graph**: `prjct code symbols|trace|impact|architecture|dead` — structural code intel built by `prjct sync` and injected by hooks alongside Grep results.
116
120
 
117
121
  ## How it works
118
122
 
@@ -286,10 +290,17 @@ Cursor and Windsurf use their installed prjct router files; otherwise run `prjct
286
290
  | `prjct sync` | Re-index files, git co-change, imports; refresh project analysis. |
287
291
  | `prjct agents doctor` | Show the auditable compatibility matrix for local and project agent runtimes. |
288
292
  | `prjct review-risk` | Advisory change-size + delivery-geometry signal for the branch (read-only; never gates, never splits). |
293
+ | `prjct prime` / `prjct land` | Open / close a session: restore full work state · persist hand-off + trigger memory consolidation. |
294
+ | `prjct dream` | Consolidate memory: orient / gather / consolidate / prune. |
295
+ | `prjct ready` / `claim` / `depend` / `phases` | Multi-agent work graph: ready frontier, race-free claim, dependency edges, topological phases. |
296
+ | `prjct crew` | Multi-subagent crew flow: leader / implementers / reviewer. |
297
+ | `prjct code <sub>` | Symbol-graph queries: `symbols`, `trace`, `impact`, `architecture`, `dead`. |
298
+ | `prjct tdd` / `sdd` / `lean` | Quality gates: test-first, spec-driven development, anti-over-engineering. |
299
+ | `prjct memory export` / `import` | Git-shareable memory bundles for teams without cloud sync. |
289
300
 
290
301
  Compatibility aliases from v2 still execute for existing scripts: `task`,
291
302
  `status`, `tag`, `capture`, `spec`, `audit-spec`, `value`, `memory-doctor`,
292
- `report`, `handoff`, `guardrails`, `regen`, and `analyze`. They are no longer
303
+ `report`, `handoff`, `guardrails`, and `analyze`. They are no longer
293
304
  the product surface.
294
305
 
295
306
  ## Personas & Packs
@@ -308,46 +319,54 @@ the product surface.
308
319
  }
309
320
  ```
310
321
 
311
- Five built-in packs (manifests, not bash pipelines):
322
+ Seven built-in packs (TypeScript manifests in `core/packs/manifests.ts`, not bash pipelines):
312
323
 
313
324
  | Pack | Persona | Memory types enabled | Workflow slots |
314
325
  |---|---|---|---|
315
326
  | `code` | DEV | `fact`, `decision`, `learning`, `gotcha`, `pattern`, `anti-pattern`, `shipped` | `ship`, `review` |
327
+ | `code-strict` | DEV | same as `code`, with SDD+TDD strict + delivery-geometry / land / conflict gates | `ship`, `review` |
316
328
  | `daily` | — | `inbox`, `todo`, `idea` | `morning`, `clarify`, `review` |
317
- | `pm` | PM | `decision`, `insight`, `question`, `stakeholder` | `spec`, `triage`, `update` |
318
- | `founder` | Founder | `goal`, `okr`, `person`, `stakeholder`, `decision` | `ship`, `review` |
319
- | `research` | Research | `source`, `claim`, `question`, `insight` | `research`, `review` |
329
+ | `pm` | PM | `insight`, `question`, `stakeholder`, `decision`, `source` | `spec`, `triage`, `interview` |
330
+ | `founder` | Founder | `goal`, `okr`, `person`, `stakeholder`, `decision`, `shipped` | `investor-update`, `1on1`, `strategy` |
331
+ | `lean` | | `over-engineering`, `lean-debt` | `review`, `audit`, `debt` |
332
+ | `research` | Research | `source`, `claim`, `question`, `insight` | `lit-review`, `analyze` |
320
333
 
321
334
  Slots ship **empty** — the human or the agent fills them on demand.
322
335
 
323
336
  ## Claude Hooks Adapter (opt-in)
324
337
 
325
- `prjct install` refreshes the universal project surface (`AGENTS.md`) when run inside a prjct project, writes the Claude Code hooks adapter to `~/.claude/settings.json`, and repairs detected Codex config in `~/.codex/config.toml` (prjct MCP + TUI `status_line`). The Claude hooks inject `additionalContext`; none block by default. Other agents use the support level shown by `prjct agents doctor`.
338
+ `prjct install` refreshes the universal project surface (`AGENTS.md`) when run inside a prjct project, writes the Claude Code hooks adapter to `~/.claude/settings.json`, and repairs detected Codex config in `~/.codex/config.toml` (prjct MCP + TUI `status_line`). Most of the 13 hook subcommands inject `additionalContext`; two guard: the credential guard denies tool calls that would leak secrets, and the package guard denies unknown installs under strict packs. Other agents use the support level shown by `prjct agents doctor`.
326
339
 
327
- | Event | Injects |
340
+ | Event | Does |
328
341
  |---|---|
329
342
  | `SessionStart` | Persona; on cold start (startup/clear/compact) also the knowledge digest — top traps + decisions in force, so a freshly-updated model starts grounded |
330
343
  | `UserPromptSubmit` | Active project state (task, branch, inbox) |
344
+ | `PreToolUse` (any tool) | Credential guard — **denies** the call when tool arguments contain secret material, so credentials never leave the machine |
345
+ | `PreToolUse` (Bash package installs) | Package legitimacy — flags packages not already in `package.json` before the install runs (strict packs deny) |
331
346
  | `PreToolUse` (Bash git commit) | Anti-patterns tagged with touched files |
332
347
  | `PreToolUse` (Edit/Write) | The file's preventive memory (gotchas/anti-patterns) right before you edit it — pushes what `prjct guard` makes pull |
348
+ | `PreToolUse` (Grep/Glob) | Injects indexed symbol-graph hits alongside search results (never gates) |
333
349
  | `PostToolUse` (Edit/Write) | Silently annotates `files_touched` on active task |
334
350
  | `Stop` | Async prompt: "learn anything reusable?"; scans the transcript for durable captures |
335
351
  | `SubagentStart` | Persona for fresh-brain subagents (cache-stable, digest-free) |
352
+ | `SubagentStop` | Desktop notification when a subagent finishes (`config.notify`, default on) |
353
+ | `Notification` | Desktop notification when the agent is waiting for input or permission |
336
354
  | `CwdChanged` | Re-contextualizes on project switch |
337
355
 
338
356
  Remove with `prjct claude uninstall` (hooks only) or `prjct uninstall` (everything).
339
357
 
340
358
  ## MCP Server
341
359
 
342
- prjct-cli exposes an MCP server with 5 tool groups:
360
+ prjct-cli exposes an MCP server with 6 tool groups (every tool is prefixed `prjct_`):
343
361
 
344
362
  | Group | Tools |
345
363
  |---|---|
346
- | **memory** | save, list, similar, forget |
347
- | **project** | patterns, status, summary |
348
- | **files** | files, recent |
349
- | **workflow** | list, run, log |
350
- | **code-intel** | related, impact, stale |
364
+ | **memory** | `mem_save`, `mem_list`, `mem_similar`, `mem_forget`, `guard`, `record_decision` / `record_gotcha` / `record_learning` / `record_fact`, `capture_inbox` |
365
+ | **project** | `session_resume`, `task_status`, `task_start`, `task_set_status`, `analysis`, `cost_add`, `developer`, `signals`, `skills`, `context_tiers`, `safe_artifacts` |
366
+ | **files** | `relevant_files`, `signatures`, `history` |
367
+ | **workflow** | `workflow_rules`, `workflow_list`, `workflow_status` |
368
+ | **code-intel** | `impact_analysis`, `search_symbols`, `trace_path`, `architecture`, `cochange`, `dead_code`, `import_graph`, `related_context` |
369
+ | **spec** | 9 `spec_*` tools — create, get, list, update, and the rest of the SDD lifecycle |
351
370
 
352
371
  The broker model: if you already have `linear`, `jira`, `posthog`, `gmail` MCPs wired, prjct-cli **does not duplicate them** — it tells your agent they're available for the current persona and caches your insights locally.
353
372
 
@@ -375,9 +394,9 @@ Every command supports `--md` to emit LLM-optimized markdown for agent consumpti
375
394
 
376
395
  ## Memory
377
396
 
378
- 14 built-in types + user-defined lowercase identifiers:
397
+ 20 built-in types + user-defined lowercase identifiers:
379
398
 
380
- `fact`, `decision`, `learning`, `gotcha`, `pattern`, `anti-pattern`, `shipped`, `inbox`, `todo`, `idea`, `insight`, `question`, `source`, `person` — plus anything you invent (`recipe`, `workout`, `interview`, …).
399
+ `fact`, `decision`, `learning`, `gotcha`, `pattern`, `anti-pattern`, `shipped`, `identity`, `voice`, `glossary`, `framework`, `context`, `inbox`, `todo`, `idea`, `insight`, `question`, `source`, `person`, `spec` — plus anything you invent (`recipe`, `workout`, `interview`, …). Packs add more on top (e.g. `goal`, `okr` from `founder`).
381
400
 
382
401
  ```bash
383
402
  prjct remember decision "we chose SQLite because the app is local"
@@ -434,15 +453,16 @@ Without a key the built-in local embedder is used. Vector dimensionality is dete
434
453
 
435
454
  ## Code Intelligence
436
455
 
437
- `prjct sync` builds three indexes:
456
+ `prjct sync` builds four indexes:
438
457
 
439
458
  | Index | Purpose |
440
459
  |---|---|
441
460
  | BM25 | Full-text search over names, symbols, comments |
461
+ | Symbol graph | Structural code symbols + call sites — powers `prjct code symbols/trace/impact/architecture/dead` and the Grep/Glob hook augment |
442
462
  | Import graph | Forward + reverse dependency edges |
443
463
  | Git co-change | Files that change together |
444
464
 
445
- A combined ranker fuses the three signals (`core/domain/file-ranker.ts`) and powers `prjct context files`, plus `prjct_related`, `prjct_impact`, and `prjct_stale` in the MCP server.
465
+ A combined ranker fuses the signals (`core/domain/file-ranker.ts`) and powers `prjct context files`, plus the code-intel MCP tools (`prjct_related_context`, `prjct_impact_analysis`, `prjct_search_symbols`, `prjct_trace_path`, …).
446
466
 
447
467
  ## Issue Tracker Integration
448
468
 
@@ -469,28 +489,42 @@ Bring your own MCP — prjct-cli doesn't duplicate trackers.
469
489
  ```
470
490
  prjct-cli/
471
491
  bin/prjct.cjs Portable package-manager launcher
472
- dist/bin/prjct.mjs Thin JS shim (daemon-first)
492
+ bin/prjct.ts Source entry daemon + hook fast paths, self-heal
493
+ dist/bin/prjct.mjs Built JS shim (daemon-first)
473
494
  core/
474
- cli/ CLI command handlers + dispatcher
475
- hooks/ 7 passive Claude Code hook subcommands
476
- packs/ Pack manifests + pack-manager
477
- mcp/ MCP server (5 tool groups)
478
- domain/ BM25, import-graph, git-cochange, file-ranker
479
- services/ sync-service, skill-generator, pattern-detector
480
- storage/ SQLite (one DB per project) — source of truth
495
+ agentic/ Agent template loader
496
+ cli/ Bin-command helpers
497
+ commands/ Command registry (command-data.ts) + all verb handlers
498
+ config/ Static command-context config
499
+ constants/ Algorithm / timing / token constants
500
+ daemon/ Background daemon (client, dispatch, protocol)
501
+ domain/ BM25, symbol graph, import-graph, git-cochange, file-ranker
502
+ eval/ Retrieval evals + ledger
503
+ events/ Sync event bus
504
+ hooks/ 13 hook subcommands (Claude Code adapter)
505
+ infrastructure/ path-manager, ai-provider, command-installer, agent-detector
506
+ mcp/ MCP server (6 tool groups)
507
+ memory/ Memory model, recall, formatting
508
+ packs/ Pack manifests (TS) + pack-manager
481
509
  schemas/ Zod — runtime validation
482
- infrastructure/ path-manager, ai-provider, command-installer
483
- daemon/ Background daemon (file watching)
484
- sync/ Cloud sync client + auth-config
510
+ services/ sync-service, skill-generator, embeddings, retention
511
+ session/ Git session helpers
512
+ storage/ SQLite (one DB per project) — source of truth
513
+ sync/ Cloud sync client + auth + entity handlers
514
+ tools/ Context tools (signatures, history, relevant files)
515
+ types/ Shared TypeScript types
516
+ utils/ Output, branding, cache helpers
517
+ workflow-engine/ Rule state-machine + when-evaluator
518
+ workflows/ Onboarding wizard
485
519
  templates/
486
- commands/ Thin per-command templates (defer to CLI --md)
487
- packs/ JSON pack manifests
520
+ codex/ crew/ cursor/ windsurf/ antigravity/ Per-agent surfaces
488
521
  global/ Per-editor router templates
522
+ skills/ Skill templates
489
523
  ```
490
524
 
491
525
  ## Requirements
492
526
 
493
- - Node.js 22.22.2+ or Bun 1.0+
527
+ - Node.js 22.5+ (ships `node:sqlite`) or Bun 1.0+
494
528
  - One of: Claude Code, Gemini CLI, Cursor IDE, Windsurf, OpenAI Codex, Antigravity
495
529
 
496
530
  ## Common questions