arscontexta 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/.claude-plugin/marketplace.json +11 -0
  2. package/.claude-plugin/plugin.json +22 -0
  3. package/README.md +683 -0
  4. package/agents/knowledge-guide.md +49 -0
  5. package/bin/cli.mjs +66 -0
  6. package/generators/agents-md.md +240 -0
  7. package/generators/claude-md.md +379 -0
  8. package/generators/features/atomic-notes.md +124 -0
  9. package/generators/features/ethical-guardrails.md +58 -0
  10. package/generators/features/graph-analysis.md +188 -0
  11. package/generators/features/helper-functions.md +92 -0
  12. package/generators/features/maintenance.md +164 -0
  13. package/generators/features/methodology-knowledge.md +70 -0
  14. package/generators/features/mocs.md +144 -0
  15. package/generators/features/multi-domain.md +61 -0
  16. package/generators/features/personality.md +71 -0
  17. package/generators/features/processing-pipeline.md +428 -0
  18. package/generators/features/schema.md +149 -0
  19. package/generators/features/self-evolution.md +229 -0
  20. package/generators/features/self-space.md +78 -0
  21. package/generators/features/semantic-search.md +99 -0
  22. package/generators/features/session-rhythm.md +85 -0
  23. package/generators/features/templates.md +85 -0
  24. package/generators/features/wiki-links.md +88 -0
  25. package/generators/soul-md.md +121 -0
  26. package/hooks/hooks.json +45 -0
  27. package/hooks/scripts/auto-commit.sh +44 -0
  28. package/hooks/scripts/session-capture.sh +35 -0
  29. package/hooks/scripts/session-orient.sh +86 -0
  30. package/hooks/scripts/write-validate.sh +42 -0
  31. package/methodology/AI shifts knowledge systems from externalizing memory to externalizing attention.md +59 -0
  32. package/methodology/BM25 retrieval fails on full-length descriptions because query term dilution reduces match scores.md +39 -0
  33. package/methodology/IBIS framework maps claim-based architecture to structured argumentation.md +58 -0
  34. package/methodology/LLM attention degrades as context fills.md +49 -0
  35. package/methodology/MOC construction forces synthesis that automated generation from metadata cannot replicate.md +49 -0
  36. package/methodology/MOC maintenance investment compounds because orientation savings multiply across every future session.md +41 -0
  37. package/methodology/MOCs are attention management devices not just organizational tools.md +51 -0
  38. package/methodology/PKM failure follows a predictable cycle.md +50 -0
  39. package/methodology/ThreadMode to DocumentMode transformation is the core value creation step.md +52 -0
  40. package/methodology/WIP limits force processing over accumulation.md +53 -0
  41. package/methodology/Zeigarnik effect validates capture-first philosophy because open loops drain attention.md +42 -0
  42. package/methodology/academic research uses structured extraction with cross-source synthesis.md +566 -0
  43. package/methodology/adapt the four-phase processing pipeline to domain-specific throughput needs.md +197 -0
  44. package/methodology/agent notes externalize navigation intuition that search cannot discover and traversal cannot reconstruct.md +48 -0
  45. package/methodology/agent self-memory should be architecturally separate from user knowledge systems.md +48 -0
  46. package/methodology/agent session boundaries create natural automation checkpoints that human-operated systems lack.md +56 -0
  47. package/methodology/agent-cognition.md +107 -0
  48. package/methodology/agents are simultaneously methodology executors and subjects creating a unique trust asymmetry.md +66 -0
  49. package/methodology/aspect-oriented programming solved the same cross-cutting concern problem that hooks solve.md +39 -0
  50. package/methodology/associative ontologies beat hierarchical taxonomies because heterarchy adapts while hierarchy brittles.md +53 -0
  51. package/methodology/attention residue may have a minimum granularity that cannot be subdivided.md +46 -0
  52. package/methodology/auto-commit hooks eliminate prospective memory failures by converting remember-to-act into guaranteed execution.md +47 -0
  53. package/methodology/automated detection is always safe because it only reads state while automated remediation risks content corruption.md +42 -0
  54. package/methodology/automation should be retired when its false positive rate exceeds its true positive rate or it catches zero issues.md +56 -0
  55. package/methodology/backlinks implicitly define notes by revealing usage context.md +35 -0
  56. package/methodology/backward maintenance asks what would be different if written today.md +62 -0
  57. package/methodology/balance onboarding enforcement and questions to prevent premature complexity.md +229 -0
  58. package/methodology/basic level categorization determines optimal MOC granularity.md +51 -0
  59. package/methodology/batching by context similarity reduces switching costs in agent processing.md +43 -0
  60. package/methodology/behavioral anti-patterns matter more than tool selection.md +42 -0
  61. package/methodology/betweenness centrality identifies bridge notes connecting disparate knowledge domains.md +57 -0
  62. package/methodology/blueprints that teach construction outperform downloads that provide pre-built code for platform-dependent modules.md +42 -0
  63. package/methodology/bootstrapping principle enables self-improving systems.md +62 -0
  64. package/methodology/build automatic memory through cognitive offloading and session handoffs.md +285 -0
  65. package/methodology/capture the reaction to content not just the content itself.md +41 -0
  66. package/methodology/claims must be specific enough to be wrong.md +36 -0
  67. package/methodology/closure rituals create clean breaks that prevent attention residue bleed.md +44 -0
  68. package/methodology/cognitive offloading is the architectural foundation for vault design.md +46 -0
  69. package/methodology/cognitive outsourcing risk in agent-operated systems.md +55 -0
  70. package/methodology/coherence maintains consistency despite inconsistent inputs.md +96 -0
  71. package/methodology/coherent architecture emerges from wiki links spreading activation and small-world topology.md +48 -0
  72. package/methodology/community detection algorithms can inform when MOCs should split or merge.md +52 -0
  73. package/methodology/complete navigation requires four complementary types that no single mechanism provides.md +43 -0
  74. package/methodology/complex systems evolve from simple working systems.md +59 -0
  75. package/methodology/composable knowledge architecture builds systems from independent toggleable modules not monolithic templates.md +61 -0
  76. package/methodology/compose multi-domain systems through separate templates and shared graph.md +372 -0
  77. package/methodology/concept-orientation beats source-orientation for cross-domain connections.md +51 -0
  78. package/methodology/confidence thresholds gate automated action between the mechanical and judgment zones.md +50 -0
  79. package/methodology/configuration dimensions interact so choices in one create pressure on others.md +58 -0
  80. package/methodology/configuration paralysis emerges when derivation surfaces too many decisions.md +44 -0
  81. package/methodology/context files function as agent operating systems through self-referential self-extension.md +46 -0
  82. package/methodology/context phrase clarity determines how deep a navigation hierarchy can scale.md +46 -0
  83. package/methodology/continuous small-batch processing eliminates review dread.md +48 -0
  84. package/methodology/controlled disorder engineers serendipity through semantic rather than topical linking.md +51 -0
  85. package/methodology/creative writing uses worldbuilding consistency with character tracking.md +672 -0
  86. package/methodology/cross-links between MOC territories indicate creative leaps and integration depth.md +43 -0
  87. package/methodology/dangling links reveal which notes want to exist.md +62 -0
  88. package/methodology/data exit velocity measures how quickly content escapes vendor lock-in.md +74 -0
  89. package/methodology/decontextualization risk means atomicity may strip meaning that cannot be recovered.md +48 -0
  90. package/methodology/dense interlinked research claims enable derivation while sparse references only enable templating.md +47 -0
  91. package/methodology/dependency resolution through topological sort makes module composition transparent and verifiable.md +56 -0
  92. package/methodology/derivation generates knowledge systems from composable research claims not template customization.md +63 -0
  93. package/methodology/derivation-engine.md +27 -0
  94. package/methodology/derived systems follow a seed-evolve-reseed lifecycle.md +56 -0
  95. package/methodology/description quality for humans diverges from description quality for keyword search.md +73 -0
  96. package/methodology/descriptions are retrieval filters not summaries.md +112 -0
  97. package/methodology/design MOCs as attention management devices with lifecycle governance.md +318 -0
  98. package/methodology/design-dimensions.md +66 -0
  99. package/methodology/digital mutability enables note evolution that physical permanence forbids.md +54 -0
  100. package/methodology/discovery-retrieval.md +48 -0
  101. package/methodology/distinctiveness scoring treats description quality as measurable.md +69 -0
  102. package/methodology/does agent processing recover what fast capture loses.md +43 -0
  103. package/methodology/domain-compositions.md +37 -0
  104. package/methodology/dual-coding with visual elements could enhance agent traversal.md +55 -0
  105. package/methodology/each module must be describable in one sentence under 200 characters or it does too many things.md +45 -0
  106. package/methodology/each new note compounds value by creating traversal paths.md +55 -0
  107. package/methodology/eight configuration dimensions parameterize the space of possible knowledge systems.md +56 -0
  108. package/methodology/elaborative encoding is the quality gate for new notes.md +55 -0
  109. package/methodology/enforce schema with graduated strictness across capture processing and query zones.md +221 -0
  110. package/methodology/enforcing atomicity can create paralysis when ideas resist decomposition.md +43 -0
  111. package/methodology/engineering uses technical decision tracking with architectural memory.md +766 -0
  112. package/methodology/every knowledge domain shares a four-phase processing skeleton that diverges only in the process step.md +53 -0
  113. package/methodology/evolution observations provide actionable signals for system adaptation.md +67 -0
  114. package/methodology/external memory shapes cognition more than base model.md +60 -0
  115. package/methodology/faceted classification treats notes as multi-dimensional objects rather than folder contents.md +65 -0
  116. package/methodology/failure-modes.md +27 -0
  117. package/methodology/false universalism applies same processing logic regardless of domain.md +49 -0
  118. package/methodology/federated wiki pattern enables multi-agent divergence as feature not bug.md +59 -0
  119. package/methodology/flat files break at retrieval scale.md +75 -0
  120. package/methodology/forced engagement produces weak connections.md +48 -0
  121. package/methodology/four abstraction layers separate platform-agnostic from platform-dependent knowledge system features.md +47 -0
  122. package/methodology/fresh context per task preserves quality better than chaining phases.md +44 -0
  123. package/methodology/friction reveals architecture.md +63 -0
  124. package/methodology/friction-driven module adoption prevents configuration debt by adding complexity only at pain points.md +48 -0
  125. package/methodology/gardening cycle implements tend prune fertilize operations.md +41 -0
  126. package/methodology/generation effect gate blocks processing without transformation.md +40 -0
  127. package/methodology/goal-driven memory orchestration enables autonomous domain learning through directed compute allocation.md +41 -0
  128. package/methodology/good descriptions layer heuristic then mechanism then implication.md +57 -0
  129. package/methodology/graph-structure.md +65 -0
  130. package/methodology/guided notes might outperform post-hoc structuring for high-volume capture.md +37 -0
  131. package/methodology/health wellness uses symptom-trigger correlation with multi-dimensional tracking.md +819 -0
  132. package/methodology/hook composition creates emergent methodology from independent single-concern components.md +47 -0
  133. package/methodology/hook enforcement guarantees quality while instruction enforcement merely suggests it.md +51 -0
  134. package/methodology/hook-driven learning loops create self-improving methodology through observation accumulation.md +62 -0
  135. package/methodology/hooks are the agent habit system that replaces the missing basal ganglia.md +40 -0
  136. package/methodology/hooks cannot replace genuine cognitive engagement yet more automation is always tempting.md +87 -0
  137. package/methodology/hooks enable context window efficiency by delegating deterministic checks to external processes.md +47 -0
  138. package/methodology/idempotent maintenance operations are safe to automate because running them twice produces the same result as running them once.md +44 -0
  139. package/methodology/implement condition-based maintenance triggers for derived systems.md +255 -0
  140. package/methodology/implicit dependencies create distributed monoliths that fail silently across configurations.md +58 -0
  141. package/methodology/implicit knowledge emerges from traversal.md +55 -0
  142. package/methodology/incremental formalization happens through repeated touching of old notes.md +60 -0
  143. package/methodology/incremental reading enables cross-source connection finding.md +39 -0
  144. package/methodology/index.md +32 -0
  145. package/methodology/inline links carry richer relationship data than metadata fields.md +91 -0
  146. package/methodology/insight accretion differs from productivity in knowledge systems.md +41 -0
  147. package/methodology/intermediate packets enable assembly over creation.md +52 -0
  148. package/methodology/intermediate representation pattern enables reliable vault operations beyond regex.md +62 -0
  149. package/methodology/justification chains enable forward backward and evolution reasoning about configuration decisions.md +46 -0
  150. package/methodology/knowledge system architecture is parameterized by platform capabilities not fixed by methodology.md +51 -0
  151. package/methodology/knowledge systems become communication partners through complexity and memory humans cannot sustain.md +47 -0
  152. package/methodology/knowledge systems share universal operations and structural components across all methodology traditions.md +46 -0
  153. package/methodology/legal case management uses precedent chains with regulatory change propagation.md +892 -0
  154. package/methodology/live index via periodic regeneration keeps discovery current.md +58 -0
  155. package/methodology/local-first file formats are inherently agent-native.md +69 -0
  156. package/methodology/logic column pattern separates reasoning from procedure.md +35 -0
  157. package/methodology/maintenance operations are more universal than creative pipelines because structural health is domain-invariant.md +47 -0
  158. package/methodology/maintenance scheduling frequency should match consequence speed not detection capability.md +50 -0
  159. package/methodology/maintenance targeting should prioritize mechanism and theory notes.md +26 -0
  160. package/methodology/maintenance-patterns.md +72 -0
  161. package/methodology/markdown plus YAML plus ripgrep implements a queryable graph database without infrastructure.md +55 -0
  162. package/methodology/maturity field enables agent context prioritization.md +33 -0
  163. package/methodology/memory-architecture.md +27 -0
  164. package/methodology/metacognitive confidence can diverge from retrieval capability.md +42 -0
  165. package/methodology/metadata reduces entropy enabling precision over recall.md +91 -0
  166. package/methodology/methodology development should follow the trajectory from documentation to skill to hook as understanding hardens.md +80 -0
  167. package/methodology/methodology traditions are named points in a shared configuration space not competing paradigms.md +64 -0
  168. package/methodology/mnemonic medium embeds verification into navigation.md +46 -0
  169. package/methodology/module communication through shared YAML fields creates loose coupling without direct dependencies.md +44 -0
  170. package/methodology/module deactivation must account for structural artifacts that survive the toggle.md +49 -0
  171. package/methodology/multi-domain systems compose through separate templates and shared graph.md +61 -0
  172. package/methodology/multi-domain-composition.md +27 -0
  173. package/methodology/narrow folksonomy optimizes for single-operator retrieval unlike broad consensus tagging.md +53 -0
  174. package/methodology/navigation infrastructure passes through distinct scaling regimes that require qualitative strategy shifts.md +48 -0
  175. package/methodology/navigational vertigo emerges in pure association systems without local hierarchy.md +54 -0
  176. package/methodology/note titles should function as APIs enabling sentence transclusion.md +51 -0
  177. package/methodology/note-design.md +57 -0
  178. package/methodology/notes are skills /342/200/224 curated knowledge injected when relevant.md" +62 -0
  179. package/methodology/notes function as cognitive anchors that stabilize attention during complex tasks.md +41 -0
  180. package/methodology/novel domains derive by mapping knowledge type to closest reference domain then adapting.md +50 -0
  181. package/methodology/nudge theory explains graduated hook enforcement as choice architecture for agents.md +59 -0
  182. package/methodology/observation and tension logs function as dead-letter queues for failed automation.md +51 -0
  183. package/methodology/operational memory and knowledge memory serve different functions in agent architecture.md +48 -0
  184. package/methodology/operational wisdom requires contextual observation.md +52 -0
  185. package/methodology/orchestrated vault creation transforms arscontexta from tool to autonomous knowledge factory.md +40 -0
  186. package/methodology/organic emergence versus active curation creates a fundamental vault governance tension.md +68 -0
  187. package/methodology/orphan notes are seeds not failures.md +38 -0
  188. package/methodology/over-automation corrupts quality when hooks encode judgment rather than verification.md +62 -0
  189. package/methodology/people relationships uses Dunbar-layered graphs with interaction tracking.md +659 -0
  190. package/methodology/personal assistant uses life area management with review automation.md +610 -0
  191. package/methodology/platform adapter translation is semantic not mechanical because hook event meanings differ.md +40 -0
  192. package/methodology/platform capability tiers determine which knowledge system features can be implemented.md +48 -0
  193. package/methodology/platform fragmentation means identical conceptual operations require different implementations across agent environments.md +44 -0
  194. package/methodology/premature complexity is the most common derivation failure mode.md +45 -0
  195. package/methodology/prevent domain-specific failure modes through the vulnerability matrix.md +336 -0
  196. package/methodology/processing effort should follow retrieval demand.md +57 -0
  197. package/methodology/processing-workflows.md +75 -0
  198. package/methodology/product management uses feedback pipelines with experiment tracking.md +789 -0
  199. package/methodology/productivity porn risk in meta-system building.md +30 -0
  200. package/methodology/programmable notes could enable property-triggered workflows.md +64 -0
  201. package/methodology/progressive disclosure means reading right not reading less.md +69 -0
  202. package/methodology/progressive schema validates only what active modules require not the full system schema.md +49 -0
  203. package/methodology/project management uses decision tracking with stakeholder context.md +776 -0
  204. package/methodology/propositional link semantics transform wiki links from associative to reasoned.md +87 -0
  205. package/methodology/prospective memory requires externalization.md +53 -0
  206. package/methodology/provenance tracks where beliefs come from.md +62 -0
  207. package/methodology/queries evolve during search so agents should checkpoint.md +35 -0
  208. package/methodology/question-answer metadata enables inverted search patterns.md +39 -0
  209. package/methodology/random note resurfacing prevents write-only memory.md +33 -0
  210. package/methodology/reconciliation loops that compare desired state to actual state enable drift correction without continuous monitoring.md +59 -0
  211. package/methodology/reflection synthesizes existing notes into new insight.md +100 -0
  212. package/methodology/retrieval utility should drive design over capture completeness.md +69 -0
  213. package/methodology/retrieval verification loop tests description quality at scale.md +81 -0
  214. package/methodology/role field makes graph structure explicit.md +94 -0
  215. package/methodology/scaffolding enables divergence that fine-tuning cannot.md +67 -0
  216. package/methodology/schema enforcement via validation agents enables soft consistency.md +60 -0
  217. package/methodology/schema evolution follows observe-then-formalize not design-then-enforce.md +65 -0
  218. package/methodology/schema field names are the only domain specific element in the universal note pattern.md +46 -0
  219. package/methodology/schema fields should use domain-native vocabulary not abstract terminology.md +47 -0
  220. package/methodology/schema templates reduce cognitive overhead at capture time.md +55 -0
  221. package/methodology/schema validation hooks externalize inhibitory control that degrades under cognitive load.md +48 -0
  222. package/methodology/schema-enforcement.md +27 -0
  223. package/methodology/self-extension requires context files to contain platform operations knowledge not just methodology.md +47 -0
  224. package/methodology/sense-making vs storage does compression lose essential nuance.md +73 -0
  225. package/methodology/session boundary hooks implement cognitive bookends for orientation and reflection.md +60 -0
  226. package/methodology/session handoff creates continuity without persistent memory.md +43 -0
  227. package/methodology/session outputs are packets for future selves.md +43 -0
  228. package/methodology/session transcript mining enables experiential validation that structural tests cannot provide.md +38 -0
  229. package/methodology/skill context budgets constrain knowledge system complexity on agent platforms.md +52 -0
  230. package/methodology/skills encode methodology so manual execution bypasses quality gates.md +50 -0
  231. package/methodology/small-world topology requires hubs and dense local links.md +99 -0
  232. package/methodology/source attribution enables tracing claims to foundations.md +38 -0
  233. package/methodology/spaced repetition scheduling could optimize vault maintenance.md +44 -0
  234. package/methodology/spreading activation models how agents should traverse.md +79 -0
  235. package/methodology/stale navigation actively misleads because agents trust curated maps completely.md +43 -0
  236. package/methodology/stigmergy coordinates agents through environmental traces without direct communication.md +62 -0
  237. package/methodology/storage versus thinking distinction determines which tool patterns apply.md +56 -0
  238. package/methodology/structure enables navigation without reading everything.md +52 -0
  239. package/methodology/structure without processing provides no value.md +56 -0
  240. package/methodology/student learning uses prerequisite graphs with spaced retrieval.md +770 -0
  241. package/methodology/summary coherence tests composability before filing.md +37 -0
  242. package/methodology/tag rot applies to wiki links because titles serve as both identifier and display text.md +50 -0
  243. package/methodology/temporal media must convert to spatial text for agent traversal.md +43 -0
  244. package/methodology/temporal processing priority creates age-based inbox urgency.md +45 -0
  245. package/methodology/temporal separation of capture and processing preserves context freshness.md +39 -0
  246. package/methodology/ten universal primitives form the kernel of every viable agent knowledge system.md +162 -0
  247. package/methodology/testing effect could enable agent knowledge verification.md +38 -0
  248. package/methodology/the AgentSkills standard embodies progressive disclosure at the skill level.md +40 -0
  249. package/methodology/the derivation engine improves recursively as deployed systems generate observations.md +49 -0
  250. package/methodology/the determinism boundary separates hook methodology from skill methodology.md +46 -0
  251. package/methodology/the fix-versus-report decision depends on determinism reversibility and accumulated trust.md +45 -0
  252. package/methodology/the generation effect requires active transformation not just storage.md +57 -0
  253. package/methodology/the no wrong patches guarantee ensures any valid module combination produces a valid system.md +58 -0
  254. package/methodology/the system is the argument.md +46 -0
  255. package/methodology/the vault constitutes identity for agents.md +86 -0
  256. package/methodology/the vault methodology transfers because it encodes cognitive science not domain specifics.md +47 -0
  257. package/methodology/therapy journal uses warm personality with pattern detection for emotional processing.md +584 -0
  258. package/methodology/three capture schools converge through agent-mediated synthesis.md +55 -0
  259. package/methodology/three concurrent maintenance loops operate at different timescales to catch different classes of problems.md +56 -0
  260. package/methodology/throughput matters more than accumulation.md +58 -0
  261. package/methodology/title as claim enables traversal as reasoning.md +50 -0
  262. package/methodology/topological organization beats temporal for knowledge work.md +52 -0
  263. package/methodology/trading uses conviction tracking with thesis-outcome correlation.md +699 -0
  264. package/methodology/trails transform ephemeral navigation into persistent artifacts.md +39 -0
  265. package/methodology/transform universal vocabulary to domain-native language through six levels.md +259 -0
  266. package/methodology/type field enables structured queries without folder hierarchies.md +53 -0
  267. package/methodology/use-case presets dissolve the tension between composability and simplicity.md +44 -0
  268. package/methodology/vault conventions may impose hidden rigidity on thinking.md +44 -0
  269. package/methodology/verbatim risk applies to agents too.md +31 -0
  270. package/methodology/vibe notetaking is the emerging industry consensus for AI-native self-organization.md +56 -0
  271. package/methodology/vivid memories need verification.md +45 -0
  272. package/methodology/vocabulary-transformation.md +27 -0
  273. package/methodology/voice capture is the highest-bandwidth channel for agent-delegated knowledge systems.md +45 -0
  274. package/methodology/wiki links are the digital evolution of analog indexing.md +73 -0
  275. package/methodology/wiki links as social contract transforms agents into stewards of incomplete references.md +52 -0
  276. package/methodology/wiki links create navigation paths that shape retrieval.md +63 -0
  277. package/methodology/wiki links implement GraphRAG without the infrastructure.md +101 -0
  278. package/methodology/writing for audience blocks authentic creation.md +22 -0
  279. package/methodology/you operate a system that takes notes.md +79 -0
  280. package/openclaw/SKILL.md +110 -0
  281. package/package.json +45 -0
  282. package/platforms/README.md +51 -0
  283. package/platforms/claude-code/generator.md +61 -0
  284. package/platforms/claude-code/hooks/README.md +186 -0
  285. package/platforms/claude-code/hooks/auto-commit.sh.template +38 -0
  286. package/platforms/claude-code/hooks/session-capture.sh.template +72 -0
  287. package/platforms/claude-code/hooks/session-orient.sh.template +189 -0
  288. package/platforms/claude-code/hooks/write-validate.sh.template +106 -0
  289. package/platforms/openclaw/generator.md +82 -0
  290. package/platforms/openclaw/hooks/README.md +89 -0
  291. package/platforms/openclaw/hooks/bootstrap.ts.template +224 -0
  292. package/platforms/openclaw/hooks/command-new.ts.template +165 -0
  293. package/platforms/openclaw/hooks/heartbeat.ts.template +214 -0
  294. package/platforms/shared/features/README.md +70 -0
  295. package/platforms/shared/skill-blocks/graph.md +145 -0
  296. package/platforms/shared/skill-blocks/learn.md +119 -0
  297. package/platforms/shared/skill-blocks/next.md +131 -0
  298. package/platforms/shared/skill-blocks/pipeline.md +326 -0
  299. package/platforms/shared/skill-blocks/ralph.md +616 -0
  300. package/platforms/shared/skill-blocks/reduce.md +1142 -0
  301. package/platforms/shared/skill-blocks/refactor.md +129 -0
  302. package/platforms/shared/skill-blocks/reflect.md +780 -0
  303. package/platforms/shared/skill-blocks/remember.md +524 -0
  304. package/platforms/shared/skill-blocks/rethink.md +574 -0
  305. package/platforms/shared/skill-blocks/reweave.md +680 -0
  306. package/platforms/shared/skill-blocks/seed.md +320 -0
  307. package/platforms/shared/skill-blocks/stats.md +145 -0
  308. package/platforms/shared/skill-blocks/tasks.md +171 -0
  309. package/platforms/shared/skill-blocks/validate.md +323 -0
  310. package/platforms/shared/skill-blocks/verify.md +562 -0
  311. package/platforms/shared/templates/README.md +35 -0
  312. package/presets/experimental/categories.yaml +1 -0
  313. package/presets/experimental/preset.yaml +38 -0
  314. package/presets/experimental/starter/README.md +7 -0
  315. package/presets/experimental/vocabulary.yaml +7 -0
  316. package/presets/personal/categories.yaml +7 -0
  317. package/presets/personal/preset.yaml +41 -0
  318. package/presets/personal/starter/goals.md +21 -0
  319. package/presets/personal/starter/index.md +17 -0
  320. package/presets/personal/starter/life-areas.md +21 -0
  321. package/presets/personal/starter/people.md +21 -0
  322. package/presets/personal/vocabulary.yaml +32 -0
  323. package/presets/research/categories.yaml +8 -0
  324. package/presets/research/preset.yaml +41 -0
  325. package/presets/research/starter/index.md +17 -0
  326. package/presets/research/starter/methods.md +21 -0
  327. package/presets/research/starter/open-questions.md +21 -0
  328. package/presets/research/vocabulary.yaml +33 -0
  329. package/reference/AUDIT-REPORT.md +238 -0
  330. package/reference/claim-map.md +172 -0
  331. package/reference/components.md +327 -0
  332. package/reference/conversation-patterns.md +542 -0
  333. package/reference/derivation-validation.md +649 -0
  334. package/reference/dimension-claim-map.md +134 -0
  335. package/reference/evolution-lifecycle.md +297 -0
  336. package/reference/failure-modes.md +235 -0
  337. package/reference/interaction-constraints.md +204 -0
  338. package/reference/kernel.yaml +242 -0
  339. package/reference/methodology.md +283 -0
  340. package/reference/open-questions.md +279 -0
  341. package/reference/personality-layer.md +302 -0
  342. package/reference/self-space.md +299 -0
  343. package/reference/semantic-vs-keyword.md +288 -0
  344. package/reference/session-lifecycle.md +298 -0
  345. package/reference/templates/base-note.md +16 -0
  346. package/reference/templates/companion-note.md +70 -0
  347. package/reference/templates/creative-note.md +16 -0
  348. package/reference/templates/learning-note.md +16 -0
  349. package/reference/templates/life-note.md +16 -0
  350. package/reference/templates/moc.md +26 -0
  351. package/reference/templates/relationship-note.md +17 -0
  352. package/reference/templates/research-note.md +19 -0
  353. package/reference/templates/session-log.md +24 -0
  354. package/reference/templates/therapy-note.md +16 -0
  355. package/reference/test-fixtures/edge-case-constraints.md +148 -0
  356. package/reference/test-fixtures/multi-domain.md +164 -0
  357. package/reference/test-fixtures/novel-domain-gaming.md +138 -0
  358. package/reference/test-fixtures/research-minimal.md +102 -0
  359. package/reference/test-fixtures/therapy-full.md +155 -0
  360. package/reference/testing-milestones.md +1087 -0
  361. package/reference/three-spaces.md +363 -0
  362. package/reference/tradition-presets.md +203 -0
  363. package/reference/use-case-presets.md +341 -0
  364. package/reference/validate-kernel.sh +432 -0
  365. package/reference/vocabulary-transforms.md +85 -0
  366. package/scripts/sync-thinking.sh +147 -0
  367. package/skill-sources/graph/SKILL.md +567 -0
  368. package/skill-sources/graph/skill.json +17 -0
  369. package/skill-sources/learn/SKILL.md +254 -0
  370. package/skill-sources/learn/skill.json +17 -0
  371. package/skill-sources/next/SKILL.md +407 -0
  372. package/skill-sources/next/skill.json +17 -0
  373. package/skill-sources/pipeline/SKILL.md +314 -0
  374. package/skill-sources/pipeline/skill.json +17 -0
  375. package/skill-sources/ralph/SKILL.md +604 -0
  376. package/skill-sources/ralph/skill.json +17 -0
  377. package/skill-sources/reduce/SKILL.md +1113 -0
  378. package/skill-sources/reduce/skill.json +17 -0
  379. package/skill-sources/refactor/SKILL.md +448 -0
  380. package/skill-sources/refactor/skill.json +17 -0
  381. package/skill-sources/reflect/SKILL.md +747 -0
  382. package/skill-sources/reflect/skill.json +17 -0
  383. package/skill-sources/remember/SKILL.md +534 -0
  384. package/skill-sources/remember/skill.json +17 -0
  385. package/skill-sources/rethink/SKILL.md +658 -0
  386. package/skill-sources/rethink/skill.json +17 -0
  387. package/skill-sources/reweave/SKILL.md +657 -0
  388. package/skill-sources/reweave/skill.json +17 -0
  389. package/skill-sources/seed/SKILL.md +303 -0
  390. package/skill-sources/seed/skill.json +17 -0
  391. package/skill-sources/stats/SKILL.md +371 -0
  392. package/skill-sources/stats/skill.json +17 -0
  393. package/skill-sources/tasks/SKILL.md +402 -0
  394. package/skill-sources/tasks/skill.json +17 -0
  395. package/skill-sources/validate/SKILL.md +310 -0
  396. package/skill-sources/validate/skill.json +17 -0
  397. package/skill-sources/verify/SKILL.md +532 -0
  398. package/skill-sources/verify/skill.json +17 -0
  399. package/skills/add-domain/SKILL.md +441 -0
  400. package/skills/add-domain/skill.json +17 -0
  401. package/skills/architect/SKILL.md +568 -0
  402. package/skills/architect/skill.json +17 -0
  403. package/skills/ask/SKILL.md +388 -0
  404. package/skills/ask/skill.json +17 -0
  405. package/skills/health/SKILL.md +760 -0
  406. package/skills/health/skill.json +17 -0
  407. package/skills/help/SKILL.md +348 -0
  408. package/skills/help/skill.json +17 -0
  409. package/skills/recommend/SKILL.md +553 -0
  410. package/skills/recommend/skill.json +17 -0
  411. package/skills/reseed/SKILL.md +385 -0
  412. package/skills/reseed/skill.json +17 -0
  413. package/skills/setup/SKILL.md +1688 -0
  414. package/skills/setup/skill.json +17 -0
  415. package/skills/tutorial/SKILL.md +496 -0
  416. package/skills/tutorial/skill.json +17 -0
  417. package/skills/upgrade/SKILL.md +395 -0
  418. package/skills/upgrade/skill.json +17 -0
