ultimate-pi 0.1.2 → 0.1.4

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 (516) hide show
  1. package/.agents/skills/ck-search/SKILL.md +99 -0
  2. package/.agents/skills/defuddle/SKILL.md +90 -0
  3. package/.agents/skills/find-skills/SKILL.md +142 -0
  4. package/.agents/skills/firecrawl/SKILL.md +150 -0
  5. package/.agents/skills/firecrawl/rules/install.md +82 -0
  6. package/.agents/skills/firecrawl/rules/security.md +26 -0
  7. package/.agents/skills/firecrawl-agent/SKILL.md +57 -0
  8. package/.agents/skills/firecrawl-build-interact/SKILL.md +67 -0
  9. package/.agents/skills/firecrawl-build-onboarding/SKILL.md +102 -0
  10. package/.agents/skills/firecrawl-build-onboarding/references/auth-flow.md +39 -0
  11. package/.agents/skills/firecrawl-build-onboarding/references/project-setup.md +20 -0
  12. package/.agents/skills/firecrawl-build-onboarding/references/sdk-installation.md +17 -0
  13. package/.agents/skills/firecrawl-build-scrape/SKILL.md +68 -0
  14. package/.agents/skills/firecrawl-build-search/SKILL.md +68 -0
  15. package/.agents/skills/firecrawl-crawl/SKILL.md +58 -0
  16. package/.agents/skills/firecrawl-download/SKILL.md +69 -0
  17. package/.agents/skills/firecrawl-interact/SKILL.md +83 -0
  18. package/.agents/skills/firecrawl-map/SKILL.md +50 -0
  19. package/.agents/skills/firecrawl-parse/SKILL.md +61 -0
  20. package/.agents/skills/firecrawl-scrape/SKILL.md +68 -0
  21. package/.agents/skills/firecrawl-search/SKILL.md +59 -0
  22. package/.agents/skills/obsidian-bases/SKILL.md +299 -0
  23. package/.agents/skills/obsidian-markdown/SKILL.md +237 -0
  24. package/.agents/skills/posthog-analyst/SKILL.md +306 -0
  25. package/.agents/skills/posthog-analyst/evals/evals.json +23 -0
  26. package/.agents/skills/wiki/SKILL.md +215 -0
  27. package/.agents/skills/wiki/references/css-snippets.md +122 -0
  28. package/.agents/skills/wiki/references/frontmatter.md +107 -0
  29. package/.agents/skills/wiki/references/git-setup.md +58 -0
  30. package/.agents/skills/wiki/references/mcp-setup.md +149 -0
  31. package/.agents/skills/wiki/references/modes.md +259 -0
  32. package/.agents/skills/wiki/references/plugins.md +96 -0
  33. package/.agents/skills/wiki/references/rest-api.md +124 -0
  34. package/.agents/skills/wiki-autoresearch/SKILL.md +211 -0
  35. package/.agents/skills/wiki-autoresearch/references/program.md +75 -0
  36. package/.agents/skills/wiki-fold/SKILL.md +204 -0
  37. package/.agents/skills/wiki-fold/references/fold-template.md +133 -0
  38. package/.agents/skills/wiki-ingest/SKILL.md +288 -0
  39. package/.agents/skills/wiki-lint/SKILL.md +183 -0
  40. package/.agents/skills/wiki-query/SKILL.md +176 -0
  41. package/.agents/skills/wiki-save/SKILL.md +128 -0
  42. package/.ckignore +41 -0
  43. package/.env.example +9 -0
  44. package/.github/workflows/lint.yml +33 -0
  45. package/.github/workflows/publish-github-packages.yml +35 -0
  46. package/.github/workflows/publish-npm.yml +1 -1
  47. package/.pi/SYSTEM.md +107 -40
  48. package/.pi/agents/pi-pi/agent-expert.md +205 -0
  49. package/.pi/agents/pi-pi/cli-expert.md +47 -0
  50. package/.pi/agents/pi-pi/config-expert.md +67 -0
  51. package/.pi/agents/pi-pi/ext-expert.md +53 -0
  52. package/.pi/agents/pi-pi/keybinding-expert.md +123 -0
  53. package/.pi/agents/pi-pi/pi-orchestrator.md +103 -0
  54. package/.pi/agents/pi-pi/prompt-expert.md +83 -0
  55. package/.pi/agents/pi-pi/skill-expert.md +52 -0
  56. package/.pi/agents/pi-pi/theme-expert.md +46 -0
  57. package/.pi/agents/pi-pi/tui-expert.md +100 -0
  58. package/.pi/agents/rethink.md +140 -0
  59. package/.pi/agents/wiki-ingest.md +67 -0
  60. package/.pi/agents/wiki-lint.md +75 -0
  61. package/.pi/auto-commit.json +20 -0
  62. package/.pi/extensions/banner.png +0 -0
  63. package/.pi/extensions/ck-enforce.ts +216 -0
  64. package/.pi/extensions/custom-footer.ts +308 -0
  65. package/.pi/extensions/custom-header.ts +116 -0
  66. package/.pi/extensions/dotenv-loader.ts +170 -0
  67. package/.pi/internal/cursor-sdk-transcript-parser.ts +59 -0
  68. package/.pi/model-router.json +95 -0
  69. package/.pi/npm/.gitignore +2 -0
  70. package/.pi/prompts/git-sync.md +124 -0
  71. package/.pi/prompts/harness-setup.md +509 -0
  72. package/.pi/prompts/save.md +16 -0
  73. package/.pi/prompts/wiki-autoresearch.md +19 -0
  74. package/.pi/prompts/wiki.md +23 -0
  75. package/.pi/providers/cursor-sdk-provider.test.mjs +476 -0
  76. package/.pi/providers/cursor-sdk-provider.ts +1085 -0
  77. package/.pi/settings.json +14 -4
  78. package/.pi/skills/agent-router/SKILL.md +174 -0
  79. package/.pi/sounds/alert/1-kaching-track.mp3 +0 -0
  80. package/.pi/sounds/error/1-ksi-wth-track.mp3 +0 -0
  81. package/.pi/sounds/error/2-smash-track.mp3 +0 -0
  82. package/.pi/sounds/error/3-buzzer-track.mp3 +0 -0
  83. package/.pi/sounds/notification/1-soft-notification-track.mp3 +0 -0
  84. package/.pi/sounds/project-sounds.json +25 -0
  85. package/.pi/sounds/reminder/1-soft-notification-track.mp3 +0 -0
  86. package/.pi/sounds/success/1-tada-track.mp3 +0 -0
  87. package/.pi/sounds/success/2-jobs-done-track.mp3 +0 -0
  88. package/.pi/sounds/success/3-yay-track.mp3 +0 -0
  89. package/CONTRIBUTING.md +116 -0
  90. package/README.md +32 -39
  91. package/biome.json +34 -0
  92. package/firecrawl/.env.template +58 -0
  93. package/firecrawl/README.md +49 -0
  94. package/firecrawl/docker-compose.yaml +201 -0
  95. package/firecrawl/searxng/searxng.env +3 -0
  96. package/firecrawl/searxng/settings.yml +85 -0
  97. package/lefthook.yml +8 -0
  98. package/package.json +55 -24
  99. package/vault/AGENTS.md +37 -0
  100. package/vault/wiki/_templates/comparison.md +39 -0
  101. package/vault/wiki/_templates/concept.md +40 -0
  102. package/vault/wiki/_templates/decision.md +21 -0
  103. package/vault/wiki/_templates/entity.md +32 -0
  104. package/vault/wiki/_templates/flow.md +14 -0
  105. package/vault/wiki/_templates/module.md +18 -0
  106. package/vault/wiki/_templates/question.md +31 -0
  107. package/vault/wiki/_templates/source.md +39 -0
  108. package/vault/wiki/concepts/AST-Aware Code Chunking.md +44 -0
  109. package/vault/wiki/concepts/Build-Time Prompt Compilation.md +107 -0
  110. package/vault/wiki/concepts/Context Engine (AI Coding).md +47 -0
  111. package/vault/wiki/concepts/Context-Aware System Reminders.md +61 -0
  112. package/vault/wiki/concepts/Contextualized Text Embedding.md +42 -0
  113. package/vault/wiki/concepts/Contractor vs Employee AI Model.md +55 -0
  114. package/vault/wiki/concepts/Dual-Model Agent Architecture.md +65 -0
  115. package/vault/wiki/concepts/Late Chunking vs Early Chunking.md +43 -0
  116. package/vault/wiki/concepts/Majority Vote Ensembling.md +68 -0
  117. package/vault/wiki/concepts/Meta-Harness.md +16 -0
  118. package/vault/wiki/concepts/Multi-Agent AI Coding Architecture.md +75 -0
  119. package/vault/wiki/concepts/Prompt Enhancement.md +90 -0
  120. package/vault/wiki/concepts/Prompt Renderer.md +89 -0
  121. package/vault/wiki/concepts/Semantic Codebase Indexing.md +67 -0
  122. package/vault/wiki/concepts/additive-config-hierarchy.md +16 -0
  123. package/vault/wiki/concepts/agent-artifacts-verifiable-deliverables.md +71 -0
  124. package/vault/wiki/concepts/agent-browser-browser-automation.md +99 -0
  125. package/vault/wiki/concepts/agent-codebase-interface.md +43 -0
  126. package/vault/wiki/concepts/agent-harness-architecture.md +67 -0
  127. package/vault/wiki/concepts/agent-loop-detection-patterns.md +133 -0
  128. package/vault/wiki/concepts/agent-search-enforcement.md +126 -0
  129. package/vault/wiki/concepts/agent-skills-ecosystem.md +74 -0
  130. package/vault/wiki/concepts/agent-skills-pattern.md +68 -0
  131. package/vault/wiki/concepts/agentic-harness-context-enforcement.md +91 -0
  132. package/vault/wiki/concepts/agentic-harness.md +34 -0
  133. package/vault/wiki/concepts/agentic-orchestration-pipeline.md +56 -0
  134. package/vault/wiki/concepts/agentic-search-no-embeddings.md +18 -0
  135. package/vault/wiki/concepts/anthropic-context-engineering.md +13 -0
  136. package/vault/wiki/concepts/antigravity-agent-first-architecture.md +61 -0
  137. package/vault/wiki/concepts/ast-compression.md +19 -0
  138. package/vault/wiki/concepts/ast-truncation.md +66 -0
  139. package/vault/wiki/concepts/barrel-files.md +37 -0
  140. package/vault/wiki/concepts/browser-harness-agent.md +41 -0
  141. package/vault/wiki/concepts/browser-subagent-visual-verification.md +82 -0
  142. package/vault/wiki/concepts/codebase-intelligence-ecosystem-comparison.md +192 -0
  143. package/vault/wiki/concepts/codebase-intelligence-harness-integration.md +161 -0
  144. package/vault/wiki/concepts/codebase-to-context-ingestion.md +46 -0
  145. package/vault/wiki/concepts/codex-harness-innovations.md +147 -0
  146. package/vault/wiki/concepts/consensus-debate-flow.md +17 -0
  147. package/vault/wiki/concepts/consensus-debate.md +206 -0
  148. package/vault/wiki/concepts/content-addressed-spec-identity.md +166 -0
  149. package/vault/wiki/concepts/context-anxiety.md +57 -0
  150. package/vault/wiki/concepts/context-compression-techniques.md +19 -0
  151. package/vault/wiki/concepts/context-continuity.md +22 -0
  152. package/vault/wiki/concepts/context-drift-in-agents.md +106 -0
  153. package/vault/wiki/concepts/context-engineering.md +62 -0
  154. package/vault/wiki/concepts/context-folding.md +67 -0
  155. package/vault/wiki/concepts/context-mode.md +38 -0
  156. package/vault/wiki/concepts/cursor-harness-innovations.md +107 -0
  157. package/vault/wiki/concepts/deterministic-session-compaction.md +79 -0
  158. package/vault/wiki/concepts/drift-detection-unified.md +296 -0
  159. package/vault/wiki/concepts/execution-feedback-loop.md +46 -0
  160. package/vault/wiki/concepts/feedforward-feedback-harness.md +60 -0
  161. package/vault/wiki/concepts/five-root-cause-metrics-sentrux.md +40 -0
  162. package/vault/wiki/concepts/fork-safe-spec-storage.md +89 -0
  163. package/vault/wiki/concepts/fts5-sandbox.md +19 -0
  164. package/vault/wiki/concepts/fuzzy-edit-matching.md +71 -0
  165. package/vault/wiki/concepts/gemini-cli-architecture.md +104 -0
  166. package/vault/wiki/concepts/generator-evaluator-architecture.md +64 -0
  167. package/vault/wiki/concepts/guardian-agent-pattern.md +67 -0
  168. package/vault/wiki/concepts/harness-configuration-layers.md +89 -0
  169. package/vault/wiki/concepts/harness-control-frameworks.md +155 -0
  170. package/vault/wiki/concepts/harness-engineering-first-principles.md +90 -0
  171. package/vault/wiki/concepts/harness-h-formalism.md +53 -0
  172. package/vault/wiki/concepts/hybrid-code-search.md +61 -0
  173. package/vault/wiki/concepts/inline-post-edit-validation.md +112 -0
  174. package/vault/wiki/concepts/legendary-engineering-patterns-harness.md +110 -0
  175. package/vault/wiki/concepts/lifecycle-hooks.md +94 -0
  176. package/vault/wiki/concepts/mcp-tool-routing.md +102 -0
  177. package/vault/wiki/concepts/memory-system-of-record-vs-ephemeral-cache.md +47 -0
  178. package/vault/wiki/concepts/meta-agent-context-pruning.md +151 -0
  179. package/vault/wiki/concepts/model-adaptive-harness.md +122 -0
  180. package/vault/wiki/concepts/model-routing-agents.md +101 -0
  181. package/vault/wiki/concepts/monorepo-architecture.md +45 -0
  182. package/vault/wiki/concepts/multi-agent-specialization.md +61 -0
  183. package/vault/wiki/concepts/permission-subsystem.md +16 -0
  184. package/vault/wiki/concepts/pi-messenger-analysis.md +243 -0
  185. package/vault/wiki/concepts/pi-vscode-extension-landscape.md +37 -0
  186. package/vault/wiki/concepts/policy-engine-pattern.md +78 -0
  187. package/vault/wiki/concepts/progressive-disclosure-agents.md +53 -0
  188. package/vault/wiki/concepts/progressive-skill-disclosure.md +17 -0
  189. package/vault/wiki/concepts/provider-native-prompting.md +203 -0
  190. package/vault/wiki/concepts/quality-signal-sentrux.md +37 -0
  191. package/vault/wiki/concepts/repo-map-ranking.md +42 -0
  192. package/vault/wiki/concepts/result-monad-error-handling.md +47 -0
  193. package/vault/wiki/concepts/safety-defense-in-depth.md +83 -0
  194. package/vault/wiki/concepts/sandbox-os-enforcement.md +18 -0
  195. package/vault/wiki/concepts/selective-debate-routing.md +70 -0
  196. package/vault/wiki/concepts/self-evolving-harness.md +60 -0
  197. package/vault/wiki/concepts/sentrux-mcp-integration.md +36 -0
  198. package/vault/wiki/concepts/sentrux-rules-engine.md +49 -0
  199. package/vault/wiki/concepts/shell-pattern-compression.md +24 -0
  200. package/vault/wiki/concepts/skill-first-architecture.md +166 -0
  201. package/vault/wiki/concepts/structured-compaction.md +78 -0
  202. package/vault/wiki/concepts/subagent-orchestration.md +17 -0
  203. package/vault/wiki/concepts/subagent-worktree-isolation.md +68 -0
  204. package/vault/wiki/concepts/superpowers-methodology.md +78 -0
  205. package/vault/wiki/concepts/think-in-code.md +73 -0
  206. package/vault/wiki/concepts/ts-execution-layer.md +100 -0
  207. package/vault/wiki/concepts/typescript-strict-mode.md +37 -0
  208. package/vault/wiki/concepts/vcc-conversation-compaction-for-pi.md +51 -0
  209. package/vault/wiki/concepts/verification-drift-detection.md +19 -0
  210. package/vault/wiki/consensus/consensus-records.md +58 -0
  211. package/vault/wiki/decisions/2026-04-30-pi-lean-ctx-native.md +122 -0
  212. package/vault/wiki/decisions/adr-008.md +40 -0
  213. package/vault/wiki/decisions/adr-009.md +46 -0
  214. package/vault/wiki/decisions/adr-010.md +55 -0
  215. package/vault/wiki/decisions/adr-011.md +165 -0
  216. package/vault/wiki/decisions/adr-012.md +102 -0
  217. package/vault/wiki/decisions/adr-013.md +59 -0
  218. package/vault/wiki/decisions/adr-014.md +73 -0
  219. package/vault/wiki/decisions/adr-015.md +81 -0
  220. package/vault/wiki/decisions/adr-016.md +91 -0
  221. package/vault/wiki/decisions/adr-017.md +79 -0
  222. package/vault/wiki/decisions/adr-018.md +100 -0
  223. package/vault/wiki/decisions/adr-019.md +75 -0
  224. package/vault/wiki/decisions/adr-020.md +106 -0
  225. package/vault/wiki/decisions/adr-021.md +86 -0
  226. package/vault/wiki/decisions/adr-022.md +113 -0
  227. package/vault/wiki/decisions/adr-023.md +113 -0
  228. package/vault/wiki/decisions/adr-024.md +73 -0
  229. package/vault/wiki/decisions/adr-025.md +130 -0
  230. package/vault/wiki/decisions/adr-026.md +56 -0
  231. package/vault/wiki/decisions/colocate-wiki.md +34 -0
  232. package/vault/wiki/entities/Anders Hejlsberg.md +29 -0
  233. package/vault/wiki/entities/Anthropic.md +17 -0
  234. package/vault/wiki/entities/Augment Code.md +49 -0
  235. package/vault/wiki/entities/Bjarne Stroustrup.md +26 -0
  236. package/vault/wiki/entities/Bolt.new (StackBlitz).md +39 -0
  237. package/vault/wiki/entities/Boris Cherny.md +11 -0
  238. package/vault/wiki/entities/Claude Code.md +19 -0
  239. package/vault/wiki/entities/Dennis Ritchie.md +26 -0
  240. package/vault/wiki/entities/Emergent Labs.md +32 -0
  241. package/vault/wiki/entities/Google Cloud.md +16 -0
  242. package/vault/wiki/entities/Guido van Rossum.md +28 -0
  243. package/vault/wiki/entities/Ken Thompson.md +28 -0
  244. package/vault/wiki/entities/Lee et al.md +16 -0
  245. package/vault/wiki/entities/Linus Torvalds.md +28 -0
  246. package/vault/wiki/entities/Lovable (company).md +40 -0
  247. package/vault/wiki/entities/Martin Fowler.md +16 -0
  248. package/vault/wiki/entities/Meng et al.md +16 -0
  249. package/vault/wiki/entities/OpenAI.md +16 -0
  250. package/vault/wiki/entities/Rocket.new.md +38 -0
  251. package/vault/wiki/entities/VILA-Lab.md +15 -0
  252. package/vault/wiki/entities/autodev-codebase.md +18 -0
  253. package/vault/wiki/entities/ck-tool.md +59 -0
  254. package/vault/wiki/entities/codesearch.md +18 -0
  255. package/vault/wiki/entities/disler-indydevdan.md +33 -0
  256. package/vault/wiki/entities/gsd-get-shit-done.md +56 -0
  257. package/vault/wiki/entities/javascript-runtimes.md +48 -0
  258. package/vault/wiki/entities/jesse-vincent.md +38 -0
  259. package/vault/wiki/entities/lean-ctx.md +32 -0
  260. package/vault/wiki/entities/opendev.md +41 -0
  261. package/vault/wiki/entities/ops-codegraph-tool.md +18 -0
  262. package/vault/wiki/entities/pi-coding-agent.md +53 -0
  263. package/vault/wiki/entities/sentrux.md +54 -0
  264. package/vault/wiki/entities/vgrep-tool.md +57 -0
  265. package/vault/wiki/entities/vitest.md +41 -0
  266. package/vault/wiki/flows/harness-wiki-pipeline.md +204 -0
  267. package/vault/wiki/hot.md +932 -0
  268. package/vault/wiki/index.md +437 -0
  269. package/vault/wiki/log.md +418 -0
  270. package/vault/wiki/meta/dashboard.md +30 -0
  271. package/vault/wiki/meta/lint-report-2026-04-30.md +86 -0
  272. package/vault/wiki/meta/lint-report-2026-05-02.md +251 -0
  273. package/vault/wiki/meta/overview.canvas +43 -0
  274. package/vault/wiki/modules/adversarial-verification.md +57 -0
  275. package/vault/wiki/modules/automated-observability.md +54 -0
  276. package/vault/wiki/modules/bench.md +20 -0
  277. package/vault/wiki/modules/extensions.md +23 -0
  278. package/vault/wiki/modules/grounding-checkpoints.md +62 -0
  279. package/vault/wiki/modules/harness-implementation-plan.md +345 -0
  280. package/vault/wiki/modules/harness-wiki-skill-mapping.md +135 -0
  281. package/vault/wiki/modules/harness.md +86 -0
  282. package/vault/wiki/modules/persistent-memory.md +85 -0
  283. package/vault/wiki/modules/schema-orchestration.md +68 -0
  284. package/vault/wiki/modules/skills.md +27 -0
  285. package/vault/wiki/modules/spec-hardening.md +58 -0
  286. package/vault/wiki/modules/structured-planning.md +53 -0
  287. package/vault/wiki/modules/think-in-code-enforcement.md +153 -0
  288. package/vault/wiki/modules/wiki-query-interface.md +64 -0
  289. package/vault/wiki/overview.md +51 -0
  290. package/vault/wiki/questions/Research-pi-vs-claude-code-agentic-orchestration-pipeline.md +87 -0
  291. package/vault/wiki/questions/Research-sentrux-dev.md +123 -0
  292. package/vault/wiki/questions/Research-superpowers-skill-for-agentic-coding-agents.md +164 -0
  293. package/vault/wiki/questions/Research: Augment Code Context Engine.md +244 -0
  294. package/vault/wiki/questions/Research: Automating Software Engineering - Lovable, Bolt, Emergent, Rocket.md +112 -0
  295. package/vault/wiki/questions/Research: Claude Code State-of-the-Art Harness Improvements.md +209 -0
  296. package/vault/wiki/questions/Research: Codex State-of-the-Art Harness Improvements.md +99 -0
  297. package/vault/wiki/questions/Research: Engineering Workflows of Legendary Programmers and AI Harness Mapping.md +107 -0
  298. package/vault/wiki/questions/Research: Fallow Codebase Intelligence Harness Integration.md +72 -0
  299. package/vault/wiki/questions/Research: Gemini CLI SOTA Harness Integration.md +166 -0
  300. package/vault/wiki/questions/Research: GitHub Issues as Harness Spec Storage.md +188 -0
  301. package/vault/wiki/questions/Research: Google Antigravity Harness Integration.md +120 -0
  302. package/vault/wiki/questions/Research: Meta-Agent Context Drift Detection.md +236 -0
  303. package/vault/wiki/questions/Research: Model-Adaptive Agent Harness Design.md +95 -0
  304. package/vault/wiki/questions/Research: Model-Specific Prompting Guides.md +165 -0
  305. package/vault/wiki/questions/Research: Prompt Renderer for Multi-Model Agent Harness.md +216 -0
  306. package/vault/wiki/questions/Research: Skill-First Harness Architecture.md +91 -0
  307. package/vault/wiki/questions/Research: TypeScript Best Practices and Codebase Structure.md +88 -0
  308. package/vault/wiki/questions/Research: TypeScript Execution Layer for Agent Tool Calling.md +81 -0
  309. package/vault/wiki/questions/Research: claude-mem over Obsidian for Harness Layer.md +71 -0
  310. 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 +80 -0
  311. package/vault/wiki/questions/Research: context-mode vs lean-ctx.md +72 -0
  312. package/vault/wiki/questions/Research: cursor.sh Harness Innovations.md +92 -0
  313. package/vault/wiki/questions/Research: executor.sh Harness Integration.md +170 -0
  314. package/vault/wiki/questions/Research: how GSD fits into our coding harness setup.md +97 -0
  315. 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 +80 -0
  316. package/vault/wiki/questions/Research: pi-vcc.md +113 -0
  317. package/vault/wiki/questions/Research: semantic code search tools.md +69 -0
  318. package/vault/wiki/questions/Research: vcc extension for pi coding agent.md +73 -0
  319. package/vault/wiki/questions/how-to-enable-semantic-code-search-now.md +111 -0
  320. package/vault/wiki/questions/mvp-implementation-blueprint.md +552 -0
  321. package/vault/wiki/questions/research-agent-first-codebase-exploration.md +199 -0
  322. package/vault/wiki/questions/research-agentic-coding-harness-latest-papers.md +142 -0
  323. package/vault/wiki/questions/research-gitingest-gitreverse-integration.md +100 -0
  324. package/vault/wiki/questions/research-wozcode-token-reduction.md +67 -0
  325. package/vault/wiki/questions/resolved-context-pruning-inplace-vs-restart.md +95 -0
  326. package/vault/wiki/questions/resolved-context-window-economics.md +167 -0
  327. package/vault/wiki/questions/resolved-imad-debate-gating-transfer.md +126 -0
  328. package/vault/wiki/questions/resolved-mcp-tool-preference.md +112 -0
  329. package/vault/wiki/questions/resolved-small-model-meta-agents.md +107 -0
  330. package/vault/wiki/questions/resolved-treesitter-dynamic-languages.md +95 -0
  331. package/vault/wiki/sources/Auggie Context MCP Server.md +63 -0
  332. package/vault/wiki/sources/Augment Code Codacy AI Giants.md +61 -0
  333. package/vault/wiki/sources/Augment Code MCP SiliconAngle.md +49 -0
  334. package/vault/wiki/sources/Augment Code WorkOS ERC 2025.md +55 -0
  335. package/vault/wiki/sources/Augment Context Engine Official.md +71 -0
  336. package/vault/wiki/sources/Augment SWE-bench Agent GitHub.md +74 -0
  337. package/vault/wiki/sources/Augment SWE-bench Pro Blog.md +58 -0
  338. package/vault/wiki/sources/Source: AgentBus Jinja2 Prompt Pipelines.md +75 -0
  339. package/vault/wiki/sources/Source: Arxiv /342/200/224 Don't Break the Cache.md" +85 -0
  340. package/vault/wiki/sources/Source: Augment - Harness Engineering for AI Coding Agents.md +58 -0
  341. package/vault/wiki/sources/Source: Blake Crosley Agent Architecture Guide.md +100 -0
  342. package/vault/wiki/sources/Source: Bolt.new Architecture & Case Study.md +75 -0
  343. package/vault/wiki/sources/Source: Build-Time Prompt Compilation Architecture.md +107 -0
  344. package/vault/wiki/sources/Source: Claude API Agent Skills Overview.md +70 -0
  345. package/vault/wiki/sources/Source: Gemini CLI Changelogs.md +88 -0
  346. package/vault/wiki/sources/Source: Google Blog - Gemini CLI Announcement.md +57 -0
  347. package/vault/wiki/sources/Source: Google Gemini CLI Architecture Docs.md +53 -0
  348. package/vault/wiki/sources/Source: LangChain - Anatomy of Agent Harness.md +65 -0
  349. package/vault/wiki/sources/Source: Lovable Architecture & Clone Analysis.md +83 -0
  350. package/vault/wiki/sources/Source: Martin Fowler - Harness Engineering.md +70 -0
  351. package/vault/wiki/sources/Source: OpenAI Harness Engineering Five Principles.md +58 -0
  352. package/vault/wiki/sources/Source: OpenAI Harness Engineering /342/200/224 0 Lines of Human Code.md" +101 -0
  353. package/vault/wiki/sources/Source: OpenDev /342/200/224 Building AI Coding Agents for the Terminal.md" +100 -0
  354. package/vault/wiki/sources/Source: Render AI Coding Agents Benchmark 2025.md +53 -0
  355. package/vault/wiki/sources/Source: Rocket.new /342/200/224 Vibe Solutioning Platform.md" +70 -0
  356. package/vault/wiki/sources/Source: SwirlAI Agent Skills Progressive Disclosure.md +71 -0
  357. package/vault/wiki/sources/Source: TianPan Prompt Caching Architecture.md +89 -0
  358. package/vault/wiki/sources/Source: Vercel Labs agent-browser.md +155 -0
  359. package/vault/wiki/sources/Source: browser-harness CDP Harness.md +126 -0
  360. package/vault/wiki/sources/agent-drift-academic-paper.md +79 -0
  361. package/vault/wiki/sources/aider-repomap-tree-sitter.md +42 -0
  362. package/vault/wiki/sources/anthropic-compaction-api.md +58 -0
  363. package/vault/wiki/sources/anthropic-effective-harnesses.md +42 -0
  364. package/vault/wiki/sources/anthropic-prompt-best-practices.md +100 -0
  365. package/vault/wiki/sources/anthropic2026-harness-design.md +63 -0
  366. package/vault/wiki/sources/barrel-files-tkdodo.md +38 -0
  367. package/vault/wiki/sources/birth-of-unix-kernighan-interview.md +57 -0
  368. package/vault/wiki/sources/bockeler2026-harness-engineering.md +69 -0
  369. package/vault/wiki/sources/cast-code-chunking-paper.md +50 -0
  370. package/vault/wiki/sources/ck-semantic-search.md +78 -0
  371. package/vault/wiki/sources/claude-code-architecture-karaxai-2026.md +71 -0
  372. package/vault/wiki/sources/claude-code-architecture-qubytes-2026.md +50 -0
  373. package/vault/wiki/sources/claude-code-architecture-vila-lab-2026.md +64 -0
  374. package/vault/wiki/sources/claude-code-security-architecture-penligent-2026.md +70 -0
  375. package/vault/wiki/sources/claude-context-editing-docs.md +13 -0
  376. package/vault/wiki/sources/cloudflare-codemode.md +63 -0
  377. package/vault/wiki/sources/code-chunk-library-supermemory.md +63 -0
  378. package/vault/wiki/sources/codeact-apple-2024.md +62 -0
  379. package/vault/wiki/sources/codex-dsc-rfc-8573.md +41 -0
  380. package/vault/wiki/sources/codex-open-source-agent-2026.md +110 -0
  381. package/vault/wiki/sources/coir-code-retrieval-benchmark.md +51 -0
  382. package/vault/wiki/sources/colinmcnamara-context-optimization-codemode.md +48 -0
  383. package/vault/wiki/sources/context-folding-paper.md +61 -0
  384. package/vault/wiki/sources/context-mode-website.md +63 -0
  385. package/vault/wiki/sources/cursor-agent-best-practices-2026.md +62 -0
  386. package/vault/wiki/sources/cursor-fork-29b-2025.md +50 -0
  387. package/vault/wiki/sources/cursor-harness-april-2026.md +76 -0
  388. package/vault/wiki/sources/cursor-instant-apply-2024.md +45 -0
  389. package/vault/wiki/sources/cursor-shadow-workspace-2024.md +52 -0
  390. package/vault/wiki/sources/cursor-shipped-coding-agent-2026.md +53 -0
  391. package/vault/wiki/sources/cursor-vs-antigravity-2026.md +51 -0
  392. package/vault/wiki/sources/disler-pi-vs-claude-code.md +69 -0
  393. package/vault/wiki/sources/distill-deterministic-context-compression.md +53 -0
  394. package/vault/wiki/sources/embedding-models-benchmark-supermemory-2025.md +48 -0
  395. package/vault/wiki/sources/executor-rhyssullivan.md +122 -0
  396. package/vault/wiki/sources/fallow-rs-codebase-intelligence.md +125 -0
  397. package/vault/wiki/sources/fan2025-imad.md +60 -0
  398. package/vault/wiki/sources/forgecode-gpt5-agent-improvements.md +63 -0
  399. package/vault/wiki/sources/gemini-3-prompting-guide.md +78 -0
  400. package/vault/wiki/sources/gh-cli-sub-issue-rfc.md +50 -0
  401. package/vault/wiki/sources/gh-sub-issue-extension.md +72 -0
  402. package/vault/wiki/sources/github-fork-issues-discussion.md +44 -0
  403. package/vault/wiki/sources/github-issue-dependencies-docs.md +49 -0
  404. package/vault/wiki/sources/github-sub-issues-docs.md +51 -0
  405. package/vault/wiki/sources/gitingest.md +91 -0
  406. package/vault/wiki/sources/gitreverse.md +63 -0
  407. package/vault/wiki/sources/google-antigravity-official-blog.md +47 -0
  408. package/vault/wiki/sources/google-antigravity-wikipedia.md +53 -0
  409. package/vault/wiki/sources/gsd-codecentric-deep-dive.md +57 -0
  410. package/vault/wiki/sources/gsd-github-repo.md +51 -0
  411. package/vault/wiki/sources/gsd-hn-discussion.md +59 -0
  412. package/vault/wiki/sources/guido-python-design-philosophy.md +56 -0
  413. package/vault/wiki/sources/hejlsberg-7-learnings.md +48 -0
  414. package/vault/wiki/sources/ironclaw-drift-monitor.md +80 -0
  415. package/vault/wiki/sources/langsight-loop-detection.md +80 -0
  416. package/vault/wiki/sources/leanctx-website.md +69 -0
  417. package/vault/wiki/sources/lee2026-meta-harness.md +59 -0
  418. package/vault/wiki/sources/linux-kernel-coding-workflow.md +50 -0
  419. package/vault/wiki/sources/lou2026-autoharness.md +53 -0
  420. package/vault/wiki/sources/martin-fowler-harness-engineering.md +73 -0
  421. package/vault/wiki/sources/mcp-architecture-docs.md +13 -0
  422. package/vault/wiki/sources/meng2026-agent-harness-survey.md +79 -0
  423. package/vault/wiki/sources/mindstudio-four-agent-types.md +68 -0
  424. package/vault/wiki/sources/ms-chat-history-management.md +13 -0
  425. package/vault/wiki/sources/openai-prompt-guidance.md +104 -0
  426. package/vault/wiki/sources/openclaw-session-pruning.md +13 -0
  427. package/vault/wiki/sources/opencode-dcp.md +13 -0
  428. package/vault/wiki/sources/opendev-arxiv-2603.05344v1.md +79 -0
  429. package/vault/wiki/sources/openhands-platform.md +39 -0
  430. package/vault/wiki/sources/oss-guide-codebase-exploration.md +53 -0
  431. package/vault/wiki/sources/pi-compaction-extensions-ecosystem.md +102 -0
  432. package/vault/wiki/sources/pi-context-prune-github-repo.md +38 -0
  433. package/vault/wiki/sources/pi-mono-compaction-docs.md +38 -0
  434. package/vault/wiki/sources/pi-omni-compact-github-repo.md +50 -0
  435. package/vault/wiki/sources/pi-rtk-optimizer-github-repo.md +45 -0
  436. package/vault/wiki/sources/pi-vcc-github-repo.md +69 -0
  437. package/vault/wiki/sources/pi-vscode-marketplace.md +41 -0
  438. package/vault/wiki/sources/pi-vscode-model-provider-marketplace.md +39 -0
  439. package/vault/wiki/sources/py-tree-sitter.md +13 -0
  440. package/vault/wiki/sources/sentrux-dev-landing.md +40 -0
  441. package/vault/wiki/sources/sentrux-docs-pro-architecture.md +75 -0
  442. package/vault/wiki/sources/sentrux-docs-quality-signal.md +46 -0
  443. package/vault/wiki/sources/sentrux-docs-root-cause-metrics.md +57 -0
  444. package/vault/wiki/sources/sentrux-docs-rules-engine.md +58 -0
  445. package/vault/wiki/sources/sentrux-github-repo.md +56 -0
  446. package/vault/wiki/sources/superpowers-github-repo.md +56 -0
  447. package/vault/wiki/sources/superpowers-release-blog.md +54 -0
  448. package/vault/wiki/sources/superpowers-termdock-analysis.md +45 -0
  449. package/vault/wiki/sources/swe-agent-aci.md +42 -0
  450. package/vault/wiki/sources/swe-bench.md +45 -0
  451. package/vault/wiki/sources/swe-pruner-context-pruning.md +13 -0
  452. package/vault/wiki/sources/think-in-code-blog.md +48 -0
  453. package/vault/wiki/sources/tree-sitter-docs.md +13 -0
  454. package/vault/wiki/sources/ts-best-practices-2025-devto.md +42 -0
  455. package/vault/wiki/sources/ts-folder-structure-mingyang.md +58 -0
  456. package/vault/wiki/sources/ts-monorepo-koerselman.md +44 -0
  457. package/vault/wiki/sources/ts-result-error-handling-kkalamarski.md +52 -0
  458. package/vault/wiki/sources/ts-runtimes-comparison-betterstack.md +42 -0
  459. package/vault/wiki/sources/ts-strict-mode-rishikc.md +43 -0
  460. package/vault/wiki/sources/unix-philosophy.md +48 -0
  461. package/vault/wiki/sources/vectara-chunking-vs-embedding-naacl2025.md +39 -0
  462. package/vault/wiki/sources/vectara-guardian-agents.md +79 -0
  463. package/vault/wiki/sources/vgrep-semantic-search.md +76 -0
  464. package/vault/wiki/sources/vitest-official.md +41 -0
  465. package/vault/wiki/sources/vscode-pi-community-extension.md +40 -0
  466. package/vault/wiki/sources/wozcode.md +79 -0
  467. package/.agents/skills/compress/SKILL.md +0 -111
  468. package/.agents/skills/compress/scripts/__init__.py +0 -9
  469. package/.agents/skills/compress/scripts/__main__.py +0 -3
  470. package/.agents/skills/compress/scripts/benchmark.py +0 -78
  471. package/.agents/skills/compress/scripts/cli.py +0 -73
  472. package/.agents/skills/compress/scripts/compress.py +0 -227
  473. package/.agents/skills/compress/scripts/detect.py +0 -121
  474. package/.agents/skills/compress/scripts/validate.py +0 -189
  475. package/.agents/skills/emil-design-eng/SKILL.md +0 -679
  476. package/.agents/skills/lean-ctx/SKILL.md +0 -149
  477. package/.agents/skills/lean-ctx/scripts/install.sh +0 -95
  478. package/.agents/skills/scrapling-official/LICENSE.txt +0 -28
  479. package/.agents/skills/scrapling-official/SKILL.md +0 -390
  480. package/.agents/skills/scrapling-official/examples/01_fetcher_session.py +0 -26
  481. package/.agents/skills/scrapling-official/examples/02_dynamic_session.py +0 -26
  482. package/.agents/skills/scrapling-official/examples/03_stealthy_session.py +0 -26
  483. package/.agents/skills/scrapling-official/examples/04_spider.py +0 -58
  484. package/.agents/skills/scrapling-official/examples/README.md +0 -45
  485. package/.agents/skills/scrapling-official/references/fetching/choosing.md +0 -78
  486. package/.agents/skills/scrapling-official/references/fetching/dynamic.md +0 -352
  487. package/.agents/skills/scrapling-official/references/fetching/static.md +0 -432
  488. package/.agents/skills/scrapling-official/references/fetching/stealthy.md +0 -255
  489. package/.agents/skills/scrapling-official/references/mcp-server.md +0 -214
  490. package/.agents/skills/scrapling-official/references/migrating_from_beautifulsoup.md +0 -86
  491. package/.agents/skills/scrapling-official/references/parsing/adaptive.md +0 -212
  492. package/.agents/skills/scrapling-official/references/parsing/main_classes.md +0 -586
  493. package/.agents/skills/scrapling-official/references/parsing/selection.md +0 -494
  494. package/.agents/skills/scrapling-official/references/spiders/advanced.md +0 -344
  495. package/.agents/skills/scrapling-official/references/spiders/architecture.md +0 -94
  496. package/.agents/skills/scrapling-official/references/spiders/getting-started.md +0 -164
  497. package/.agents/skills/scrapling-official/references/spiders/proxy-blocking.md +0 -235
  498. package/.agents/skills/scrapling-official/references/spiders/requests-responses.md +0 -196
  499. package/.agents/skills/scrapling-official/references/spiders/sessions.md +0 -205
  500. package/PLAN.md +0 -11
  501. package/extensions/lean-ctx-enforce.ts +0 -166
  502. package/skills-lock.json +0 -35
  503. package/wiki/README.md +0 -19
  504. package/wiki/decisions/0001-establish-project-wiki-and-decision-record-format.md +0 -25
  505. package/wiki/decisions/0002-add-project-banner-to-readme.md +0 -26
  506. package/wiki/decisions/0003-remove-redundant-readme-title-heading.md +0 -26
  507. package/wiki/decisions/0004-publish-package-to-npm-as-ultimate-pi.md +0 -26
  508. package/wiki/decisions/0005-automate-npm-publish-with-github-actions.md +0 -27
  509. package/wiki/decisions/0006-switch-to-npm-trusted-publishing.md +0 -26
  510. package/wiki/decisions/0007-use-absolute-banner-url-for-npm-readme-rendering.md +0 -26
  511. package/wiki/decisions/0008-rename-banner-asset-for-cache-busting.md +0 -26
  512. package/wiki/decisions/0009-force-oidc-path-by-clearing-node-auth-token-in-publish-step.md +0 -25
  513. package/wiki/decisions/0010-simplify-setup-node-for-npm-trusted-publishing.md +0 -26
  514. package/wiki/decisions/0011-add-noop-workflow-change-to-force-fresh-publish-run.md +0 -25
  515. package/wiki/decisions/0012-align-workflow-runtime-with-npm-trusted-publishing-requirements.md +0 -26
  516. package/wiki/decisions/0013-add-package-repository-url-for-provenance-validation.md +0 -25
