AI Wiki

approved

by Ilya

This plugin has not been manually reviewed by Obsidian staff. AI-powered compoundable knowledge base — extracts, synthesizes and maintains a wiki from raw sources.

1 stars69 downloadsUpdated 5d agoApache-2.0

AI Wiki — Obsidian Plugin

Русская версия →

Automatically builds and maintains a knowledge-base wiki from your notes using an LLM backend.

Why AI Wiki:

  • Offline by default — Ollama or any OpenAI-compatible server; data never leaves your machine
  • Compounding — each Ingest enriches the base; links and pages accumulate automatically
  • Transparency — agent step progress visible live in the sidebar panel
  • Dual backends — Native Agent (Ollama / OpenAI) and Claude Agent; switchable in settings

Supported backends: Ollama / OpenAI-compatible (no cloud) · Claude Agent (Anthropic)

What it does

  • Ingest — parses a note, extracts entities (people, technologies, processes, terms), creates and updates wiki pages
  • Query — answers a question against the knowledge base; optionally saves the answer as a new page with [[WikiLinks]]
  • Lint — checks wiki-domain quality, finds incomplete and outdated pages
  • Fix — sidebar action after Lint: takes an instruction, passes it to the model, updates pages
  • Init — initializes a new domain from scratch (folder structure, _schema.md, _index.md)
  • Format — analyzes an open markdown page (outside wiki domains), proposes formatting edits (frontmatter, headings, tables, mermaid, image captions). Preview is saved to !Temp/. Clarification via chat, Apply/Cancel buttons. Hard invariant: must not add/remove facts or distort meaning — only rephrase for clarity
  • Chat — interactive chat in the sidebar panel; available after Lint and Query to refine results

Fix, Format and Chat are launched from sidebar buttons, not the Command Palette.

Progress of every operation is visible live in the Obsidian sidebar panel.

Mobile: only Query works on mobile devices. Ingest, Lint, and Init are desktop-only. The Claude Agent backend on mobile automatically falls back to Native Agent.


Quick start: Native Agent (Ollama)

Requires no external accounts — the LLM runs locally.

1. Install Ollama

Download from ollama.com and run:

ollama pull llama3.2

2. Install the plugin

Copy the plugin folder into your vault:

# option — symlink for development
ln -s /path/to/obsidian-llm-wiki ~/.config/obsidian/Plugins/obsidian-llm-wiki

Or copy the folder manually to <vault>/.obsidian/plugins/obsidian-llm-wiki/.

3. Enable the plugin

Obsidian → Settings → Community plugins → find "AI Wiki" → enable.

4. Configure

Settings → AI Wiki:

SettingValue
BackendNative Agent (OpenAI-compatible)
Base URLhttp://localhost:11434/v1
API Keyollama
Modelllama3.2
Temperature0.2
Max tokens4096

5. Create a domain

A domain is a pair of "sources folder → wiki folder". Command:

Command PaletteAI Wiki: Init домена → enter domain name (e.g. work) → uncheck Dry Run → run.

The plugin creates the folder structure and service files (_schema.md, _index.md).

6. First Ingest

  1. Open any note in Obsidian
  2. Command PaletteAI Wiki: Ingestion активного файла
  3. Watch progress in the sidebar panel
  4. When complete — new wiki pages appear in the domain folder

Quick start: Claude Agent

For users with Claude Code CLI installed.

1. Requirements

  • Installed iclaude.sh / iclaude / claude (Claude Code CLI)

2. Install the plugin

Same as steps 2–3 of the Native Agent section above.

3. Configure

Settings → AI Wiki:

SettingValue
BackendClaude Agent
Path to Claude Code/home/user/Documents/Project/iclaude/iclaude.sh
Modelsonnet
Timeouts (seconds)300/300/900/3600/600

4. First Ingest

Same as step 6 of the Native Agent section above.


Commands

All commands are available via Command Palette (Ctrl+P / Cmd+P). Fix, Format, and Chat are sidebar buttons.

