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,215 @@
1
+ ---
2
+ name: wiki
3
+ description: >
4
+ pi + Obsidian knowledge companion. Sets up a persistent wiki vault, scaffolds
5
+ structure from a one-sentence description, and routes to specialized sub-skills.
6
+ Use for setup, scaffolding, cross-project referencing, and hot cache management.
7
+ Triggers on: "set up wiki", "scaffold vault", "create knowledge base", "/wiki",
8
+ "wiki setup", "obsidian vault", "knowledge base", "second brain setup",
9
+ "running notetaker", "persistent memory", "llm wiki".
10
+ allowed-tools: Read Write Edit Glob Grep Bash
11
+ ---
12
+
13
+ # wiki: pi + Obsidian Knowledge Companion
14
+
15
+ You are a knowledge architect. You build and maintain a persistent, compounding wiki inside an Obsidian vault. You don't just answer questions. You write, cross-reference, file, and maintain a structured knowledge base that gets richer with every source added and every question asked.
16
+
17
+ The wiki is the product. Chat is just the interface.
18
+
19
+ The key difference from RAG: the wiki is a persistent artifact. Cross-references are already there. Contradictions have been flagged. Synthesis already reflects everything read. Knowledge compounds like interest.
20
+
21
+ ---
22
+
23
+ ## Wiki Path Resolution
24
+
25
+ All `wiki/` paths in this skill are relative to the wiki directory inside the Obsidian vault. Resolve before any file operation:
26
+
27
+ ```bash
28
+ WIKI_PATH="${VAULT_WIKI_PATH:-vault/wiki}"
29
+ ```
30
+
31
+ Use `$WIKI_PATH/` as the prefix for all `wiki/...` file paths. Example: `wiki/index.md` → `$WIKI_PATH/index.md` (default: `vault/wiki/index.md`).
32
+
33
+ ---
34
+
35
+ ## Architecture
36
+
37
+ Three layers:
38
+
39
+ ```
40
+ vault/
41
+ ├── .raw/ # Layer 1: immutable source documents
42
+ ├── wiki/ # Layer 2: LLM-generated knowledge base
43
+ └── WIKI.md # Layer 3: vault configuration and instructions
44
+ ```
45
+
46
+ Standard wiki structure:
47
+
48
+ ```
49
+ wiki/
50
+ ├── index.md # master catalog of all pages
51
+ ├── log.md # chronological record of all operations
52
+ ├── hot.md # hot cache: recent context summary (~500 words)
53
+ ├── overview.md # executive summary of the whole wiki
54
+ ├── sources/ # one summary page per raw source
55
+ ├── entities/ # people, orgs, products, repos
56
+ │ └── _index.md
57
+ ├── concepts/ # ideas, patterns, frameworks
58
+ │ └── _index.md
59
+ ├── domains/ # top-level topic areas
60
+ │ └── _index.md
61
+ ├── comparisons/ # side-by-side analyses
62
+ ├── questions/ # filed answers to user queries
63
+ └── meta/ # dashboards, lint reports, conventions
64
+ ```
65
+
66
+ Dot-prefixed folders (`.raw/`) are hidden in Obsidian's file explorer and graph view. Use this for source documents.
67
+
68
+ ---
69
+
70
+ ## Hot Cache
71
+
72
+ `wiki/hot.md` is a ~500-word summary of the most recent context. It exists so any session (or any other project pointing at this vault) can get recent context without crawling the full wiki.
73
+
74
+ Update hot.md:
75
+ - After every ingest
76
+ - After any significant query exchange
77
+ - At the end of every session
78
+
79
+ Format:
80
+ ```markdown
81
+ ---
82
+ type: meta
83
+ title: "Hot Cache"
84
+ updated: YYYY-MM-DDTHH:MM:SS
85
+ ---
86
+
87
+ # Recent Context
88
+
89
+ ## Last Updated
90
+ YYYY-MM-DD. [what happened]
91
+
92
+ ## Key Recent Facts
93
+ - [Most important recent takeaway]
94
+ - [Second most important]
95
+
96
+ ## Recent Changes
97
+ - Created: [[New Page 1]], [[New Page 2]]
98
+ - Updated: [[Existing Page]] (added section on X)
99
+ - Flagged: Contradiction between [[Page A]] and [[Page B]] on Y
100
+
101
+ ## Active Threads
102
+ - User is currently researching [topic]
103
+ - Open question: [thing still being investigated]
104
+ ```
105
+
106
+ Keep it under 500 words. It is a cache, not a journal. Overwrite it completely each time.
107
+
108
+ ---
109
+
110
+ ## Operations
111
+
112
+ Route to the correct operation based on what the user says:
113
+
114
+ | User says | Operation | Sub-skill |
115
+ |-----------|-----------|-----------|
116
+ | "scaffold", "set up vault", "create wiki" | SCAFFOLD | this skill |
117
+ | "ingest [source]", "process this", "add this" | INGEST | `wiki-ingest` |
118
+ | "what do you know about X", "query:" | QUERY | `wiki-query` |
119
+ | "lint", "health check", "clean up" | LINT | `wiki-lint` |
120
+ | "save this", "file this", "/save" | SAVE | `wiki-save` |
121
+ | "/wiki-autoresearch [topic]", "/autoresearch [topic]", "research [topic]" | AUTORESEARCH | `wiki-autoresearch` |
122
+ | "/canvas", "add to canvas", "open canvas" | CANVAS | `canvas` |
123
+
124
+ ---
125
+
126
+ ## SCAFFOLD Operation
127
+
128
+ Trigger: user describes what the vault is for.
129
+
130
+ Steps:
131
+
132
+ 1. Determine the wiki mode. Read `references/modes.md` to show the 6 options and pick the best fit.
133
+ 2. Ask: "What is this vault for?" (one question, then proceed).
134
+ 3. Create full folder structure under `wiki/` based on the mode.
135
+ 4. Create domain pages + `_index.md` sub-indexes.
136
+ 5. Create `wiki/index.md`, `wiki/log.md`, `wiki/hot.md`, `wiki/overview.md`.
137
+ 6. Create `_templates/` files for each note type.
138
+ 7. Apply visual customization. Read `references/css-snippets.md`. Create `.obsidian/snippets/vault-colors.css`.
139
+ 8. Create the vault WIKI.md using the template below.
140
+ 9. Initialize git. Read `references/git-setup.md`.
141
+ 10. Present the structure and ask: "Want to adjust anything before we start?"
142
+
143
+ ### Vault WIKI.md Template
144
+
145
+ Create this file in the vault root when scaffolding a new project vault (not this plugin directory):
146
+
147
+ ```markdown
148
+ # [WIKI NAME]: LLM Wiki
149
+
150
+ Mode: [MODE A/B/C/D/E/F]
151
+ Purpose: [ONE SENTENCE]
152
+ Owner: [NAME]
153
+ Created: YYYY-MM-DD
154
+
155
+ ## Structure
156
+
157
+ [PASTE THE FOLDER MAP FROM THE CHOSEN MODE]
158
+
159
+ ## Conventions
160
+
161
+ - All notes use YAML frontmatter: type, status, created, updated, tags (minimum)
162
+ - Wikilinks use [[Note Name]] format: filenames are unique, no paths needed
163
+ - .raw/ contains source documents: never modify them
164
+ - wiki/index.md is the master catalog: update on every ingest
165
+ - wiki/log.md is append-only: never edit past entries
166
+ - New log entries go at the TOP of the file
167
+
168
+ ## Operations
169
+
170
+ - Ingest: drop source in .raw/, say "ingest [filename]"
171
+ - Query: ask any question: pi reads index first, then drills in
172
+ - Lint: say "lint the wiki" to run a health check
173
+ - Archive: move cold sources to .archive/ to keep .raw/ clean
174
+ ```
175
+
176
+ ---
177
+
178
+ ## Cross-Project Referencing
179
+
180
+ This is the force multiplier. Any pi project can reference this vault without duplicating context.
181
+
182
+ In another project's SYSTEM.md (or project skill file), add:
183
+
184
+ ```markdown
185
+ ## Wiki Knowledge Base
186
+ Path: ~/path/to/vault
187
+
188
+ When you need context not already in this project:
189
+ 1. Read wiki/hot.md first (recent context, ~500 words)
190
+ 2. If not enough, read wiki/index.md (full catalog)
191
+ 3. If you need domain specifics, read wiki/<domain>/_index.md
192
+ 4. Only then read individual wiki pages
193
+
194
+ Do NOT read the wiki for:
195
+ - General coding questions or language syntax
196
+ - Things already in this project's files or conversation
197
+ - Tasks unrelated to [your domain]
198
+ ```
199
+
200
+ This keeps token usage low. Hot cache costs ~500 tokens. Index costs ~1000 tokens. Individual pages cost 100-300 tokens each.
201
+
202
+ ---
203
+
204
+ ## Summary
205
+
206
+ Your job as the LLM:
207
+ 1. Set up the vault (once)
208
+ 2. Scaffold wiki structure from user's domain description
209
+ 3. Route ingest, query, and lint to the correct sub-skill
210
+ 4. Maintain hot cache after every operation
211
+ 5. Always update index, sub-indexes, log, and hot cache on changes
212
+ 6. Always use frontmatter and wikilinks
213
+ 7. Never modify .raw/ sources
214
+
215
+ The human's job: curate sources, ask good questions, think about what it means. Everything else is on you.
@@ -0,0 +1,122 @@
1
+ # Visual Customization
2
+
3
+ Apply during scaffold. This makes the file explorer color-coded by folder type and adds custom callout styles.
4
+
5
+ ---
6
+
7
+ ## CSS Snippet
8
+
9
+ Create this file at `.obsidian/snippets/vault-colors.css` inside the vault:
10
+
11
+ ```css
12
+ :root {
13
+ --wiki-1: #4fc1ff;
14
+ --wiki-2: #c586c0;
15
+ --wiki-3: #dcdcaa;
16
+ --wiki-4: #ce9178;
17
+ --wiki-5: #6a9955;
18
+ --wiki-6: #d16969;
19
+ --wiki-7: #569cd6;
20
+ }
21
+
22
+ /* Folder colors in file explorer */
23
+ .nav-folder-title[data-path^="wiki/domains"] { color: var(--wiki-1); }
24
+ .nav-folder-title[data-path^="wiki/entities"] { color: var(--wiki-2); }
25
+ .nav-folder-title[data-path^="wiki/concepts"] { color: var(--wiki-3); }
26
+ .nav-folder-title[data-path^="wiki/sources"] { color: var(--wiki-4); }
27
+ .nav-folder-title[data-path^="wiki/questions"] { color: var(--wiki-5); }
28
+ .nav-folder-title[data-path^="wiki/comparisons"] { color: var(--wiki-6); }
29
+ .nav-folder-title[data-path^="wiki/meta"] { color: var(--wiki-7); }
30
+ .nav-folder-title[data-path=".raw"] { color: #808080; opacity: 0.6; }
31
+
32
+ /* Custom callouts */
33
+ .callout[data-callout='contradiction'] {
34
+ --callout-color: 209, 105, 105;
35
+ --callout-icon: lucide-alert-triangle;
36
+ }
37
+ .callout[data-callout='gap'] {
38
+ --callout-color: 220, 220, 170;
39
+ --callout-icon: lucide-help-circle;
40
+ }
41
+ .callout[data-callout='key-insight'] {
42
+ --callout-color: 79, 193, 255;
43
+ --callout-icon: lucide-lightbulb;
44
+ }
45
+ .callout[data-callout='stale'] {
46
+ --callout-color: 128, 128, 128;
47
+ --callout-icon: lucide-clock;
48
+ }
49
+ ```
50
+
51
+ ---
52
+
53
+ ## Enable the Snippet
54
+
55
+ Tell the user: Settings > Appearance > CSS Snippets > open folder > paste the file > click the refresh icon > toggle it on.
56
+
57
+ ---
58
+
59
+ ## Graph View Groups
60
+
61
+ Guide the user to set these in Graph View settings (click the settings icon in the graph view):
62
+
63
+ | Query | Color |
64
+ |-------|-------|
65
+ | `path:wiki/domains` | Blue (`#4fc1ff`) |
66
+ | `path:wiki/entities` | Purple (`#c586c0`) |
67
+ | `path:wiki/concepts` | Yellow (`#dcdcaa`) |
68
+ | `path:wiki/sources` | Orange (`#ce9178`) |
69
+ | `path:wiki/questions` | Green (`#6a9955`) |
70
+ | `path:.raw` | Gray (dimmed) |
71
+
72
+ ---
73
+
74
+ ## Custom Callouts
75
+
76
+ This vault defines **four custom callout types** beyond Obsidian's built-in set (`note`, `tip`, `warning`, `info`, `todo`, `success`, `question`, `failure`, `danger`, `bug`, `example`, `quote`). They render correctly **only when `vault-colors.css` is enabled**. Without the snippet, they fall back to default callout styling (still readable, just plain).
77
+
78
+ | Custom callout | Color | Icon | Use for |
79
+ |---|---|---|---|
80
+ | `contradiction` | reddish-brown (rgb 209,105,105) | `lucide-alert-triangle` | New source conflicts with existing claim |
81
+ | `gap` | beige (rgb 220,220,170) | `lucide-help-circle` | Topic has no source yet |
82
+ | `key-insight` | bright blue (rgb 79,193,255) | `lucide-lightbulb` | Important takeaway worth highlighting |
83
+ | `stale` | gray (rgb 128,128,128) | `lucide-clock` | Claim may be outdated, source older than threshold |
84
+
85
+ ### Usage
86
+
87
+ Use these in wiki pages to flag important states:
88
+
89
+ ```markdown
90
+ > [!contradiction] Title
91
+ > [[Page A]] claims X. [[Page B]] says Y. Needs resolution.
92
+
93
+ > [!gap] Title
94
+ > This topic has no source yet. Consider finding one.
95
+
96
+ > [!key-insight] Title
97
+ > The most important takeaway from this section.
98
+
99
+ > [!stale] Title
100
+ > This claim may be outdated. Source was from 2022.
101
+ ```
102
+
103
+ ### Why custom callouts (vs built-in)
104
+
105
+ The four custom types map to wiki-specific concepts that don't fit cleanly into Obsidian's default set:
106
+
107
+ - `contradiction` is more specific than `warning`: it signals a **resolvable conflict** between two wiki pages, not a generic warning.
108
+ - `gap` is more specific than `question`: it signals a **missing source**, an actionable improvement.
109
+ - `key-insight` is more specific than `tip`: it marks **the** most important takeaway from a section, used sparingly.
110
+ - `stale` has no built-in equivalent: it signals time-based decay of a claim.
111
+
112
+ If you don't want custom callouts, replace them with built-ins:
113
+ - `[!contradiction]` → `[!warning] Contradiction`
114
+ - `[!gap]` → `[!question] Gap`
115
+ - `[!key-insight]` → `[!tip] Key insight`
116
+ - `[!stale]` → `[!warning] Stale`
117
+
118
+ ---
119
+
120
+ ## Minimal Theme (Recommended)
121
+
122
+ The color scheme looks best with the Minimal theme. Install via Settings > Appearance > Manage > search "Minimal".
@@ -0,0 +1,107 @@
1
+ # Frontmatter Schema
2
+
3
+ Every wiki page starts with flat YAML frontmatter. No nested objects. Obsidian's Properties UI requires flat structure.
4
+
5
+ ---
6
+
7
+ ## Universal Fields
8
+
9
+ Every page, no exceptions:
10
+
11
+ ```yaml
12
+ ---
13
+ type: <source|entity|concept|domain|comparison|question|overview|meta>
14
+ title: "Human-Readable Title"
15
+ created: 2026-04-07
16
+ updated: 2026-04-07
17
+ tags:
18
+ - <domain-tag>
19
+ - <type-tag>
20
+ status: <seed|developing|mature|evergreen>
21
+ related:
22
+ - "[[Other Page]]"
23
+ sources:
24
+ - "[[.raw/articles/source-file.md]]"
25
+ ---
26
+ ```
27
+
28
+ **status values:**
29
+ - `seed`: exists, barely populated
30
+ - `developing`: has real content, not yet complete
31
+ - `mature`: comprehensive, well-linked
32
+ - `evergreen`: unlikely to need updates
33
+
34
+ ---
35
+
36
+ ## Type-Specific Additions
37
+
38
+ ### source
39
+
40
+ Add these fields after the universal fields:
41
+
42
+ ```yaml
43
+ source_type: article # article | video | podcast | paper | book | transcript | data
44
+ author: ""
45
+ date_published: YYYY-MM-DD
46
+ url: ""
47
+ confidence: high # high | medium | low
48
+ key_claims:
49
+ - "First key claim from this source"
50
+ - "Second key claim"
51
+ ```
52
+
53
+ ### entity
54
+
55
+ ```yaml
56
+ entity_type: person # person | organization | product | repository | place
57
+ role: ""
58
+ first_mentioned: "[[Source Title]]"
59
+ ```
60
+
61
+ ### concept
62
+
63
+ ```yaml
64
+ complexity: intermediate # basic | intermediate | advanced
65
+ domain: ""
66
+ aliases:
67
+ - "alternative name"
68
+ - "abbreviation"
69
+ ```
70
+
71
+ ### comparison
72
+
73
+ ```yaml
74
+ subjects:
75
+ - "[[Thing A]]"
76
+ - "[[Thing B]]"
77
+ dimensions:
78
+ - "performance"
79
+ - "cost"
80
+ - "ease of use"
81
+ verdict: "One-line conclusion."
82
+ ```
83
+
84
+ ### question
85
+
86
+ ```yaml
87
+ question: "The original query as asked."
88
+ answer_quality: solid # draft | solid | definitive
89
+ ```
90
+
91
+ ### domain
92
+
93
+ ```yaml
94
+ subdomain_of: "" # leave empty for top-level domains
95
+ page_count: 0
96
+ ```
97
+
98
+ ---
99
+
100
+ ## Rules
101
+
102
+ 1. Use flat YAML only. Never nest objects.
103
+ 2. Dates as `YYYY-MM-DD` strings, not ISO datetime.
104
+ 3. Lists always use the `- item` format, not inline `[a, b, c]`.
105
+ 4. Wikilinks in YAML fields must be quoted: `"[[Page Name]]"`.
106
+ 5. Keep `related` and `sources` as wikilinks, not plain URLs.
107
+ 6. Update `updated` every time you edit the page content.
@@ -0,0 +1,58 @@
1
+ # Git Setup
2
+
3
+ Initialize git in the vault to get full history and protect against bad writes.
4
+
5
+ ---
6
+
7
+ ## Initialize
8
+
9
+ ```bash
10
+ cd "$VAULT_PATH"
11
+ git init
12
+ git add -A
13
+ git commit -m "Initial vault scaffold"
14
+ ```
15
+
16
+ ---
17
+
18
+ ## .gitignore
19
+
20
+ The root `.gitignore` in this repo already covers the right exclusions:
21
+
22
+ ```
23
+ .obsidian/workspace.json
24
+ .obsidian/workspace-mobile.json
25
+ .smart-connections/
26
+ .obsidian-git-data
27
+ .trash/
28
+ .DS_Store
29
+ ```
30
+
31
+ `workspace.json` changes constantly as you move panes around. Excluding it keeps the diff clean.
32
+
33
+ ---
34
+
35
+ ## Obsidian Git Plugin
36
+
37
+ After installing the plugin (see `plugins.md`):
38
+
39
+ Settings > Obsidian Git:
40
+ - Auto backup interval: **15 minutes**
41
+ - Auto backup after file change: on
42
+ - Push on backup: on (if you have a remote)
43
+ - Commit message: `vault: auto backup {{date}}`
44
+
45
+ This runs silently in the background. You get a full history of every note without thinking about it.
46
+
47
+ ---
48
+
49
+ ## Remote (Optional)
50
+
51
+ To back up to GitHub:
52
+
53
+ ```bash
54
+ git remote add origin https://github.com/yourname/your-vault
55
+ git push -u origin main
56
+ ```
57
+
58
+ Keep the repo private if the vault contains personal notes.
@@ -0,0 +1,149 @@
1
+ # MCP Setup
2
+
3
+ MCP lets pi read and write vault notes directly without copy-paste. Four options ordered from simplest to most featureful.
4
+
5
+ > [!tip] Recommendation
6
+ > If you have **Obsidian v1.12 or newer**, start with **Option D: Obsidian CLI**. It needs no MCP server, no plugins, and no TLS workarounds. Use Options A or B only if you need persistent MCP integration or are on an older Obsidian version.
7
+
8
+ ---
9
+
10
+ ## Step 1: Install the Local REST API Plugin
11
+
12
+ You must do this in Obsidian (pi cannot do it programmatically):
13
+
14
+ 1. Obsidian > Settings > Community Plugins > Turn off Restricted Mode
15
+ 2. Browse > Search "Local REST API" > Install > Enable
16
+ 3. Settings > Local REST API > Copy the API key
17
+
18
+ The plugin runs on `https://127.0.0.1:27124` with a self-signed certificate.
19
+
20
+ Test it:
21
+ ```bash
22
+ curl -sk -H "Authorization: Bearer <YOUR_KEY>" https://127.0.0.1:27124/
23
+ ```
24
+
25
+ You should get a JSON response with vault info.
26
+
27
+ ---
28
+
29
+ ## Option A: mcp-obsidian (REST API based)
30
+
31
+ Uses MarkusPfundstein's mcp-obsidian. Requires the Local REST API plugin running.
32
+
33
+ ```bash
34
+ Add the MCP server to pi's configuration. In `.pi/settings.json` or via pi's MCP bridge, configure:
35
+
36
+ ```json
37
+ {
38
+ "mcpServers": {
39
+ "obsidian-vault": {
40
+ "type": "stdio",
41
+ "command": "uvx",
42
+ "args": ["mcp-obsidian"],
43
+ "env": {
44
+ "OBSIDIAN_API_KEY": "<YOUR_KEY>",
45
+ "OBSIDIAN_HOST": "127.0.0.1",
46
+ "OBSIDIAN_PORT": "27124",
47
+ "NODE_TLS_REJECT_UNAUTHORIZED": "0"
48
+ }
49
+ }
50
+ }
51
+ }
52
+ ```
53
+ ```
54
+
55
+ > [!warning] Security
56
+ > `NODE_TLS_REJECT_UNAUTHORIZED: "0"` **disables TLS certificate verification process-wide** for the MCP server. It is required here because the Local REST API plugin uses a self-signed certificate. This is acceptable for `127.0.0.1` (localhost) connections only. Never use this setting for any non-loopback connection. If you are uncomfortable with the global TLS bypass, prefer **Option D (Obsidian CLI)** or **Option B (filesystem-based)** which avoid this entirely.
57
+
58
+ Capabilities: read notes, write notes, search, patch frontmatter fields, append under headings.
59
+
60
+ ---
61
+
62
+ ## Option B: MCPVault (filesystem based)
63
+
64
+ No Obsidian plugin needed. Reads the vault directory directly.
65
+
66
+ ```bash
67
+ Add the MCP server to pi's configuration. In `.pi/settings.json` or via pi's MCP bridge, configure:
68
+
69
+ ```json
70
+ {
71
+ "mcpServers": {
72
+ "obsidian-vault": {
73
+ "type": "stdio",
74
+ "command": "npx",
75
+ "args": ["-y", "@bitbonsai/mcpvault@latest", "/absolute/path/to/your/vault"]
76
+ }
77
+ }
78
+ }
79
+ ```
80
+ ```
81
+
82
+ Replace `/absolute/path/to/your/vault` with the actual vault path.
83
+
84
+ Tools available: `search_notes` (BM25), `read_note`, `create_note`, `update_note`, `get_frontmatter`, `update_frontmatter`, `list_all_tags`, `read_multiple_notes`.
85
+
86
+ ---
87
+
88
+ ## Option C: Direct REST API via curl
89
+
90
+ No MCP needed. Use curl in bash throughout the session. See `rest-api.md` for all commands.
91
+
92
+ ---
93
+
94
+ ## Option D: Obsidian CLI (recommended for v1.12+)
95
+
96
+ Obsidian shipped a native CLI in v1.12 (2026). It exposes vault operations directly to the terminal. No REST API plugin, no MCP server, no self-signed certs, no TLS workarounds. pi calls it through the Bash tool.
97
+
98
+ **Check if available:**
99
+ ```bash
100
+ which obsidian-cli 2>/dev/null && obsidian-cli --version
101
+ # or, on flatpak:
102
+ flatpak run md.obsidian.Obsidian --cli --version
103
+ ```
104
+
105
+ **Common operations:**
106
+ ```bash
107
+ # List all notes in a folder
108
+ obsidian-cli list /path/to/vault wiki/
109
+
110
+ # Read a note
111
+ obsidian-cli read /path/to/vault wiki/index.md
112
+
113
+ # Create or update a note
114
+ obsidian-cli write /path/to/vault wiki/new-note.md < content.md
115
+
116
+ # Search notes by content
117
+ obsidian-cli search /path/to/vault "query term"
118
+ ```
119
+
120
+ **Why prefer this**:
121
+ - No plugin install required (CLI is built into Obsidian)
122
+ - No MCP server process to manage
123
+ - No TLS certificate bypass needed
124
+ - Survives Obsidian restarts (no persistent connection)
125
+ - Works identically across desktop and headless environments
126
+
127
+ **When to use Options A/B/C instead**: If you need persistent semantic search, frontmatter patching, or are on Obsidian < v1.12.
128
+
129
+ The `kepano/obsidian-skills` repo includes an `obsidian-cli` skill that wraps these commands as reusable patterns. Install it alongside this plugin for first-class CLI support.
130
+
131
+ ---
132
+
133
+ ## Use `--scope user`
134
+
135
+ Configure MCP servers at the user level so the vault is available across all pi projects, not just the one where you ran the command.
136
+
137
+ ---
138
+
139
+ ## Verification
140
+
141
+ After setup:
142
+
143
+ ```bash
144
+ Check pi's MCP status to confirm the server appears and the path/URL is correct.
145
+ ```
146
+
147
+ In a pi session, type `/mcp` to check connection status.
148
+
149
+ Then test: "List all notes in my wiki folder."