@@ -0,0 +1,345 @@
1
+ ---
2
+ type: module
3
+ title: Harness Implementation Plan (Skill-First v2)
4
+ status: active
5
+ created: 2026-04-28
6
+ updated: 2026-05-03
7
+ tags: [harness, ultimate-pi, implementation, architecture, master-plan, skill-first, v2]
8
+ related:
9
+ - "[[mvp-implementation-blueprint]]"
10
+ - "[[skill-first-architecture]]"
11
+ - "[[Research: Skill-First Harness Architecture]]"
12
+ - "[[harness]]"
13
+ - "[[agentic-harness]]"
14
+ - "[[harness-h-formalism]]"
15
+ - "[[model-adaptive-harness]]"
16
+ - "[[feedforward-feedback-harness]]"
17
+ - "[[drift-detection-unified]]"
18
+ - "[[agent-skills-pattern]]"
19
+ - "[[adr-011]]"
20
+ - "[[consensus-debate]]"
21
+ - "[[harness-engineering-first-principles]]"
22
+ sources:
23
+ - "[[Source: SwirlAI Agent Skills Progressive Disclosure]]"
24
+ - "[[Source: Claude API Agent Skills Overview]]"
25
+ - "[[Source: Blake Crosley Agent Architecture Guide]]"
26
+ - "[[meng2026-agent-harness-survey]]"
27
+ - "[[anthropic2026-harness-design]]"
28
+ - "[[bockeler2026-harness-engineering]]"
29
+ - "[[forgecode-gpt5-agent-improvements]]"
30
+ - "[[fan2025-imad]]"
31
+ - "[[cursor-harness-april-2026]]"
32
+ - "[[google-antigravity-official-blog]]"
33
+ - "[[codex-open-source-agent-2026]]"
34
+ - "[[claude-code-architecture-vila-lab-2026]]"
35
+ - "[[codeact-apple-2024]]"
36
+ - "[[fallow-rs-codebase-intelligence]]"
37
+ - "[[sentrux-github-repo]]"
38
+ - "[[sentrux-docs-quality-signal]]"
39
+ - "[[sentrux-docs-root-cause-metrics]]"
40
+ - "[[sentrux-docs-rules-engine]]"
41
+ - "[[sentrux-docs-pro-architecture]]"
42
+ - "[[Research: sentrux.dev]]"
43
+ ---
44
+
45
+ # Harness Implementation Plan (Skill-First v2)
46
+
47
+ **Master plan** for the ultimate-pi agentic harness. Rethought May 2026 from first principles: harness layers are now **markdown-based skills** loaded via progressive disclosure. Only deterministic infrastructure — orchestrator extension, drift monitor, types, config — remains as TypeScript code. Consolidates all research from April-May 2026: Codex, Claude Code, Cursor, Antigravity, Fallow, WOZCODE, model-adaptive design, consensus debate, drift detection.
48
+
49
+ **2026-05-04 CORRECTION**: Pi v0.70.2 provides 30+ native event types via `ExtensionAPI.on()`. No custom event bus needed. The orchestrator listens to pi's native events directly and routes them through the skill pipeline. See [[adr-012]] and [[adr-026-one-thing]] for details.
50
+
51
+ ## The Skill-First Principle
52
+
53
+ **The harness is not a code pipeline — it's a skill coordination layer.** Every pipeline layer that involves evaluation (spec quality, plan correctness, code review, observability) is implemented as a markdown skill. Only behaviors that require deterministic guarantees (event routing, pattern matching on every tool event) remain as code.
54
+
55
+ | Implementation | What | Why |
56
+ |---------------|------|-----|
57
+ | **Skill** (`.pi/skills/harness-*/SKILL.md`) | L1 Spec, L2 Plan, L4 Critic, P20 Gate, L5 Observe, L6 Memory | Probabilistic evaluation — LLM is better at this than imperative code |
58
+ | **Code** (`src/harness/*.ts`) | Drift Monitor, Types, Config | Deterministic execution — must fire on every event with zero exceptions |
59
+
60
+ See [[skill-first-architecture]] for full derivation and first principles.
61
+
62
+ ## First Principles
63
+
64
+ All 19 original first principles remain valid. One new principle added:
65
+
66
+ **FP #20: The harness is a skill coordination layer, not a code pipeline.** Markdown-based skills loaded via progressive disclosure outperform TypeScript modules for harness logic. Skills are zero-compile, user-editable, context-efficient (three-tier loading), and portable across platforms. Code is reserved for deterministic infrastructure: drift monitoring. Event routing handled by pi's built-in event bus.
67
+
68
+ Original principles (condensed):
69
+ 1. Harness — not model — determines reliability at scale.
70
+ 2. Every pipeline layer reads wiki first, writes wiki after.
71
+ 3. Write once for strictest model. Relax for forgiving models.
72
+ 4. Three quality concerns, three timings: Syntax (inline), Semantics (L4), Style (P20).
73
+ 5. Debate is selective, not always-on (iMAD, 92% savings).
74
+ 6. Context drift is a positive feedback loop — detect, prune, restart.
75
+ 7. Winning consensus MUST be filed in wiki — permanent alignment record.
76
+ 8. Pre-verification beats post-verification (Shadow Workspace pattern).
77
+ 9. Positive loops are as important as negative loops.
78
+ 10. Keep Rate > benchmark scores.
79
+ 11. Trust requires proof, not just criticism — artifacts + adversarial review.
80
+ 12. Hooks determine correctness, not prompts (100% vs ~92% compliance).
81
+ 13. Context is a managed resource, not a budget to minimize.
82
+ 14. Safety is a subsystem, not an afterthought.
83
+ 15. Single entry-point, additive configuration hierarchy.
84
+ 16. Sandbox is foundation, permissions are policy.
85
+ 17. Agent should be composable — consumer and provider of tools.
86
+ 18. Implicit memory complements explicit memory.
87
+ 19. Code is a better tool-calling interface than JSON (TS Execution Layer).
88
+
89
+ ---
90
+
91
+ ## Formal Model: H = (E, T, C, S, L, V)
92
+
93
+ From Meng et al. (2026). Our implementation now maps skills into the formal model:
94
+
95
+ | Component | Implementation (Skill-First) |
96
+ |-----------|------------------------------|
97
+ | **E** Execution Loop | Harness orchestrator listens to pi's 30+ native events → routes to L1-L4 skill sequence via `pi.sendMessage()`. Drift monitor (code) runs on every `tool_result`. |
98
+ | **T** Tool Registry | Tool schemas, MCP tools, skills as activation-scoped tools |
99
+ | **C** Context Manager | Progressive disclosure via skills (discovery → activation → execution). Wiki knowledge base. |
100
+ | **S** State Store | Wiki vault persistence. Pipeline state tracked by pi's native event bus in memory + persisted at compaction. |
101
+ | **L** Lifecycle Hooks | Orchestrator listens to pi's 30+ native events directly. Skills define their own hooks in frontmatter. |
102
+ | **V** Evaluation Interface | L4 adversarial (critic skill + agent). L5 observability (observe skill). |
103
+
104
+ ---
105
+
106
+ ## The 8-Layer Runtime Pipeline (Skill-First)
107
+
108
+ Every task flows through all layers. Skills activate in sequence via the harness orchestrator extension, which listens to pi's native events and injects steering prompts via `pi.sendMessage()`.
109
+
110
+ ```
111
+ / harness "task"
112
+
113
+ L1: harness-spec skill → Hardens specification, resolves ambiguity
114
+
115
+ L2: harness-plan skill → Generates YAML task DAG with sprint contracts
116
+
117
+ L2.5: drift-monitor.ts code → LLM-first drift detection every 8 turns (Haiku 4.5) + rule pre-filter
118
+ + sentrux MCP → Structural health baseline via orchestrator session hooks. Catches architectural decay.
119
+
120
+ L3: Agent Execution → Flat tools (P43 deferred). Drift monitor watches tool_result events.
121
+ + sentrux MCP → Agent can scan() for structural awareness, check_rules() before commits.
122
+
123
+ L4: harness-critic skill → Spawns critic agent via pi-subagents. iMAD gating. Consensus filing.
124
+
125
+ P20: harness-gate skill → Deterministic: biome + tsc + fallow (dead code) + sentrux check (architecture). 0 LLM tokens.
126
+
127
+ L5: harness-observe skill → Keep Rate tracking, LLM-as-Judge, Quality Signal trending via sentrux evolution.
128
+
129
+ L6: harness-memory skill → Wiki read-first/write-after contract. Structural baselines via sentrux gate.
130
+
131
+ L7: Schema Orchestration → Archon YAML workflow (already YAML-based, no code).
132
+
133
+ L8: Wiki Query Interface → claude-obsidian skills (already skills-based).
134
+ ```
135
+
136
+ ---
137
+
138
+ ## Build Phases — Implementation Method
139
+
140
+ Each phase now specifies its **implementation method**: SKILL or CODE.
141
+
142
+ ### Foundation (Phase 0) — CODE
143
+
144
+ | Phase | What | Method | Files |
145
+ |-------|------|--------|-------|
146
+ | F0 | Types + Config | CODE | `src/harness/types.ts` |
147
+ | F0 | Harness orchestrator (listens to pi's 30+ native events, routes to skills) | CODE | `.pi/extensions/harness-orchestrator.ts` |
148
+ | F0 | Pipeline config | YAML | `harness.yaml` |
149
+ | F0 | Model profile system | CODE | `src/harness/profiles.ts` or config-driven |
150
+
151
+ ### L1-L2: Pre-Execution — SKILLS
152
+
153
+ | Phase | What | Method | Files |
154
+ |-------|------|--------|-------|
155
+ | P1 | Spec Hardening | **SKILL** | `.pi/skills/harness-spec/SKILL.md`, `reference.md` |
156
+ | P2 | Structured Planning + Sprint Contracts | **SKILL** | `.pi/skills/harness-plan/SKILL.md`, `reference.md` |
157
+ | P2b | Pre-debate gating classifier (iMAD) | **SKILL** | Integrated into `harness-critic/SKILL.md` |
158
+
159
+ ### L2.5: Runtime Drift Monitor — CODE
160
+
161
+ **Must be code.** Runs deterministically on every `tool_result` event. Skills are probabilistic — model decides when to activate them. Drift detection cannot be skipped.
162
+
163
+ | Phase | What | Method | Files |
164
+ |-------|------|--------|-------|
165
+ | P3 | LLM-based drift detection (primary) + rule pre-filter | CODE | `src/harness/drift-monitor.ts` |
166
+ | P4 | Context pruning + correction injection | CODE | `src/harness/drift-monitor.ts` |
167
+ | P5 | Escalation model (nudge → strong nudge → restart) | CODE | `src/harness/drift-monitor.ts` |
168
+ | P7 | Extension hooks for drift monitor + ck routing | CODE | `extensions/harness-drift-monitor.ts` (lightweight) |
169
+
170
+ Config: `.pi/harness/config.json` → `driftMonitor.*` keys.
171
+
172
+ ### L3: Execution Layer — Mixed
173
+
174
+ | Phase | What | Method | Files |
175
+ |-------|------|--------|-------|
176
+ | P8 | Grounding Checkpoints | **SKILL** | Can be skill-based (instructions for when to re-ground) |
177
+ | P13 | Semantic Code Search (ck MCP) | Config | `.pi/mcp/ck-search.json` |
178
+ | P14 | Think-in-Code Enforcement | **SKILL** | `.pi/skills/think-in-code/SKILL.md` |
179
+ | P15 | Gitingest skill | **SKILL** | `.pi/skills/gitingest/SKILL.md` (already exists) |
180
+ | P43 | TS Execution Layer (deferred) | CODE | `lib/harness-ts-exec.ts` — this IS infrastructure |
181
+
182
+ ### L4: Adversarial Verification — SKILL + AGENT
183
+
184
+ | Phase | What | Method | Files |
185
+ |-------|------|--------|-------|
186
+ | P16 | Critic with hard-threshold pass/fail | **SKILL** | `.pi/skills/harness-critic/SKILL.md`, `reference.md` |
187
+ | P16 | Critic agent definition | AGENT | `.pi/agents/critic.md` |
188
+ | P17 | Consensus Debate Transport | CODE | `lib/harness-messenger.ts` (pi-messenger stripped — minimal code) |
189
+ | P18 | Consensus Debate Protocol | **SKILL** | Integrated into `harness-critic/reference.md` |
190
+ | P19 | Debate integration (L1/L2/L4) | **SKILL** | `harness-critic/SKILL.md` contains debate trigger logic |
191
+ | P19b | Consensus-to-wiki filing | **SKILL** | `harness-critic/SKILL.md` includes filing instructions |
192
+
193
+ ### L5-L8: Post-Verification — SKILLS
194
+
195
+ | Phase | What | Method | Files |
196
+ |-------|------|--------|-------|
197
+ | P20 | Final Lint + Format + Architecture Gate | **SKILL** + BASH | `.pi/skills/harness-gate/SKILL.md` — instructions; bash runs biome/tsc/fallow/sentrux |
198
+ | P21 | Automated Observability + Keep Rate | **SKILL** | `.pi/skills/harness-observe/SKILL.md` |
199
+ | P22 | Persistent Memory (wiki vault) | **SKILL** | `.pi/skills/harness-memory/SKILL.md` |
200
+ | P23 | Schema Orchestration (Archon DAG) | YAML | `.archon/workflows/*.yaml` (already YAML-based) |
201
+ | P24 | Wiki Query Interface | SKILL | Integrated via claude-obsidian skills (already skills-based) |
202
+
203
+ ### Cross-Cutting — Mixed
204
+
205
+ | Phase | What | Method | Files |
206
+ |-------|------|--------|-------|
207
+ | P25 | Subagent Specialization Router | CODE | `lib/harness-router.ts` (routing logic is deterministic) |
208
+ | P27 | Context Anxiety Guard | **SKILL** | Can be skill-based with drift monitor integration |
209
+ | P28 | Positive Agent Loop Hooks | CODE | Extensions (hooks are deterministic) |
210
+ | P29 | Per-Tool Per-Model Error Classification | **SKILL** | `harness-observe/reference.md` (analysis is LLM evaluation) |
211
+ ### P44: Structural Quality Gate — sentrux Integration (replaces Fallow)
212
+
213
+ sentrux fully replaces Fallow for all codebase intelligence functions. It provides everything Fallow did (dead code, duplication, complexity, boundaries) plus additional capabilities Fallow lacked: modularity analysis (Newman 2004), acyclicity detection (Tarjan's SCC), dependency depth (Lakos 1996), equality/god-file detection (Gini 1912), session baseline/diff, and MCP integration with 9 tools.
214
+
215
+ | Phase | What | Method | Files |
216
+ |-------|------|--------|-------|
217
+ | P44a | sentrux MCP tool registration (9 tools) | CONFIG | `.pi/mcp/sentrux.json` — scan, health, session_start/end, rescan, check_rules, evolution, dsm, test_gaps |
218
+ | P44b | Pre-verification structural gate (`sentrux check`) | BASH + SKILL | Invoked by harness-gate skill in P15b sandbox |
219
+ | P44c | CI structural pass/fail (`sentrux check .` exits 0/1) | BASH | `.github/workflows/quality.yml` |
220
+ | P44d | Quality Signal tracking in L5 observability | SKILL | `harness-observe/reference.md` — sentrux evolution for trending |
221
+ | P44e | Rules engine enforcement (`.sentrux/rules.toml`) | CONFIG | Project-root `.sentrux/rules.toml` — layers, boundaries, constraints |
222
+ | P44f | Structural baselines in L6 memory | BASH | `sentrux gate --save` before session, `sentrux gate .` after |
223
+ | P44g | Session structural diff (catch degradation) | MCP | `session_start()` / `session_end()` via MCP — integrated into L2.5 drift monitor |
224
+
225
+ ### Future Phases — Method TBD
226
+
227
+ | Phase | What | Likely Method |
228
+ |-------|------|---------------|
229
+ | F1 | Harness Auto-Optimization | SKILL + CODE (meta-learning needs code substrate) |
230
+ | P30 | Browser Subagent | SKILL + BASH (`agent-browser` CLI — skill provides instructions) |
231
+ | P31 | Artifact Generation Layer | SKILL |
232
+ | P32 | Cross-Project Learning KB | SKILL + WIKI |
233
+ | P33 | Lifecycle Hook System | CODE (hooks are deterministic by definition) |
234
+ | P34 | Structured Compaction Pipeline | CODE (compaction logic is infrastructure) |
235
+ | P35 | Permission Subsystem | CODE (permission checks are deterministic gates) |
236
+ | P38-P42 | Sandbox, MCP Server, Skills Tooling, Implicit Memory, Automation | Mixed — skills for configuration, code for enforcement |
237
+
238
+ ---
239
+
240
+ ## Unified Token Budget
241
+
242
+ Per subtask. Skill activation costs comparable to code module loading but with progressive disclosure advantage.
243
+
244
+ | Layer / Phase | Tokens | Mechanism |
245
+ |---------------|--------|-----------|
246
+ | L1 Spec Hardening (skill) | ~2,500 | Skill activation ~2,000 + spec generation + Q&A |
247
+ | L2 Planning (skill) | ~4,500 | Skill activation + plan generation + sprint contracts |
248
+ | L2.5 Drift Monitor (code) | ~1,500-2,200 | Haiku 4.5 every 8 turns. Rule pre-filter: 0 tokens. sentrux session_start/end: 0 LLM tokens (MCP). |
249
+ | Pre-Verification Sandbox (P15b) | ~0-200 | Deterministic compile/lint/sentrux check. LLM tokens only on failure. |
250
+ | L4 Adversarial (skill + agent) | ~4,500 | Skill activation + critic sub-agent + selective debate |
251
+ | Phase 16 Lint+Format+Arch Gate | ~0 | Deterministic bash: biome + tsc + fallow + sentrux check. 0 LLM tokens. |
252
+ | L5 Observability (skill) | ~2,000 | Skill activation + metric analysis. sentrux evolution: 0 LLM tokens (MCP data). |
253
+ | L6 Memory Writes (skill) | ~1,000 | Skill activation + wiki interaction |
254
+ | Browser Subagent (P30) | ~0-500 | Deterministic screenshot + pixel diff |
255
+ | Artifact Generation (P31) | ~1,000 | Skill activation + artifact generation |
256
+ | L7+L8 Orchestration + Query | ~1,000 | Wiki bootstrapping amortized |
257
+ | **Total per subtask** | **~16,500-18,000** | sentrux MCP tools add 0 LLM tokens — they are deterministic structural computations. |
258
+
259
+ ### Savings from Skill-First Architecture
260
+
261
+ | Mechanism | Savings |
262
+ |-----------|---------|
263
+ | Progressive skill loading | Code modules always in context (~15K tokens). Skills loaded only when phase active — discovery layer ~480 tokens total for all 6 harness skills. |
264
+ | Zero-compile iteration | No TypeScript compilation for harness logic changes. Edit markdown → agent picks up next activation. |
265
+ | User-editable harness | PMs/domain experts can edit SKILL.md without TypeScript knowledge. |
266
+ | Selective debate routing (iMAD) | 92% token savings on ~80% of debate-invoked tasks (unchanged) |
267
+ | AST truncation | 30-50% input tokens (unchanged) |
268
+ | Fuzzy edit matching | 5-15% retry round elimination (unchanged) |
269
+ | TS Execution Layer (P43, deferred) | 3-4x context reduction (unchanged) |
270
+ | sentrux MCP structural checks | 0 LLM tokens for architecture gate — deterministic Rust computation. Replaces ~500-1,000 tokens of LLM-based structural review that Fallow required for interpretation. |
271
+
272
+ ---
273
+
274
+ ## What Never Adapts (Cross-Model Invariants)
275
+
276
+ Same as v1. Pipeline phase ordering, quality standards, confidence labeling, budget constraints, verification requirements, read-first/write-after wiki contract, no-skip rule. The skill method doesn't change these — it changes HOW they're implemented (markdown vs TypeScript), not WHAT they enforce.
277
+
278
+ ## What Adapts Per Model
279
+
280
+ Skills can specify model overrides in their frontmatter:
281
+
282
+ ```yaml
283
+ ---
284
+ name: harness-critic
285
+ model: opus # Use Opus for adversarial review
286
+ ---
287
+ ```
288
+
289
+ Pi's built-in event bus can pass model directives when invoking skills. Provider-native prompt rendering (P22b) applies to skill bodies as well as system prompts — but skill bodies are user-editable markdown, giving teams the option to write model-specific instructions directly.
290
+
291
+ ---
292
+
293
+ ## Consensus Filing Contract
294
+
295
+ Unchanged from v1. Every debate verdict writes to `wiki/consensus/`. The harness-critic skill includes consensus filing instructions. L7 enforcement unchanged.
296
+
297
+ ## New Tools Integrated
298
+
299
+ | Tool | Phase | Integration |
300
+ |------|-------|-------------|
301
+ | **Markdown skills** (Anthropic open standard) | All layers | `.pi/skills/harness-*/SKILL.md` — progressive disclosure, zero-compile |
302
+ | **ck** (semantic code search) | P13 | MCP server |
303
+ | **Gitingest** (bulk ingestion) | P15 | Skill |
304
+ | **pi-messenger** (stripped) | P17 | Code (transport layer — deterministic) |
305
+ | **agent-browser** (Vercel Labs) | P30 | Bash CLI — invoked by skill |
306
+ | **sentrux** (structural quality gate) | P44 | MCP + Bash + Config — replaces Fallow. 9 MCP tools, rules engine, session diff. |
307
+ | **Fallow** (dead code detection) | P20 gate | Bash — retained for dead code only (sentrux covers architecture). Complementary, not replaced. |
308
+
309
+ ---
310
+
311
+ ## Research Validation Summary
312
+
313
+ All research from April-May 2026 remains valid. The skill-first architecture is independently validated by:
314
+
315
+ - **sentrux — Structural Feedback Loop** (Mar 2026): Validates FP #2 (every pipeline layer reads wiki first), FP #4 (three quality concerns at three timings), and FP #7 (winning consensus filed). The Quality Signal (0-10,000) provides a single continuous metric for architectural health that maps directly to L5 observability and L2.5 structural drift monitoring. The MCP integration (9 tools) provides the actuator side of the cybernetic feedback loop — agents can scan, baseline, and detect degradation autonomously. (Source: [[Research: sentrux.dev]])
316
+ - **Anthropic Agent Skills** (Dec 2025): Three-tier progressive disclosure proven at scale. Within weeks, OpenAI, Google, GitHub, Cursor adopted the open standard. (Source: [[Source: SwirlAI Agent Skills Progressive Disclosure]])
317
+ - **Blake Crosley Harness Pattern** (Apr 2026): "The harness is a programmable runtime with an LLM kernel." 84 hooks, 48 skills production system. "Hooks guarantee execution; prompts do not." (Source: [[Source: Blake Crosley Agent Architecture Guide]])
318
+ - **Claude Code Architecture** (Mar-May 2026): Skills + hooks + subagents + memory as the four extension primitives. (Source: [[Source: Claude API Agent Skills Overview]])
319
+ - **Cursor Harness Evolution** (Apr 2026): Dynamic context, Keep Rate, per-model error classification. Skills are their "Rules/Skills system" — markdown-based progressive disclosure.
320
+ - **Codex Open-Source** (2026): `agentskills.io` standard. Skills ecosystem tooling. Progressive disclosure with scoped discovery.
321
+ - **Google Antigravity** (2025-2026): SKILL.md progressive disclosure pattern. "The same pattern, different implementation."
322
+
323
+ **The convergence is clear**: every major agent platform independently arrived at markdown-based skills with progressive disclosure as the right primitive for agent behavior. The harness implementation plan now aligns with this industry convergence.
324
+
325
+ ---
326
+
327
+ ## Key Architecture Decisions
328
+
329
+ | ADR | Decision | Skill-First Impact |
330
+ |-----|----------|-------------------|
331
+ | **ADR-012** | Extension-based harness orchestrator | Orchestrator is the ONLY extension. Listens to pi's 30+ native events directly. Invokes skills via `pi.sendMessage()`. |
332
+ | **ADR-015** | Pipeline-first build order | Unchanged. Skills deliver same pipeline in same order. |
333
+ | **ADR-017** | `~~src/harness/~~` library + thin wiring. Superseded. | Now truly thin: 3 files vs 15. Logic extracted to skills. Event bus removed. |
334
+ | **ADR-021** | Explicit `/harness` command | Pi's native event bus detects command → activates harness-spec skill. |
335
+ | **ADR-018** | Single config file | Unchanged. |
336
+ | **ADR-019** | `harness_ask` tool | Invoked by harness-spec skill, not code. |
337
+ | **ADR-020** | YAML task DAG | Generated by harness-plan skill, not code. |
338
+ | **ADR-022** | 7 drift patterns | In drift-monitor.ts (code — deterministic). |
339
+ | **ADR-025** | GitHub Issues spec storage | Used by harness-spec skill. |
340
+ | **ADR-013** | Biome + tsc + fallow + sentrux gate | Invoked by harness-gate skill (bash). sentrux adds architectural enforcement: cycles, modularity, depth, equality, redundancy. |
341
+ | **ADR-016** | pi-subagents for L4 critic | Invoked by harness-critic skill. |
342
+
343
+ ---
344
+
345
+ See [[mvp-implementation-blueprint]] for the detailed file structure, type definitions, skill bodies, and build order. See [[skill-first-architecture]] for the first-principles derivation and architecture diagram.
@@ -0,0 +1,135 @@
1
+ ---
2
+ type: module
3
+ title: Harness-Wiki Skill Mapping
4
+ status: active
5
+ created: "2026-04-28"
6
+ updated: "2026-04-28"
7
+ tags: [module, harness, wiki, skills, integration, pipeline]
8
+ sources:
9
+ - "[[adr-010]]"
10
+ - "[[adr-009]]"
11
+ - "[[harness]]"
12
+ related:
13
+ - "[[harness-wiki-pipeline]]"
14
+ - "[[wiki-query-interface]]"
15
+ - "[[persistent-memory]]"
16
+ ---
17
+
18
+ # Harness-Wiki Skill Mapping
19
+
20
+ Exactly which Obsidian wiki skills are invoked at each pipeline stage. This is the skill→layer contract table referenced by [[adr-010]].
21
+
22
+ ## Skill Inventory
23
+
24
+ | Skill | Purpose | Trigger Type |
25
+ |-------|---------|-------------|
26
+ | `wiki-query` | Read/search wiki for decisions, specs, patterns | Read (before action) |
27
+ | `wiki-ingest` | Write sources and extracted entities to wiki | Write (after change) |
28
+ | `wiki-lint` | Health check: orphans, dead links, stale claims, frontmatter gaps | Write (periodic) |
29
+ | `wiki-fold` | Rollup log entries into meta-pages | Write (periodic) |
30
+ | `wiki-save` | Capture conversation/insight as structured wiki note | Write (after insight) |
31
+ | `obsidian-markdown` | Format wiki pages with correct OFM syntax | Write (all writes) |
32
+ | `obsidian-bases` | Create dynamic database views over wiki pages | Read (dashboards) |
33
+ | `canvas` | Visual map of wiki pages and relationships | Read (exploration) |
34
+ | `autoresearch` | Deep research loop that files findings into wiki | Write (research) |
35
+ | `compress` | Compress wiki pages into caveman format for token savings | Write (periodic) |
36
+ | `defuddle` | Strip clutter from web pages before ingestion | Read (pre-process) |
37
+
38
+ ## Per-Layer Skill Mapping
39
+
40
+ ### L1: Spec Hardening
41
+
42
+ | Phase | Skill | Action | Detail |
43
+ |-------|-------|--------|--------|
44
+ | **Read** | `wiki-query` | Look up `decisions/` and `modules/spec-hardening` | Find existing hardening rules, ADR constraints, success criteria patterns |
45
+ | **Write** | `wiki-save` | File hardened spec as decision page | `decisions/spec-{feature}.md` with frontmatter `type: decision` |
46
+ | **Write** | `wiki-ingest` | Update `modules/spec-hardening.md` status | Add new `> [!success]` or `> [!warning]` callout |
47
+ | **Format** | `obsidian-markdown` | Ensure all spec pages use correct OFM | Wikilinks, callouts, frontmatter |
48
+
49
+ ### L2: Structured Planning
50
+
51
+ | Phase | Skill | Action | Detail |
52
+ |-------|-------|--------|--------|
53
+ | **Read** | `wiki-query` | Look up `flows/`, `modules/structured-planning` | Prior plans, DAG patterns, proven task decomposition |
54
+ | **Read** | `wiki-query` | Deep search for related ADRs | Cross-reference all decisions that affect the plan |
55
+ | **Write** | `wiki-save` | File approved plan as flow page | `flows/plan-{feature}.md` with frontmatter `type: flow`, `plan_status: approved` |
56
+ | **Write** | `wiki-ingest` | Update `modules/structured-planning.md` | Add plan reference, update status |
57
+ | **Format** | `obsidian-markdown` | All plan pages use OFM | Task DAG in code blocks, wikilinks to dependencies |
58
+
59
+ ### L3: Grounding Checkpoints
60
+
61
+ | Phase | Skill | Action | Detail |
62
+ |-------|-------|--------|--------|
63
+ | **Read** | `wiki-query` | Quick search `hot.md` for current session context | Am I drifting from the approved plan? |
64
+ | **Write** | `wiki-ingest` | Record checkpoint in `log.md` | Append entry with checkpoint type, task_id, pass/fail |
65
+ | **Write** | `wiki-save` | If drift detected, file failure pattern | `modules/{feature}.md` with `> [!contradiction]` callout |
66
+ | **Write** | `wiki-save` | If checkpoint passed, update hot.md | Refresh recent context with current state |
67
+
68
+ ### L4: Adversarial Verification
69
+
70
+ | Phase | Skill | Action | Detail |
71
+ |-------|-------|--------|--------|
72
+ | **Read** | `wiki-query` | Look up `decisions/adr-008` and relevant specs | Tests must come from spec ONLY — never from implementation |
73
+ | **Read** | `wiki-query` | Look up `modules/adversarial-verification` | Attack patterns, focus areas, retry limits |
74
+ | **Write** | `wiki-save` | File verified success patterns | `modules/{feature}.md` with `status: mature` frontmatter |
75
+ | **Write** | `wiki-save` | File failure patterns with critic findings | `modules/{feature}.md` with `> [!contradiction]` callout |
76
+ | **Write** | `wiki-ingest` | Update `modules/adversarial-verification.md` | Add attack results to findings section |
77
+
78
+ ### L5: Automated Observability
79
+
80
+ | Phase | Skill | Action | Detail |
81
+ |-------|-------|--------|--------|
82
+ | **Read** | `wiki-query` | Look up `modules/automated-observability` | Existing metric definitions, alert conditions |
83
+ | **Write** | `wiki-save` | File observability decision | `decisions/observability-{feature}.md` with metric definitions |
84
+ | **Write** | `wiki-ingest` | Update `modules/automated-observability.md` | Add new metrics, update verification table |
85
+
86
+ ### L6: Persistent Memory (Already Wiki-Native)
87
+
88
+ | Phase | Skill | Action | Detail |
89
+ |-------|-------|--------|--------|
90
+ | **Read** | `wiki-query` | Standard/deep search per depth table | See [[persistent-memory]] three-depth mode |
91
+ | **Write** | `wiki-save` | File decisions, patterns, events | Per "Write Patterns by Layer" table in [[persistent-memory]] |
92
+ | **Write** | `wiki-query` | Update `hot.md` | Every session start / shutdown per event hooks |
93
+ | **Write** | `wiki-ingest` | Batch entity/concept extraction | After research or multi-source ingestion |
94
+ | **Periodic** | `wiki-lint` | Health check every 10-15 writes | Per lint schedule in [[wiki-query-interface]] |
95
+ | **Periodic** | `wiki-fold` | Rollup log entries | After 8+ entries per [[adr-010]] contract |
96
+ | **Periodic** | `compress` | Compress high-token pages | When hot.md or frequent pages exceed token budget |
97
+
98
+ ### L7: Schema Orchestration
99
+
100
+ | Phase | Skill | Action | Detail |
101
+ |-------|-------|--------|--------|
102
+ | **Read** | `wiki-query` | Look up `modules/schema-orchestration` and `flows/` | Pipeline definitions, wave tracking, status |
103
+ | **Write** | `wiki-ingest` | Update orchestration page per wave completion | Status transitions, replan events |
104
+ | **Enforcement** | L7 extension hooks | **Block wiki-skip**: if no wiki-query precedes an action, reject it | This is the enforcement point for [[adr-010]] |
105
+
106
+ ### L8: Wiki Query Interface (Already Wiki-Native)
107
+
108
+ | Phase | Skill | Action | Detail |
109
+ |-------|-------|--------|--------|
110
+ | **Read** | `wiki-query` | Primary search interface per depth table | See [[wiki-query-interface]] |
111
+ | **Read** | `obsidian-bases` | Dashboard views over wiki pages | Status dashboards, dependency views |
112
+ | **Read** | `canvas` | Visual exploration of page relationships | Architecture maps, dependency graphs |
113
+ | **Write** | `wiki-save` | File deep-query results | `questions/research-{topic}.md` |
114
+
115
+ ## Cross-Cutting Skills
116
+
117
+ These skills operate across layers, not tied to a specific stage:
118
+
119
+ | Skill | When | Why |
120
+ |-------|------|-----|
121
+ | `autoresearch` | Before L1-L2 for unknown domains | Fills gaps in wiki before spec hardening begins |
122
+ | `defuddle` | Before `wiki-ingest` for web sources | Strips clutter, saves 40-60% tokens on ingestion |
123
+ | `compress` | When any wiki page exceeds token budget | Keeps L6 reads efficient |
124
+ | `wiki-fold` | After 8+ entries in `log.md` | Prevents log bloat, creates fold summaries |
125
+ | `canvas` | On-demand for visual architecture | Architecture diagrams, dependency maps |
126
+
127
+ ## Enforcement Points
128
+
129
+ The harness enforces the read-first/write-after contract at two chokepoints:
130
+
131
+ 1. **L7 Schema Orchestration**: Before dispatching any layer, the orchestrator checks that `wiki-query` has been called for the relevant pages. If not, it inserts a read step.
132
+ 2. **Extension hooks**: Every `extensions/harness-*.ts` file must call the appropriate wiki skill before/after its layer logic. The hook pattern is:
133
+ - `pre_action`: Call `wiki-query` for relevant docs
134
+ - `post_action`: Call `wiki-save` or `wiki-ingest` to persist outcomes
135
+ - `periodic`: Call `wiki-lint` every 10-15 writes
@@ -0,0 +1,86 @@
1
+ ---
2
+ type: module
3
+ title: Agentic Harness
4
+ status: active
5
+ created: "2026-04-28"
6
+ updated: "2026-04-30"
7
+ tags: [module, harness, planning, architecture]
8
+ sources:
9
+ - "[[harness-implementation-plan]]"
10
+ - "[[harness-control-frameworks]]"
11
+ - "[[drift-detection-unified]]"
12
+ - "[[Research: sentrux.dev]]"
13
+ related:
14
+ - "[[harness-wiki-skill-mapping]]"
15
+ - "[[harness-wiki-pipeline]]"
16
+ - "[[model-adaptive-harness]]"
17
+ ---
18
+
19
+ # Agentic Harness
20
+
21
+ An **8-layer mandatory pipeline** with a **drift monitor layer** and **cross-cutting tool enhancements**. Every task flows through all layers. No layer can be skipped. See [[harness-implementation-plan]] for the master build plan.
22
+
23
+ ## Runtime Pipeline
24
+
25
+ ```
26
+ L1: Spec Hardening → L2: Structured Planning → L2.5: Drift Monitor (+sentrux structural)
27
+ ↓ ↓
28
+ L3: Grounding Checkpoints (+sentrux MCP) → L4: Adversarial Verification → Phase 16: Lint+Format+Arch Gate (+sentrux check)
29
+
30
+ L5: Automated Observability (+Quality Signal) → L6: Persistent Memory (+baselines) → L7: Schema Orchestration → L8: Wiki Query
31
+ ```
32
+
33
+ ## The 8 Layers (+ Drift Monitor)
34
+
35
+ | # | Layer | Module | Purpose |
36
+ |---|-------|--------|---------|
37
+ | 1 | Spec Hardening | [[spec-hardening]] | Block execution until ambiguities resolved |
38
+ | 2 | Structured Planning | [[structured-planning]] | Machine-readable task DAG + sprint contracts |
39
+ | 2.5 | Runtime Drift Monitor | [[drift-detection-unified]] | Detect stuckness, prune context, restart agent |
40
+ | 3 | Grounding Checkpoints | [[grounding-checkpoints]] | Smallest verifiable change + spec-drift detection |
41
+ | 4 | Adversarial Verification | [[adversarial-verification]] | Critic agents attack with hard-threshold criteria |
42
+ | 5 | Automated Observability | [[automated-observability]] | Instrumentation is definition-of-done |
43
+ | 6 | Persistent Memory | [[persistent-memory]] | claude-obsidian wiki as knowledge base |
44
+ | 7 | Schema Orchestration | [[schema-orchestration]] | Archon workflow DAG, enforces wiki contract |
45
+ | 8 | Wiki Query Interface | [[wiki-query-interface]] | LLM-native search via claude-obsidian skills |
46
+
47
+ ## Cross-Cutting Tool Enhancements (L3)
48
+
49
+ | Module | Purpose |
50
+ |--------|---------|
51
+ | [[think-in-code-enforcement]] | Mandatory code-over-data paradigm enforcement |
52
+ | AST Truncation | Tree-sitter signature-only reading (Phase P9) |
53
+ | Fuzzy Edit Matching | Near-miss tolerance for edit tool (Phase P10) |
54
+ | Inline Syntax Validation | Compilers/parsers post-edit, <2s (Phase P11-P12) |
55
+ | Semantic Code Search | ck hybrid BM25+embeddings grep (Phase P13) |
56
+ | Gitingest | Bulk external repo ingestion (Phase P15) |
57
+ | Haiku Model Router | Route exploration to cheap model (Phase P25) |
58
+ | **sentrux MCP (9 tools)** | Structural scan, health check, rules check, session baseline/diff — agent self-verifies architecture before committing (Phase P44) |
59
+
60
+ ## Formal Models
61
+
62
+ | Framework | Page |
63
+ |-----------|------|
64
+ | H = (E, T, C, S, L, V) | [[harness-h-formalism]] |
65
+ | Feedforward-Feedback Controls | [[feedforward-feedback-harness]] |
66
+ | Generator-Evaluator Topology | [[generator-evaluator-architecture]] |
67
+ | Unified Control Frameworks | [[harness-control-frameworks]] |
68
+ | Model-Adaptive Configuration | [[model-adaptive-harness]], [[harness-configuration-layers]] |
69
+ | Drift Detection (3 paradigms) | [[drift-detection-unified]] |
70
+
71
+ ## Key Design Decisions
72
+
73
+ - **[[adr-008|Black-box QA]]**: Tests from spec only, never from implementation
74
+ - **[[adr-009|claude-obsidian Mode B]]**: Replaces Vectra + embeddings with LLM-native search
75
+ - **[[adr-010|Wiki Tight-Coupling]]**: Every layer reads wiki first, writes wiki after
76
+ - **[[adr-011|Consensus Debate with Selective Routing]]**: Multi-agent debate gated by iMAD-style classifier. Winning consensus filed to `wiki/consensus/` for permanent agent alignment.
77
+ - **No skip rule**: Verification is mandatory. Agent confidence is not evidence.
78
+ - **First-principles quality split**: Syntax (inline), Semantics (L4), Style (final gate)
79
+
80
+ ## Token Budget
81
+
82
+ ~15,000-16,000 tokens per subtask pipeline overhead (with all enhancements). See [[harness-implementation-plan]] for full budget breakdown.
83
+
84
+ ## Build Sequence
85
+
86
+ Foundation → L1+L2 → L2.5 → L3+Tools → L4+Debate → L5-L8 → Cross-Cutting. See [[harness-implementation-plan]] for all 27 build phases.
@@ -0,0 +1,85 @@
1
+ ---
2
+ type: module
3
+ title: Persistent Memory
4
+ status: developing
5
+ created: 2026-04-28
6
+ updated: 2026-04-28
7
+ tags: [harness, memory, wiki, knowledge-base, layer-6, claude-obsidian]
8
+ layer: "6"
9
+ sources:
10
+ - "[[harness-implementation-plan]]"
11
+ related:
12
+ - "[[harness-wiki-pipeline]]"
13
+ - "[[harness-wiki-skill-mapping]]"
14
+ - "[[agentic-harness]]"
15
+ - "[[wiki-query-interface]]"
16
+ - "[[schema-orchestration]]"
17
+ ---
18
+
19
+ # Persistent Structured Memory
20
+
21
+ Layer 6 of the [[agentic-harness]]. The knowledge base substrate that every other layer reads and writes. Uses [[adr-009|claude-obsidian skills in GitHub Mode B]] — no custom WikiKnowledgeBase, no Vectra, no embedding model.
22
+
23
+ ## Wiki Structure (Mode B)
24
+
25
+ ```
26
+ wiki/
27
+ index.md # Master catalog
28
+ log.md # Append-only operation log
29
+ hot.md # Hot cache: ~500-word recent context
30
+ overview.md # Executive summary
31
+ decisions/ # Architecture Decision Records
32
+ modules/ # Major modules, packages, services
33
+ components/ # Reusable UI or functional components
34
+ dependencies/ # External deps, versions, risk
35
+ flows/ # Data flows, request paths, auth flows
36
+ sources/ # Summary pages per .raw/ source
37
+ entities/ # People, orgs, products, repos
38
+ concepts/ # Ideas, patterns, frameworks
39
+ meta/ # Dashboards, lint reports, conventions
40
+ ```
41
+
42
+ ## Search: Three Depth Modes
43
+
44
+ | Mode | Reads | Token Cost | When |
45
+ |------|-------|------------|------|
46
+ | **Quick** | hot.md + index.md | ~1,500 | Simple factual lookups |
47
+ | **Standard** | hot.md → index.md → 3-5 pages | ~3,000 | Most harness decisions |
48
+ | **Deep** | Full wiki + optional web | ~8,000+ | Synthesis, gap analysis |
49
+
50
+ ## Harness Entry Type Mapping
51
+
52
+ | Harness Entry | Wiki Location | Frontmatter Type |
53
+ |--------------|---------------|------------------|
54
+ | `decision` | `decisions/` | `decision` |
55
+ | `success_pattern` | `modules/` or `components/` | `module`/`component` with `status: mature` |
56
+ | `failure_pattern` | `modules/` or `flows/` | with `> [!contradiction]` callout |
57
+ | `spec` | `decisions/` | `decision_type: spec` |
58
+ | `plan` | `flows/` | `flow` with `plan_status` |
59
+
60
+ ## Write Patterns by Layer
61
+
62
+ | Layer | When | What Written |
63
+ |-------|------|-------------|
64
+ | 1 | Spec hardened | Decision (hardening choices) |
65
+ | 2 | Plan approved | Decision (planning choices) |
66
+ | 3 | Checkpoint recorded | Evolution event |
67
+ | 3 | Drift detected | Failure pattern |
68
+ | 4 | Subtask verified | Success pattern |
69
+ | 4 | Subtask failed | Failure pattern with `> [!contradiction]` |
70
+ | 5 | Observability defined | Decision (metric choices) |
71
+
72
+ ## Extension Event Hooks
73
+
74
+ | Event | Wiki Operation |
75
+ |-------|---------------|
76
+ | `session_start` | Read hot.md |
77
+ | `session_shutdown` | Update hot.md, append to log.md |
78
+ | `turn_end` | Auto-capture decision rationale |
79
+ | `spec_hardened` | Store spec as decision |
80
+ | `plan_approved` | Store plan as flow |
81
+
82
+ ## Dependencies
83
+
84
+ - 24 obsidian-wiki skills: `npx skills add Ar9av/obsidian-wiki --yes`
85
+ - 5 obsidian-skills: `npx skills add kepano/obsidian-skills --yes`