{"id":"8a0470a5-e0d5-4aaf-9ec7-518e7c4a1f3d","shortId":"yJgWgG","kind":"skill","title":"second-brain-lint","tagline":"Health-check the wiki for contradictions, orphan pages, stale claims, and missing cross-references. Use when the user says \"audit\", \"health check\", \"lint\", \"find problems\", or wants to improve wiki quality.","description":"# Second Brain — Lint\n\nHealth-check the wiki and report issues with actionable fixes.\n\n## Audit Steps\n\nRun all checks below, then present a consolidated report.\n\n### 1. Broken wikilinks\n\nScan all wiki pages for `[[wikilink]]` references. For each link, verify the target page exists. Report any broken links.\n\n```bash\n# Find all wikilinks across wiki pages\ngrep -roh '\\[\\[[^]]*\\]\\]' wiki/ | sort -u\n```\n\nCross-reference against actual files in `wiki/`.\n\n### 2. Orphan pages\n\nFind pages with no inbound links — no other page references them via `[[wikilink]]`.\n\nFor each `.md` file in `wiki/sources/`, `wiki/entities/`, `wiki/concepts/`, `wiki/synthesis/`:\n- Extract the page name (filename without extension)\n- Search all other wiki pages for `[[Page Name]]`\n- If no other page links to it, it's an orphan\n\n### 3. Contradictions\n\nRead pages that share entities or concepts and look for conflicting claims. Flag when:\n- Two source summaries make opposing claims about the same topic\n- An entity page contains information that conflicts with a source summary\n- Dates, figures, or factual claims differ between pages\n\n### 4. Stale claims\n\nCross-reference source dates with wiki content. Flag when:\n- A concept page cites only old sources and newer sources exist on the same topic\n- Entity information hasn't been updated despite newer sources mentioning that entity\n\n### 5. Missing pages\n\nScan for `[[wikilinks]]` that point to pages that don't exist yet. These are topics the wiki mentions but hasn't given their own page. Assess whether they warrant a page.\n\n### 6. Missing cross-references\n\nFind pages that discuss the same topics but don't link to each other. Look for:\n- Entity pages that mention concepts without linking them\n- Concept pages that mention entities without linking them\n- Source summaries that cover the same topic but don't reference each other\n\n### 7. Index consistency\n\nVerify `wiki/index.md` is complete and accurate:\n- Every page in `wiki/sources/`, `wiki/entities/`, `wiki/concepts/`, `wiki/synthesis/` has an index entry\n- No index entries point to deleted pages\n- Entries are under the correct category header\n\n### 8. Data gaps\n\nBased on the wiki's current coverage, suggest:\n- Topics mentioned frequently but lacking depth\n- Questions the wiki can't answer well\n- Areas where a web search could fill in missing information\n\n## Report Format\n\nPresent findings grouped by severity:\n\n### Errors (must fix)\n- Broken wikilinks\n- Contradictions between pages\n- Index entries pointing to missing pages\n\n### Warnings (should fix)\n- Orphan pages with no inbound links\n- Stale claims from outdated sources\n- Missing pages for frequently referenced topics\n\n### Info (nice to fix)\n- Potential cross-references to add\n- Data gaps that could be filled\n- Index entries that could be more descriptive\n\nFor each finding, include:\n- **What:** description of the issue\n- **Where:** the specific file(s) and line(s)\n- **Fix:** what to do about it\n\n## After the Report\n\nAsk the user:\n> \"Found N errors, N warnings, and N info items. Want me to fix any of these?\"\n\nIf the user agrees, fix issues and report what changed.\n\n## Log the lint pass\n\nAppend to `wiki/log.md`:\n\n    ## [YYYY-MM-DD] lint | Health check\n    Found N errors, N warnings, N info items. Fixed: [list of fixes applied].\n\n## When to Lint\n\n- **After every 10 ingests** — catches cross-reference gaps while they're fresh\n- **Monthly at minimum** — catches stale claims and orphan pages over time\n- **Before major queries** — ensures the wiki is healthy before you rely on it for analysis\n\n## Related Skills\n\n- `/second-brain-ingest` — process new sources into wiki pages\n- `/second-brain-query` — ask questions against the wiki","tags":["second","brain","lint","nicholasspisak","agent-skills","knowledge-base","llm","markdown","obsidian","personal-wiki","second-brain"],"capabilities":["skill","source-nicholasspisak","skill-second-brain-lint","topic-agent-skills","topic-knowledge-base","topic-llm","topic-markdown","topic-obsidian","topic-personal-wiki","topic-second-brain"],"categories":["second-brain"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/NicholasSpisak/second-brain/second-brain-lint","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add NicholasSpisak/second-brain","source_repo":"https://github.com/NicholasSpisak/second-brain","install_from":"skills.sh"}},"qualityScore":"0.581","qualityRationale":"deterministic score 0.58 from registry signals: · indexed on github topic:agent-skills · 261 github stars · SKILL.md body (3,697 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-02T18:54:08.775Z","embedding":null,"createdAt":"2026-04-18T22:05:29.361Z","updatedAt":"2026-05-02T18:54:08.775Z","lastSeenAt":"2026-05-02T18:54:08.775Z","tsv":"'/second-brain-ingest':583 '/second-brain-query':590 '1':63 '10':544 '2':105 '3':156 '4':201 '5':241 '6':275 '7':325 '8':359 'accur':333 'across':89 'action':50 'actual':101 'add':443 'agre':505 'analysi':580 'answer':381 'append':516 'appli':538 'area':383 'ask':483,591 'assess':269 'audit':26,52 'base':362 'bash':85 'brain':3,39 'broken':64,83,403 'catch':546,558 'categori':357 'chang':511 'check':7,28,43,56,525 'cite':217 'claim':15,169,177,197,203,424,560 'complet':331 'concept':164,215,300,304 'conflict':168,188 'consist':327 'consolid':61 'contain':185 'content':211 'contradict':11,157,405 'correct':356 'could':388,447,453 'cover':315 'coverag':368 'cross':19,98,205,278,440,548 'cross-refer':18,97,204,277,439,547 'current':367 'data':360,444 'date':193,208 'dd':522 'delet':350 'depth':375 'descript':456,462 'despit':235 'differ':198 'discuss':283 'ensur':569 'entiti':162,183,229,240,296,308 'entri':344,347,352,409,451 'error':400,488,528 'everi':334,543 'exist':80,224,254 'extens':136 'extract':130 'factual':196 'figur':194 'file':102,124,469 'filenam':134 'fill':389,449 'find':30,86,108,280,396,459 'fix':51,402,416,437,474,498,506,534,537 'flag':170,212 'format':394 'found':486,526 'frequent':372,431 'fresh':554 'gap':361,445,550 'given':265 'grep':92 'group':397 'hasn':231,263 'header':358 'health':6,27,42,524 'health-check':5,41 'healthi':573 'improv':35 'inbound':112,421 'includ':460 'index':326,343,346,408,450 'info':434,493,532 'inform':186,230,392 'ingest':545 'issu':48,465,507 'item':494,533 'lack':374 'line':472 'link':75,84,113,149,290,302,310,422 'lint':4,29,40,514,523,541 'list':535 'log':512 'look':166,294 'major':567 'make':175 'md':123 'mention':238,261,299,307,371 'minimum':557 'miss':17,242,276,391,412,428 'mm':521 'month':555 'must':401 'n':487,489,492,527,529,531 'name':133,144 'new':585 'newer':222,236 'nice':435 'old':219 'oppos':176 'orphan':12,106,155,417,562 'outdat':426 'page':13,69,79,91,107,109,116,132,141,143,148,159,184,200,216,243,250,268,274,281,297,305,335,351,407,413,418,429,563,589 'pass':515 'point':248,348,410 'potenti':438 'present':59,395 'problem':31 'process':584 'qualiti':37 'queri':568 'question':376,592 're':553 'read':158 'refer':20,72,99,117,206,279,322,441,549 'referenc':432 'relat':581 'reli':576 'report':47,62,81,393,482,509 'roh':93 'run':54 'say':25 'scan':66,244 'search':137,387 'second':2,38 'second-brain-lint':1 'sever':399 'share':161 'skill':582 'skill-second-brain-lint' 'sort':95 'sourc':173,191,207,220,223,237,312,427,586 'source-nicholasspisak' 'specif':468 'stale':14,202,423,559 'step':53 'suggest':369 'summari':174,192,313 'target':78 'time':565 'topic':181,228,258,286,318,370,433 'topic-agent-skills' 'topic-knowledge-base' 'topic-llm' 'topic-markdown' 'topic-obsidian' 'topic-personal-wiki' 'topic-second-brain' 'two':172 'u':96 'updat':234 'use':21 'user':24,485,504 'verifi':76,328 'via':119 'want':33,495 'warn':414,490,530 'warrant':272 'web':386 'well':382 'whether':270 'wiki':9,36,45,68,90,94,104,140,210,260,365,378,571,588,595 'wiki/concepts':128,339 'wiki/entities':127,338 'wiki/index.md':329 'wiki/log.md':518 'wiki/sources':126,337 'wiki/synthesis':129,340 'wikilink':65,71,88,120,246,404 'without':135,301,309 'yet':255 'yyyi':520 'yyyy-mm-dd':519","prices":[{"id":"238c5c6c-f4f4-4b06-821a-15d76ae3fe5f","listingId":"8a0470a5-e0d5-4aaf-9ec7-518e7c4a1f3d","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"NicholasSpisak","category":"second-brain","install_from":"skills.sh"},"createdAt":"2026-04-18T22:05:29.361Z"}],"sources":[{"listingId":"8a0470a5-e0d5-4aaf-9ec7-518e7c4a1f3d","source":"github","sourceId":"NicholasSpisak/second-brain/second-brain-lint","sourceUrl":"https://github.com/NicholasSpisak/second-brain/tree/main/skills/second-brain-lint","isPrimary":false,"firstSeenAt":"2026-04-18T22:05:29.361Z","lastSeenAt":"2026-05-02T18:54:08.775Z"}],"details":{"listingId":"8a0470a5-e0d5-4aaf-9ec7-518e7c4a1f3d","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"NicholasSpisak","slug":"second-brain-lint","github":{"repo":"NicholasSpisak/second-brain","stars":261,"topics":["agent-skills","ai","knowledge-base","llm","markdown","obsidian","personal-wiki","second-brain"],"license":null,"html_url":"https://github.com/NicholasSpisak/second-brain","pushed_at":"2026-04-07T03:16:20Z","description":"LLM-maintained personal knowledge base for Obsidian. Based on Andrej Karpathy's LLM Wiki pattern.","skill_md_sha":"4fe3afeaff3022cc3ead56aee07088f35a470ad8","skill_md_path":"skills/second-brain-lint/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/NicholasSpisak/second-brain/tree/main/skills/second-brain-lint"},"layout":"multi","source":"github","category":"second-brain","frontmatter":{"name":"second-brain-lint","description":"Health-check the wiki for contradictions, orphan pages, stale claims, and missing cross-references. Use when the user says \"audit\", \"health check\", \"lint\", \"find problems\", or wants to improve wiki quality."},"skills_sh_url":"https://skills.sh/NicholasSpisak/second-brain/second-brain-lint"},"updatedAt":"2026-05-02T18:54:08.775Z"}}