Overview
Use this skill for persistent markdown knowledge bases maintained as compiled Obsidian-compatible wiki artifacts.
Priority order:
- For new setup/deploy/init requests, deploy
Ar9av/obsidian-wikiby default. - Prefer the
Ar9av/obsidian-wikiframework when it is present. - If a legacy
raw/+wiki/LLM Wiki is already present, work with it without breaking it, but propose migrating toobsidian-wiki. - Create or extend a legacy layout only when the user explicitly requests the old standard LLM Wiki format.
Treat the wiki as a maintained system, not as a pile of notes.
Default Deployment Behavior
When the user invokes this skill for setup, deployment, initialization, or a new
wiki, and no existing wiki contract has to be preserved, deploy
Ar9av/obsidian-wiki as the default implementation.
Default deployment means:
- Create or populate the target directory as an
obsidian-wikirepo fromhttps://github.com/Ar9av/obsidian-wiki. - Preserve any existing user files in the target directory.
- Create
.envwithOBSIDIAN_VAULT_PATHset to the target vault. - Initialize the vault files and directories:
index.mdlog.mdhot.md.manifest.json.obsidian/_meta/_raw/_archives/concepts/,entities/,skills/,references/,synthesis/,journal/,projects/
- Ensure
~/.obsidian-wiki/configpoints to the selected vault/repo when doing so is safe. - Install only the needed Codex skill symlinks into
~/.codex/skillsunless the user asks to run the full upstreamsetup.sh. - Keep upstream framework git state clean by excluding local vault artifacts
from accidental upstream commits when the repo uses
Ar9av/obsidian-wikiasorigin.
Do not ask whether the user wants the legacy layout when the request is simply "set up my wiki", "разверни wiki" (set up a wiki), "создай Obsidian wiki" (create an Obsidian wiki), or something similar. Use
obsidian-wiki unless the user explicitly names the old layout.
Legacy LLM Wiki Compatibility
Legacy mode is for already-existing standard LLM Wiki layouts such as:
WIKI-SCHEMA.mdraw/wiki/index.mdwiki/log.mdwiki/sources/wiki/concepts/,wiki/entities/,wiki/analyses/
When legacy mode is detected:
- Work with the existing layout safely.
- Do not move, rename, or rewrite the legacy wiki without explicit approval.
- Tell the user that the current wiki is legacy/standard LLM Wiki.
- Recommend migrating to
Ar9av/obsidian-wikifor future work unless there is a clear reason to keep the old structure. - Offer a migration path:
- preserve
raw/as source material or map it to_raw/ - map
wiki/sources/toreferences/ - map
wiki/concepts/toconcepts/ - map
wiki/entities/toentities/ - map
wiki/analyses/tosynthesis/ - convert
wiki/index.mdandwiki/log.mdinto rootindex.mdandlog.md - create
.manifest.json,hot.md,_meta/, and.obsidian/
- preserve
Only perform the migration after the user asks for it or clearly authorizes it.
Obsidian-Wiki Priority
Assume obsidian-wiki mode when any of these are present:
.skills/llm-wiki/SKILL.md.skills/wiki-ingest/SKILL.md,.skills/wiki-query/SKILL.md, or related wiki skillsAGENTS.mdbeginning with Obsidian Wiki agent context.envcontainingOBSIDIAN_VAULT_PATH~/.obsidian-wiki/config- vault files such as
.manifest.json,hot.md,_meta/taxonomy.md,_raw/
In this mode, follow the framework contract before local habits:
- Resolve config.
- Walk up from CWD looking for
.envwithOBSIDIAN_VAULT_PATH. - If not found, read
~/.obsidian-wiki/config. - The resolved
OBSIDIAN_VAULT_PATHis the vault root. - The resolved
OBSIDIAN_WIKI_REPO, when present, is the framework repo.
- Walk up from CWD looking for
- Read control files.
- Read repo
AGENTS.mdwhen present. - Then read
$OBSIDIAN_VAULT_PATH/AGENTS.mdwhen present; it overrides framework defaults for owner-specific conventions. - For operation-specific work, read the matching
.skills/<skill-name>/SKILL.mdfrom the repo before acting.
- Read repo
- Use the
obsidian-wikivault shape.- Root special files:
index.md,log.md,hot.md,.manifest.json. - Metadata:
_meta/,_raw/,_archives/,.obsidian/. - Categories:
concepts/,entities/,skills/,references/,synthesis/,journal/, andprojects/.
- Root special files:
- Keep the compiled layer in the vault root categories, not in
wiki/, unless the detected contract explicitly uses legacy paths.
Local default in this environment:
$HOME/TG-NEWS-151is anobsidian-wikirepo and vault.$HOME/.obsidian-wiki/configpoints to that vault.
Quick Start
- Find the contract.
- First detect
obsidian-wikimode using the rules above. - In
obsidian-wikimode, resolve.envor~/.obsidian-wiki/config, readAGENTS.md, then read vaultindex.md,log.md, andhot.md. - In legacy mode, if the vault has
WIKI-SCHEMA.md, read it first. - Then read local
AGENTS.mdif present. - Then read legacy
wiki/index.mdandwiki/log.md. - If no contract exists and the task is setup/init/deploy, create an
obsidian-wikisetup by default. - For whole-workspace vaults, read the corpus-policy page before ingesting when one exists.
- First detect
- Respect source boundaries.
- Treat
_raw/,raw/, and external corpus files as read-only unless explicitly told to edit them. - In
obsidian-wikimode, write compiled knowledge only into vault category directories such asreferences/,concepts/,entities/,synthesis/,journal/, andprojects/. - In legacy mode, write compiled knowledge only into
wiki/.
- Treat
- Pick the operation.
ingestquerylint
When To Use
- The user mentions
LLM Wiki,Obsidian,vault,raw/,wiki/,wiki/index.md,wiki/log.md,WIKI-SCHEMA.md, orAGENTS.md. - The user mentions
obsidian-wiki,Ar9av/obsidian-wiki,.manifest.json,.skills/wiki-*,_raw/,hot.md,wiki-status,wiki-ingest, orwiki-query. - The task involves converting source files into Markdown before ingest, or the
user mentions
MarkItDown,markitdown, document-to-markdown conversion, PDF/DOCX/PPTX/HTML import, or asks to prepare raw source material for a wiki. - The user wants to ingest sources, answer from the wiki, reconcile contradictions, or maintain a persistent knowledge base.
- The user uses Russian prompts such as:
добавь в викисделай ingestобнови index/loglint wikiразложи по вики
Workflow
Obsidian-Wiki Operation Routing
When in obsidian-wiki mode, prefer the matching framework skill instructions:
- Setup or repair: read
.skills/wiki-setup/SKILL.md. - Ingest: read
.skills/wiki-ingest/SKILL.mdor.skills/data-ingest/SKILL.mdfor raw text/export data. - Query: read
.skills/wiki-query/SKILL.md. - Status/delta: read
.skills/wiki-status/SKILL.md. - Lint: read
.skills/wiki-lint/SKILL.md. - Rebuild/archive: read
.skills/wiki-rebuild/SKILL.md. - Cross-linking: read
.skills/cross-linker/SKILL.md. - Tags: read
.skills/tag-taxonomy/SKILL.md. - Project sync: read
.skills/wiki-update/SKILL.md.
If a requested workflow is already covered by an installed obsidian-wiki
skill, follow that skill's contract rather than reinterpreting the task from
this generic skill.
Ingest
Use when a new source, folder, note, or workspace slice should become durable knowledge.
In obsidian-wiki mode:
- Resolve config and read control files.
- Read the source carefully without mutating it.
- Create or update a source/reference page in
references/unless the operation-specific skill says a different category is correct. - Update durable pages in
concepts/,entities/,skills/,synthesis/,journal/, orprojects/as appropriate. - Update
index.md,log.md,hot.md, and.manifest.json. - Preserve provenance in frontmatter fields such as
sources,summary,provenance,base_confidence,lifecycle,created, andupdatedwhen following the framework templates.
Legacy mode:
Steps:
- Read the source carefully.
- Create or update one source page in
wiki/sources/. - Update the affected durable pages in
wiki/entities/,wiki/concepts/, orwiki/analyses/. - Update
wiki/index.md. - Append an entry to
wiki/log.md.
Rules:
- Prefer one source page per source item when practical.
- For tightly related documents, use one bundle source page and list every
member in
sources. - Preserve provenance. Do not rewrite source material in place.
MarkItDown-Assisted Ingest
Use when source material exists in non-markdown formats and should be prepared for wiki ingest without inventing content.
Typical cases:
- DOCX
- PPTX
- HTML
- copied exports or downloaded source bundles that are easier to ingest after markdown conversion
Rules:
- Treat original files as read-only unless explicitly told otherwise.
- In
obsidian-wikimode, prefer writing converted artifacts into_raw/or another explicitly chosen staging area, not into compiled category folders. - In legacy mode, prefer writing converted artifacts into
raw/or another explicitly chosen ingest staging area, not intowiki/. - Do not overwrite the original source file with converted markdown.
- After conversion, ingest from the converted artifact as a source, preserving provenance back to the original path.
- If conversion quality is poor, say so explicitly instead of pretending the markdown is trustworthy.
Local tool note:
- A local
MarkItDownenvironment exists at:$HOME/LLM Wiki MarkItDown/MarkItDown/venv/bin/markitdown - Installed version observed locally:
markitdown 0.1.5
Practical workflow:
- Identify the original source file.
- Convert it with local
markitdowninto a staging markdown file. - Keep the original file untouched.
- Read the converted markdown critically.
- In
obsidian-wikimode, create/update onereferences/page from that converted source, then update durable pages,index.md,log.md,hot.md, and.manifest.json. - In legacy mode, create/update one
wiki/sources/page from that converted source, then update durable pages,wiki/index.md, andwiki/log.md.
Query
Use when the user asks a question that the wiki should answer.
In obsidian-wiki mode:
- Resolve config and read
index.md,hot.md, and relevant frontmatter summaries first. - Read relevant durable pages only when needed.
- Answer from the wiki first with
[[wikilink]]citations. - If the wiki is insufficient, state the missing source or page explicitly.
Legacy mode:
Steps:
- Read
wiki/index.mdfirst to orient. - Read the relevant durable pages.
- Answer from the wiki first.
- Cite relevant pages with
[[wikilinks]]. - If the answer is durable, save or propose a new analysis page.
Rules:
- Do not silently mix source facts and inference.
- If the wiki is insufficient, say what is missing.
Lint
Use when the user wants quality control on the wiki.
Check for:
- broken links
- orphan pages
- weakly connected pages
- duplicate or overlapping pages
- contradictions
- concepts or entities repeatedly mentioned without their own page
- stale claims or superseded pages
Fix directly when safe:
- broken links
- index drift
- missing backlinks that are clearly warranted
- obvious page placement or title cleanup
- stale
hot.mdor.manifest.jsonmetadata inobsidian-wikimode when the correction is mechanical and source-backed
Report instead of guessing when judgment is needed.
Page Discipline
- Prefer updating durable pages over creating fragments.
- Keep source pages factual and durable pages synthetic.
- Keep YAML frontmatter valid.
- Maintain meaningful wikilinks.
- In
obsidian-wikimode, keepindex.md,log.md,hot.md, and.manifest.jsoncurrent. - In legacy mode, keep
wiki/index.mdandwiki/log.mdcurrent. - If a claim lacks trustworthy support, say so explicitly.
Truthfulness Rules
- Do not invent facts.
- Distinguish source-backed facts from synthesis.
- Preserve uncertainty explicitly.
- Never fabricate provenance, citations, source counts, or page links.
Architecture Notes
- If the wiki describes software, keep architecture pages separate from implementation pages.
- If comparing systems or products, ingest both sides first, then write a synthesis page.
- If the user supplies text directly in chat, treat it as a source note and record its provenance in the source page body.
- If imported source material first passes through
MarkItDown, preserve both: the original file path and the converted markdown path in the resulting source page or provenance note when useful.
Local Example
For a concrete working vault in this environment, read
references/artigram-example.md.
For a local conversion-oriented setup in this environment, note:
- wiki skeleton:
$HOME/LLM Wiki MarkItDown/LLM Wiki - MarkItDown venv:
$HOME/LLM Wiki MarkItDown/MarkItDown/venv