CommandActionResult
AI Wiki: Открыть панельShow the sidebar panelLive operation log, history
AI Wiki: Ingestion активного файлаExtract entities from current noteNew/updated wiki pages (desktop only)
AI Wiki: ЗапросAsk a question against the knowledge baseAnswer in panel with [[WikiLinks]]
AI Wiki: Запрос и сохранить как страницуQuestion + save the answerNew wiki page, opens automatically
AI Wiki: Lint доменаCheck wiki qualityIssue report in panel (desktop only)
AI Wiki: Init доменаInitialize a new domainWiki folder structure and service files (desktop only)
AI Wiki: Отмена операцииStop the current operationSIGTERM → SIGKILL after 3s

Settings reference

General (both backends)

SettingDescriptionDefault
User promptAppended to the system prompt of every operationempty
Max tokensMax tokens in response. Recommended ≥ 4096. Shown when per-operation is off and backend is native-agent4096
Timeouts (seconds)ingest/query/lint/init/format, slash-separated300/300/900/3600/600
History limitMax operations in sidebar history20
Agent log (JSONL)Log agent events to <vault>/!Logs/agent.jsonl (desktop only)off

Domains

List of created domains with Edit / Delete buttons. Domain map stored in !Wiki/_domain.json.

Backend selector

SettingDescriptionDefault
Backendclaude-agent or native-agent (desktop). Mobile is forced to native-agentclaude-agent

Claude Agent

SettingDescriptionDefault
Path to Claude CodeFull absolute path to iclaude.sh / iclaude / claude
ModelPreset (opus/sonnet/haiku) or explicit ID (claude-opus-4-7). Shown when per-operation is offclaude default
Allowed toolsComma-separated list passed to --tools. Empty = no restrictionRead,Edit,Write,Glob,Grep
Per-operation modelsToggle. When on, configure model per operation (ingest/query/lint/init/format)off
Per-operation: ModelModel name for the specific operation

Native Agent

SettingDescriptionDefault
Base URLOpenAI-compatible endpoint. Ollama: http://localhost:11434/v1http://localhost:11434/v1
API keyollama for Ollama; sk-... for OpenAIollama
ModelModel name (llama3.2, mistral, gpt-4o, …). Shown when per-operation is offllama3.2
Context window (num_ctx)Context size (Ollama only). Empty = model default
Temperature0.01.0. Low (0.10.3) = precise facts0.2
Per-operation modelsToggle (desktop only). When on, configure model/maxTokens/temperature per operationoff
Per-operation: Max tokensPer-op max tokens. Defaults: ingest/query 4096, lint/init 8192, format 32768
Per-operation: TemperaturePer-op temperature (0–2)0.2
Structured output retriesRetries on schema validation failure (0–3). Higher = better success on weak models at cost of latency/tokens1

Proxy (native-agent only)

SettingDescriptionDefault
Use proxyRoute native-agent traffic through HTTP/HTTPS proxy. Not supported on mobileoff
Proxy URLhttp://proxy.example.com:8080 or https://…
UsernameOptional, for basic-auth proxies
PasswordOptional, stored locally in local.json
No-proxy hostsCSV; supports exact host and *.suffix. Example: localhost,127.0.0.1,*.internal

Proxy applies to native-agent only. Claude Agent uses its own configuration.

Graph

SettingDescriptionDefault
BFS depth (graphDepth)Query: hops from seed pages. 0 = seeds only, max sensible 31
Hub threshold (hubThreshold)Lint: pages with more outgoing links than this are flagged as hubs20

Dev mode (desktop only)

SettingDescriptionDefault
Dev modeEnable dev logger and evaluator after each operationoff
Evaluator modelModel name for the evaluator (same backend)

Sync

The <plugin-dir>/local.json file stores the machine-specific path to iclaude.sh. If you sync the .obsidian/plugins/obsidian-llm-wiki/ folder with Obsidian Sync / git / Syncthing, exclude local.json from the sync — otherwise the path will be overwritten on other machines.

The domain map is stored in !Wiki/_domain.json (inside the vault) and syncs normally with your notes.


Documentation

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.