okf-frontmatter

Solid

Maintain openInvest's docs (docs/wiki chapters + docs/wiki/adr) under Google's Open Knowledge Format (OKF). Two jobs. (1) Teach agents to maintain docs the OKF way — every doc carries a small YAML frontmatter block as the single source of truth (type, title, tags, intent, schema_source, documents); schema details link to the authoritative code instead of being copied into prose; no more hand-maintained thousand-line markdown. (2) Look docs up fast — grep the literal term FIRST; only when grep is ambiguous (hits scattered across files / synonym mismatch / zero hits) run find_docs.py to rank the owning doc by frontmatter intent, or resolve a doc's schema_source to the real code. Trigger phrases — "which doc covers X", "find the schema for PortfolioResponse", "where is GET /api/holdings documented", "docs for verdict.risk_profile", "add OKF frontmatter to this doc", "lint the wiki", "scaffold a new ADR/chapter". Run: scripts/run.sh find|schema|index|lint|new (or python3 scripts/find_docs.py --repo <path> ...).

Data & Documents 83 stars 12 forks Updated today MIT

Install

View on GitHub

Quality Score: 85/100

Stars 20%
64
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# okf-frontmatter OpenInvest's docs live in `docs/wiki/` (numbered chapters) and `docs/wiki/adr/` (decision records). Under **OKF** each doc starts with a YAML frontmatter block that is the *single source of truth* about that doc. Tooling reads the frontmatter; humans read the prose. The goal: stop maintaining huge prose docs that duplicate what the code already says — link to the code instead, and let `find_docs.py` do navigation. Point the script at a repo with `--repo <path>`, or just run it from inside that repo (it auto-detects the nearest ancestor containing `docs/wiki/`, else uses the working dir). It is read-only except for docs you explicitly edit. The conventions below use openInvest as the worked example, but the mechanics (`find` / `schema` / `lint`) work on any repo whose markdown carries OKF frontmatter. --- ## Job 1 — maintain docs the OKF way **The rule of thumb:** frontmatter is structured truth; prose is explanation. Anything that *is* a schema (a Pydantic model, a dataclass, a config key, an endpoint contract) lives in code — the doc **points** to it via `schema_source` / `documents`, it does not re-type it. When the code changes, `lint` tells you which doc's pointer went stale. Don't grow a doc past a few screens of "why / how it fits together"; if you're copying field tables out of code, stop and add a `schema_source` pointer instead. ### Frontmatter schema Common to every doc: | field | required | meaning | |---|---|---| | `type` | ✅ | `wiki-chap...

Details

Author
longsizhuo
Repository
longsizhuo/openInvest
Created
8 months ago
Last Updated
today
Language
Python
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Listed

okf-maintain

Use when adopting the Open Knowledge Format (OKF v0.2) in a repository, or maintaining a documentation bundle already in it: bootstraps a conformant tree, stamps and repairs YAML frontmatter, regenerates every index.md bottom-up so no document goes unlisted, excludes paths another tool owns via .okfignore, removes log.md and strips changelog/history sections because git already holds history losslessly, and wires CLAUDE.md/AGENTS.md/GEMINI.md to the root index so agents stop grepping for a document's identity. Ships a conformance check that fails closed, plus a coverage check that names every document no index reaches. Triggers on: 'set up OKF', 'make these docs OKF-conformant', 'regenerate the docs index', 'add frontmatter to the docs', 'which docs are missing from the index', 'our documentation keeps drifting'. NOT for writing a document's body or deciding its content - repo templates and the adr skill own that. NOT for reverse-engineering a codebase into fresh specs.

0 Updated 2 days ago
wagneripjr
Web & Frontend Solid

docs

Manage project documentation - internal ./docs (init, update, check, ADR) and, via the site subcommand, the rendered public docs website (Astro Starlight): create, modernize, validate, and ship it. Canonical internal set stays small: development guidelines, system architecture, tech stack, deployment, plus append-only ADRs. Use when the user asks to update docs, record an ADR, build a docs website, add Starlight, reproduce the shared centered docs style, fix responsive docs layout, migrate a docs site, or verify and deploy developer documentation. Scouts the codebase and delegates writing to the docs-manager subagent (or stays inline with --inline).

7 Updated today
vanducng
AI & Automation Featured

doc

Use for ANY operation on a doc under docs/ — creating, updating/editing, changing its status, or querying. Keeps the YAML front matter (title/status/type/updated) correct and regenerates the docs/README.md wiki index. Invoke when the user says 'new doc', 'create a doc/design/RFC', 'start a design doc', 'update the doc', 'edit this doc', 'mark this doc done/in-review', 'change the doc status', or asks 'which docs are done/draft', 'what am I still working on', 'list my docs by status', '新建文档', '建一个设计文档/RFC', '更新文档', '改一下这个文档', '把这个文档标记成完成/评审中', '哪些文档写完了', '我还有哪些没做完的文档', '按状态列出文档'.

436 Updated today
termio-sh