mcpField
W
wiki

wiki

github.com/agricidanielProductivity16.0k542 installsUpdated 1w ago
Repository

About wiki

wiki is a skill for orchestrating work with an Obsidian vault through the `claude-obsidian.py` core. It routes requests to focused skills, resolves vaults safely, and requires inspected transactions for mutations.

Key features

  1. 01Vault selection and setup
  2. 02Intent routing to focused skills
  3. 03Transactional vault mutations
  4. 04Conditional reference guidance
  5. 05Conflict recovery procedures

Use cases

  1. 01Initializing or adopting a vault
  2. 02Routing a request to the right workflow
  3. 03Planning a reviewed vault change
  4. 04Recovering from transaction conflicts

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/agricidaniel/claude-obsidian --skill wiki

After installing, type/wikiin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
coordination.md
css-snippets.md
dataview.md
frontmatter.md
git-setup.md
install-modes.md
knowledge-recipes.md
mcp-setup.md
model-guidance.md
modes.md
operation-transactions.md
plugins.md
provenance.md
rest-api.md

Details

From the project README

Wiki orchestration

Treat the installed product as code and the selected user vault as data. Never use the plugin/product root as a vault, even when the current directory happens to be the product checkout.

Resolve the portable core from this skill's installation and invoke it by absolute path:

CORE=/absolute/product/root/scripts/claude-obsidian.py
python3 "$CORE" --help

Resolve a vault in this order: explicit --vault, CLAUDE_OBSIDIAN_VAULT, the nearest .claude-obsidian.json, then an unambiguous initialized vault at or above the current directory. Fail closed when selection is missing or ambiguous.

Baseline setup requires no network egress. Do not fetch templates, plugins, or remote content unless the user separately approves the destinations and budget.

Set up a vault

Use the deterministic setup commands. Both are dry-run by default.

For a new, separate vault:

python3 "$CORE" init /absolute/path/to/vault \
  --generated-at <ISO-UTC> --operation-id init-reviewed
python3 "$CORE" init /absolute/path/to/vault \
  --generated-at <ISO-UTC> --operation-id init-reviewed \
  --approved-plan-sha256 <reviewed-sha256> --apply

For an existing Obsidian vault:

python3 "$CORE" adopt /absolute/path/to/vault \
  --generated-at <ISO-UTC> --operation-id adopt-reviewed
python3 "$CORE" adopt /absolute/path/to/vault \
  --generated-at <ISO-UTC> --operation-id adopt-reviewed \
  --approved-plan-sha256 <reviewed-sha256> --apply

Before --apply, show the selected path and changed-path preview, then pass the emitted approved_plan_sha256 unchanged. Do not use --force unless the user has reviewed the conflicts and explicitly approved replacement. Setup is non-destructive by default and creates no upstream Git remote.

If the user asks for a domain-specific scaffold, establish the baseline first, then read modes.md. Draft the additional pages and configuration as one operation-level transaction. Never mutate vault files with host Write/Edit tools or an Obsidian transport.

Route operations

Route the user's intent without silently broadening it:

IntentSkill
Ingest supplied sourceswiki-ingest
Answer from existing vault knowledgewiki-query
Save a specific conversation resultsave
Research the public web under a budgetautoresearch
Check vault healthwiki-lint
Draft a cited glossary or consolidate overlapping noteswiki-ingest, with an explicitly reviewed scope
Roll up log entrieswiki-fold
Work with a canvascanvas

Query is read-only. Persistence from a query must be an explicit, separately scoped Save operation. Never capture a transcript or update the hot cache merely because a session ended.

Mutation contract

Read operation-transactions.md before any custom scaffold or mutation. One logical operation must produce one inspected and recoverable claude-obsidian.transaction.v1 bundle. Parallel agents may return drafts and evidence only; the orchestrator merges them and applies once. Every canonical page create or removal includes an active index or MOC update in that bundle; update the overview only when the stable high-level picture changed. Raw source payloads are create-only. There are no automatic commits.

Use provenance.md when initializing or changing source and claim ledgers. Unsupported evidence stays unsupported; never invent a source, quote, date, locator, or confidence.

After a successful apply, report the operation ID and exact changed paths. If the user explicitly wants a Git checkpoint, run it separately:

python3 "$CORE" checkpoint OPERATION_ID --vault /absolute/path/to/vault

On a conflict, re-read and rebuild. On interruption, use transaction recover. Reuse an operation ID only with the identical bundle.

Installation context

Read install-modes.md when installation or host behavior matters. Hooks are optional adapters; portable behavior lives in the core and skills.

Conditional references

Read only the reference needed for the current request:

Think, verify, grow

Before applying, pause once: observe existing state, verify the vault selection and evidence, then choose the smallest reversible operation that satisfies the request. Afterward, report uncertainty and the next useful improvement without performing it automatically.

Comments

Markdown supported