ultimate-pi 0.1.7 → 0.2.2

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 (524) hide show
  1. package/.agents/skills/graphify/.graphify_version +1 -0
  2. package/.agents/skills/graphify/SKILL.md +1204 -0
  3. package/.agents/skills/wiki-autoresearch/SKILL.md +225 -97
  4. package/.agents/skills/wiki-autoresearch/references/program.md +28 -62
  5. package/.agents/skills/wiki-autoresearch/references/quality-sites.md +32 -0
  6. package/.env.example +5 -1
  7. package/.gitattributes +1 -0
  8. package/.github/workflows/publish-github-packages.yml +1 -1
  9. package/.pi/SYSTEM.md +72 -18
  10. package/.pi/agents/harness/adversary.md +32 -0
  11. package/.pi/agents/harness/evaluator.md +32 -0
  12. package/.pi/agents/harness/executor.md +34 -0
  13. package/.pi/agents/harness/meta-optimizer.md +33 -0
  14. package/.pi/agents/harness/planner.md +33 -0
  15. package/.pi/agents/harness/tie-breaker.md +35 -0
  16. package/.pi/agents/harness/trace-librarian.md +32 -0
  17. package/.pi/extensions/banner.png +0 -0
  18. package/.pi/extensions/budget-guard.ts +265 -0
  19. package/.pi/extensions/custom-footer.ts +194 -22
  20. package/.pi/extensions/custom-header.ts +47 -9
  21. package/.pi/extensions/debate-orchestrator.ts +479 -0
  22. package/.pi/extensions/harness-live-widget.ts +438 -0
  23. package/.pi/extensions/policy-gate.ts +349 -0
  24. package/.pi/extensions/review-integrity.ts +198 -0
  25. package/.pi/extensions/test-diff-integrity.ts +240 -0
  26. package/.pi/extensions/trace-recorder.ts +315 -0
  27. package/.pi/harness/README.md +23 -0
  28. package/.pi/harness/router/README.md +35 -0
  29. package/.pi/harness/router/apply-router-proposal.mjs +153 -0
  30. package/.pi/harness/router/propose-router-tuning.mjs +149 -0
  31. package/.pi/harness/specs/README.md +37 -0
  32. package/.pi/harness/specs/adversary-report.schema.json +53 -0
  33. package/.pi/harness/specs/budget-exhausted-event.schema.json +93 -0
  34. package/.pi/harness/specs/consensus-packet.schema.json +175 -0
  35. package/.pi/harness/specs/eval-verdict.schema.json +59 -0
  36. package/.pi/harness/specs/incident-record.schema.json +84 -0
  37. package/.pi/harness/specs/plan-packet.schema.json +90 -0
  38. package/.pi/harness/specs/round-result.schema.json +126 -0
  39. package/.pi/harness/specs/router-tuning-proposal.schema.json +114 -0
  40. package/.pi/harness/specs/run-trace.schema.json +107 -0
  41. package/.pi/lib/harness-ui-state.ts +311 -0
  42. package/.pi/mcp.json +4 -0
  43. package/.pi/model-router.json +93 -93
  44. package/.pi/prompts/graphify.md +23 -0
  45. package/.pi/prompts/harness-abort.md +41 -0
  46. package/.pi/prompts/harness-auto.md +83 -0
  47. package/.pi/prompts/harness-critic.md +52 -0
  48. package/.pi/prompts/harness-eval.md +51 -0
  49. package/.pi/prompts/harness-incident.md +51 -0
  50. package/.pi/prompts/harness-plan.md +64 -0
  51. package/.pi/prompts/harness-review.md +52 -0
  52. package/.pi/prompts/harness-router-tune.md +74 -0
  53. package/.pi/prompts/harness-run.md +59 -0
  54. package/.pi/prompts/harness-setup.md +316 -216
  55. package/.pi/prompts/harness-trace.md +51 -0
  56. package/.pi/prompts/wiki-autoresearch.md +9 -7
  57. package/.pi/prompts/wiki-save.md +20 -0
  58. package/.pi/skills/agent-router/SKILL.md +2 -4
  59. package/.pi/skills/ast-grep/SKILL.md +354 -0
  60. package/.pi/sounds/project-sounds.json +18 -24
  61. package/AGENTS.md +30 -0
  62. package/CHANGELOG.md +89 -0
  63. package/CONTRIBUTING.md +51 -1
  64. package/README.md +264 -20
  65. package/biome.json +8 -2
  66. package/lefthook.yml +3 -2
  67. package/node_modules/@sting8k/pi-vcc/README.md +200 -0
  68. package/node_modules/@sting8k/pi-vcc/index.ts +14 -0
  69. package/node_modules/@sting8k/pi-vcc/package.json +26 -0
  70. package/node_modules/@sting8k/pi-vcc/scripts/audit-sessions.ts +88 -0
  71. package/node_modules/@sting8k/pi-vcc/scripts/benchmark-real-sessions.ts +25 -0
  72. package/node_modules/@sting8k/pi-vcc/scripts/compare-before-after.ts +36 -0
  73. package/node_modules/@sting8k/pi-vcc/scripts/dump-branch-output.ts +20 -0
  74. package/node_modules/@sting8k/pi-vcc/src/commands/pi-vcc.ts +36 -0
  75. package/node_modules/@sting8k/pi-vcc/src/commands/vcc-recall.ts +65 -0
  76. package/node_modules/@sting8k/pi-vcc/src/core/brief.ts +381 -0
  77. package/node_modules/@sting8k/pi-vcc/src/core/build-sections.ts +79 -0
  78. package/node_modules/@sting8k/pi-vcc/src/core/content.ts +60 -0
  79. package/node_modules/@sting8k/pi-vcc/src/core/filter-noise.ts +42 -0
  80. package/node_modules/@sting8k/pi-vcc/src/core/format-recall.ts +27 -0
  81. package/node_modules/@sting8k/pi-vcc/src/core/format.ts +49 -0
  82. package/node_modules/@sting8k/pi-vcc/src/core/lineage.ts +26 -0
  83. package/node_modules/@sting8k/pi-vcc/src/core/load-messages.ts +41 -0
  84. package/node_modules/@sting8k/pi-vcc/src/core/normalize.ts +66 -0
  85. package/node_modules/@sting8k/pi-vcc/src/core/recall-scope.ts +14 -0
  86. package/node_modules/@sting8k/pi-vcc/src/core/render-entries.ts +55 -0
  87. package/node_modules/@sting8k/pi-vcc/src/core/report.ts +237 -0
  88. package/node_modules/@sting8k/pi-vcc/src/core/sanitize.ts +5 -0
  89. package/node_modules/@sting8k/pi-vcc/src/core/search-entries.ts +221 -0
  90. package/node_modules/@sting8k/pi-vcc/src/core/settings.ts +77 -0
  91. package/node_modules/@sting8k/pi-vcc/src/core/skill-collapse.ts +35 -0
  92. package/node_modules/@sting8k/pi-vcc/src/core/summarize.ts +157 -0
  93. package/node_modules/@sting8k/pi-vcc/src/core/tool-args.ts +14 -0
  94. package/node_modules/@sting8k/pi-vcc/src/details.ts +7 -0
  95. package/node_modules/@sting8k/pi-vcc/src/extract/commits.ts +69 -0
  96. package/node_modules/@sting8k/pi-vcc/src/extract/files.ts +80 -0
  97. package/node_modules/@sting8k/pi-vcc/src/extract/goals.ts +79 -0
  98. package/node_modules/@sting8k/pi-vcc/src/extract/preferences.ts +55 -0
  99. package/node_modules/@sting8k/pi-vcc/src/hooks/before-compact.ts +322 -0
  100. package/node_modules/@sting8k/pi-vcc/src/sections.ts +12 -0
  101. package/node_modules/@sting8k/pi-vcc/src/tools/recall.ts +109 -0
  102. package/node_modules/@sting8k/pi-vcc/src/types.ts +14 -0
  103. package/node_modules/@sting8k/pi-vcc/tests/before-compact-hook.test.ts +181 -0
  104. package/node_modules/@sting8k/pi-vcc/tests/before-compact.test.ts +140 -0
  105. package/node_modules/@sting8k/pi-vcc/tests/brief.test.ts +206 -0
  106. package/node_modules/@sting8k/pi-vcc/tests/build-sections.test.ts +59 -0
  107. package/node_modules/@sting8k/pi-vcc/tests/compile.test.ts +80 -0
  108. package/node_modules/@sting8k/pi-vcc/tests/content.test.ts +31 -0
  109. package/node_modules/@sting8k/pi-vcc/tests/extract-goals.test.ts +86 -0
  110. package/node_modules/@sting8k/pi-vcc/tests/extract-preferences.test.ts +30 -0
  111. package/node_modules/@sting8k/pi-vcc/tests/filter-noise.test.ts +61 -0
  112. package/node_modules/@sting8k/pi-vcc/tests/fixtures.ts +61 -0
  113. package/node_modules/@sting8k/pi-vcc/tests/format-recall.test.ts +30 -0
  114. package/node_modules/@sting8k/pi-vcc/tests/format.test.ts +62 -0
  115. package/node_modules/@sting8k/pi-vcc/tests/lineage.test.ts +33 -0
  116. package/node_modules/@sting8k/pi-vcc/tests/load-messages.test.ts +51 -0
  117. package/node_modules/@sting8k/pi-vcc/tests/normalize.test.ts +97 -0
  118. package/node_modules/@sting8k/pi-vcc/tests/real-sessions.test.ts +38 -0
  119. package/node_modules/@sting8k/pi-vcc/tests/recall-expand.test.ts +15 -0
  120. package/node_modules/@sting8k/pi-vcc/tests/recall-scope.test.ts +32 -0
  121. package/node_modules/@sting8k/pi-vcc/tests/recall-tool-scope.test.ts +67 -0
  122. package/node_modules/@sting8k/pi-vcc/tests/render-entries.test.ts +62 -0
  123. package/node_modules/@sting8k/pi-vcc/tests/report.test.ts +44 -0
  124. package/node_modules/@sting8k/pi-vcc/tests/sanitize.test.ts +24 -0
  125. package/node_modules/@sting8k/pi-vcc/tests/search-entries.test.ts +144 -0
  126. package/node_modules/@sting8k/pi-vcc/tests/support/load-session.ts +23 -0
  127. package/node_modules/@sting8k/pi-vcc/tests/support/real-sessions.ts +51 -0
  128. package/package.json +15 -4
  129. package/scripts/__pycache__/merge_graphify_corpora.cpython-314.pyc +0 -0
  130. package/scripts/index_youtube_urls.py +376 -0
  131. package/scripts/merge_graphify_corpora.py +398 -0
  132. package/scripts/regen_graphify_html.py +46 -0
  133. package/.agents/skills/defuddle/SKILL.md +0 -90
  134. package/.agents/skills/wiki/SKILL.md +0 -215
  135. package/.agents/skills/wiki/references/css-snippets.md +0 -122
  136. package/.agents/skills/wiki/references/frontmatter.md +0 -107
  137. package/.agents/skills/wiki/references/git-setup.md +0 -58
  138. package/.agents/skills/wiki/references/mcp-setup.md +0 -149
  139. package/.agents/skills/wiki/references/modes.md +0 -259
  140. package/.agents/skills/wiki/references/plugins.md +0 -96
  141. package/.agents/skills/wiki/references/rest-api.md +0 -124
  142. package/.agents/skills/wiki-fold/SKILL.md +0 -204
  143. package/.agents/skills/wiki-fold/references/fold-template.md +0 -133
  144. package/.agents/skills/wiki-ingest/SKILL.md +0 -288
  145. package/.agents/skills/wiki-lint/SKILL.md +0 -183
  146. package/.agents/skills/wiki-query/SKILL.md +0 -176
  147. package/.pi/agents/rethink.md +0 -140
  148. package/.pi/agents/wiki-ingest.md +0 -67
  149. package/.pi/agents/wiki-lint.md +0 -75
  150. package/.pi/internal/cursor-sdk-transcript-parser.ts +0 -59
  151. package/.pi/prompts/save.md +0 -16
  152. package/.pi/prompts/wiki.md +0 -23
  153. package/.pi/providers/cursor-sdk-provider.test.mjs +0 -476
  154. package/.pi/providers/cursor-sdk-provider.ts +0 -1085
  155. package/vault/AGENTS.md +0 -37
  156. package/vault/wiki/_templates/comparison.md +0 -39
  157. package/vault/wiki/_templates/concept.md +0 -40
  158. package/vault/wiki/_templates/decision.md +0 -21
  159. package/vault/wiki/_templates/entity.md +0 -32
  160. package/vault/wiki/_templates/flow.md +0 -14
  161. package/vault/wiki/_templates/module.md +0 -18
  162. package/vault/wiki/_templates/question.md +0 -31
  163. package/vault/wiki/_templates/source.md +0 -39
  164. package/vault/wiki/concepts/AST-Aware Code Chunking.md +0 -44
  165. package/vault/wiki/concepts/Build-Time Prompt Compilation.md +0 -107
  166. package/vault/wiki/concepts/Context Engine (AI Coding).md +0 -47
  167. package/vault/wiki/concepts/Context-Aware System Reminders.md +0 -61
  168. package/vault/wiki/concepts/Contextualized Text Embedding.md +0 -42
  169. package/vault/wiki/concepts/Contractor vs Employee AI Model.md +0 -55
  170. package/vault/wiki/concepts/Dual-Model Agent Architecture.md +0 -65
  171. package/vault/wiki/concepts/Late Chunking vs Early Chunking.md +0 -43
  172. package/vault/wiki/concepts/Majority Vote Ensembling.md +0 -68
  173. package/vault/wiki/concepts/Meta-Harness.md +0 -16
  174. package/vault/wiki/concepts/Multi-Agent AI Coding Architecture.md +0 -75
  175. package/vault/wiki/concepts/Prompt Enhancement.md +0 -90
  176. package/vault/wiki/concepts/Prompt Renderer.md +0 -89
  177. package/vault/wiki/concepts/Semantic Codebase Indexing.md +0 -67
  178. package/vault/wiki/concepts/additive-config-hierarchy.md +0 -16
  179. package/vault/wiki/concepts/agent-artifacts-verifiable-deliverables.md +0 -71
  180. package/vault/wiki/concepts/agent-browser-browser-automation.md +0 -99
  181. package/vault/wiki/concepts/agent-codebase-interface.md +0 -43
  182. package/vault/wiki/concepts/agent-harness-architecture.md +0 -67
  183. package/vault/wiki/concepts/agent-loop-detection-patterns.md +0 -133
  184. package/vault/wiki/concepts/agent-search-enforcement.md +0 -126
  185. package/vault/wiki/concepts/agent-skills-ecosystem.md +0 -74
  186. package/vault/wiki/concepts/agent-skills-pattern.md +0 -68
  187. package/vault/wiki/concepts/agentic-harness-context-enforcement.md +0 -91
  188. package/vault/wiki/concepts/agentic-harness.md +0 -34
  189. package/vault/wiki/concepts/agentic-orchestration-pipeline.md +0 -56
  190. package/vault/wiki/concepts/agentic-search-no-embeddings.md +0 -18
  191. package/vault/wiki/concepts/anthropic-context-engineering.md +0 -13
  192. package/vault/wiki/concepts/antigravity-agent-first-architecture.md +0 -61
  193. package/vault/wiki/concepts/ast-compression.md +0 -19
  194. package/vault/wiki/concepts/ast-truncation.md +0 -66
  195. package/vault/wiki/concepts/barrel-files.md +0 -37
  196. package/vault/wiki/concepts/browser-harness-agent.md +0 -41
  197. package/vault/wiki/concepts/browser-subagent-visual-verification.md +0 -82
  198. package/vault/wiki/concepts/codebase-intelligence-ecosystem-comparison.md +0 -192
  199. package/vault/wiki/concepts/codebase-intelligence-harness-integration.md +0 -161
  200. package/vault/wiki/concepts/codebase-to-context-ingestion.md +0 -46
  201. package/vault/wiki/concepts/codex-harness-innovations.md +0 -147
  202. package/vault/wiki/concepts/consensus-debate-flow.md +0 -17
  203. package/vault/wiki/concepts/consensus-debate.md +0 -206
  204. package/vault/wiki/concepts/content-addressed-spec-identity.md +0 -166
  205. package/vault/wiki/concepts/context-anxiety.md +0 -57
  206. package/vault/wiki/concepts/context-compression-techniques.md +0 -19
  207. package/vault/wiki/concepts/context-continuity.md +0 -22
  208. package/vault/wiki/concepts/context-drift-in-agents.md +0 -106
  209. package/vault/wiki/concepts/context-engineering.md +0 -62
  210. package/vault/wiki/concepts/context-folding.md +0 -67
  211. package/vault/wiki/concepts/context-mode.md +0 -38
  212. package/vault/wiki/concepts/cursor-harness-innovations.md +0 -107
  213. package/vault/wiki/concepts/deterministic-session-compaction.md +0 -79
  214. package/vault/wiki/concepts/drift-detection-unified.md +0 -296
  215. package/vault/wiki/concepts/execution-feedback-loop.md +0 -46
  216. package/vault/wiki/concepts/feedforward-feedback-harness.md +0 -60
  217. package/vault/wiki/concepts/five-root-cause-metrics-sentrux.md +0 -40
  218. package/vault/wiki/concepts/fork-safe-spec-storage.md +0 -89
  219. package/vault/wiki/concepts/fts5-sandbox.md +0 -19
  220. package/vault/wiki/concepts/fuzzy-edit-matching.md +0 -71
  221. package/vault/wiki/concepts/gemini-cli-architecture.md +0 -104
  222. package/vault/wiki/concepts/generator-evaluator-architecture.md +0 -64
  223. package/vault/wiki/concepts/guardian-agent-pattern.md +0 -67
  224. package/vault/wiki/concepts/harness-configuration-layers.md +0 -89
  225. package/vault/wiki/concepts/harness-control-frameworks.md +0 -155
  226. package/vault/wiki/concepts/harness-engineering-first-principles.md +0 -90
  227. package/vault/wiki/concepts/harness-h-formalism.md +0 -53
  228. package/vault/wiki/concepts/hybrid-code-search.md +0 -61
  229. package/vault/wiki/concepts/inline-post-edit-validation.md +0 -112
  230. package/vault/wiki/concepts/legendary-engineering-patterns-harness.md +0 -110
  231. package/vault/wiki/concepts/lifecycle-hooks.md +0 -94
  232. package/vault/wiki/concepts/mcp-tool-routing.md +0 -102
  233. package/vault/wiki/concepts/memory-system-of-record-vs-ephemeral-cache.md +0 -47
  234. package/vault/wiki/concepts/meta-agent-context-pruning.md +0 -151
  235. package/vault/wiki/concepts/model-adaptive-harness.md +0 -122
  236. package/vault/wiki/concepts/model-routing-agents.md +0 -101
  237. package/vault/wiki/concepts/monorepo-architecture.md +0 -45
  238. package/vault/wiki/concepts/multi-agent-specialization.md +0 -61
  239. package/vault/wiki/concepts/permission-subsystem.md +0 -16
  240. package/vault/wiki/concepts/pi-messenger-analysis.md +0 -243
  241. package/vault/wiki/concepts/pi-vscode-extension-landscape.md +0 -37
  242. package/vault/wiki/concepts/policy-engine-pattern.md +0 -78
  243. package/vault/wiki/concepts/progressive-disclosure-agents.md +0 -53
  244. package/vault/wiki/concepts/progressive-skill-disclosure.md +0 -17
  245. package/vault/wiki/concepts/provider-native-prompting.md +0 -203
  246. package/vault/wiki/concepts/quality-signal-sentrux.md +0 -37
  247. package/vault/wiki/concepts/repo-map-ranking.md +0 -42
  248. package/vault/wiki/concepts/result-monad-error-handling.md +0 -47
  249. package/vault/wiki/concepts/safety-defense-in-depth.md +0 -83
  250. package/vault/wiki/concepts/sandbox-os-enforcement.md +0 -18
  251. package/vault/wiki/concepts/selective-debate-routing.md +0 -70
  252. package/vault/wiki/concepts/self-evolving-harness.md +0 -60
  253. package/vault/wiki/concepts/sentrux-mcp-integration.md +0 -36
  254. package/vault/wiki/concepts/sentrux-rules-engine.md +0 -49
  255. package/vault/wiki/concepts/shell-pattern-compression.md +0 -24
  256. package/vault/wiki/concepts/skill-first-architecture.md +0 -166
  257. package/vault/wiki/concepts/structured-compaction.md +0 -78
  258. package/vault/wiki/concepts/subagent-orchestration.md +0 -17
  259. package/vault/wiki/concepts/subagent-worktree-isolation.md +0 -68
  260. package/vault/wiki/concepts/superpowers-methodology.md +0 -78
  261. package/vault/wiki/concepts/think-in-code.md +0 -73
  262. package/vault/wiki/concepts/ts-execution-layer.md +0 -100
  263. package/vault/wiki/concepts/typescript-strict-mode.md +0 -37
  264. package/vault/wiki/concepts/vcc-conversation-compaction-for-pi.md +0 -53
  265. package/vault/wiki/concepts/verification-drift-detection.md +0 -19
  266. package/vault/wiki/consensus/consensus-records.md +0 -58
  267. package/vault/wiki/decisions/2026-04-30-pi-lean-ctx-native.md +0 -122
  268. package/vault/wiki/decisions/2026-05-07-replace-lean-ctx-with-context-mode.md +0 -59
  269. package/vault/wiki/decisions/adr-008.md +0 -40
  270. package/vault/wiki/decisions/adr-009.md +0 -46
  271. package/vault/wiki/decisions/adr-010.md +0 -55
  272. package/vault/wiki/decisions/adr-011.md +0 -165
  273. package/vault/wiki/decisions/adr-012.md +0 -102
  274. package/vault/wiki/decisions/adr-013.md +0 -59
  275. package/vault/wiki/decisions/adr-014.md +0 -73
  276. package/vault/wiki/decisions/adr-015.md +0 -81
  277. package/vault/wiki/decisions/adr-016.md +0 -91
  278. package/vault/wiki/decisions/adr-017.md +0 -79
  279. package/vault/wiki/decisions/adr-018.md +0 -100
  280. package/vault/wiki/decisions/adr-019.md +0 -75
  281. package/vault/wiki/decisions/adr-020.md +0 -106
  282. package/vault/wiki/decisions/adr-021.md +0 -86
  283. package/vault/wiki/decisions/adr-022.md +0 -113
  284. package/vault/wiki/decisions/adr-023.md +0 -113
  285. package/vault/wiki/decisions/adr-024.md +0 -73
  286. package/vault/wiki/decisions/adr-025.md +0 -130
  287. package/vault/wiki/decisions/adr-026.md +0 -56
  288. package/vault/wiki/decisions/adr-027.md +0 -94
  289. package/vault/wiki/decisions/colocate-wiki.md +0 -34
  290. package/vault/wiki/entities/Anders Hejlsberg.md +0 -29
  291. package/vault/wiki/entities/Anthropic.md +0 -17
  292. package/vault/wiki/entities/Augment Code.md +0 -49
  293. package/vault/wiki/entities/Bjarne Stroustrup.md +0 -26
  294. package/vault/wiki/entities/Bolt.new (StackBlitz).md +0 -39
  295. package/vault/wiki/entities/Boris Cherny.md +0 -11
  296. package/vault/wiki/entities/Claude Code.md +0 -19
  297. package/vault/wiki/entities/Dennis Ritchie.md +0 -26
  298. package/vault/wiki/entities/Emergent Labs.md +0 -32
  299. package/vault/wiki/entities/Google Cloud.md +0 -16
  300. package/vault/wiki/entities/Guido van Rossum.md +0 -28
  301. package/vault/wiki/entities/Ken Thompson.md +0 -28
  302. package/vault/wiki/entities/Lee et al.md +0 -16
  303. package/vault/wiki/entities/Linus Torvalds.md +0 -28
  304. package/vault/wiki/entities/Lovable (company).md +0 -40
  305. package/vault/wiki/entities/Martin Fowler.md +0 -16
  306. package/vault/wiki/entities/Meng et al.md +0 -16
  307. package/vault/wiki/entities/OpenAI.md +0 -16
  308. package/vault/wiki/entities/Rocket.new.md +0 -38
  309. package/vault/wiki/entities/VILA-Lab.md +0 -15
  310. package/vault/wiki/entities/autodev-codebase.md +0 -18
  311. package/vault/wiki/entities/ck-tool.md +0 -59
  312. package/vault/wiki/entities/codesearch.md +0 -18
  313. package/vault/wiki/entities/disler-indydevdan.md +0 -33
  314. package/vault/wiki/entities/gsd-get-shit-done.md +0 -56
  315. package/vault/wiki/entities/javascript-runtimes.md +0 -48
  316. package/vault/wiki/entities/jesse-vincent.md +0 -38
  317. package/vault/wiki/entities/lean-ctx.md +0 -32
  318. package/vault/wiki/entities/opendev.md +0 -41
  319. package/vault/wiki/entities/ops-codegraph-tool.md +0 -18
  320. package/vault/wiki/entities/pi-coding-agent.md +0 -53
  321. package/vault/wiki/entities/sentrux.md +0 -54
  322. package/vault/wiki/entities/vgrep-tool.md +0 -57
  323. package/vault/wiki/entities/vitest.md +0 -41
  324. package/vault/wiki/flows/harness-wiki-pipeline.md +0 -204
  325. package/vault/wiki/hot.md +0 -932
  326. package/vault/wiki/index.md +0 -437
  327. package/vault/wiki/log.md +0 -422
  328. package/vault/wiki/meta/dashboard.md +0 -30
  329. package/vault/wiki/meta/lint-report-2026-04-30.md +0 -86
  330. package/vault/wiki/meta/lint-report-2026-05-02.md +0 -251
  331. package/vault/wiki/meta/overview.canvas +0 -43
  332. package/vault/wiki/modules/adversarial-verification.md +0 -57
  333. package/vault/wiki/modules/automated-observability.md +0 -54
  334. package/vault/wiki/modules/bench.md +0 -20
  335. package/vault/wiki/modules/extensions.md +0 -23
  336. package/vault/wiki/modules/grounding-checkpoints.md +0 -62
  337. package/vault/wiki/modules/harness-implementation-plan.md +0 -345
  338. package/vault/wiki/modules/harness-wiki-skill-mapping.md +0 -135
  339. package/vault/wiki/modules/harness.md +0 -86
  340. package/vault/wiki/modules/persistent-memory.md +0 -85
  341. package/vault/wiki/modules/schema-orchestration.md +0 -68
  342. package/vault/wiki/modules/skills.md +0 -27
  343. package/vault/wiki/modules/spec-hardening.md +0 -58
  344. package/vault/wiki/modules/structured-planning.md +0 -53
  345. package/vault/wiki/modules/think-in-code-enforcement.md +0 -153
  346. package/vault/wiki/modules/wiki-query-interface.md +0 -64
  347. package/vault/wiki/overview.md +0 -51
  348. package/vault/wiki/questions/Research-pi-vs-claude-code-agentic-orchestration-pipeline.md +0 -87
  349. package/vault/wiki/questions/Research-sentrux-dev.md +0 -123
  350. package/vault/wiki/questions/Research-superpowers-skill-for-agentic-coding-agents.md +0 -164
  351. package/vault/wiki/questions/Research: Augment Code Context Engine.md +0 -244
  352. package/vault/wiki/questions/Research: Automating Software Engineering - Lovable, Bolt, Emergent, Rocket.md +0 -112
  353. package/vault/wiki/questions/Research: Claude Code State-of-the-Art Harness Improvements.md +0 -209
  354. package/vault/wiki/questions/Research: Codex State-of-the-Art Harness Improvements.md +0 -99
  355. package/vault/wiki/questions/Research: Engineering Workflows of Legendary Programmers and AI Harness Mapping.md +0 -107
  356. package/vault/wiki/questions/Research: Fallow Codebase Intelligence Harness Integration.md +0 -72
  357. package/vault/wiki/questions/Research: Gemini CLI SOTA Harness Integration.md +0 -166
  358. package/vault/wiki/questions/Research: GitHub Issues as Harness Spec Storage.md +0 -188
  359. package/vault/wiki/questions/Research: Google Antigravity Harness Integration.md +0 -120
  360. package/vault/wiki/questions/Research: Meta-Agent Context Drift Detection.md +0 -236
  361. package/vault/wiki/questions/Research: Model-Adaptive Agent Harness Design.md +0 -95
  362. package/vault/wiki/questions/Research: Model-Specific Prompting Guides.md +0 -165
  363. package/vault/wiki/questions/Research: Prompt Renderer for Multi-Model Agent Harness.md +0 -216
  364. package/vault/wiki/questions/Research: Skill-First Harness Architecture.md +0 -91
  365. package/vault/wiki/questions/Research: TypeScript Best Practices and Codebase Structure.md +0 -88
  366. package/vault/wiki/questions/Research: TypeScript Execution Layer for Agent Tool Calling.md +0 -81
  367. package/vault/wiki/questions/Research: claude-mem over Obsidian for Harness Layer.md +0 -71
  368. package/vault/wiki/questions/Research: claude-mem over obsidian wiki as the knowledge base for our agentic harness pipeline. think from first principles. does this replace or complement our current setup? no hard feelings about previous decisions. gimme accurate points.md +0 -80
  369. package/vault/wiki/questions/Research: context-mode vs lean-ctx.md +0 -72
  370. package/vault/wiki/questions/Research: cursor.sh Harness Innovations.md +0 -92
  371. package/vault/wiki/questions/Research: executor.sh Harness Integration.md +0 -170
  372. package/vault/wiki/questions/Research: how GSD fits into our coding harness setup.md +0 -97
  373. package/vault/wiki/questions/Research: how claude-mem fits into our workflow. and whether it should replace obsidian in the codebase. no hard feelings about previous actions, rethink from first principles always.md +0 -80
  374. package/vault/wiki/questions/Research: pi-vcc.md +0 -113
  375. package/vault/wiki/questions/Research: semantic code search tools.md +0 -69
  376. package/vault/wiki/questions/Research: vcc extension for pi coding agent.md +0 -73
  377. package/vault/wiki/questions/how-to-enable-semantic-code-search-now.md +0 -111
  378. package/vault/wiki/questions/mvp-implementation-blueprint.md +0 -552
  379. package/vault/wiki/questions/research-agent-first-codebase-exploration.md +0 -199
  380. package/vault/wiki/questions/research-agentic-coding-harness-latest-papers.md +0 -142
  381. package/vault/wiki/questions/research-gitingest-gitreverse-integration.md +0 -100
  382. package/vault/wiki/questions/research-wozcode-token-reduction.md +0 -67
  383. package/vault/wiki/questions/resolved-context-pruning-inplace-vs-restart.md +0 -95
  384. package/vault/wiki/questions/resolved-context-window-economics.md +0 -167
  385. package/vault/wiki/questions/resolved-imad-debate-gating-transfer.md +0 -126
  386. package/vault/wiki/questions/resolved-mcp-tool-preference.md +0 -112
  387. package/vault/wiki/questions/resolved-small-model-meta-agents.md +0 -107
  388. package/vault/wiki/questions/resolved-treesitter-dynamic-languages.md +0 -95
  389. package/vault/wiki/sources/Auggie Context MCP Server.md +0 -63
  390. package/vault/wiki/sources/Augment Code Codacy AI Giants.md +0 -61
  391. package/vault/wiki/sources/Augment Code MCP SiliconAngle.md +0 -49
  392. package/vault/wiki/sources/Augment Code WorkOS ERC 2025.md +0 -55
  393. package/vault/wiki/sources/Augment Context Engine Official.md +0 -71
  394. package/vault/wiki/sources/Augment SWE-bench Agent GitHub.md +0 -74
  395. package/vault/wiki/sources/Augment SWE-bench Pro Blog.md +0 -58
  396. package/vault/wiki/sources/Source: AgentBus Jinja2 Prompt Pipelines.md +0 -75
  397. package/vault/wiki/sources/Source: Arxiv /342/200/224 Don't Break the Cache.md" +0 -85
  398. package/vault/wiki/sources/Source: Augment - Harness Engineering for AI Coding Agents.md +0 -58
  399. package/vault/wiki/sources/Source: Blake Crosley Agent Architecture Guide.md +0 -100
  400. package/vault/wiki/sources/Source: Bolt.new Architecture & Case Study.md +0 -75
  401. package/vault/wiki/sources/Source: Build-Time Prompt Compilation Architecture.md +0 -107
  402. package/vault/wiki/sources/Source: Claude API Agent Skills Overview.md +0 -70
  403. package/vault/wiki/sources/Source: Gemini CLI Changelogs.md +0 -88
  404. package/vault/wiki/sources/Source: Google Blog - Gemini CLI Announcement.md +0 -57
  405. package/vault/wiki/sources/Source: Google Gemini CLI Architecture Docs.md +0 -53
  406. package/vault/wiki/sources/Source: LangChain - Anatomy of Agent Harness.md +0 -65
  407. package/vault/wiki/sources/Source: Lovable Architecture & Clone Analysis.md +0 -83
  408. package/vault/wiki/sources/Source: Martin Fowler - Harness Engineering.md +0 -70
  409. package/vault/wiki/sources/Source: OpenAI Harness Engineering Five Principles.md +0 -58
  410. package/vault/wiki/sources/Source: OpenAI Harness Engineering /342/200/224 0 Lines of Human Code.md" +0 -101
  411. package/vault/wiki/sources/Source: OpenDev /342/200/224 Building AI Coding Agents for the Terminal.md" +0 -100
  412. package/vault/wiki/sources/Source: Render AI Coding Agents Benchmark 2025.md +0 -53
  413. package/vault/wiki/sources/Source: Rocket.new /342/200/224 Vibe Solutioning Platform.md" +0 -70
  414. package/vault/wiki/sources/Source: SwirlAI Agent Skills Progressive Disclosure.md +0 -71
  415. package/vault/wiki/sources/Source: TianPan Prompt Caching Architecture.md +0 -89
  416. package/vault/wiki/sources/Source: Vercel Labs agent-browser.md +0 -155
  417. package/vault/wiki/sources/Source: browser-harness CDP Harness.md +0 -126
  418. package/vault/wiki/sources/agent-drift-academic-paper.md +0 -79
  419. package/vault/wiki/sources/aider-repomap-tree-sitter.md +0 -42
  420. package/vault/wiki/sources/anthropic-compaction-api.md +0 -58
  421. package/vault/wiki/sources/anthropic-effective-harnesses.md +0 -42
  422. package/vault/wiki/sources/anthropic-prompt-best-practices.md +0 -100
  423. package/vault/wiki/sources/anthropic2026-harness-design.md +0 -63
  424. package/vault/wiki/sources/barrel-files-tkdodo.md +0 -38
  425. package/vault/wiki/sources/birth-of-unix-kernighan-interview.md +0 -57
  426. package/vault/wiki/sources/bockeler2026-harness-engineering.md +0 -69
  427. package/vault/wiki/sources/cast-code-chunking-paper.md +0 -50
  428. package/vault/wiki/sources/ck-semantic-search.md +0 -78
  429. package/vault/wiki/sources/claude-code-architecture-karaxai-2026.md +0 -71
  430. package/vault/wiki/sources/claude-code-architecture-qubytes-2026.md +0 -50
  431. package/vault/wiki/sources/claude-code-architecture-vila-lab-2026.md +0 -64
  432. package/vault/wiki/sources/claude-code-security-architecture-penligent-2026.md +0 -70
  433. package/vault/wiki/sources/claude-context-editing-docs.md +0 -13
  434. package/vault/wiki/sources/cloudflare-codemode.md +0 -63
  435. package/vault/wiki/sources/code-chunk-library-supermemory.md +0 -63
  436. package/vault/wiki/sources/codeact-apple-2024.md +0 -62
  437. package/vault/wiki/sources/codex-dsc-rfc-8573.md +0 -41
  438. package/vault/wiki/sources/codex-open-source-agent-2026.md +0 -110
  439. package/vault/wiki/sources/coir-code-retrieval-benchmark.md +0 -51
  440. package/vault/wiki/sources/colinmcnamara-context-optimization-codemode.md +0 -48
  441. package/vault/wiki/sources/context-folding-paper.md +0 -61
  442. package/vault/wiki/sources/context-mode-website.md +0 -63
  443. package/vault/wiki/sources/cursor-agent-best-practices-2026.md +0 -62
  444. package/vault/wiki/sources/cursor-fork-29b-2025.md +0 -50
  445. package/vault/wiki/sources/cursor-harness-april-2026.md +0 -76
  446. package/vault/wiki/sources/cursor-instant-apply-2024.md +0 -45
  447. package/vault/wiki/sources/cursor-shadow-workspace-2024.md +0 -52
  448. package/vault/wiki/sources/cursor-shipped-coding-agent-2026.md +0 -53
  449. package/vault/wiki/sources/cursor-vs-antigravity-2026.md +0 -51
  450. package/vault/wiki/sources/disler-pi-vs-claude-code.md +0 -69
  451. package/vault/wiki/sources/distill-deterministic-context-compression.md +0 -53
  452. package/vault/wiki/sources/embedding-models-benchmark-supermemory-2025.md +0 -48
  453. package/vault/wiki/sources/executor-rhyssullivan.md +0 -122
  454. package/vault/wiki/sources/fallow-rs-codebase-intelligence.md +0 -125
  455. package/vault/wiki/sources/fan2025-imad.md +0 -60
  456. package/vault/wiki/sources/forgecode-gpt5-agent-improvements.md +0 -63
  457. package/vault/wiki/sources/gemini-3-prompting-guide.md +0 -78
  458. package/vault/wiki/sources/gh-cli-sub-issue-rfc.md +0 -50
  459. package/vault/wiki/sources/gh-sub-issue-extension.md +0 -72
  460. package/vault/wiki/sources/github-fork-issues-discussion.md +0 -44
  461. package/vault/wiki/sources/github-issue-dependencies-docs.md +0 -49
  462. package/vault/wiki/sources/github-sub-issues-docs.md +0 -51
  463. package/vault/wiki/sources/gitingest.md +0 -91
  464. package/vault/wiki/sources/gitreverse.md +0 -63
  465. package/vault/wiki/sources/google-antigravity-official-blog.md +0 -47
  466. package/vault/wiki/sources/google-antigravity-wikipedia.md +0 -53
  467. package/vault/wiki/sources/gsd-codecentric-deep-dive.md +0 -57
  468. package/vault/wiki/sources/gsd-github-repo.md +0 -51
  469. package/vault/wiki/sources/gsd-hn-discussion.md +0 -59
  470. package/vault/wiki/sources/guido-python-design-philosophy.md +0 -56
  471. package/vault/wiki/sources/hejlsberg-7-learnings.md +0 -48
  472. package/vault/wiki/sources/ironclaw-drift-monitor.md +0 -80
  473. package/vault/wiki/sources/langsight-loop-detection.md +0 -80
  474. package/vault/wiki/sources/leanctx-website.md +0 -69
  475. package/vault/wiki/sources/lee2026-meta-harness.md +0 -59
  476. package/vault/wiki/sources/linux-kernel-coding-workflow.md +0 -50
  477. package/vault/wiki/sources/lou2026-autoharness.md +0 -53
  478. package/vault/wiki/sources/martin-fowler-harness-engineering.md +0 -73
  479. package/vault/wiki/sources/mcp-architecture-docs.md +0 -13
  480. package/vault/wiki/sources/meng2026-agent-harness-survey.md +0 -79
  481. package/vault/wiki/sources/mindstudio-four-agent-types.md +0 -68
  482. package/vault/wiki/sources/ms-chat-history-management.md +0 -13
  483. package/vault/wiki/sources/openai-prompt-guidance.md +0 -104
  484. package/vault/wiki/sources/openclaw-session-pruning.md +0 -13
  485. package/vault/wiki/sources/opencode-dcp.md +0 -13
  486. package/vault/wiki/sources/opendev-arxiv-2603.05344v1.md +0 -79
  487. package/vault/wiki/sources/openhands-platform.md +0 -39
  488. package/vault/wiki/sources/oss-guide-codebase-exploration.md +0 -53
  489. package/vault/wiki/sources/pi-compaction-extensions-ecosystem.md +0 -102
  490. package/vault/wiki/sources/pi-context-prune-github-repo.md +0 -38
  491. package/vault/wiki/sources/pi-mono-compaction-docs.md +0 -38
  492. package/vault/wiki/sources/pi-omni-compact-github-repo.md +0 -50
  493. package/vault/wiki/sources/pi-rtk-optimizer-github-repo.md +0 -45
  494. package/vault/wiki/sources/pi-vcc-github-repo.md +0 -69
  495. package/vault/wiki/sources/pi-vscode-marketplace.md +0 -41
  496. package/vault/wiki/sources/pi-vscode-model-provider-marketplace.md +0 -39
  497. package/vault/wiki/sources/py-tree-sitter.md +0 -13
  498. package/vault/wiki/sources/sentrux-dev-landing.md +0 -40
  499. package/vault/wiki/sources/sentrux-docs-pro-architecture.md +0 -75
  500. package/vault/wiki/sources/sentrux-docs-quality-signal.md +0 -46
  501. package/vault/wiki/sources/sentrux-docs-root-cause-metrics.md +0 -57
  502. package/vault/wiki/sources/sentrux-docs-rules-engine.md +0 -58
  503. package/vault/wiki/sources/sentrux-github-repo.md +0 -56
  504. package/vault/wiki/sources/superpowers-github-repo.md +0 -56
  505. package/vault/wiki/sources/superpowers-release-blog.md +0 -54
  506. package/vault/wiki/sources/superpowers-termdock-analysis.md +0 -45
  507. package/vault/wiki/sources/swe-agent-aci.md +0 -42
  508. package/vault/wiki/sources/swe-bench.md +0 -45
  509. package/vault/wiki/sources/swe-pruner-context-pruning.md +0 -13
  510. package/vault/wiki/sources/think-in-code-blog.md +0 -48
  511. package/vault/wiki/sources/tree-sitter-docs.md +0 -13
  512. package/vault/wiki/sources/ts-best-practices-2025-devto.md +0 -42
  513. package/vault/wiki/sources/ts-folder-structure-mingyang.md +0 -58
  514. package/vault/wiki/sources/ts-monorepo-koerselman.md +0 -44
  515. package/vault/wiki/sources/ts-result-error-handling-kkalamarski.md +0 -52
  516. package/vault/wiki/sources/ts-runtimes-comparison-betterstack.md +0 -42
  517. package/vault/wiki/sources/ts-strict-mode-rishikc.md +0 -43
  518. package/vault/wiki/sources/unix-philosophy.md +0 -48
  519. package/vault/wiki/sources/vectara-chunking-vs-embedding-naacl2025.md +0 -39
  520. package/vault/wiki/sources/vectara-guardian-agents.md +0 -79
  521. package/vault/wiki/sources/vgrep-semantic-search.md +0 -76
  522. package/vault/wiki/sources/vitest-official.md +0 -41
  523. package/vault/wiki/sources/vscode-pi-community-extension.md +0 -40
  524. package/vault/wiki/sources/wozcode.md +0 -79
