Loading...
Loading...
Project wiki lifecycle — create pages, track source changes with ingest, update stale pages, lint structural integrity, detect code-to-doc drift with reconcile, and manage search indexes. A runbook for navigating and maintaining the wiki as an agent.
npx skill4agent add trkbt10/indexion-skills indexion-wiki.indexion/wiki/wiki.json.md| Artifact | File | Updated by |
|---|---|---|
| Page content | | |
| Manifest entry | | |
| Search index | | |
| Audit log | | Every wiki-modifying command |
wiki pages update.md.mdEditindexion wiki pages update \
--id=<page-id> \
--content=.indexion/wiki/<page-id>.md \
--sources="<comma-separated sources from wiki.json>" \
--provenance=synthesized \
--actor="agent:claude" \
--wiki-dir=.indexion/wikiprovenance"extracted""synthesized""manual"last_actor"indexion""agent:<name>""user"indexion wiki
├── pages
│ ├── plan -- propose page structure (init-like)
│ ├── add -- create a new page (writes .md + manifest + index + log)
│ ├── update -- update an existing page (writes .md + manifest + index + log)
│ └── ingest -- detect stale pages by hashing sources
├── index
│ └── build -- rebuild index.md (and optionally vectors.db)
├── lint -- structural integrity checks (no LLM needed)
├── export -- export to GitHub/GitLab wiki format
├── import -- import from GitHub/GitLab wiki format
└── log -- operation audit trail# Generate or regenerate index.md — the entry point for navigation
indexion wiki index build --wiki-dir=.indexion/wiki
# Then read it
cat .indexion/wiki/index.mdindex.md# 1. Write content to a temp file
cat > /tmp/my-page.md << 'EOF'
# My Page Title
...content...
EOF
# 2. Register it — this writes .md, updates wiki.json, updates search index, appends log
indexion wiki pages add \
--id=my-page \
--title="My Page Title" \
--content=/tmp/my-page.md \
--sources="src/my-module/" \
--provenance=synthesized \
--actor="agent:claude" \
--wiki-dir=.indexion/wiki--sourceswiki pages ingest# 1. Write new content to a temp file
cat > /tmp/updated.md << 'EOF'
# Updated Page
...new content...
EOF
# 2. Update — this overwrites .md, updates wiki.json metadata,
# incrementally updates the search index, and appends to log.json
indexion wiki pages update \
--id=existing-page \
--content=/tmp/updated.md \
--sources="src/my-module/,src/other/" \
--provenance=synthesized \
--actor="agent:claude" \
--wiki-dir=.indexion/wikiUpdated page 'existing-page' (search index updated)# Find pages whose source files have changed since the last run
indexion wiki pages ingest --wiki-dir=.indexion/wiki
# Preview without recording the new hash state
indexion wiki pages ingest --dry-run --wiki-dir=.indexion/wikiingestwiki.json.indexion/wiki/ingest-manifest.jsonwiki pages ingestwiki pages updateingest# Run all 6 structural checks
indexion wiki lint --wiki-dir=.indexion/wiki| Check | What it finds |
|---|---|
| Broken links | |
| Orphan pages | Pages unreachable from nav tree and not linked by any other page |
| Missing cross-references | Pages sharing source files that don't link to each other |
| Stale sources | |
| Empty pages | Pages with near-zero content |
| Manifest-file mismatch | |
wiki lint## See Alsowiki://page-idplan reconcilewiki lintplan reconcile.--docindexion plan reconcile \
--doc='.indexion/wiki/*.md' \
--doc-spec=markdown \
--format=md \
.New logical reviews| Category | Meaning | Action |
|---|---|---|
| Code changed after the wiki page was last updated | Update the page via |
| Code symbols with no matching wiki coverage | Add coverage or create a new page via |
| Wiki is newer than code | Verify the wiki content is correct; this is the expected state after a maintenance cycle |
Docs:Docs:missing_docType::methodmethodgettokenizeto_json_stringNew logical reviews# 1. Detect stale pages (source files changed)
indexion wiki pages ingest --wiki-dir=.indexion/wiki
# 2. Read the index to understand the wiki structure
cat .indexion/wiki/index.md
# 3. For each stale page: read changed sources, write new content to temp file,
# then update through the command (NOT by editing .md directly)
indexion wiki pages update --id=<page-id> --content=/tmp/updated.md \
--sources="..." --provenance=synthesized --actor="agent:<name>" \
--wiki-dir=.indexion/wiki
# 4. Verify structural integrity
indexion wiki lint --wiki-dir=.indexion/wiki
# 5. Verify content accuracy — target project root, iterate until NLR=0
indexion plan reconcile \
--doc='.indexion/wiki/*.md' \
--doc-spec=markdown \
--format=md \
.
# → Fix stale_doc groups first. Re-run. Expect 2-3 rounds.
# → For each fix, use `wiki pages update`, not direct .md edits.
# 6. Regenerate the navigation index
indexion wiki index build --wiki-dir=.indexion/wiki
# 7. Confirm everything is current
indexion wiki pages ingest --dry-run --wiki-dir=.indexion/wiki# Analyze the project and generate a page structure proposal
indexion wiki pages plan --format=md <project-dir>
# Then execute the plan: add each proposed page
indexion wiki pages add --id=<id> --title="..." --content=/tmp/page.md \
--sources="..." --provenance=synthesized --actor="agent:<name>"wiki pages add.indexion/wiki/wiki.jsonwiki initwiki pages plan# Build navigation index only (index.md)
indexion wiki index build --wiki-dir=.indexion/wiki
# Build navigation + vector search index (vectors.db)
indexion wiki index build --full --wiki-dir=.indexion/wiki
# Preview index.md without writing
indexion wiki index build --dry-run --wiki-dir=.indexion/wiki--fullindexion search .indexion/wiki/# Recent operations
indexion wiki log --wiki-dir=.indexion/wiki --tail=20
# Full log as JSON
indexion wiki log --wiki-dir=.indexion/wiki --jsonpages addpages updatelintpages ingestindex build.indexion/wiki/log.jsonwiki://wiki://wiki://page-id[Title](wiki://page-id)wiki pages ingestsourcespages updateingestingest