{"id":"7c00bf37-57a3-4605-b7ba-5989e7bdf580","shortId":"zcpyds","kind":"skill","title":"vault-health-feedback","tagline":"Diagnose whether an Obsidian knowledge workflow produces cognitive return or is becoming a passive archive. Load when vault feels archival or dead. Do NOT use for inbox triage, link review, synthesis, or direct restructuring.","description":"# vault-health-feedback\n\n## Constraints\n\n- NEVER scan whole vault; sample strategically\n- NEVER give more than 3 recommendations\n- Check layers in order: workflow -> cognitive -> structural\n- NEVER equate structural mess with system failure (check workflow first)\n- NEVER repair, move, or restructure without explicit confirmation\n\n## Trigger Boundary\n\n**Use when:** vault feels archival, knowledge not returning, system health diagnosis needed, highest-leverage repair unclear, user says \"vault is dead\" or \"nothing comes back.\"\n\n**Do NOT use for:**\n- Inbox routing -> `inbox-triage`\n- Recent-note relationships -> `connection-review`\n- Week-level synthesis -> `weekly-synthesis`\n- Direct restructuring before diagnosis\n- Promoting material -> `note-promotion`\n\n## Boundaries\n\n- **Owns:** workflow health diagnosis, cognitive return assessment, structural friction detection\n- **Delegates to:** `inbox-triage` (root cause is inbox backlog), `opencode-context-maintenance` (root cause is context drift)\n- **Never absorbs:** inbox routing, relationship analysis, synthesis, promotion, direct restructuring\n\n## Continuations\n\n| Condition | Next skill |\n|-----------|-----------|\n| Root cause is inbox backlog | `inbox-triage` |\n| Root cause is context drift | `opencode-context-maintenance` |\n| Vault paths inaccessible, possible config issue | `opencode-context-maintenance` |\n| Vault is deeply archival, needs structural redesign | Escalate to human |\n\n## Companion Skill\n\nAll vault operations follow `obsidian-mcp`. Forbidden: `obsidian_patch_note`, `obsidian_append_to_note`. Verify every write through readback.\n## Procedure\n\n### Phase 1: Workflow Layer (always check first)\n\nWhen assessing health metrics, read `references/examples.md`.\n\n1. `obsidian_list_notes path:\"Inbox/\"` -> inbox freshness (items, age)\n2. `obsidian_search_notes query:\"type: synthesis\"` -> synthesis frequency\n3. Check for recent triage/review/promotion activity\n4. Score: active / stale / dead\n\n### Phase 2: Cognitive Layer (only if workflow is active or stale)\n1. Sample 5-10 recent notes for reuse signals (links back, references)\n2. Check if themes recur across time windows\n3. Look for notes that were never revisited after creation\n4. Score: returning value / flat / declining\n\n### Phase 3: Structural Layer (only if cognitive layer shows issues)\n1. Check for orphan zones, hollow clusters, tag noise\n2. Identify fragmentation patterns\n3. Score: clean / messy but functional / blocking workflow\n\n### Phase 4: Recommend\n\nWhen formatting diagnosis, read `references/templates.md`.\n\n1-3 highest-leverage interventions, ranked. Report what NOT to do now.\n\n<details>\n<summary>Health Metrics Thresholds (expand for quantitative reference)</summary>\n\nWorkflow layer:\n- Inbox items >30 days old = stale signal\n- Synthesis frequency <1 per month = workflow gap\n- No triage activity in 2+ weeks = dead workflow\n\nCognitive layer:\n- Reuse rate <10% of notes ever linked-to = cognitive concern\n- No note revisited within 30 days of creation = flat return\n- Themes never recur across windows = no compounding\n\nStructural layer:\n- Orphan rate >40% unlinked notes = structural concern\n- Tag entropy >50 tags with <3 uses each = noise\n- Folder depth >4 with <2 notes per leaf = over-organization\n\nSeverity ranking:\n- Dead workflow > declining cognitive > structural blocking\n- Stale workflow > flat cognitive > messy structural\n- Active workflow with messy structure = healthy (do not intervene)\n\n</details>\n## Gotchas\n\n### Gotcha 1: Starting from structure\n**What happens:** Agent counts orphans and messy folders first\n**Why it is wrong:** Structural mess may be irrelevant if workflow is healthy\n**Correct approach:** Always check workflow -> cognitive -> structural in order\n\n### Gotcha 2: Too many recommendations\n**What happens:** Agent gives 5-7 improvement suggestions\n**Why it is wrong:** No execution focus; user is overwhelmed\n**Correct approach:** Maximum 3 interventions, ranked by leverage\n\n### Gotcha 3: Diagnosis becomes cleanup\n**What happens:** Agent starts moving/renaming/restructuring during diagnosis\n**Why it is wrong:** Unauthorized modification; diagnosis should inform, not act\n**Correct approach:** Report findings, recommend interventions, wait for confirmation\n\n## Validators (CI only, not runtime)\n\n- `validators/pre-check.sh`: Confirms vault is accessible for sampling\n- `validators/post-check.sh`: Verifies <=3 recommendations and layer order respected\n\n## Exit Criteria\n\n- No more than 3 recommendations\n- Every risk signal has evidence\n- Layers checked in order (workflow -> cognitive -> structural)\n- No repair executed without confirmation","tags":["vault","health","feedback","opencode","obsidian","knowledge","workflow","r007b34r","agent-skills","ai-agents","ai-tools","claude-code-skills"],"capabilities":["skill","source-r007b34r","skill-vault-health-feedback","topic-agent-skills","topic-ai-agents","topic-ai-tools","topic-claude-code-skills","topic-digital-garden","topic-knowledge-base","topic-knowledge-management","topic-knowledge-workflow","topic-llm","topic-mcp","topic-mcp-server","topic-model-context-protocol"],"categories":["opencode-obsidian-knowledge-workflow"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/r007b34r/opencode-obsidian-knowledge-workflow/vault-health-feedback","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add r007b34r/opencode-obsidian-knowledge-workflow","source_repo":"https://github.com/r007b34r/opencode-obsidian-knowledge-workflow","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 6 github stars · SKILL.md body (4,641 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T13:22:59.677Z","embedding":null,"createdAt":"2026-05-18T13:22:59.677Z","updatedAt":"2026-05-18T13:22:59.677Z","lastSeenAt":"2026-05-18T13:22:59.677Z","tsv":"'-10':302 '-3':375 '-7':547 '1':246,258,299,345,374,405,502 '10':422 '2':268,289,311,354,414,470,538 '3':54,277,319,336,358,462,563,569,614,625 '30':398,435 '4':283,329,367,468 '40':452 '5':301,546 '50':459 'absorb':172 'access':609 'across':316,444 'act':590 'activ':282,285,296,412,491 'age':267 'agent':508,544,575 'alway':249,530 'analysi':176 'append':236 'approach':529,561,592 'archiv':19,24,87,215 'assess':148,253 'back':108,309 'backlog':161,189 'becom':16,571 'block':364,484 'boundari':82,141 'caus':158,167,186,194 'check':56,70,250,278,312,346,531,633 'ci':601 'clean':360 'cleanup':572 'cluster':351 'cognit':12,61,146,290,341,418,429,482,488,533,637 'come':107 'companion':222 'compound':447 'concern':430,456 'condit':182 'config':206 'confirm':80,599,606,643 'connect':123 'connection-review':122 'constraint':43 'context':164,169,196,200,210 'continu':181 'correct':528,560,591 'count':509 'creation':328,438 'criteria':621 'day':399,436 'dead':26,104,287,416,479 'declin':334,481 'deepli':214 'deleg':152 'depth':467 'detect':151 'diagnos':5 'diagnosi':93,135,145,371,570,579,586 'direct':37,132,179 'drift':170,197 'entropi':458 'equat':64 'escal':219 'ever':425 'everi':240,627 'evid':631 'execut':555,641 'exit':620 'expand':390 'explicit':79 'failur':69 'feedback':4,42 'feel':23,86 'find':594 'first':72,251,514 'flat':333,439,487 'focus':556 'folder':466,513 'follow':227 'forbidden':231 'format':370 'fragment':356 'frequenc':276,404 'fresh':265 'friction':150 'function':363 'gap':409 'give':51,545 'gotcha':500,501,537,568 'happen':507,543,574 'health':3,41,92,144,254,387 'healthi':496,527 'highest':96,377 'highest-leverag':95,376 'hollow':350 'human':221 'identifi':355 'improv':548 'inaccess':204 'inbox':31,113,116,155,160,173,188,191,263,264,396 'inbox-triag':115,154,190 'inform':588 'interven':499 'intervent':379,564,596 'irrelev':523 'issu':207,344 'item':266,397 'knowledg':9,88 'layer':57,248,291,338,342,395,419,449,617,632 'leaf':473 'level':127 'leverag':97,378,567 'link':33,308,427 'linked-to':426 'list':260 'load':20 'look':320 'mainten':165,201,211 'mani':540 'materi':137 'maximum':562 'may':521 'mcp':230 'mess':66,520 'messi':361,489,494,512 'metric':255,388 'modif':585 'month':407 'move':75 'moving/renaming/restructuring':577 'need':94,216 'never':44,50,63,73,171,325,442 'next':183 'nois':353,465 'note':120,139,234,238,261,271,304,322,424,432,454,471 'note-promot':138 'noth':106 'obsidian':8,229,232,235,259,269 'obsidian-mcp':228 'old':400 'opencod':163,199,209 'opencode-context-mainten':162,198,208 'oper':226 'order':59,536,618,635 'organ':476 'orphan':348,450,510 'over-organ':474 'overwhelm':559 'own':142 'passiv':18 'patch':233 'path':203,262 'pattern':357 'per':406,472 'phase':245,288,335,366 'possibl':205 'procedur':244 'produc':11 'promot':136,140,178 'quantit':392 'queri':272 'rank':380,478,565 'rate':421,451 'read':256,372 'readback':243 'recent':119,280,303 'recent-not':118 'recommend':55,368,541,595,615,626 'recur':315,443 'redesign':218 'refer':310,393 'references/examples.md':257 'references/templates.md':373 'relationship':121,175 'repair':74,98,640 'report':381,593 'respect':619 'restructur':38,77,133,180 'return':13,90,147,331,440 'reus':306,420 'review':34,124 'revisit':326,433 'risk':628 'root':157,166,185,193 'rout':114,174 'runtim':604 'sampl':48,300,611 'say':101 'scan':45 'score':284,330,359 'search':270 'sever':477 'show':343 'signal':307,402,629 'skill':184,223 'skill-vault-health-feedback' 'source-r007b34r' 'stale':286,298,401,485 'start':503,576 'strateg':49 'structur':62,65,149,217,337,448,455,483,490,495,505,519,534,638 'suggest':549 'synthesi':35,128,131,177,274,275,403 'system':68,91 'tag':352,457,460 'theme':314,441 'threshold':389 'time':317 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-tools' 'topic-claude-code-skills' 'topic-digital-garden' 'topic-knowledge-base' 'topic-knowledge-management' 'topic-knowledge-workflow' 'topic-llm' 'topic-mcp' 'topic-mcp-server' 'topic-model-context-protocol' 'triag':32,117,156,192,411 'triage/review/promotion':281 'trigger':81 'type':273 'unauthor':584 'unclear':99 'unlink':453 'use':29,83,111,463 'user':100,557 'valid':600 'validators/post-check.sh':612 'validators/pre-check.sh':605 'valu':332 'vault':2,22,40,47,85,102,202,212,225,607 'vault-health-feedback':1,39 'verifi':239,613 'wait':597 'week':126,130,415 'week-level':125 'weekly-synthesi':129 'whether':6 'whole':46 'window':318,445 'within':434 'without':78,642 'workflow':10,60,71,143,247,294,365,394,408,417,480,486,492,525,532,636 'write':241 'wrong':518,553,583 'zone':349","prices":[{"id":"8b47b113-8e6f-4b80-bb4f-e7ffb65e0560","listingId":"7c00bf37-57a3-4605-b7ba-5989e7bdf580","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"r007b34r","category":"opencode-obsidian-knowledge-workflow","install_from":"skills.sh"},"createdAt":"2026-05-18T13:22:59.677Z"}],"sources":[{"listingId":"7c00bf37-57a3-4605-b7ba-5989e7bdf580","source":"github","sourceId":"r007b34r/opencode-obsidian-knowledge-workflow/vault-health-feedback","sourceUrl":"https://github.com/r007b34r/opencode-obsidian-knowledge-workflow/tree/master/skills/vault-health-feedback","isPrimary":false,"firstSeenAt":"2026-05-18T13:22:59.677Z","lastSeenAt":"2026-05-18T13:22:59.677Z"}],"details":{"listingId":"7c00bf37-57a3-4605-b7ba-5989e7bdf580","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"r007b34r","slug":"vault-health-feedback","github":{"repo":"r007b34r/opencode-obsidian-knowledge-workflow","stars":6,"topics":["agent-skills","ai-agents","ai-tools","claude-code-skills","digital-garden","knowledge-base","knowledge-management","knowledge-workflow","llm","mcp","mcp-server","model-context-protocol","note-taking","obsidian","obsidian-mcp","opencode","opencode-skills","pkm","second-brain","zettelkasten"],"license":"apache-2.0","html_url":"https://github.com/r007b34r/opencode-obsidian-knowledge-workflow","pushed_at":"2026-05-14T11:39:07Z","description":"7 AKU-architected skills for OpenCode + Obsidian MCP: obsidian-mcp, inbox-triage, connection-review, weekly-synthesis, context-maintenance, vault-health-feedback, note-promotion. Knowledge Activation v4 with validators, EDD evals, and CI. Built on obsidian-mcp-server. Works with OpenCode and Claude Code.","skill_md_sha":"c51b22802785caa27762900aa773c6fc4d20eb04","skill_md_path":"skills/vault-health-feedback/SKILL.md","default_branch":"master","skill_tree_url":"https://github.com/r007b34r/opencode-obsidian-knowledge-workflow/tree/master/skills/vault-health-feedback"},"layout":"multi","source":"github","category":"opencode-obsidian-knowledge-workflow","frontmatter":{"name":"vault-health-feedback","license":"Apache-2.0","description":"Diagnose whether an Obsidian knowledge workflow produces cognitive return or is becoming a passive archive. Load when vault feels archival or dead. Do NOT use for inbox triage, link review, synthesis, or direct restructuring.","compatibility":"opencode; requires obsidian-mcp"},"skills_sh_url":"https://skills.sh/r007b34r/opencode-obsidian-knowledge-workflow/vault-health-feedback"},"updatedAt":"2026-05-18T13:22:59.677Z"}}