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,532 @@
1
+ ---
2
+ name: verify
3
+ description: Combined verification — recite (description quality via cold-read prediction) + validate (schema compliance) + review (health checks). Use as a quality gate after creating notes or as periodic maintenance. Triggers on "/verify", "/verify [note]", "verify note quality", "check note health".
4
+ user-invocable: true
5
+ allowed-tools: Read, Write, Edit, Grep, Glob, mcp__qmd__vsearch
6
+ context: fork
7
+ model: opus
8
+ ---
9
+
10
+ ## Runtime Configuration (Step 0 — before any processing)
11
+
12
+ Read these files to configure domain-specific behavior:
13
+
14
+ 1. **`ops/derivation-manifest.md`** — vocabulary mapping, platform hints
15
+ - Use `vocabulary.notes` for the notes folder name
16
+ - Use `vocabulary.note` / `vocabulary.note_plural` for note type references
17
+ - Use `vocabulary.verify` for the process verb in output
18
+ - Use `vocabulary.topic_map` for MOC references
19
+ - Use `vocabulary.templates` for the templates folder path
20
+ - Use `vocabulary.cmd_reflect` for redirect when missing connections found
21
+
22
+ 2. **`ops/config.yaml`** — processing depth, verification settings
23
+ - `processing.depth`: deep | standard | quick
24
+ - `processing.verification.description_test`: true | false
25
+ - `processing.verification.schema_check`: true | false
26
+ - `processing.verification.link_check`: true | false
27
+
28
+ If these files don't exist, use universal defaults.
29
+
30
+ **Processing depth adaptation:**
31
+
32
+ | Depth | Verification Behavior |
33
+ |-------|-----------------------|
34
+ | deep | Full verification: cold-read prediction, complete schema check, exhaustive link verification, MOC coverage, orphan risk analysis, content staleness detection, bundling analysis |
35
+ | standard | Balanced: cold-read prediction, schema check, link verification, MOC coverage |
36
+ | quick | Basic: schema check, link verification only. Skip cold-read prediction and health analysis |
37
+
38
+ ## EXECUTE NOW
39
+
40
+ **Target: $ARGUMENTS**
41
+
42
+ Parse immediately:
43
+ - If target contains a note name: verify that specific note
44
+ - If target contains `--handoff`: output RALPH HANDOFF block at end
45
+ - If target is "all" or "recent": verify recently created/modified notes
46
+ - If target is empty: ask which note to verify
47
+
48
+ ## Anti-Shortcut Warning
49
+
50
+ Before marking verification as passed, you MUST complete ALL four categories:
51
+
52
+ 1. COMPLETE description quality test — cold-read the title + description,
53
+ predict what the note contains, compare against actual content.
54
+ A description that merely restates the title FAILS.
55
+
56
+ 2. COMPLETE schema validation — check ALL required fields from the
57
+ template schema, verify ALL enum values are valid, confirm ALL
58
+ constraints are met. A single missing required field FAILS.
59
+
60
+ 3. COMPLETE link verification — confirm ALL wiki links in the note
61
+ resolve to existing files. A single dangling link FAILS.
62
+
63
+ 4. COMPLETE {DOMAIN:topic map} integration — verify the note appears in at least
64
+ one {DOMAIN:topic map}'s Core Ideas section with a context phrase.
65
+ A note with no {DOMAIN:topic map} mention FAILS.
66
+
67
+ Do NOT declare success after checking only one or two categories.
68
+ ALL FOUR must pass.
69
+
70
+ **Execute these steps IN ORDER:**
71
+
72
+ ### Step 0: INDEX FRESHNESS CHECK
73
+
74
+ Before any retrieval tests, verify the semantic search index is current:
75
+
76
+ 1. Try `mcp__qmd__vsearch` with a simple test query to confirm MCP availability
77
+ 2. If MCP is available, proceed to Step 1
78
+ 3. If MCP is unavailable (tool fails or returns error): note "retrieval test will be deferred" and proceed — do NOT let index issues block verification
79
+
80
+ The index freshness check prevents false retrieval failures on recently created notes. If the index is stale, retrieval test results should be interpreted with that context.
81
+
82
+ ### Step 1: RECITE (cold-read prediction test)
83
+
84
+ **CRITICAL: Do NOT read the full note yet. Only read frontmatter.**
85
+
86
+ This step tests whether the title + description alone enable an agent to predict the note's content. The cold-read constraint is the entire point — reading the note first contaminates the prediction.
87
+
88
+ **1. Read ONLY title + description**
89
+
90
+ Use Read with a line limit to get just the first few lines of frontmatter. Extract:
91
+ - Title (the filename without .md)
92
+ - Description (the description field)
93
+
94
+ Do NOT scroll past the frontmatter closing `---`.
95
+
96
+ **2. Form prediction**
97
+
98
+ Before reading further, write out what you expect:
99
+ - Core argument: what claim does this note make?
100
+ - Mechanism: what reasoning or evidence does it use?
101
+ - Scope: what boundaries does the argument have?
102
+ - Likely connections: what other notes would it reference?
103
+
104
+ Write this prediction explicitly in your output. It must be specific enough to be wrong.
105
+
106
+ **3. Read full note content**
107
+
108
+ NOW read the complete note. Compare against your prediction.
109
+
110
+ **4. Score prediction accuracy (1-5)**
111
+
112
+ | Score | Meaning | Threshold |
113
+ |-------|---------|-----------|
114
+ | **5** | Perfect — description fully captured the argument | Pass |
115
+ | **4** | Strong — minor details missed, core predicted | Pass |
116
+ | **3** | Adequate — general area right, missed key aspects | Pass (minimum) |
117
+ | **2** | Weak — significant mismatch between prediction and content | FAIL |
118
+ | **1** | Failed — note argued something different than expected | FAIL |
119
+
120
+ **Passing threshold: 3 or above.**
121
+
122
+ **5. Run semantic retrieval test**
123
+
124
+ Test whether the description enables semantic retrieval:
125
+
126
+ - Try `mcp__qmd__vsearch` with query = "[the note's description text]", collection = "{DOMAIN:notes collection name}", limit = 10
127
+ - If MCP unavailable: report "retrieval test deferred (semantic search unavailable)" — do NOT skip silently
128
+
129
+ Check where the note appears in results:
130
+ - Top 3: description works well for semantic retrieval
131
+ - Position 4-10: adequate but could improve
132
+ - Not in top 10: flag — description may not convey the note's meaning
133
+
134
+ **Why vsearch specifically:** Agents find notes via semantic search during reflect and reweave. Testing with keyword search tests the wrong retrieval method. Full hybrid search with LLM reranking compensates for weak descriptions — too lenient. vsearch tests real semantic findability without hiding bad descriptions behind reranking.
135
+
136
+ **6. Draft improved description if needed**
137
+
138
+ If prediction score < 3:
139
+ - Diagnose the failure: too vague? missing mechanism? wrong emphasis? restates title?
140
+ - Draft an improved description that would score higher
141
+ - If you have Edit tool access: apply the improvement
142
+
143
+ **7. Combined scoring**
144
+
145
+ | Prediction Score | Retrieval Rank | Suggested Action |
146
+ |------------------|----------------|------------------|
147
+ | 4-5 | top 3 | Description works — no changes needed |
148
+ | 3-4 | top 5 | Adequate — minor improvements possible |
149
+ | 3+ | 6-10 | Investigate — passes prediction but weak retrieval |
150
+ | any | not in top 10 | Flag for review — description may not enable retrieval |
151
+ | < 3 | any | FAIL — description needs rewriting |
152
+
153
+ ### Step 2: VALIDATE (schema check)
154
+
155
+ Read the template that applies to this note type. Determine the template by checking:
156
+ - Note location (e.g., {DOMAIN:notes}/ uses the standard note template)
157
+ - Type field in frontmatter (if present, may indicate a specialized template)
158
+
159
+ If the vault has templates with `_schema` blocks, read the `_schema` from the relevant template for authoritative field requirements. If no `_schema` exists, use the checks below as defaults.
160
+
161
+ **Required fields (FAIL if missing):**
162
+
163
+ | Field | Requirement | Severity |
164
+ |-------|-------------|----------|
165
+ | `description` | Must exist and be non-empty | FAIL |
166
+ | Topics footer or `topics` field | Must reference at least one {DOMAIN:topic map} | FAIL |
167
+
168
+ **Description constraints (WARN if violated):**
169
+
170
+ | Constraint | Check | Severity |
171
+ |------------|-------|----------|
172
+ | Length | Should be ~50-200 characters | WARN |
173
+ | Format | Single sentence, no trailing period | WARN |
174
+ | Content | MUST add NEW information beyond title | WARN |
175
+ | Semantic value | Should capture mechanism, not just topic | WARN |
176
+
177
+ **How to check "adds new info":** Read the title, read the description. If the description says the same thing in different words, it fails this check. A good description adds: mechanism (how/why), scope (boundaries), implication (what follows), or context (where it applies).
178
+
179
+ **YAML validity (FAIL if broken):**
180
+
181
+ | Check | Rule | Severity |
182
+ |-------|------|----------|
183
+ | Frontmatter delimiters | Must start with `---` and close with `---` | FAIL |
184
+ | Valid YAML | Must parse without errors | FAIL |
185
+ | No unknown fields | Fields not in the template | WARN |
186
+
187
+ **Domain-specific field enums (WARN if invalid):**
188
+
189
+ If the note has fields with enumerated values (type, category, status, etc.), check them against the template's `_schema.enums` block. Each invalid enum value produces a WARN.
190
+
191
+ **Relevant notes format (WARN if incorrect):**
192
+
193
+ | Constraint | Check | Severity |
194
+ |------------|-------|----------|
195
+ | Format | Array with context: `["[[note]] -- relationship"]` | WARN |
196
+ | Relationship type | Should use standard types: extends, foundation, contradicts, enables, example | INFO |
197
+ | Links exist | Each referenced note must exist as a file | WARN |
198
+
199
+ **Topics format (FAIL if invalid):**
200
+
201
+ | Constraint | Check | Severity |
202
+ |------------|-------|----------|
203
+ | Format | Array of wiki links: `["[[topic]]"]` | FAIL |
204
+ | Links exist | Each {DOMAIN:topic map} must exist as a file | WARN |
205
+
206
+ **Composability (WARN if fails):**
207
+
208
+ | Check | Rule | Severity |
209
+ |-------|------|----------|
210
+ | Title test | Can you complete "This note argues that [title]"? | WARN |
211
+ | Specificity | Is the claim specific enough to disagree with? | WARN |
212
+
213
+ ### Step 3: REVIEW (per-note health checks)
214
+
215
+ Run these 5 checks on the note:
216
+
217
+ **1. YAML frontmatter integrity**
218
+ - File starts with `---`, has closing `---`
219
+ - YAML parses without errors
220
+ - No duplicate keys
221
+
222
+ **2. Description quality (independent of recite)**
223
+ - Description is present and non-empty
224
+ - Description adds information beyond the title
225
+ - Description is not just the title rephrased
226
+
227
+ **3. {DOMAIN:topic map} connection**
228
+ - Note appears in at least one {DOMAIN:topic map}'s Core Ideas section
229
+ - How to check: grep for `[[note title]]` in files that serve as {DOMAIN:topic map}s
230
+ - The note's Topics footer references a valid {DOMAIN:topic map}
231
+ - A note with no {DOMAIN:topic map} mention is orphaned — FAIL
232
+
233
+ **4. Wiki link density**
234
+ - Count outgoing wiki links in the note body (not just frontmatter)
235
+ - Expected minimum: 2 outgoing links
236
+ - If < 2: flag as sparse — the note is not participating in the graph
237
+ - Sparse notes should be routed to /reflect for connection finding
238
+
239
+ **5. Link resolution**
240
+ - Scan ALL wiki links in the note — body, frontmatter `relevant_notes`, and Topics
241
+ - For each `[[link]]`, confirm a matching file exists in the vault
242
+ - **Exclude** wiki links inside backtick-wrapped code blocks (single backtick or triple backtick) — these are syntax examples, not real links
243
+ - A single dangling link = FAIL with the specific broken link identified
244
+
245
+ **Deep-only checks (when processing.depth = deep):**
246
+
247
+ **6. Orphan risk assessment**
248
+ - Count incoming links: grep for `[[note title]]` across all .md files
249
+ - If 0 incoming links: AT RISK — note exists but nothing references it
250
+ - If 1 incoming link: LOW RISK — single point of connection
251
+ - If 2+ incoming links: OK
252
+
253
+ **7. Content staleness detection**
254
+ - Read the note's content and assess whether claims still seem current
255
+ - Check if referenced concepts/tools/approaches have changed
256
+ - Flag anything that reads as potentially outdated
257
+
258
+ **8. Bundling analysis**
259
+ - Does the note make multiple distinct claims that could be separate notes?
260
+ - Check: could you link to part of this note without dragging unrelated context?
261
+ - If yes: flag for potential splitting
262
+
263
+ ### Step 4: APPLY FIXES
264
+
265
+ If you have Edit tool access, apply fixes for clear-cut issues:
266
+
267
+ **Auto-fix (safe to apply):**
268
+ - Improved description if recite score < 3
269
+ - Missing `---` frontmatter delimiters
270
+ - Trailing period on description
271
+ - Missing Topics footer (if obvious which {DOMAIN:topic map} applies)
272
+
273
+ **Do NOT auto-fix (requires judgment):**
274
+ - Bundled notes (splitting requires understanding the claims)
275
+ - Content staleness (needs human review of factual accuracy)
276
+ - Missing connections (use /reflect instead — connection finding is its own phase)
277
+ - Ambiguous {DOMAIN:topic map} assignment (when note could fit multiple)
278
+
279
+ ### Step 5: Compile Results
280
+
281
+ Combine all checks into a unified report:
282
+
283
+ ```
284
+ === VERIFY: [note title] ===
285
+
286
+ RECITE:
287
+ Prediction score: N/5
288
+ Retrieval rank: #N (or "not in top 10" or "deferred")
289
+ Description: [pass/improved/needs work]
290
+
291
+ VALIDATE:
292
+ Required fields: [PASS/FAIL — detail]
293
+ Description constraints: [PASS/WARN — detail]
294
+ Topics format: [PASS/FAIL — detail]
295
+ Optional fields: [PASS/WARN/N/A]
296
+ Relevant notes: [PASS/WARN/N/A]
297
+ Composability: [PASS/WARN]
298
+
299
+ REVIEW:
300
+ Frontmatter: [PASS/FAIL]
301
+ Description quality: [PASS/WARN]
302
+ {DOMAIN:topic map} connection: [PASS/FAIL — which {DOMAIN:topic map}]
303
+ Wiki links: N outgoing [PASS/WARN if < 2]
304
+ Link resolution: [PASS/FAIL — broken links listed]
305
+
306
+ Overall: [PASS / WARN (N warnings) / FAIL (N failures)]
307
+
308
+ Actions Taken:
309
+ - [List of fixes applied, or "none"]
310
+
311
+ Recommended Actions:
312
+ - [List of suggested next steps, or "none"]
313
+ ===
314
+ ```
315
+
316
+ ### Step 6: Update task file and capture observations
317
+
318
+ - If a task file is in context (pipeline execution): update the `## Verify` section with results
319
+ - Reflect on the process: friction? surprises? methodology insights? process gaps?
320
+ - If any observations worth capturing: create atomic note in the observations directory per the observation capture pattern
321
+ - If `--handoff` in target: output RALPH HANDOFF block (see below)
322
+
323
+ **START NOW.** The reference material below explains philosophy and methodology — use to guide reasoning, not as output to repeat.
324
+
325
+ ---
326
+
327
+ # Verify
328
+
329
+ Combined verification: recite (description quality) + validate (schema compliance) + review (health checks). Three lightweight checks in one context window.
330
+
331
+ ## philosophy
332
+
333
+ **verification is one concern, not three.**
334
+
335
+ recite tests whether the description enables retrieval. validate checks schema compliance. review checks graph health. all three operate on the same note, read the same frontmatter, and together answer one question: is this {DOMAIN:note} ready?
336
+
337
+ running them separately meant three context windows, three subagent spawns, three rounds of reading the same file. the checks are lightweight enough (combined context ~15-25% of window) that they fit comfortably in one session while staying in the smart zone.
338
+
339
+ > "the unit of verification is the {DOMAIN:note}, not the check type."
340
+
341
+ ## execution order matters
342
+
343
+ **Recite MUST run first.** The cold-read prediction test requires forming an honest prediction from title + description BEFORE reading the full note. If validate or review ran first (both read the full note), the prediction would be contaminated. Recite's constraint: predict first, read second.
344
+
345
+ **Index freshness runs before everything.** The retrieval test in recite depends on semantic search having current data. Without a freshness check, recently created notes produce false retrieval failures that obscure actual description quality issues.
346
+
347
+ After recite reads the full note, validate and review can run in any order since they both need the full content.
348
+
349
+ ## recite: description quality
350
+
351
+ the testing effect applied to vault quality. read only title + description, predict what the note argues, then check. if your prediction fails, the description fails.
352
+
353
+ **why this matters:** descriptions are the API of the vault. agents decide whether to load a note based on title + description. a misleading description causes two failure modes:
354
+ - **false positive:** agent reads the note expecting X, wastes context on Y
355
+ - **false negative:** agent skips the note because description doesn't signal relevance
356
+
357
+ both degrade the vault's value as a knowledge tool.
358
+
359
+ **retrieval test rationale:** agents find notes via semantic search during reflect and reweave. testing with BM25 keyword matching tests the wrong retrieval method. full hybrid search with LLM reranking compensates for weak descriptions — too lenient. vsearch tests real semantic findability without hiding bad descriptions.
360
+
361
+ ## validate: schema compliance
362
+
363
+ checks against the relevant template schema:
364
+
365
+ | Check | Requirement | Severity |
366
+ |-------|-------------|----------|
367
+ | `description` | Must exist, non-empty | FAIL |
368
+ | `topics` | Must exist, array of wiki links | FAIL |
369
+ | description length | < 200 chars | WARN |
370
+ | description content | Adds info beyond title | WARN |
371
+ | description format | No trailing period | WARN |
372
+ | domain enum fields | Valid values per template `_schema.enums` | WARN |
373
+ | `relevant_notes` format | Array with context phrases | WARN |
374
+ | YAML integrity | Well-formed, `---` delimiters | FAIL |
375
+ | Composability | Title passes "This note argues that [title]" test | WARN |
376
+
377
+ **FAIL means fix needed. WARN is informational but worth addressing.**
378
+
379
+ **template discovery:** The skill reads the template for the note type to get its `_schema` block. If no template exists or no `_schema` block is found, fall back to the default checks above.
380
+
381
+ ## review: per-note health
382
+
383
+ 5 focused checks per note (not a full vault-wide audit):
384
+
385
+ 1. **YAML frontmatter** — well-formed, has `---` delimiters, valid parsing
386
+ 2. **Description quality** — present, adds info beyond title, not a restatement
387
+ 3. **{DOMAIN:topic map} connection** — appears in at least one {DOMAIN:topic map}
388
+ 4. **Wiki link count** — >= 2 outgoing links (graph participation threshold)
389
+ 5. **Link resolution** — all wiki links point to existing files (full body scan, excluding backtick-wrapped examples)
390
+
391
+ plus 3 deep-only checks for comprehensive audits:
392
+ 6. **Orphan risk** — incoming link count (is anything pointing here?)
393
+ 7. **Content staleness** — does the content still seem accurate?
394
+ 8. **Bundling** — does the note make multiple distinct claims?
395
+
396
+ ## common failure patterns
397
+
398
+ | Pattern | Symptom | Fix |
399
+ |---------|---------|-----|
400
+ | Title restated as description | Recite score 1-2, prediction trivially correct but content is richer | Rewrite description to add mechanism/scope |
401
+ | Missing {DOMAIN:topic map} | Review fails MOC check | Add to appropriate {DOMAIN:topic map} or create Topics footer |
402
+ | Dangling links | Review fails link resolution | Remove link, create the target note, or fix the spelling |
403
+ | Sparse note | < 2 outgoing links | Route to /reflect for connection finding |
404
+ | Schema drift | Enum values not in template | Update note to use valid values, or propose enum addition |
405
+
406
+ ## batch mode (--all)
407
+
408
+ When verifying all notes:
409
+
410
+ 1. Discover all notes in {DOMAIN:notes}/ directory
411
+ 2. For each note, run the full verification pipeline
412
+ 3. Produce summary report:
413
+ - Total notes checked
414
+ - PASS / WARN / FAIL counts per category
415
+ - Top issues grouped by check type
416
+ - Notes needing immediate attention (FAIL items)
417
+ - Pattern analysis across failures
418
+
419
+ **Performance note:** In batch mode, the recite cold-read test runs honestly for each note. Do not "warm up" by reading multiple notes first — each prediction must be genuinely cold.
420
+
421
+ ## standalone invocation
422
+
423
+ ### /verify [note]
424
+
425
+ Run all three checks on a specific note. Full detailed report.
426
+
427
+ ### /verify --all
428
+
429
+ Comprehensive audit of all notes in {DOMAIN:notes}/. Summary table + flagged failures.
430
+
431
+ ### /verify --handoff [note]
432
+
433
+ Pipeline mode for orchestrator. Runs full workflow, outputs RALPH HANDOFF block.
434
+
435
+ ## handoff mode (--handoff flag)
436
+
437
+ When invoked with `--handoff`, output this structured format at the END of the session:
438
+
439
+ ```
440
+ === RALPH HANDOFF: verify ===
441
+ Target: [[note name]]
442
+
443
+ Work Done:
444
+ - Recite: prediction N/5, retrieval #N, [pass/fail]
445
+ - Validate: [PASS/WARN/FAIL] (N checks, M warnings, K failures)
446
+ - Review: [PASS/WARN/FAIL] (N checks, M issues)
447
+ - Description improved: [yes/no]
448
+
449
+ Files Modified:
450
+ - {DOMAIN:notes}/[note].md (description improved, if applicable)
451
+ - [task file path] (Verify section updated, if applicable)
452
+
453
+ Learnings:
454
+ - [Friction]: [description] | NONE
455
+ - [Surprise]: [description] | NONE
456
+ - [Methodology]: [description] | NONE
457
+ - [Process gap]: [description] | NONE
458
+
459
+ Queue Updates:
460
+ - Mark: verify done for this task
461
+ === END HANDOFF ===
462
+ ```
463
+
464
+ ## task file update
465
+
466
+ When a task file is in context (pipeline execution), update the `## Verify` section:
467
+
468
+ ```markdown
469
+ ## Verify
470
+ **Verified:** [UTC timestamp]
471
+
472
+ Recite:
473
+ - Prediction: N/5 — [brief reason]
474
+ - Retrieval: #N via vsearch (or "deferred")
475
+ - Description: [kept/improved — brief note]
476
+
477
+ Validate:
478
+ - Required fields: PASS
479
+ - Description constraints: PASS (147 chars, adds mechanism)
480
+ - Topics: PASS (["[[topic]]"])
481
+ - Optional: [status]
482
+
483
+ Review:
484
+ - Frontmatter: PASS
485
+ - {DOMAIN:topic map} connection: PASS ([[topic]])
486
+ - Wiki links: N outgoing
487
+ - Link resolution: PASS (all resolve)
488
+
489
+ Overall: [PASS/WARN/FAIL]
490
+ ```
491
+
492
+ ## Pipeline Chaining
493
+
494
+ Verify is the **final pipeline phase**. After verification completes:
495
+
496
+ - **manual:** Output "Verified. Pipeline complete." — no next step
497
+ - **suggested:** Output completion summary AND suggest marking task done in queue
498
+ - **automatic:** Task marked done, summary logged to task file
499
+
500
+ If verification FAILS (recite score < 3 or any FAIL-level issue), do NOT mark done. Instead:
501
+ - Output what failed and what needs fixing
502
+ - Keep task at `current_phase: "verify"` for re-run after fixes
503
+
504
+ The chaining output uses domain-native vocabulary from the derivation manifest.
505
+
506
+ ## queue.json update (interactive execution)
507
+
508
+ When running interactively (NOT via orchestrator), YOU must execute queue updates:
509
+
510
+ ```bash
511
+ TIMESTAMP=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
512
+ jq '(.tasks[] | select(.id=="TASK_ID")).status = "done" | (.tasks[] | select(.id=="TASK_ID")).completed = "'"$TIMESTAMP"'"' ops/queue/queue.json > tmp.json && mv tmp.json ops/queue/queue.json
513
+ ```
514
+
515
+ The queue path uses the domain-native operations folder. Check `ops/` or equivalent.
516
+
517
+ ## critical constraints
518
+
519
+ **never:**
520
+ - read the note before forming the recite prediction (cold-read is the whole point)
521
+ - auto-fix FAIL-level issues without flagging them in the report
522
+ - skip the semantic retrieval test without reporting "deferred"
523
+ - leave failures without suggested improvements
524
+ - declare PASS after checking only some categories
525
+
526
+ **always:**
527
+ - run recite FIRST (before validate/review — execution order is load-bearing)
528
+ - be honest about prediction accuracy (inflated scores defeat the purpose)
529
+ - suggest specific improved descriptions for score < 3
530
+ - report all severity levels clearly (PASS/WARN/FAIL)
531
+ - update task file if one is in context
532
+ - capture observations for friction, surprises, or methodology insights
@@ -0,0 +1,17 @@
1
+ {
2
+ "name": "knowledge-verify",
3
+ "description": "Combined verification -- recite (description quality) + validate (schema compliance) + review (health checks). Quality gate after creating notes or as periodic maintenance.",
4
+ "version": "0.4.0",
5
+ "author": "arscontexta",
6
+ "tags": ["knowledge-management", "processing", "pipeline"],
7
+ "entry": "SKILL.md",
8
+ "platform_hints": {
9
+ "claude-code": {
10
+ "context": "fork",
11
+ "model": "opus"
12
+ },
13
+ "openclaw": {
14
+ "type": "external"
15
+ }
16
+ }
17
+ }