Cortex cortex-wiki-author
Author first-class wiki pages (ADRs, specs, file docs, notes) that live alongside Cortex memory. Use when the user says 'this is an ADR', 'document this decision', 'write an ADR', 'add a spec', 'spec this out', 'document this file', 'add a note about', 'link these pages', 'bookmark this as a spec', or when finalizing a design decision that should persist as a human-readable document.
git clone https://github.com/cdeust/Cortex
T=$(mktemp -d) && git clone --depth=1 https://github.com/cdeust/Cortex "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/cortex-wiki-author" ~/.claude/skills/cdeust-cortex-cortex-wiki-author && rm -rf "$T"
skills/cortex-wiki-author/SKILL.mdWiki Author — Long-form Documentation Layer
Keywords
adr, spec, decision, design doc, rfc, file doc, notes, wiki, documentation, link pages, bidirectional link, supersedes, implements, depends on
Overview
Cortex's wiki is a Markdown authoring surface for the long-form artifacts that don't fit the thermodynamic memory model: architecture decision records, specs, per-file documentation, and free-form notes. Pages live under
~/.claude/methodology/wiki/ and are never pruned — they are first-class authored content, not derived views. Every write also registers a protected pointer memory in PostgreSQL so recall surfaces wiki pages alongside regular memories.
Use this skill when: the user is making a decision that should persist, finalizing a spec, documenting a file's purpose, or asking for two wiki pages to be linked.
Do NOT use for: ephemeral facts (use
remember), domain profiles (use query_methodology), or regenerating documentation from memory (the wiki is authored, not projected).
Workflow
Record an architecture decision
cortex:wiki_adr({ "title": "Use pgvector for retrieval", "context": "We need a searchable memory store with hybrid ranking.", "decision": "Adopt PostgreSQL + pgvector + pg_trgm as the single backend.", "consequences": "No SQLite fallback. Operator must provision Postgres 15+.", "status": "accepted", "tags": ["storage", "retrieval"] })
Returns
{ path, number, title, status, ... }. ADR numbers auto-increment.
Write a spec
cortex:wiki_write({ "path": "specs/wiki-authoring.md", "content": "# Wiki authoring\n\n## Summary\n\nClaude authors ADRs and specs during sessions..." })
Pass the final markdown you want to land. Use
"mode": "append" to add to an existing page, "replace" to overwrite.
Document a file
cortex:wiki_write({ "path": "files/mcp_server-handlers-wiki_write.md", "content": "# `mcp_server/handlers/wiki_write.py`\n\n## Purpose\n\nComposition root for the wiki authoring tool..." })
Link two pages bidirectionally
cortex:wiki_link({ "from_path": "adr/0001-use-pgvector-for-retrieval.md", "to_path": "specs/retrieval-pipeline.md", "relation": "implements" })
Adds the forward relation to
from_path and the inverse (implemented_by) to to_path. Idempotent. Known relations: supersedes/superseded_by, implements/implemented_by, depends_on/depended_on_by, derived_from/derives, see_also.
Read a page (to update it)
cortex:wiki_read({ "path": "adr/0001-use-pgvector-for-retrieval.md" })
List pages
cortex:wiki_list({}) // all kinds cortex:wiki_list({ "kind": "adr" }) // just ADRs
Regenerate the table of contents
cortex:wiki_reindex({})
Writes
.generated/INDEX.md. This is the only file ever auto-regenerated — authored pages are untouched.
Layout
~/.claude/methodology/wiki/ adr/NNNN-<slug>.md # numbered decision records specs/<slug>.md # feature specs, PRDs, design docs files/<slug>.md # per-source-file documentation notes/<slug>.md # free-form notes and investigations .generated/INDEX.md # auto-generated table of contents
Tips
- No prune, ever. Authored pages survive across sessions, version bumps, and machine moves (as long as the wiki root is preserved).
- ADR numbers are monotonic. Don't reuse them — supersede instead via
.wiki_link(new, old, "supersedes") - Links live in the page. The
section is the source of truth for wiki-internal links — not a sidecar index.## Related - Wiki pages are recallable. After
, the page content (first 500 chars) is indexed in PostgreSQL as a protected memory taggedwiki_write
, sowiki
returns it alongside regular memories.recall - Back-links are authoritative.
always updates both pages. If you move or rename a file, re-runwiki_link
so the related sections stay consistent.wiki_link