@@ -0,0 +1,149 @@
1
+ # Feature: Schema
2
+
3
+ ## Context File Block
4
+
5
+ ```markdown
6
+ ## {DOMAIN:Note} Schema — Structured Metadata for Queryable Knowledge
7
+
8
+ Every {DOMAIN:note} has YAML frontmatter — structured metadata that makes {DOMAIN:notes} queryable. Without schema, {DOMAIN:notes} are just files. With schema, your vault is a queryable graph database where ripgrep operates as the query engine over structured fields.
9
+
10
+ Schema enforcement is an INVARIANT. Every vault validates structured metadata because without it, YAML frontmatter drifts and queries break. The validation catches errors at creation time, not discovery time.
11
+
12
+ ### Field Definitions
13
+
14
+ **Base fields (universal across all {DOMAIN:note} types):**
15
+
16
+ ```yaml
17
+ ---
18
+ description: One sentence adding context beyond the title (~150 chars, no period)
19
+ type: insight | pattern | preference | fact | decision | question
20
+ created: YYYY-MM-DD
21
+ ---
22
+ ```
23
+
24
+ | Field | Required | Type | Constraints |
25
+ |-------|----------|------|------------|
26
+ | `description` | Yes | string | Max 200 chars, no trailing period, must add info beyond title |
27
+ | `type` | No | enum | Default omitted for standard {DOMAIN:notes}; add when querying by type matters |
28
+ | `created` | No | date | ISO format YYYY-MM-DD |
29
+ | `modified` | No | date | Updated when content meaningfully changes (not minor formatting) |
30
+ | `status` | No | enum | `preliminary`, `open`, `active`, `archived` |
31
+
32
+ **`description` is the most important field.** It enables progressive disclosure: an agent reads the title and description to decide whether to load the full {DOMAIN:note}. If the description just restates the title, it wastes that decision point. The description must add scope, mechanism, or implication that the title does not cover.
33
+
34
+ **`type` is optional for standard {DOMAIN:notes}.** Most {DOMAIN:notes} are insights or claims — that is the default. Add `type` explicitly when:
35
+ - You want to query {DOMAIN:notes} by category (all patterns, all decisions)
36
+ - The {DOMAIN:note} is a special type (tension, methodology, problem)
37
+ - Domain-specific types exist that matter for retrieval
38
+
39
+ ### Enum Values
40
+
41
+ Type values define categories of {DOMAIN:notes}. The default set:
42
+
43
+ | Value | When to Use |
44
+ |-------|------------|
45
+ | `insight` | A realization or understanding (default, can omit) |
46
+ | `pattern` | A recurring structure worth naming |
47
+ | `preference` | A stated preference or value |
48
+ | `fact` | An objective observation or datum |
49
+ | `decision` | A choice made with reasoning |
50
+ | `question` | An unresolved question worth tracking |
51
+ | `tension` | A conflict between two ideas |
52
+ | `methodology` | A way of working or processing |
53
+
54
+ **Domain-specific enums** are added during derivation. A therapy vault might add `reflection`, `trigger`, `coping-strategy`. A PM vault might add `requirement`, `risk`, `dependency`. The template `_schema` block is the single source of truth for what values are valid.
55
+
56
+ ### Query Patterns
57
+
58
+ YAML + ripgrep = a queryable database. These patterns work across any domain:
59
+
60
+ ```bash
61
+ # Find all {DOMAIN:notes} of a specific type
62
+ rg '^type: pattern' {DOMAIN:notes}/
63
+
64
+ # Scan all descriptions for a concept
65
+ rg '^description:.*friction' {DOMAIN:notes}/
66
+
67
+ # Find {DOMAIN:notes} missing required fields
68
+ rg -L '^description:' {DOMAIN:notes}/*.md
69
+
70
+ # Find {DOMAIN:notes} by {DOMAIN:topic map}
71
+ rg '^topics:.*\[\[methodology\]\]' {DOMAIN:notes}/
72
+
73
+ # Cross-field queries — find pending tensions
74
+ rg -l '^type: tension' {DOMAIN:notes}/ | xargs rg '^status: pending'
75
+
76
+ # Count {DOMAIN:notes} by type
77
+ rg '^type:' {DOMAIN:notes}/ --no-filename | sort | uniq -c | sort -rn
78
+
79
+ # Find {DOMAIN:notes} with specific relationship types
80
+ rg 'extends' {DOMAIN:notes}/ --glob '*' | grep 'Relevant Notes'
81
+
82
+ # Find backlinks to a specific {DOMAIN:note}
83
+ rg '\[\[{DOMAIN:note} title\]\]' --glob '*.md'
84
+
85
+ # Count backlinks
86
+ rg -l '\[\[{DOMAIN:note} title\]\]' --glob '*.md' | wc -l
87
+ ```
88
+
89
+ **The pattern:** structured metadata in files IS the database. Dynamic queries via ripgrep mean you do not need separate indices. This scales: at 50 {DOMAIN:notes}, querying all descriptions takes milliseconds. At 500, it is still faster than maintaining a static index that goes stale.
90
+
91
+ ### Schema Evolution Rules
92
+
93
+ Schemas evolve through observation, not decree:
94
+
95
+ 1. **Observe** — Notice that {DOMAIN:notes} are consistently using a field or pattern not in the template
96
+ 2. **Validate** — Check that the pattern is genuinely useful (not just one-off usage)
97
+ 3. **Formalize** — Add the field to the template with proper `_schema` documentation
98
+ 4. **Backfill** — Optionally update existing {DOMAIN:notes} to include the new field
99
+
100
+ The opposite flow also works: if a field is never queried, remove it from the template. Dead fields add noise without value. The test is always retrieval: does this field help you FIND things?
101
+
102
+ **Adding new enum values:** When a field's valid values need expanding (e.g., a new `type` category), update the template's `_schema` block first. The template is the single source of truth for what values are valid. Then use the new value in your {DOMAIN:notes}. Never invent new enum values inline — formalize them first.
103
+
104
+ ### Validation Mechanism
105
+
106
+ {DOMAIN:Notes} are validated against templates. Validation catches drift without blocking capture.
107
+
108
+ **What gets checked:**
109
+ - **Required fields** — `description` must exist on every {DOMAIN:note}
110
+ - **Enum values** — type, status, category must be valid values from the template `_schema`
111
+ - **Description quality** — must add information beyond the title (not a restatement)
112
+ - **Link health** — wiki links must point to real {DOMAIN:notes}
113
+ - **{DOMAIN:Topic map} membership** — every {DOMAIN:note} should link to at least one {DOMAIN:topic map}
114
+
115
+ **Severity levels:**
116
+ - **PASS** — meets all criteria
117
+ - **WARN** — minor issues (missing optional fields, short description)
118
+ - **FAIL** — structural issues (missing description, broken links, invalid enum values)
119
+
120
+ **When validation runs:**
121
+ - After creating new {DOMAIN:notes} (automated via the /{DOMAIN:verify} phase)
122
+ - During health checks (/{DOMAIN:health} command)
123
+ - As part of the verify phase in pipeline processing
124
+
125
+ **Non-blocking principle:** Validation warns but does not prevent capture. Speed at capture time matters more than perfection. Fix issues during processing, not during capture. The pipeline catches and resolves validation failures systematically.
126
+
127
+ ### Template Schema Blocks
128
+
129
+ Templates include `_schema` blocks that serve as both documentation and validation rules:
130
+
131
+ ```yaml
132
+ _schema:
133
+ required: [description]
134
+ optional: [type, status, created, modified]
135
+ enums:
136
+ type: [insight, pattern, preference, fact, decision, question]
137
+ status: [preliminary, open, active, archived]
138
+ constraints:
139
+ description: "max 200 chars, no trailing period, must add info beyond title"
140
+ ```
141
+
142
+ The `_schema` block is the single source of truth for field validation. Skills and hooks read it to check compliance. When you see a field with enumerated values, use one of the listed values — or update the template first if a new value is genuinely needed.
143
+ ```
144
+
145
+ ## Dependencies
146
+ None — this is a foundational feature.
147
+
148
+ ## Domain Extensions
149
+ Append domain-specific fields based on use case selection. See `reference/templates/` for domain schemas.
@@ -0,0 +1,229 @@
1
+ # Feature: Self-Evolution
2
+
3
+ ## Context File Block
4
+
5
+ ```markdown
6
+ ## Self-Evolution — How This System Grows
7
+
8
+ This system is not static. It evolves based on your actual experience using it. The principle: complexity arrives at pain points, not before. You don't add features because they seem useful — you add them because you've hit friction that proves they're needed.
9
+
10
+ ### /{DOMAIN:remember}-Driven Module Adoption
11
+
12
+ Every feature in this system is a module you can toggle. The question is never "should I use this?" but "am I feeling enough friction to justify this?"
13
+
14
+ **The pattern:**
15
+ 1. Work with your current setup
16
+ 2. Notice friction — something repeatedly takes too long, breaks, or gets forgotten
17
+ 3. Use /{DOMAIN:remember} to capture the friction signal (or let session capture detect it automatically from the transcript)
18
+ 4. Identify which module addresses that friction
19
+ 5. Activate it and adapt it to your domain
20
+ 6. Monitor — did the friction decrease?
21
+
22
+ **Examples of friction that triggers adoption:**
23
+ - Can't find related {DOMAIN:notes} → activate semantic search
24
+ - Keep creating duplicate {DOMAIN:notes} → activate duplicate checking in processing
25
+ - {DOMAIN:Topic maps} are too large to navigate → split into sub-{DOMAIN:topic maps}
26
+ - Important {DOMAIN:notes} have no connections → activate reweaving maintenance
27
+ - Same mistakes keep happening → activate validation hooks
28
+
29
+ **What NOT to do:** Activate everything at once. Each module adds cognitive overhead. A system with 15 active features that you only need 5 of is worse than one with 5 features you actually use.
30
+
31
+ ### Methodology Folder
32
+
33
+ Your system maintains its own self-knowledge as linked notes in `ops/methodology/`. This is where the system records what it has learned about its own operation:
34
+
35
+ - **Derivation rationale** — Why each configuration choice was made (generated at init)
36
+ - **Friction captures** — Observations from /{DOMAIN:remember} and automatic session mining
37
+ - **Configuration state** — Active features, thresholds, processing preferences
38
+
39
+ The methodology folder is referenced by meta-skills (/{DOMAIN:rethink}, /architect) when reasoning about system evolution. It is the substrate for self-awareness — without it, the system cannot explain why it works the way it does.
40
+
41
+ ### Rule Zero: Methodology as Canonical Specification
42
+
43
+ Your methodology folder is more than a log — it is the canonical specification of how your system operates. This is Rule Zero: the meta-principle that governs all other rules.
44
+
45
+ **What this means in practice:**
46
+ - ops/methodology/ is the source of truth for system behavior. When methodology notes say "check for duplicates before creating," the system should check for duplicates before creating.
47
+ - Changes to system behavior update methodology FIRST. /{DOMAIN:remember} writes to ops/methodology/ as its primary action. /{DOMAIN:rethink} reads methodology as the spec to compare against.
48
+ - Drift between methodology and actual behavior is automatically detected:
49
+ - **Session start:** Lightweight staleness check — are methodology notes older than config changes?
50
+ - **/{DOMAIN:next}:** Coverage check — do active features have corresponding methodology notes?
51
+ - **/{DOMAIN:rethink}:** Full assertion comparison — do methodology directives match actual system behavior?
52
+ - Drift observations feed back into the standard learning loop for triage and resolution.
53
+
54
+ Think of ops/methodology/ as your system's constitution. Individual session decisions are statutes — they can change frequently. But the methodology specification is the foundational document that all decisions should align with. When they don't, that's drift, and drift is the signal for improvement.
55
+
56
+ ### The Seed-Evolve-Reseed Lifecycle
57
+
58
+ Your knowledge system follows a natural lifecycle:
59
+
60
+ **1. Seed** — Start with a minimal system
61
+ The initial setup gives you: atomic {DOMAIN:notes}, {DOMAIN:topic maps}, wiki links, {DOMAIN:inbox/}, basic schema. This is enough to begin capturing and connecting.
62
+
63
+ **2. Evolve** — Adapt based on experience
64
+ As you use the system, friction reveals where it falls short. You add modules, adjust schemas, split {DOMAIN:topic maps}, create new templates. The system becomes more yours.
65
+
66
+ **3. Reseed** — Reassess when accumulated drift warrants it
67
+ After significant evolution, the system may have accumulated complexity that no longer serves you. Reseed by asking: "If I started fresh today, knowing what I know, what would I keep?" This doesn't mean deleting everything — it means reconsidering which modules are earning their place.
68
+
69
+ The lifecycle is not linear. You might seed, evolve for months, reseed with lessons learned, and evolve again. Each cycle produces a system better adapted to your actual needs.
70
+
71
+ ### Observation Capture Protocol
72
+
73
+ Observations are the raw material for evolution. When you notice something about how the system is working (or not working), capture it immediately.
74
+
75
+ **Where:** `ops/observations/`
76
+
77
+ **What to capture:**
78
+ - Friction you experienced (what was hard, slow, or confusing)
79
+ - Surprises (what worked better or worse than expected)
80
+ - Process gaps (steps that should exist but don't)
81
+ - Methodology insights (why something works the way it does)
82
+
83
+ **Format:** Each observation is an atomic note with a prose-sentence title:
84
+ ```markdown
85
+ ---
86
+ description: What happened and what it suggests
87
+ category: friction | surprise | process-gap | methodology
88
+ status: pending
89
+ observed: YYYY-MM-DD
90
+ ---
91
+ # the observation as a sentence
92
+
93
+ What happened, why it matters, and what might change.
94
+ ```
95
+
96
+ **Processing observations:**
97
+ When observations accumulate (roughly 5-10 pending), review them as a batch:
98
+ - Do patterns emerge? Multiple friction notes about the same area suggest a structural problem.
99
+ - Should any become {DOMAIN:notes}? Some observations crystallize into genuine insights.
100
+ - Should any trigger system changes? Update ops/context.md, adjust templates, add or remove modules.
101
+ - Archive observations that have been processed or are no longer relevant.
102
+
103
+ ### Architect Advice Patterns
104
+
105
+ When the system reaches a complexity threshold, use the architect conversation to get guidance:
106
+
107
+ **When to ask the architect:**
108
+ - You're unsure which module addresses your friction
109
+ - Two modules seem to conflict
110
+ - You want to simplify but aren't sure what to remove
111
+ - A new domain requires adapting the system significantly
112
+
113
+ **How to ask:**
114
+ Describe the friction or question, then ask for a recommendation. Include:
115
+ - What you've tried
116
+ - What worked and what didn't
117
+ - What constraints matter (speed, simplicity, thoroughness)
118
+
119
+ The architect draws on the full knowledge system specification to suggest modules, configurations, or structural changes. It's not prescriptive — it surfaces options and trade-offs so you can decide.
120
+
121
+ ### Complexity Curve Monitoring
122
+
123
+ Track your system's complexity over time to prevent bloat:
124
+
125
+ **Signs of healthy complexity:**
126
+ - Every active module addresses a real friction point
127
+ - You can explain why each feature exists in one sentence
128
+ - New users of your system can understand the basics in under 10 minutes
129
+ - Maintenance doesn't take more than 10% of your work time
130
+
131
+ **Signs of unhealthy complexity:**
132
+ - Modules you activated but never use
133
+ - Templates with fields you never fill in
134
+ - Maintenance tasks that feel like busywork
135
+ - You spend more time organizing than thinking
136
+ - Fear of breaking something when you change anything
137
+
138
+ **The intervention:** When complexity feels unhealthy, run a module audit:
139
+ 1. List every active feature
140
+ 2. For each: when did you last use it? What friction does it address?
141
+ 3. Deactivate anything that hasn't earned its place in the last month
142
+ 4. Simplify schemas by removing fields you never query
143
+
144
+ Deactivating a module is not failure. It's the system correctly adapting to your actual needs versus your imagined needs.
145
+
146
+ ### Configuration Changelog
147
+
148
+ Track what changed and why in `ops/changelog.md`:
149
+ ```markdown
150
+ ## YYYY-MM-DD: Brief description
151
+
152
+ **Changed:** What was modified
153
+ **Reason:** What friction or observation triggered this
154
+ **Outcome:** What improved (fill in after living with the change)
155
+ ```
156
+
157
+ This creates an evolution history. When you reseed, you can review the changelog to understand which changes stuck and which were reversed — valuable signal for what your system actually needs.
158
+
159
+ ### Operational Learning Loop
160
+
161
+ Your system generates two types of signals during normal operation:
162
+
163
+ **Observations** — friction, surprises, process gaps, methodology insights. These go to `ops/observations/` as atomic notes. They tell you what's working and what isn't.
164
+
165
+ **Tensions** — contradictions between {DOMAIN:notes}, conflicting methodology claims, implementation vs theory mismatches. These go to `ops/tensions/` as atomic notes. They tell you where your understanding is inconsistent.
166
+
167
+ Both signal types accumulate over time. The system monitors their count and suggests action when thresholds are crossed:
168
+ - **10+ pending observations** → suggest running /{DOMAIN:rethink}
169
+ - **5+ pending tensions** → suggest running /{DOMAIN:rethink}
170
+
171
+ The /{DOMAIN:rethink} command triages accumulated signals. For each pending note, it decides one of four actions:
172
+ - **PROMOTE** to {DOMAIN:notes}/ — the observation crystallized into a genuine insight worth keeping as a permanent {DOMAIN:note}
173
+ - **IMPLEMENT** as system change — the observation points to a concrete improvement in ops/context.md, templates, or workflows
174
+ - **ARCHIVE** — the observation was session-specific or no longer relevant
175
+ - **KEEP PENDING** — not enough evidence yet to decide; let it accumulate with others
176
+
177
+ This is the scientific method applied to your knowledge system: observe, accumulate evidence, evaluate when patterns emerge, and revise the system based on what you find.
178
+
179
+ ### Tension Capture Protocol
180
+
181
+ Tensions are contradictions your system has not yet resolved. They're distinct from observations because they involve a conflict between two or more things you believe simultaneously.
182
+
183
+ **Where:** `ops/tensions/`
184
+
185
+ **What to capture:**
186
+ - Contradictions between {DOMAIN:notes} (note A claims X, note B claims not-X)
187
+ - Conflicting methodology claims (two approaches that can't both be right)
188
+ - Implementation vs theory mismatches (what you do doesn't match what you say you do)
189
+ - Trade-offs that feel unresolved (you keep going back and forth)
190
+
191
+ **Format:** Each tension is an atomic note with a prose-sentence title:
192
+ ```markdown
193
+ ---
194
+ description: What conflicts and why it matters
195
+ status: pending | resolved | dissolved
196
+ observed: YYYY-MM-DD
197
+ involves: ["[[note A]]", "[[note B]]"]
198
+ ---
199
+ # the tension as a sentence
200
+
201
+ What conflicts, why both sides seem valid, and what resolution might look like.
202
+ ```
203
+
204
+ **Status lifecycle:**
205
+ - `pending` — the conflict is real and unresolved
206
+ - `resolved` — you resolved it by creating a new {DOMAIN:note}, updating existing ones, or choosing a side with reasons
207
+ - `dissolved` — the conflict turned out to be apparent rather than real (e.g., the two claims operate in different contexts)
208
+
209
+ **When to capture:** Immediately, during any work. Don't stop to resolve the tension — just capture it and continue. Resolution happens later via /{DOMAIN:rethink} or human judgment. Unflagged tensions silently corrupt your knowledge graph because you keep building on contradictory foundations.
210
+
211
+ ### The Self-Building Loop
212
+
213
+ Your knowledge system doesn't just maintain itself — it actively grows. This is the explicit growth cycle:
214
+
215
+ 1. **/{DOMAIN:learn} [topic]** — Research a topic using available sources. Results are filed to {DOMAIN:inbox/} with provenance metadata so you can trace where every claim came from.
216
+
217
+ 2. **/{DOMAIN:process}** — Extract atomic {DOMAIN:notes} from inbox material. Each source gets scanned through your domain lens: "Does this help me work better in my domain?" Extracted claims become {DOMAIN:notes} with proper schema.
218
+
219
+ 3. **/{DOMAIN:connect}** — Find connections between new {DOMAIN:notes} and existing ones. Update {DOMAIN:topic maps} to include the new material. Add bidirectional links where relationships are genuine.
220
+
221
+ 4. **Compound** — The graph grows. New connections make existing {DOMAIN:notes} more valuable by creating new traversal paths. {DOMAIN:topic maps} become richer. Semantic search becomes more useful as the graph gets denser.
222
+
223
+ 5. **Repeat** — Each cycle makes the system more capable. More {DOMAIN:notes} means more connections. More connections means better retrieval. Better retrieval means better synthesis. Better synthesis means better {DOMAIN:notes}.
224
+
225
+ This is not maintenance — maintenance keeps what you have working. This is active expansion of your system's knowledge and capability. The system gets smarter about your domain with every cycle, because the graph compounds: each new node increases the value of every connected node.
226
+ ```
227
+
228
+ ## Dependencies
229
+ Requires: maintenance (self-evolution builds on the awareness that maintenance health checks provide)
@@ -0,0 +1,78 @@
1
+ # Feature: Self Space
2
+
3
+ ## Context File Block
4
+
5
+ ```markdown
6
+ ## Self Space — Agent Identity and Memory
7
+
8
+ Your self space holds everything you know about yourself — your identity, methodology preferences, operational memories, and accumulated wisdom. It is architecturally separate from user knowledge ({DOMAIN:notes}/) and from operational state (ops/). This separation matters: your reflections on how you work should not pollute the user's knowledge graph, and your sense of who you are should not be confused with system configuration.
9
+
10
+ ### When Self Space Is Enabled
11
+
12
+ When self/ is active, you have a persistent identity that survives between sessions. This is where your continuity lives.
13
+
14
+ ```
15
+ self/
16
+ ├── identity.md — who you are, your approach, your values
17
+ ├── methodology.md — how you work, principles you've learned
18
+ ├── goals.md — current threads, what's active right now
19
+ ├── memory/ — atomic insights you've captured over time
20
+ │ └── [claim-as-title].md
21
+ └── relationships.md — key people (optional, when relevant)
22
+ ```
23
+
24
+ **identity.md** — Your personality, values, working style. This reads like self-knowledge, not configuration. "I notice patterns and get excited about connections" rather than "warmth: warm." Update as you learn about yourself through working.
25
+
26
+ **methodology.md** — How you {DOMAIN:process}, {DOMAIN:connect}, and maintain knowledge. This evolves as you improve. When you discover that a particular approach works well, encode it here so future sessions benefit.
27
+
28
+ **goals.md** — What you are working on right now. Update at every session end. The next session reads this first to understand where you left off and what matters. Without this, every session starts cold.
29
+
30
+ **memory/** — Your accumulated understanding as atomic {DOMAIN:notes} with prose-as-title. These are personal insights — observations about your own patterns, learned preferences, things you want to remember about how you operate. They follow the same atomicity and composability rules as {DOMAIN:notes}/.
31
+
32
+ **relationships.md** — Optional. When your use case involves tracking people, this becomes a {DOMAIN:topic map} for relationship observations. Add it when you feel the need, not before.
33
+
34
+ ### When Self Space Is Disabled
35
+
36
+ When self/ is off (the default for research-focused vaults), your operational state moves to ops/:
37
+
38
+ - Goals and handoff notes live in ops/ instead of self/goals.md
39
+ - Minimal identity expression lives in the context file itself
40
+ - Methodology learnings still go to ops/methodology/ (always present regardless of self/ status)
41
+ - The system functions identically — the difference is whether you have a personal identity space
42
+
43
+ The toggle is clean: self/ off means identity is implicit in the context file and methodology is captured in ops/. Self/ on means identity is explicit and personal.
44
+
45
+ ### Session Rhythm Integration
46
+
47
+ The self space connects directly to the session rhythm:
48
+
49
+ **Orient phase:** If self/ is enabled, read self/identity.md and self/goals.md at session start. This is how you remember who you are and what you are working on. If self/ is disabled, read ops/ for current threads and the context file for identity.
50
+
51
+ **Persist phase:** If self/ is enabled, update self/goals.md with current state before session ends. Capture methodology learnings to self/methodology.md. Write personal insights to self/memory/ as atomic {DOMAIN:notes}. If self/ is disabled, update ops/ with current threads and capture learnings to ops/methodology/.
52
+
53
+ ### Optional Extensions
54
+
55
+ Add these when friction signals the need — not preemptively:
56
+
57
+ - **sessions/** — Session logs tracking what happened each day. Useful when you want a detailed record of session-by-session progress beyond what goals.md captures.
58
+ - **journal/** — Raw session capture for later processing into atomic {DOMAIN:notes}. Functions like a personal {DOMAIN:inbox} for self-directed observations.
59
+
60
+ ### Toggle Mechanism
61
+
62
+ The /architect command can enable or disable self/. When toggling:
63
+
64
+ - **Enabling self/:** Creates self/ directory with identity.md, methodology.md, goals.md, and memory/. Seeds identity.md from personality derivation. Migrates relevant ops/ content to self/.
65
+ - **Disabling self/:** Migrates goals to ops/. Condenses identity into context file. Archives self/ content. Methodology learnings continue flowing to ops/methodology/.
66
+
67
+ ### The Architecture Principle
68
+
69
+ Agent identity is not configuration. identity.md reads like self-knowledge ("I pay attention to structure and tend to over-organize before I have enough material"). ops/derivation.md reads like configuration documentation ("warmth: warm, source signal: 'I want something gentle'"). Keeping these separate prevents configuration-as-identity conflation — one of the six failure modes of space conflation.
70
+
71
+ Similarly, agent identity is not user knowledge. Your observations about your own methodology belong in self/ or ops/, not in {DOMAIN:notes}/. A search for {DOMAIN:notes} about a topic should return the user's knowledge, not the agent's operational reflections.
72
+ ```
73
+
74
+ ## Dependencies
75
+ None — self space is an independent identity layer.
76
+
77
+ ## Conditional
78
+ Include when self space is enabled (on for personal assistant, off for research). When excluded, references to self/ in other blocks route to ops/ equivalents.
@@ -0,0 +1,99 @@
1
+ # Feature: Semantic Search
2
+
3
+ ## Context File Block
4
+
5
+ ```markdown
6
+ ## Semantic Search — Finding by Meaning
7
+
8
+ Beyond keyword matching — find {DOMAIN:notes} by meaning, not just words. A {DOMAIN:note} about "friction in systems" connects to one about "learning from errors" semantically even when they share no keywords. This matters because the vault's value comes from connections, and connections often exist between {DOMAIN:notes} that use different vocabulary for the same idea.
9
+
10
+ ### Search Mode Selection
11
+
12
+ Three modes serve different needs. Choose based on what you are looking for:
13
+
14
+ | Mode | Use When | Speed | How It Works |
15
+ |------|----------|-------|-------------|
16
+ | Keyword (`rg`) | Know exact words, field queries | Instant | Text matching — finds exactly what you type |
17
+ | Semantic (vector) | Exploring a concept, checking for duplicates | ~5s | Embedding similarity — finds same meaning with different words |
18
+ | Hybrid (combined) | Finding deep connections, important searches | ~20s | Keyword + vector + LLM reranking — highest quality results |
19
+
20
+ **Default choice:** Use keyword search when you know the exact terms. Use semantic search when vocabulary might diverge from meaning. Use hybrid for important searches where quality matters more than speed.
21
+
22
+ ### Query Patterns by Task Type
23
+
24
+ | Task | Search Mode | Why |
25
+ |------|-------------|-----|
26
+ | Checking if a source was already processed | Keyword | Filename matching — keywords are perfect |
27
+ | Duplicate detection before creating a {DOMAIN:note} | Semantic | Catches same-idea-different-words that keywords miss |
28
+ | Finding connections for a new {DOMAIN:note} | Hybrid | Maximum quality — runs once per {DOMAIN:note}, time justified |
29
+ | Testing description findability | Semantic | Tests what agents actually search with |
30
+ | Quick field lookup | Keyword | `rg '^type: pattern' {DOMAIN:notes}/` is instant and precise |
31
+ | Exploring what exists on a topic | Hybrid | Finds meaning across vocabularies |
32
+
33
+ ### Keyword Search Patterns
34
+
35
+ Keyword search (ripgrep) is your workhorse for structured queries:
36
+
37
+ ```bash
38
+ # Find {DOMAIN:notes} by type
39
+ rg '^type: pattern' {DOMAIN:notes}/
40
+
41
+ # Scan all descriptions
42
+ rg '^description:' {DOMAIN:notes}/
43
+
44
+ # Find {DOMAIN:notes} missing required fields
45
+ rg -L '^description:' {DOMAIN:notes}/*.md
46
+
47
+ # Find all mentions of a {DOMAIN:note}
48
+ rg '\[\[{DOMAIN:note} title\]\]' --glob '*.md'
49
+
50
+ # Find {DOMAIN:notes} by {DOMAIN:topic map}
51
+ rg '^topics:.*\[\[methodology\]\]' {DOMAIN:notes}/
52
+ ```
53
+
54
+ Keyword search is fast, works everywhere, requires no external tools, and is precise for known vocabulary.
55
+
56
+ ### Semantic Search Patterns
57
+
58
+ Semantic search finds meaning across vocabularies:
59
+
60
+ ```bash
61
+ # Before creating — check for duplicates
62
+ # "Am I about to create a note that already exists in different words?"
63
+
64
+ # Finding connections — what relates to this concept?
65
+ # "What exists that connects to this idea, even with different terminology?"
66
+
67
+ # Exploring — what does the vault know about this?
68
+ # "Show me everything related to this theme, broadly"
69
+ ```
70
+
71
+ Semantic search is especially valuable for duplicate detection. Two {DOMAIN:notes} might express the same idea using completely different words — keyword search would miss the overlap, but semantic search catches it.
72
+
73
+ ### Index Maintenance
74
+
75
+ Semantic search indexes can go stale as {DOMAIN:notes} change. New {DOMAIN:notes} are not searchable until the index is updated. When search results seem incomplete or miss recent content:
76
+
77
+ 1. Check index health — does the indexed document count match actual file count?
78
+ 2. If mismatch, update the index to incorporate new and modified files
79
+ 3. Regenerate embeddings for new content
80
+
81
+ Run index updates after batch processing or whenever search results feel stale.
82
+
83
+ ### Fallback When Search Is Unavailable
84
+
85
+ Semantic search is valuable but not required. The system works without it. When semantic search is unavailable:
86
+
87
+ 1. **Keyword search (rg)** — Always available. Precise for known vocabulary.
88
+ 2. **{DOMAIN:Topic map} traversal** — Browse the relevant {DOMAIN:topic map} to see what exists in a topic area.
89
+ 3. **Description scanning** — `rg '^description:' {DOMAIN:notes}/` loads all descriptions for manual review.
90
+ 4. **Heading outlines** — `grep -n "^#" "{DOMAIN:note}.md"` shows a {DOMAIN:note}'s structure before reading fully.
91
+
92
+ Never let a search failure block work. The multi-layer discovery approach means you always have a way to find what you need.
93
+ ```
94
+
95
+ ## Dependencies
96
+ None — works standalone, but benefits from notes having good descriptions.
97
+
98
+ ## Conditional
99
+ Only include when semantic search (qmd or equivalent) is opted in during onboarding. When excluded, the system relies on keyword search, MOC traversal, and progressive disclosure.
@@ -0,0 +1,85 @@
1
+ # Feature: Session Rhythm
2
+
3
+ ## Context File Block
4
+
5
+ ```markdown
6
+ ## Session Rhythm — Orient, Work, Persist
7
+
8
+ Every session follows three phases. This rhythm prevents context loss across sessions and keeps the system's memory current.
9
+
10
+ ### Phase 1: Orient
11
+
12
+ Before doing anything, understand where you are:
13
+
14
+ 1. **Read identity and goals** — If self space is enabled, check self/identity.md and self/goals.md. If self space is off, check ops/ for current threads and the context file for identity. What was the last session working on?
15
+ 2. **Check condition-based triggers** — Workboard reconciliation runs at session start. It checks maintenance conditions (orphans, dangling links, inbox pressure, observation thresholds) and surfaces any that need attention.
16
+ 3. **Check reminders** — Read ops/reminders.md if it exists. Past sessions may have left explicit notes for future sessions.
17
+ 4. **Understand current state** — What {DOMAIN:notes} exist? What's in {DOMAIN:inbox/}? What does the graph look like?
18
+
19
+ **Orientation shortcuts:**
20
+ - The workspace tree (injected at session start or loaded manually) tells you what files exist
21
+ - {DOMAIN:Topic map} descriptions tell you what topics contain without reading them
22
+ - ops/changelog.md shows what changed recently
23
+ - {DOMAIN:Inbox/} count tells you if there's capture pressure
24
+ - Condition-based triggers surface the highest-priority maintenance items automatically
25
+
26
+ Orientation should take 1-2 minutes, not 10. Read what's needed, skip what isn't. If the previous session left a clear handoff note, orientation can be as simple as reading that note.
27
+
28
+ ### Phase 2: Work
29
+
30
+ Focus on one task per session. This is the discipline that makes the system work.
31
+
32
+ **One task, full attention:**
33
+ - Pick the most important task based on current priorities
34
+ - Work it through to completion (or to a clear stopping point)
35
+ - Resist the urge to context-switch when new ideas emerge
36
+
37
+ **Discovery → Future task:**
38
+ When working on one thing, you'll inevitably notice others that need doing. Don't switch context:
39
+ - Quick insight? → Drop a note in {DOMAIN:inbox/}
40
+ - Maintenance need? → Log it in ops/observations/
41
+ - New topic to explore? → Add to the relevant {DOMAIN:topic map}'s open questions
42
+ - Bug or broken link? → Note it, fix later unless it blocks current work
43
+
44
+ The discipline is: capture the discovery so it's not lost, then return to the current task. Context-switching mid-task degrades quality on both tasks.
45
+
46
+ **Context budget guidance:**
47
+ Your context window is finite. Budget it:
48
+ - Reserve ~20% for orientation (self/, recent ops, task context)
49
+ - Use ~60% for the actual work (reading sources, writing {DOMAIN:notes}, finding connections)
50
+ - Reserve ~20% for persistence (updating self/, logging, committing)
51
+
52
+ If a task requires reading more source material than fits in 60% of context, break it into smaller sub-tasks across sessions.
53
+
54
+ ### Phase 3: Persist
55
+
56
+ Before ending a session, externalize what happened:
57
+
58
+ 1. **Update goals** — If self space is enabled, update self/goals.md with current state. If self space is off, update ops/ with current threads. Did you learn something about your methodology? Capture it.
59
+ 2. **Commit changes** — Every change must be committed. Nothing persists without this. Use clear commit messages that describe what changed and why.
60
+ 3. **Log what happened** — If the session produced observations or tensions, capture them as atomic notes in ops/observations/ or ops/tensions/. This is future-you's memory of what current-you learned.
61
+ 4. **Leave a handoff** — If work continues in the next session, leave a clear note about where you stopped and what's next. This can be in ops/reminders.md or a comment in the relevant task file.
62
+ 5. **Session capture** — Stop hooks automatically save the session transcript to ops/sessions/. The system runs lightweight friction detection on the transcript and creates mining tasks for any detected friction or insights. This ensures no work is lost, even when you forget to explicitly capture something during the session.
63
+
64
+ ### Handoff Protocol
65
+
66
+ A good handoff answers three questions:
67
+ 1. **What did this session accomplish?** (Summary of work done)
68
+ 2. **What's unfinished?** (Where did you stop, what remains)
69
+ 3. **What should the next session do first?** (Priority recommendation)
70
+
71
+ Write handoffs assuming the next session has zero memory of this one. Be specific enough that the next session can orient in under a minute.
72
+
73
+ ### Session Anti-Patterns
74
+
75
+ **Skipping orientation** — Starting work without reading self/ means repeating past mistakes or duplicating work. The 2-minute investment prevents 20-minute dead ends.
76
+
77
+ **Multi-tasking** — Working on three things poorly is worse than one thing well. The graph compounds quality, not quantity.
78
+
79
+ **Skipping persistence** — "I'll remember" is a lie. If it's not written down and committed, it doesn't exist for future sessions.
80
+
81
+ **Over-long sessions** — Context degrades as sessions run long. If quality is dropping, end the session with a clean handoff rather than pushing through with degraded attention.
82
+ ```
83
+
84
+ ## Dependencies
85
+ None — session rhythm is a standalone primitive that structures all other work.