[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71JPRGRAA3BCXRV9YRWMCZD":3,"skill-same:01M71JPRGRAA3BCXRV9YRWMCZD":68},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":36,"linkOnly":37,"markdownContent":38,"markdownBody":39,"frontMatter":40,"refName":41,"commitSha":42,"skillDirectory":43,"forksCount":44,"repositoryHtmlUrl":45,"repositoryHomepageUrl":6,"ownerHtmlUrl":46,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":47,"install":48,"resources":61},"01M71JPRGRAA3BCXRV9YRWMCZD","docs-lint",null,"periodic semantic health check for the Markdown corpus (Karpathy LLM-Wiki lint)","eposforge\u002Feposforge","eposforge","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F279313312?v=4","01M71JPA7XV61GQ0CRFCHTMZY9","01M71JPA8JK1V7CF8DG5RHSGZN",1,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge\u002Fblob\u002Fmain\u002Fskills\u002Fdocs-lint\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000007","代码审查","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33,34,35],"docs lint","docs","lint","health","health check","karpathy","markdown","for","periodic","wiki","wiki lint","semantic","check","2026-11-10 10:12:30",false,"---\nname: docs-lint\ndescription: periodic semantic health check for the Markdown corpus (Karpathy LLM-Wiki lint)\n---\n\n# docs-lint\n\nRuns a semantic health check over the spec layer (`00-vision\u002F` through `04-standards\u002F`), `AGENTS.md`, and `.eposforge\u002Fbacklog\u002F` to find contradictions, stale claims, orphan pages, missing cross-references, and broken pointers.\n\n## Operations\n- This is a report-only skill. Do NOT auto-edit content in the corpus.\n- When run, search the target scope for semantic issues.\n- Produce a findings report in `.scratchpad\u002Fdocs-lint-report.md`.\n- Classify each finding as one of: `contradiction`, `stale-claim`, `orphan-page`, `missing-cross-reference`, `broken-pointer`, `boundary-leak`, `component-ref`.\n- For `component-ref`: flag prose that names a component (from the [Component Catalog](..\u002F..\u002F01-architecture\u002F02-components\u002FREADME.md)) as a **bare, unbracketed** word where it denotes the component and should be a shortcut reference link (`[Orchestrator]`) per [Naming Conventions](..\u002F..\u002F04-standards\u002F01-naming-conventions\u002Fnaming-conventions.md#component-references). This is the semantic half that needs concept-vs-component judgment. *Division of labor*: the deterministic, zero-false-positive classes — numeric identifiers (`C4`, `Component 14`), the deprecated `Router` name, and undefined\u002Fbroken component links — live in the blocking `check-component-links.py --check` floor (wired into `doc-lint.yml`); do not re-report those here.\n- For `boundary-leak`: In a `visibility = \"public\"` repository, flag contextual references to private repos, private backlogs, or adopter-internal work that the deterministic lint floor cannot detect (e.g., naming a private repo in prose, an adopter org\u002Frepo name, or oblique paraphrases of private work). Use the visibility map (`config.toml`) to know what is private. Genuine private-repo references (flag) are distinguished from sanctioned generic framing like \"an adopter\" (no flag).\n  - *Division of labor*: Deterministic, zero-false-positive classes (private item-ID references via the visibility map, host paths, `*.lan`, private IPs) stay in the blocking `lint-backlog.sh` floor. Semantic\u002Fcontextual detection lives here.\n- Append a parseable entry to `skills\u002Fdocs-lint\u002Frun-log.md` with the format `## [YYYY-MM-DD] lint | \u003Csummary>`, where `\u003Csummary>` summarizes the run.\n\n## Target Scope\n- Spec layer: `00-vision\u002F`, `01-architecture\u002F`, `02-roadmap\u002F`, `03-research\u002F`, `04-standards\u002F`\n- `AGENTS.md`\n- `.eposforge\u002Fbacklog\u002F`\n- OUT OF SCOPE: `.eposforge\u002F` adapter internals, graph-side answer-quality.\n\n## Known Seed Findings to verify\n- (a) AGENTS.md §Standards points at `04-standards\u002F04-mcp\u002F` and `04-standards\u002F05-canonical-doc-sources\u002F`, neither of which exists on disk.\n- (b) backlog cross-references to EF IDs that have moved to `backlog-archive.md` should be flagged with their new location.\n","# docs-lint\n\nRuns a semantic health check over the spec layer (`00-vision\u002F` through `04-standards\u002F`), `AGENTS.md`, and `.eposforge\u002Fbacklog\u002F` to find contradictions, stale claims, orphan pages, missing cross-references, and broken pointers.\n\n## Operations\n- This is a report-only skill. Do NOT auto-edit content in the corpus.\n- When run, search the target scope for semantic issues.\n- Produce a findings report in `.scratchpad\u002Fdocs-lint-report.md`.\n- Classify each finding as one of: `contradiction`, `stale-claim`, `orphan-page`, `missing-cross-reference`, `broken-pointer`, `boundary-leak`, `component-ref`.\n- For `component-ref`: flag prose that names a component (from the [Component Catalog](..\u002F..\u002F01-architecture\u002F02-components\u002FREADME.md)) as a **bare, unbracketed** word where it denotes the component and should be a shortcut reference link (`[Orchestrator]`) per [Naming Conventions](..\u002F..\u002F04-standards\u002F01-naming-conventions\u002Fnaming-conventions.md#component-references). This is the semantic half that needs concept-vs-component judgment. *Division of labor*: the deterministic, zero-false-positive classes — numeric identifiers (`C4`, `Component 14`), the deprecated `Router` name, and undefined\u002Fbroken component links — live in the blocking `check-component-links.py --check` floor (wired into `doc-lint.yml`); do not re-report those here.\n- For `boundary-leak`: In a `visibility = \"public\"` repository, flag contextual references to private repos, private backlogs, or adopter-internal work that the deterministic lint floor cannot detect (e.g., naming a private repo in prose, an adopter org\u002Frepo name, or oblique paraphrases of private work). Use the visibility map (`config.toml`) to know what is private. Genuine private-repo references (flag) are distinguished from sanctioned generic framing like \"an adopter\" (no flag).\n  - *Division of labor*: Deterministic, zero-false-positive classes (private item-ID references via the visibility map, host paths, `*.lan`, private IPs) stay in the blocking `lint-backlog.sh` floor. Semantic\u002Fcontextual detection lives here.\n- Append a parseable entry to `skills\u002Fdocs-lint\u002Frun-log.md` with the format `## [YYYY-MM-DD] lint | \u003Csummary>`, where `\u003Csummary>` summarizes the run.\n\n## Target Scope\n- Spec layer: `00-vision\u002F`, `01-architecture\u002F`, `02-roadmap\u002F`, `03-research\u002F`, `04-standards\u002F`\n- `AGENTS.md`\n- `.eposforge\u002Fbacklog\u002F`\n- OUT OF SCOPE: `.eposforge\u002F` adapter internals, graph-side answer-quality.\n\n## Known Seed Findings to verify\n- (a) AGENTS.md §Standards points at `04-standards\u002F04-mcp\u002F` and `04-standards\u002F05-canonical-doc-sources\u002F`, neither of which exists on disk.\n- (b) backlog cross-references to EF IDs that have moved to `backlog-archive.md` should be flagged with their new location.\n",{"name":5,"description":7},"main","ecf0afdd9413ab02342e811f43178dddbae1fa4c","skills\u002Fdocs-lint",0,"https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge","https:\u002F\u002Fgithub.com\u002Feposforge","2026-10-12 06:39:48",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add eposforge\u002Feposforge --skill docs-lint",{"tool":54,"command":55},"bunx","bunx skills add eposforge\u002Feposforge --skill docs-lint",{"tool":57,"command":58},"pnpm","pnpm dlx skills add eposforge\u002Feposforge --skill docs-lint","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge\u002Fblob\u002Fmain\u002Fskills\u002Fdocs-lint\u002FSKILL.md",true,[62],{"path":63,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":66,"sourceHtmlUrl":67},"run-log.md","REFERENCE","参考文档",472,"https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge\u002Fblob\u002Fmain\u002Fskills\u002Fdocs-lint\u002Frun-log.md",[69,100,124,150,159,182],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":80,"publishedAt":36},"01M71JQ9FR8PKMT1JMV3FV910A","upstream-bug-report","File a well-formed bug report against an upstream open-source dependency (GitHub issue). Use when EposForge or one of its adapter dependencies exhibits a reproducible defect that must be fixed upstream, particularly for silent failures, incorrect defaults, or API contract violations that affect ontology grounding, graph correctness, or agent reliability.","https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge\u002Fblob\u002Fmain\u002Fskills\u002Fupstream-bug-report\u002FSKILL.md",[75],{"categoryNo":76,"categoryName":77,"taxonomyType":78,"taxonomyTypeDesc":79},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,30,98,99],"upstream","upstream bug report","report","bug","bug report","grounding","ontology","open","api","one","file","correctness","when","use","adapter","contract","reliability","Reproducible","api contract",{"skillNo":101,"name":102,"nameZh":6,"description":103,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":104,"categories":105,"keywords":106,"publishedAt":36},"01M71JQ7C3ANN9JFA3YJWVB7Z2","update-spec-graph","Keeps the Cognee Spec Graph (Component 6) knowledge graph in sync with the repo. Use to update the KG after doc changes (incremental), rebuild it from scratch or after editing the ontology (full), or when recall is stale, the graph looks wrong, or entities are not ontology-anchored.","https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge\u002Fblob\u002Fmain\u002Fskills\u002Fupdate-spec-graph\u002FSKILL.md",[],[107,108,109,110,111,112,87,113,114,93,115,94,116,117,118,119,120,121,122,123],"spec","update","update spec graph","graph","knowledge","knowledge graph","From Scratch","rebuild","entities","cognee","component","scratch","editing","repo","with","changes","recall",{"skillNo":125,"name":126,"nameZh":6,"description":127,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":133,"publishedAt":36},"01M71JQ5H57DT8J7VSBNE9HB4X","refine-prompt","Technique-driven prompt transformation for under-specified asks. Discovers techniques from data files, elicits missing required slots in one batch, rewrites with strict traceability, and gates submission behind explicit yes\u002Fno confirmation.","https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge\u002Fblob\u002Fmain\u002Fskills\u002Frefine-prompt\u002FSKILL.md",[130],{"categoryNo":131,"categoryName":132,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",[134,135,136,137,138,139,121,140,141,90,142,143,144,145,146,147,148,30,149],"refine prompt","refine","prompt","yes","data","slots","batch","gates","confirmation","files","driven","techniques","missing","submission","traceability","transformation",{"skillNo":151,"name":152,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":153,"categories":154,"keywords":155,"publishedAt":36},"01M71JQ36VW2ZH2E2R3JE4PXY4","portfolio-review","https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge\u002Fblob\u002Fmain\u002Fskills\u002Fportfolio-review\u002FSKILL.md",[],[156,157,158],"portfolio review","portfolio","review",{"skillNo":160,"name":161,"nameZh":6,"description":162,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":163,"categories":164,"keywords":165,"publishedAt":36},"01M71JQ0AD94NHJ39GB0V0N9SB","milestone-elicitation","Guided interview for discovering milestones and value-harvest points. Writes confirmed anchors back as ordinary backlog items and keeps durable elicitation records. Re-runnable — subsequent runs diff against existing anchors and prior records so the milestone map evolves without replaying history.","https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge\u002Fblob\u002Fmain\u002Fskills\u002Fmilestone-elicitation\u002FSKILL.md",[],[166,167,168,169,170,171,172,173,30,174,175,176,177,178,179,180,181],"milestone","milestone elicitation","elicitation","interview","milestones","records","backlog","re","diff","value","history","as","map","back","harvest","Existing",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":188,"publishedAt":36},"01M71JPYGQWYVFTZ82E1R7P8PH","maintain-ontology","Keeps 00-vision\u002F01-ontology.ttl well-formed, internally consistent, and aligned with adapter cards under .eposforge\u002F so Cognee extraction remains ontology-grounded.","https:\u002F\u002Fgithub.com\u002Feposforge\u002Feposforge\u002Fblob\u002Fmain\u002Fskills\u002Fmaintain-ontology\u002FSKILL.md",[],[189,87,190,191,192,193,121,194,116,95],"maintain","maintain ontology","extraction","vision","cards","ttl"]