package/CONTRIBUTING.md CHANGED
@@ -34,6 +34,45 @@ npm run check:ts # typecheck extensions
34
34
 
35
35
  Pre-commit hooks run `biome check` and `tsc` on staged files automatically.
36
36
 
37
+ ## Sentrux (architectural quality gate)
38
+
39
+ [Sentrux](https://github.com/sentrux/sentrux) provides real-time structural quality metrics for AI-agent-written code. It acts as a feedback loop sensor — scanning codebase architecture, detecting degradation, and enforcing rules via MCP.
40
+
41
+ ### Quick start
42
+
43
+ ```bash
44
+ # Install (macOS / Linux / Windows)
45
+ curl -fsSL https://raw.githubusercontent.com/sentrux/sentrux/main/install.sh | sh
46
+
47
+ # Install all 52 language plugins
48
+ sentrux plugin add-standard
49
+
50
+ # Run a quality scan
51
+ sentrux check .
52
+
53
+ # Save baseline before agent session
54
+ sentrux gate --save .
55
+
56
+ # Compare after — catches degradation
57
+ sentrux gate .
58
+ ```
59
+
60
+ ### MCP Integration
61
+
62
+ The sentrux MCP server is configured in `.pi/mcp.json`. Agents can use tools like `scan`, `session_start`, `session_end`, `check_rules`, `health`, and `evolution` to monitor code quality during development.
63
+
64
+ ### Rules Engine
65
+
66
+ Create `.sentrux/rules.toml` to define architectural constraints:
67
+
68
+ ```toml
69
+ [constraints]
70
+ max_cycles = 0
71
+ max_coupling = "B"
72
+ max_cc = 25
73
+ no_god_files = true
74
+ ```
75
+
37
76
  ## Firecrawl (self-hosted web scraping)
38
77
 
39
78
  The Firecrawl skill depends on a Firecrawl instance. This repo includes a self-hosted setup powered by Docker.
@@ -89,6 +128,18 @@ Configurable via env vars (set before launching pi):
89
128
  - Reloads on `/reload`.
90
129
  - Status command: `/env-loader-status`
91
130
 
131
+ ### Harness governance extensions
132
+
133
+ These Pi extensions are loaded from `.pi/extensions/` via the root `package.json`
134
+ `pi.extensions` manifest (no extra registration needed):
135
+
136
+ - `.pi/extensions/policy-gate.ts` — plan-before-mutate + phase enforcement
137
+ - `.pi/extensions/budget-guard.ts` — budget hard-stop and `budget_exhausted` events
138
+ - `.pi/extensions/trace-recorder.ts` — run trace artifacts in `.pi/harness/runs/`
139
+ - `.pi/extensions/review-integrity.ts` — evaluator/adversary session isolation checks
140
+ - `.pi/extensions/test-diff-integrity.ts` — suspicious test diff detection/escalation
141
+ - `.pi/extensions/debate-orchestrator.ts` — headless debate bus + consensus packets
142
+
92
143
  ### PostHog analytics
93
144
 
94
145
  `@posthog/pi` — wraps the upstream [posthog-pi](https://github.com/PostHog/posthog-pi) extension to capture AI generation spans, tool spans, and traces in [PostHog](https://posthog.com). Install via `pi install @posthog/pi`. See the upstream repo for configuration and env vars.
@@ -103,7 +154,6 @@ Configurable via env vars (set before launching pi):
103
154
  | firecrawl (13 skills) | [firecrawl](https://firecrawl.dev) |
104
155
  | obsidian/wiki skills (11 skills) | [AgriciDaniel/claude-obsidian](https://github.com/AgriciDaniel/claude-obsidian) |
105
156
  | posthog-analyst | bundled (PostHog MCP integration) |
106
- | defuddle | bundled (web content cleaning) |
107
157
 
108
158
  ### Firecrawl sub-skills
109
159
 
package/README.md CHANGED
@@ -2,50 +2,294 @@
2
2
 
3
3
  > The **ultimate AI coding harness** on top of [**pi.dev**](https://pi.dev).
4
4
 
5
- ## Goal
5
+ ## What this project is
6
6
 
7
- A production-grade coding harness where the agent:
8
- 1. Uses compressed context before raw tool spam,
9
- 2. Stays concise and deterministic in output style,
10
- 3. Is easy to extend with skills and extensions.
7
+ `ultimate-pi` is a production-oriented harness for AI-assisted coding with strict safety and governance built in.
11
8
 
12
- ## Getting started
9
+ It gives you:
10
+
11
+ - A phase-based workflow (`plan -> execute -> evaluate -> adversary -> merge`)
12
+ - Enforcement that blocks unsafe behavior (for example, mutating code before planning)
13
+ - Structured artifacts in `.pi/harness/` for auditability and replay
14
+ - A practical bootstrap command that sets up tools, graph, and runtime integrations
15
+
16
+ If you are new: start with the **Quick Start** section and run one task through the full pipeline.
17
+
18
+ ## 5-minute quickstart
19
+
20
+ If you just want to get started fast:
21
+
22
+ 1. Install into your current project:
13
23
 
14
24
  ```bash
15
- npm install -g ultimate-pi
25
+ pi install npm:ultimate-pi
26
+ /reload
16
27
  ```
17
28
 
18
- From your project folder:
29
+ 2. Bootstrap the harness:
19
30
 
20
- ```bash
21
- pi install ultimate-pi -l
31
+ ```text
32
+ /harness-setup
33
+ ```
34
+
35
+ 3. Run your first task:
36
+
37
+ ```text
38
+ /harness-auto "implement feature X safely"
22
39
  ```
23
40
 
24
- Then reload PI:
41
+ That command runs the strict pipeline:
42
+ `plan -> execute -> evaluate -> adversary -> policy decision`.
43
+
44
+ If it blocks, inspect with:
45
+
46
+ ```text
47
+ /harness-trace-last
48
+ /harness-policy-status
49
+ ```
50
+
51
+ ## Table of Contents
52
+
53
+ - [5-minute quickstart](#5-minute-quickstart)
54
+ - [How the harness works](#how-the-harness-works)
55
+ - [Prerequisites](#prerequisites)
56
+ - [Quick Start (new users)](#quick-start-new-users)
57
+ - [Run your first harness task](#run-your-first-harness-task)
58
+ - [Command reference](#command-reference)
59
+ - [Harness artifacts and file layout](#harness-artifacts-and-file-layout)
60
+ - [Safety and governance defaults](#safety-and-governance-defaults)
61
+ - [Router tuning flow](#router-tuning-flow)
62
+ - [Troubleshooting](#troubleshooting)
63
+ - [Contributing](#contributing)
64
+
65
+ ## How the harness works
66
+
67
+ The harness enforces a deterministic execution lifecycle:
68
+
69
+ 1. **Plan**
70
+ Create a `PlanPacket` before any mutating work.
71
+ 2. **Execute**
72
+ Implement only within the approved plan scope.
73
+ 3. **Evaluate**
74
+ Run independent evaluation and produce an `EvalVerdict`.
75
+ 4. **Adversary**
76
+ Run adversarial review and produce an `AdversaryReport`.
77
+ 5. **Policy / Merge decision**
78
+ Debate consensus + severity policy decides `pass`, `conditional_pass`, `block`, or `human_required`.
79
+
80
+ ### Why this matters
81
+
82
+ - You get fewer silent mistakes.
83
+ - Reviews are reproducible, not opinion-only.
84
+ - Incidents and overrides are recorded in structured, machine-readable artifacts.
85
+
86
+ ## Prerequisites
87
+
88
+ Minimum recommended environment:
89
+
90
+ - `node >= 18`
91
+ - `npm >= 9`
92
+ - `git`
93
+ - `python >= 3.10` (for Graphify workflow)
94
+
95
+ Optional but commonly used:
96
+
97
+ - `gh` CLI for GitHub workflow
98
+ - Docker (only if you want self-hosted Firecrawl)
99
+
100
+ ## Quick Start (new users)
101
+
102
+ From your project folder:
25
103
 
26
104
  ```bash
105
+ pi install npm:ultimate-pi
27
106
  /reload
28
107
  ```
29
108
 
30
- Optional: install from GitHub Packages:
109
+ Run the full bootstrap:
31
110
 
32
- ```bash
33
- npm install -g @aryaniyaps/ultimate-pi --registry=https://npm.pkg.github.com
111
+ ```text
112
+ /harness-setup
113
+ ```
114
+
115
+ `/harness-setup` is idempotent and designed as the one-command initializer for:
116
+
117
+ - Graphify knowledge graph setup
118
+ - CLI tool installation and checks
119
+ - Harness/runtime directory scaffolding
120
+ - Extension package verification
121
+ - Model-router bootstrap configuration
122
+
123
+ ## Run your first harness task
124
+
125
+ ### Fastest path
126
+
127
+ Use the one-command pipeline:
128
+
129
+ ```text
130
+ /harness-auto "implement feature X safely"
34
131
  ```
35
132
 
36
- ## Bootstrap
133
+ This runs:
134
+
135
+ `plan -> execute -> evaluate -> adversary -> policy decision -> commit/PR (no auto-merge)`
37
136
 
38
- Run the harness setup prompt to configure everything (wiki, firecrawl, env vars, extensions):
137
+ ### Manual path (recommended for learning)
39
138
 
139
+ 1. Plan
140
+
141
+ ```text
142
+ /harness-plan "implement feature X safely"
40
143
  ```
41
- /harness-setup
144
+
145
+ 2. Execute with approved plan:
146
+
147
+ ```text
148
+ /harness-run --plan <path-to-plan-packet.json>
42
149
  ```
43
150
 
44
- ## Wiki
151
+ 3. Evaluate:
45
152
 
46
- The harness includes an Obsidian wiki vault as its knowledge layer. Run `/wiki` in your PI session to scaffold it, then open the vault in [Obsidian](https://obsidian.md). Recommended community plugins: Dataview, Graph Analysis, Obsidian Git.
153
+ ```text
154
+ /harness-eval --run <run-id>
155
+ /harness-review --run <run-id>
156
+ ```
47
157
 
158
+ 4. Adversarial review:
159
+
160
+ ```text
161
+ /harness-critic --run <run-id>
162
+ ```
163
+
164
+ 5. If blocked or ambiguous, record incident:
165
+
166
+ ```text
167
+ /harness-incident --run <run-id> --trigger "<reason>"
168
+ ```
169
+
170
+ 6. Trace/debug:
171
+
172
+ ```text
173
+ /harness-trace --run <run-id>
174
+ ```
175
+
176
+ ## Command reference
177
+
178
+ ### Core workflow commands
179
+
180
+ - `/harness-setup` - bootstrap complete environment and harness scaffolding
181
+ - `/harness-auto "<task>"` - run strict end-to-end pipeline
182
+ - `/harness-plan "<task>"` - generate read-only `PlanPacket`
183
+ - `/harness-run --plan <file>` - execute approved scope only
184
+ - `/harness-eval --run <run-id>` - benchmark/evaluation summary
185
+ - `/harness-review --run <run-id>` - independent evaluator verdict
186
+ - `/harness-critic --run <run-id>` - adversarial findings and merge-block signal
187
+ - `/harness-incident --run <run-id> --trigger "<reason>"` - incident record
188
+ - `/harness-trace --run <run-id>` - replay and artifact completeness
189
+ - `/harness-abort [reason]` - reset safely to plan phase and lock mutation until new plan
190
+
191
+ ### Operational/status commands
192
+
193
+ - `/harness-policy-status`
194
+ - `/harness-budget-status`
195
+ - `/harness-review-integrity-status`
196
+ - `/harness-test-integrity-last`
197
+ - `/harness-trace-last`
198
+ - `/harness-debate-open`
199
+ - `/harness-debate-round`
200
+ - `/harness-debate-consensus`
201
+
202
+ ## Harness artifacts and file layout
203
+
204
+ Primary harness directories:
205
+
206
+ - `.pi/harness/specs/` - JSON schemas for core contracts
207
+ - `.pi/harness/runs/` - per-run trace summaries + event indexes
208
+ - `.pi/harness/incidents/` - incident and policy override records
209
+ - `.pi/harness/debates/` - debate rounds, consensus packets, budget events
210
+ - `.pi/harness/router/` - router tuning proposals and apply flow scripts
211
+
212
+ Core contract schemas in `.pi/harness/specs/`:
213
+
214
+ - `PlanPacket`
215
+ - `RunTrace`
216
+ - `EvalVerdict`
217
+ - `AdversaryReport`
218
+ - `RoundResult`
219
+ - `ConsensusPacket`
220
+ - `BudgetExhausted`
221
+ - `IncidentRecord`
222
+ - `RouterTuningProposal`
223
+
224
+ ## Safety and governance defaults
225
+
226
+ The harness intentionally locks in these behaviors:
227
+
228
+ - **Plan-before-mutate**: write/edit/mutating shell commands blocked outside execute phase
229
+ - **Mandatory adversarial review** in the strict pipeline
230
+ - **Review isolation**: evaluator/adversary cannot share executor session context
231
+ - **Budget hard-stops** with structured `budget_exhausted` events
232
+ - **Test-diff integrity checks** for suspicious test weakening patterns
233
+ - **Severity policy thresholds**:
234
+ - block if `security >= 0.70` or `correctness >= 0.70`
235
+ - block if `architecture >= 0.80` or `test_integrity >= 0.80`
236
+ - **Override policy**: single human approver with explicit justification
237
+ - **Never auto-merge**
238
+
239
+ ## Router tuning flow
240
+
241
+ Router changes are two-step and approval-gated:
242
+
243
+ 1. Propose (no live mutation):
244
+
245
+ ```bash
246
+ node .pi/harness/router/propose-router-tuning.mjs \
247
+ --evidence /path/to/evidence.json \
248
+ --candidate /path/to/candidate-router.json \
249
+ --proposal-out .pi/harness/router/proposals/proposal-001.json
250
+ ```
251
+
252
+ 2. Apply (explicit human approval + justification + `--write`):
253
+
254
+ ```bash
255
+ node .pi/harness/router/apply-router-proposal.mjs \
256
+ --proposal .pi/harness/router/proposals/proposal-001.json \
257
+ --approve-by "human.name" \
258
+ --justification "why this is safe" \
259
+ --write
260
+ ```
261
+
262
+ Blind writes to `.pi/model-router.json` are intentionally disallowed.
263
+
264
+ ## Troubleshooting
265
+
266
+ ### `/harness-setup` fails early
267
+
268
+ - Check `node --version`, `npm --version`, `git --version`
269
+ - Ensure Node is at least 18
270
+
271
+ ### Graphify not available
272
+
273
+ - Install Python 3.10+
274
+ - Then install Graphify and build/update graph
275
+
276
+ ### Review/integrity blocks in evaluate/adversary phase
277
+
278
+ - This means review is not isolated from execute context
279
+ - Fork/switch session, then rerun review commands
280
+
281
+ ### Budget hard-stop triggers
282
+
283
+ - Use `/harness-budget-status`
284
+ - Reduce scope, split task, or restart with a narrower plan
285
+
286
+ ### Suspicious test diff warning
287
+
288
+ - Use `/harness-test-integrity-last`
289
+ - Restore or justify test changes; expect adversarial scrutiny
48
290
 
49
291
  ## Contributing
50
292
 
51
- See [CONTRIBUTING.md](./CONTRIBUTING.md) for local development setup, linting, and extension config details.
293
+ For local dev setup, lint/test commands, Firecrawl notes, extension details, and architectural quality gate workflow, see:
294
+
295
+ - [CONTRIBUTING.md](./CONTRIBUTING.md)
package/biome.json CHANGED
@@ -1,12 +1,18 @@
1
1
  {
2
- "$schema": "https://biomejs.dev/schemas/2.0.6/schema.json",
2
+ "$schema": "https://biomejs.dev/schemas/2.4.14/schema.json",
3
3
  "vcs": {
4
4
  "enabled": true,
5
5
  "clientKind": "git",
6
6
  "useIgnoreFile": true
7
7
  },
8
8
  "files": {
9
- "ignoreUnknown": false
9
+ "ignoreUnknown": false,
10
+ "maxSize": 5242880,
11
+ "includes": [
12
+ "**/*.{ts,tsx,js,jsx,json,jsonc,css}",
13
+ "!graphify-out/**/*",
14
+ "!graphify-books-out/**/*"
15
+ ]
10
16
  },
11
17
  "formatter": {
12
18
  "enabled": true,
package/lefthook.yml CHANGED
@@ -1,8 +1,9 @@
1
1
  pre-commit:
2
2
  commands:
3
3
  lint:
4
- glob: "*.{ts,js,json,md}"
5
- run: npx @biomejs/biome check --no-errors-on-unmatched --staged
4
+ glob: "*.{ts,js,json}"
5
+ exclude: "graphify-out/**/*"
6
+ run: npx @biomejs/biome check --no-errors-on-unmatched --write {staged_files}
6
7
  typecheck:
7
8
  glob: "*.ts"
8
9
  run: npm run check:ts
@@ -0,0 +1,200 @@
1
+ # pi-vcc
2
+
3
+ [![npm](https://img.shields.io/npm/v/@sting8k/pi-vcc)](https://www.npmjs.com/package/@sting8k/pi-vcc)
4
+
5
+ Algorithmic conversation compactor for [Pi](https://github.com/badlogic/pi-mono). No LLM calls — produces a brief transcript via extraction and formatting.
6
+
7
+ Inspired by [VCC](https://github.com/lllyasviel/VCC) **(View-oriented Conversation Compiler)**.
8
+
9
+ ## Why pi-vcc
10
+
11
+ | | Pi default | pi-vcc |
12
+ |---|---|---|
13
+ | **Method** | LLM-generated summary | Algorithmic extraction, no LLM |
14
+ | **Determinism** | Non-deterministic, can hallucinate | Same input = same output, always |
15
+ | **Token reduction** | Varies | 35-99% on real sessions (higher on longer sessions) |
16
+ | **Compaction latency** | Waits for LLM call | 30-470ms, no API calls |
17
+ | **History after compaction** | Gone — agent only sees summary | Fully searchable via `vcc_recall` |
18
+ | **Repeated compactions** | Each rewrite risks losing more | Sections merge and accumulate |
19
+ | **Cost** | Burns tokens on summarization call | Zero — no API calls |
20
+ | **Structure** | Free-form prose | Brief transcript + 4 semantic sections |
21
+
22
+ ### Real session metrics
23
+
24
+ Measured on real session JSONLs under `~/.pi/agent/sessions` (chars = rendered message text).
25
+
26
+ | Session | Messages | Before | After | Reduction | Time |
27
+ |---|---|---|---|---|---|
28
+ | Session A | 2,943 | 997,162 | 7,959 | 99.2% | 64ms |
29
+ | Session B | 1,703 | 428,334 | 7,762 | 98.2% | 29ms |
30
+ | Session C | 1,657 | 424,183 | 9,577 | 97.7% | 54ms |
31
+ | Session D | 1,004 | 2,258,477 | 4,439 | 99.8% | 30ms |
32
+ | Session E | 486 | 295,006 | 11,163 | 96.2% | 30ms |
33
+ | Session F | 46 | 5,234 | 3,364 | 35.7% | 5ms |
34
+ | Session G | 27 | 8,595 | 2,489 | 71.0% | 2ms |
35
+
36
+ ## Features
37
+
38
+ - **No LLM** — purely algorithmic, zero extra API cost
39
+ - **Brief transcript** — chronological conversation flow, each tool call collapsed to a one-liner with `(#N)` refs, text truncated to keep it compact
40
+ - **5 semantic sections** — session goal, files & changes, commits, outstanding context, user preferences
41
+ - **Bounded merge** — rolling sections re-capped after merge instead of growing unbounded
42
+ - **Lossless recall** — `vcc_recall` reads raw session JSONL, so old history stays searchable across compactions
43
+ - **Regex search** — `vcc_recall` supports regex patterns (`hook|inject`, `fail.*build`) and OR-ranked multi-word queries
44
+ - **Result ranking** — search results ranked by term relevance, rare terms weighted higher than common ones
45
+ - **`/pi-vcc-recall`** — slash command to search history directly, results shown as collapsible message and auto-fed to agent as context
46
+ - **Fallback cut** — still works when Pi core returns nothing to summarize
47
+ - **`/pi-vcc`** — manual compaction on demand
48
+
49
+ ## Install
50
+
51
+ ```bash
52
+ pi install npm:@sting8k/pi-vcc
53
+ ```
54
+
55
+ Or from GitHub:
56
+
57
+ ```bash
58
+ pi install https://github.com/sting8k/pi-vcc
59
+ ```
60
+
61
+ Or try without installing:
62
+
63
+ ```bash
64
+ pi -e https://github.com/sting8k/pi-vcc
65
+ ```
66
+
67
+ ## Usage
68
+
69
+ Once installed, pi-vcc registers a `session_before_compact` hook.
70
+
71
+ - Run `/pi-vcc` to trigger pi-vcc compaction manually.
72
+ - By default, `/compact` and auto-threshold compactions still go through pi core (LLM-based). Set `overrideDefaultCompaction: true` in the config to let pi-vcc handle all compaction paths.
73
+ - To search older history after compaction, use `vcc_recall`.
74
+ - To search and feed results to agent yourself, run `/pi-vcc-recall <query> [page:N]`.
75
+ - Tip: type `/recall` and Pi will autocomplete to `/pi-vcc-recall`.
76
+
77
+ ### How compaction works
78
+
79
+ Pi splits the conversation at the **last user message**. Everything after — the **kept tail** — stays intact and untouched. pi-vcc only summarizes the older portion before that cut point.
80
+
81
+ ### Compacted message structure
82
+
83
+ ```
84
+ [Session Goal]
85
+ - Fix the authentication bug in login flow
86
+ - [Scope change]
87
+ - Also update the session token refresh logic
88
+
89
+ [Files And Changes]
90
+ - Modified: src/auth/session.ts
91
+ - Created: tests/auth-refresh.test.ts
92
+
93
+ [Commits]
94
+ - a1b2c3d: fix(auth): refresh token after password reset
95
+
96
+ [Outstanding Context]
97
+ - lint check still failing on line 42
98
+
99
+ [User Preferences]
100
+ - Prefer Vietnamese responses
101
+ - Always run tests before committing
102
+
103
+ [user]
104
+ Fix the auth bug, users can't log in after password reset
105
+
106
+ [assistant]
107
+ Root cause is a missing token refresh after password reset...
108
+ * bash "bun test tests/auth.test.ts" (#12)
109
+ * edit "src/auth/session.ts" (#14)
110
+ * bash "bun test tests/auth.test.ts" (#16)
111
+ ...(28 earlier lines omitted)
112
+ ```
113
+
114
+ Sections appear only when relevant — a session with no git commits won't have `[Commits]`.
115
+
116
+ **Sections:**
117
+
118
+ | Section | Description |
119
+ |---|---|
120
+ | `[Session Goal]` | Initial goal + scope changes (regex-based extraction) |
121
+ | `[Files And Changes]` | Modified/created files from tool calls (capped, paths trimmed to common root) |
122
+ | `[Commits]` | Git commits made during the session (last 8, hash + first line) |
123
+ | `[Outstanding Context]` | Unresolved items — errors, pending questions |
124
+ | `[User Preferences]` | Regex-extracted from user messages (`always`, `never`, `prefer`...) |
125
+ | Brief transcript | Chronological conversation flow — rolling window of ~120 recent lines, tool calls collapsed to one-liners with `(#N)` refs |
126
+
127
+ **Merge policy:**
128
+ - `Session Goal`, `User Preferences`: concise sticky sections
129
+ - `Outstanding Context`: fresh-only (replaced each compaction)
130
+ - `Files And Changes`, `Commits`: unique union across compactions
131
+ - Brief transcript: rolling window, older lines drop off
132
+
133
+ ## Recall (Lossless History)
134
+
135
+ Pi's default compaction discards old messages permanently. After compaction, the agent only sees the summary.
136
+
137
+ `vcc_recall` bypasses this by reading the raw session JSONL file directly. It parses every message entry in the file, regardless of how many compactions have happened.
138
+
139
+ ### Search
140
+
141
+ Queries support **regex** and **multi-word OR logic** ranked by relevance:
142
+
143
+ ```
144
+ vcc_recall({ query: "auth token" }) // OR search, ranked
145
+ vcc_recall({ query: "auth token", page: 2 }) // paginated (5 results/page)
146
+ vcc_recall({ query: "hook|inject" }) // regex pattern
147
+ vcc_recall({ query: "fail.*build" }) // regex pattern
148
+ ```
149
+
150
+ ### Browse
151
+
152
+ Without a query, returns the last 25 entries as brief summaries:
153
+
154
+ ```
155
+ vcc_recall()
156
+ ```
157
+
158
+ ### Expand
159
+
160
+ Returns full untruncated content for specific indices found via search:
161
+
162
+ ```
163
+ vcc_recall({ expand: [41, 42] })
164
+ ```
165
+
166
+ Typical workflow: **search → find relevant entry indices → expand those indices for full content**.
167
+
168
+ > Some tool results are truncated by Pi core at save time. `expand` returns everything in the JSONL but can't recover what Pi already cut.
169
+
170
+ ## Pipeline
171
+
172
+ 1. **Normalize** — raw Pi messages → uniform blocks (user, assistant, tool_call, tool_result, thinking)
173
+ 2. **Filter noise** — strip system messages, empty blocks
174
+ 3. **Build sections** — extract goal, file paths, blockers, preferences
175
+ 4. **Brief transcript** — chronological conversation flow, tool calls collapsed to one-liners, text truncated
176
+ 5. **Format** — render into bracketed sections + transcript
177
+ 6. **Merge** — if previous summary exists: sticky sections merge, volatile sections replace, transcript rolls
178
+
179
+ ## Config
180
+
181
+ Config lives at `~/.pi/agent/pi-vcc-config.json` (auto-scaffolded on first load with safe defaults):
182
+
183
+ ```json
184
+ {
185
+ "overrideDefaultCompaction": false,
186
+ "debug": false
187
+ }
188
+ ```
189
+
190
+ - **`overrideDefaultCompaction`** *(default `false`)*: when `false`, pi-vcc only runs for `/pi-vcc`; `/compact` and auto-threshold compactions fall through to pi core. Set `true` to make pi-vcc handle all compaction paths.
191
+ - **`debug`** *(default `false`)*: when `true`, each compaction writes detailed info to `/tmp/pi-vcc-debug.json` — message counts, cut boundary, summary preview, sections.
192
+
193
+ ## Related Work
194
+
195
+ - [VCC](https://github.com/lllyasviel/VCC) — the original transcript-preserving conversation compiler
196
+ - [Pi](https://github.com/badlogic/pi-mono) — the AI coding agent this extension is built for
197
+
198
+ ## License
199
+
200
+ MIT
@@ -0,0 +1,14 @@
1
+ import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
2
+ import { scaffoldSettings } from "./src/core/settings";
3
+ import { registerBeforeCompactHook } from "./src/hooks/before-compact";
4
+ import { registerPiVccCommand } from "./src/commands/pi-vcc";
5
+ import { registerVccRecallCommand } from "./src/commands/vcc-recall";
6
+ import { registerRecallTool } from "./src/tools/recall";
7
+
8
+ export default (pi: ExtensionAPI) => {
9
+ scaffoldSettings();
10
+ registerBeforeCompactHook(pi);
11
+ registerPiVccCommand(pi);
12
+ registerVccRecallCommand(pi);
13
+ registerRecallTool(pi);
14
+ };
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "@sting8k/pi-vcc",
3
+ "version": "0.3.12",
4
+ "description": "Algorithmic conversation compactor for pi - transcript-preserving structured summaries, no LLM calls",
5
+ "main": "index.ts",
6
+ "keywords": [
7
+ "pi-package",
8
+ "pi-extension",
9
+ "vcc",
10
+ "compact",
11
+ "compaction"
12
+ ],
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "git+https://github.com/sting8k/pi-vcc.git"
16
+ },
17
+ "peerDependencies": {
18
+ "@mariozechner/pi-coding-agent": "*",
19
+ "@sinclair/typebox": "*"
20
+ },
21
+ "pi": {
22
+ "extensions": [
23
+ "./index.ts"
24
+ ]
25
+ }
26
+ }