plugins/obsidian-wiki-engine/skills/obsidian-wiki-builder/SKILL.md
Transforms raw source files registered in wiki_sources.json into Karpathy-style LLM wiki nodes inside the wiki-root. Generates concept pages, cluster pages, index, and table of contents. Use when building or rebuilding the wiki from raw content.
npx skillsauth add richfrem/agent-plugins-skills obsidian-wiki-builderInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Requires pyyaml and Python 3.8+. Also requires rlm-factory plugin installed.
pip install -r requirements.txt
Status: Active Author: Richard Fremmerlid Domain: Obsidian Wiki Engine
Transforms raw source documents (registered via wiki_sources.json) into
Karpathy-style wiki nodes inside the designated wiki_root. Each concept
gets its own {concept}.md node with wikilinks, cross-references, and an
RLM summary layer.
{wiki_root}/
wiki/
_index.md ← master concept index
_toc.md ← table of contents
_{cluster}.md ← per-topic cluster page
{concept}.md ← individual wiki node
rlm/
{concept}/
summary.md ← 1-5 sentence distilled summary
bullets.md ← key idea bullets
deep.md ← full multi-pass distillation
meta/
wiki_sources.json ← raw source registry (created by wiki-init)
config.yaml ← wiki settings
agent-memory.json ← stale file tracking
wiki_builder.py runs a 3-step pipeline internally:
ingest.py → concept_extractor.py → wiki node formatting
.md files
with wikilinks, cluster pages, _index.md, and _toc.mdWhen two source files (e.g. arch-docs/auth.md and research/oauth.md) produce
the same concept slug, they are merged into one wiki node that:
source_files frontmattermulti_source: true for identificationThis implements the core Karpathy "compile" metaphor: N raw files → M concept nodes (M ≤ N).
Note about repo-scoped inspection
python ./scripts/wiki_builder.py --wiki-root /path/to/wiki-root
python ./scripts/wiki_builder.py --wiki-root /path/to/wiki-root --source arch-docs
python ./scripts/wiki_builder.py --wiki-root /path/to/wiki-root \
--rlm-cache-dir /path/to/project/.agent/learning/rlm_wiki_cache
python ./scripts/wiki_builder.py --wiki-root /path/to/wiki-root --dry-run
Each concept node uses this structure:
---
concept: {concept_name}
source: {source_label}
source_file: {relative_path}
wiki_root: {wiki_root}
generated_at: {timestamp}
cluster: {cluster_name}
---
# {Concept Name}
{1-sentence RLM summary}
## Key Ideas
- {bullet}
- {bullet}
## Details
{full content, truncated to 800 tokens if needed}
## See Also
- [[{related_concept_1}]]
- [[{related_concept_2}]]
## Raw Source
- `{source_label}` → `{source_file}`
rlm_wiki_raw_sources_manifest.json)Canonical location: .agent/learning/rlm_wiki_raw_sources_manifest.json
(mirrors rlm-factory's .agent/learning/rlm_profiles.json convention).
Managed by raw_manifest.py via the Guided Discovery agent during /wiki-init:
{
"namespace": "my-project",
"wiki_root": "/Users/me/vault/wiki-root",
"sources": {
"daily-notes": {
"path": "/Users/me/vault/notes",
"label": "daily-notes",
"extensions": [".md"],
"excludes": ["_archive", "*.tmp"],
"description": "Daily journal and quick capture notes"
},
"arch-docs": {
"path": "/Users/me/docs/architecture",
"label": "arch-docs",
"extensions": [".md", ".txt"],
"excludes": [],
"description": "Architecture decision records and design docs"
}
},
"global_excludes": ["_archive", "*.tmp", "__pycache__"]
}
/wiki-init completes source registration/wiki-distill to inject fresh RLM summariesagent-memory.json shows diffs)raw_manifest.py — WikiSourceConfig loader (mirrors RLMConfig)ingest.py — raw file parsing and normalizationwiki_builder.py — Karpathy node formatter and linkerdistill_wiki.py — cheap-model distillation wrappertesting
Skill for creating and managing isolated git worktrees (`.worktrees/issue-NNN`) for issue execution branches. USE ONLY when setting up or cleaning up isolated git worktrees for specific issue execution. DO NOT USE for managing local task files (use `task-agent`) or escalating tasks to issues (use `github-issue-backlog-agent`).
data-ai
Skill for orchestrating the end-to-end GitHub issue lifecycle flow: Issue -> Worktree -> Implementation -> PR Creation -> Resolution Closure. USE ONLY when running or dry-running full lifecycle orchestration for resolving an issue with a PR. DO NOT USE for isolated worktree management only (use `issue-worktree-agent`) or logging issues (use `github-issue-agent`).
tools
Automatically ranks GitHub issues (P0-P3) based on friction tier, frequency, and blockages, synchronizing priority labels and GitHub Projects v2 custom fields.
testing
Bridge skill for escalating ephemeral local task scratchpad items (`tasks/*.md`) into durable, taxonomy-validated, evidence-rich GitHub Issues. USE ONLY when promoting a single-session local task into durable repository backlog. DO NOT USE for managing local kanban boards (use `task-agent` instead) or directly querying/commenting on issues (use `github-issue-agent` instead).