Files
oikos/.agents/skills/docs-lint/SKILL.md
dtoro 1019a1cb52 docs: section-index pass + docs-lint skill (phase 5)
- Add knowledge/wiki/hosts/index.md (the one missing section index) and point
  knowledge/index.md at it.
- Add .agents/skills/docs-lint/ (SKILL.md + lint.py) enforcing the mechanical
  parts of writing-style.md: banned vocabulary and broken relative links. The
  style guide and this skill are exempt from the banned-word check since they
  enumerate the list.
- Record the restructure + lint in knowledge/log.md.

Verification: banned-vocabulary scan of knowledge/ is clean (the few remaining
repo-wide hits are false positives — the literal '_' character — or historical
append-only plans quoting the vocabulary, which the standard does not restyle).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-06 14:42:23 +02:00

1.0 KiB

name, risk_class, inputs, verification, docs_update_checklist
name risk_class inputs verification docs_update_checklist
docs-lint read_only
paths
python3 .agents/skills/docs-lint/lint.py

Docs lint

Check committed documentation against the mechanical rules in writing-style.md: banned vocabulary and broken relative markdown links. Prose-voice rules are not machine-checkable — those stay a review responsibility.

Run from the repo root:

python3 .agents/skills/docs-lint/lint.py            # default: knowledge/ .agents/ operations/ investigations/ plans/
python3 .agents/skills/docs-lint/lint.py knowledge/wiki/containers/104-gitea.md

Exit code is non-zero when any violation is found, so it can gate a commit. The banned-vocabulary list mirrors writing-style.md; update both together if the standard changes.

Known baseline. The lab carries pre-existing broken links to destroyed/archived nodes (e.g. 124-authentik.md, now 106-auth-outpost). Clean those opportunistically; do not treat the current count as a regression from this skill.