Obsidian rlm distiller
Skill richfrem/agent-plugins-skills/plugins/obsidian-wiki-engine/skills/obsidian-rlm-distiller
repo for reusable plugins and skills
npx -y skills add richfrem/agent-plugins-skills --skill obsidian-rlm-distillerAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Distills wiki source files into the RLM summary layer (summary.md, bullets.md, deep.md) using the cheapest available LLM CLI. Routes to Copilot gpt-5-mini first, then Claude Haiku, then Gemini Flash. Never uses Ollama. Use when wiki nodes need RLM summaries generated or refreshed.
SKILL.md
3.7 KB, as published. Nobody here has run it
Dependencies
Requires Python 3.8+ and at least one CLI installed: copilot, claude, or gemini.
pip install -r requirements.txt
Obsidian RLM Distiller
Status: Active
Author: Richard Fremmerlid
Domain: Obsidian Wiki Engine
Replaces: rlm-distill-ollama (fully deprecated)
Purpose
Distills registered wiki source files into the three-layer RLM summary structure
inside {wiki_root}/rlm/{concept}/. Delegates work to the cheapest available
LLM CLI — never a local Ollama server.
Cheap-Model Fallback Chain (Strict)
1. copilot CLI available? → use gpt-5-mini (fastest, Paid - AI Credits)
2. claude CLI available? → use claude-haiku-4-5 (fallback, Paid)
3. gemini CLI available? → use gemini-3-flash-preview (final fallback, Paid)
4. none found → exit with instructions
rlm-distill-ollamais fully deprecated. Onlyrlm-distill-agentpointing at cheap cloud models is supported.
Output: Three-Layer RLM Structure
{wiki_root}/rlm/{concept}/
summary.md ← 1-5 sentence distilled summary
bullets.md ← key idea bullets (6-10 points)
deep.md ← full multi-pass distillation
Usage
Distill all stale wiki nodes
python ./scripts/distill_wiki.py --wiki-root /path/to/wiki-root
Distill one named source
python ./scripts/distill_wiki.py --wiki-root /path/to/wiki-root --source arch-docs
Force engine override
python ./scripts/distill_wiki.py --wiki-root /path/to/wiki-root --engine claude
python ./scripts/distill_wiki.py --wiki-root /path/to/wiki-root --engine gemini
python ./scripts/distill_wiki.py --wiki-root /path/to/wiki-root --engine copilot
Use shared .agent/learning/ cache (colocates with rlm-factory)
python ./scripts/distill_wiki.py --wiki-root /path/to/wiki-root \
--rlm-cache-dir /path/to/project/.agent/learning/rlm_wiki_cache
Dry run
python ./scripts/distill_wiki.py --wiki-root /path/to/wiki-root --dry-run
Engine Detection Logic
distill_wiki.py calls shutil.which() for each CLI in priority order.
The first one found and authenticated is used for the entire batch:
ENGINE_PRIORITY = [
("copilot", "gpt-5-mini"),
("claude", "claude-haiku-4-5"),
("gemini", "gemini-3-flash-preview"),
]
RLM Cache Storage
distill_wiki.py writes summaries directly into its own RLM cache directory.
No cross-plugin script calls are made (ADR-001 compliant).
Default cache: {wiki-root}/rlm/{concept}/
To colocate with rlm-factory under .agent/learning/, pass --rlm-cache-dir:
python ./scripts/distill_wiki.py --wiki-root /path/to/wiki-root \
--rlm-cache-dir /path/to/project/.agent/learning/rlm_wiki_cache
The cache location is determined by configuration in .agent/learning/rlm_profiles.json
(the cache key of the wiki profile) — not by hard-coded cross-plugin paths.
When to Use
- After
/wiki-ingestpopulates new wiki nodes - When RLM summaries are missing or stale
- Before running
/wiki-queryfor optimal recall - As part of the
/wiki-rebuildfull pipeline
Related Scripts
distill_wiki.py— cheap-model fallback orchestratorraw_manifest.py—WikiSourceConfigloaderaudit.py— identifies stale/missing RLM summaries
Gives 0 of the 12 instructions most context ai engineering skills give
Counted across 1,193 of the 1,976 authors here whose files we hold, read 2026-08-06
- dispatch a fresh implementer subagent per taskin 48 of 1193, across 19 files
- dispatch final reviewer after all tasksin 37 of 1193, across 11 files
- provide full task text to the subagentin 31 of 1193, across 10 files
- review spec compliance before code qualityin 27 of 1193, across 10 files
- make the hook script executablein 26 of 1193, across 8 files
- re-snapshot after navigation or DOM changesin 25 of 1193, across 17 files
- answer subagent questions before proceedingin 22 of 1193, across 7 files
- mark task complete in TodoWrite after approvalin 22 of 1193, across 6 files
- merge hook into existing settingsin 21 of 1193, across 3 files
- read files before editing themin 21 of 1193, across 9 files
- ask if installation is global or projectin 20 of 1193, across 2 files
- copy the hook script to target locationin 20 of 1193, across 2 files
Said here and by no other author read
- install python dependencies
- distill stale wiki nodes
- distill named source files
- use the cheapest available LLM CLI
- check copilot CLI first
- check claude CLI second
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once.