tboome33
UserMCP server that routes Claude tool calls to multiple Obsidian vaults (local or remote) over the Local REST API plugin.
Categories
Indexed Skills (47)
wiki-graph
Build a typed knowledge graph (Understand-Anything-compatible JSON) from a vault's wiki — articles, entities, claims, sources, topics, and their relationships — so it can be visualised in an interactive graph dashboard. Use when the user says "build the knowledge graph", "graph my vault", "make a knowledge-graph.json", "visualise my wiki as a graph", "/wiki-graph", "construis le graphe de connaissance", "graphe du vault", or wants to explore their wiki's structure visually / feed it to Understand-Anything's dashboard.
wiki-neighbors
Show the neighbours of ONE wiki page from the knowledge graph — the pages it links to, the pages that link to it (backlinks), or both, at a configurable hop depth. Use when the user says "what links to X", "who links to X", "show me the backlinks of X", "what does X link to", "neighbours of X", "what's connected to X", "/wiki-neighbors", "quelles pages sont liées à X", "qui pointe vers X", "voisins de X", "qu'est-ce que X cite", or wants to explore one page's immediate connections. Do NOT use for the path between TWO specific pages — that's `wiki-path`; do NOT use for a full synthesized answer to a question — that's `wiki-query`.
wiki-path
Find the shortest chain of links between TWO wiki pages ("how are A and B connected?"). Use when the user says "how is X connected to Y", "what's the path between X and Y", "how do X and Y relate", "shortest path from X to Y", "/wiki-path", "quel rapport entre X et Y", "comment relie-t-on X à Y", "chemin entre X et Y", or wants to understand the link between two specific pages. Do NOT use for one page's neighbourhood — that's `wiki-neighbors`; do NOT use for a full synthesized answer — that's `wiki-query`.
wiki-tour
Generate a guided, pedagogical reading tour through a vault — an ordered walkthrough that takes a newcomer from "what is this?" to "I get how it fits together", computed from the knowledge graph's link topology. Use when the user says "give me a tour of this vault", "where do I start", "walk me through my notes", "onboarding path", "/wiki-tour", "fais-moi visiter le vault", "parcours guidé", "par où commencer", or wants a learning path through a vault or one of its projects/topics.
wiki-boundary
Rank the "frontier" pages of a wiki — the crossroads many pages link to that stay thin inside — so you can decide where research would pay off most. Use when the user says "what should I write about next", "where are the gaps", "which pages need work", "find the thin hub pages", "boundary pages", "/wiki-boundary", "sur quoi devrais-je travailler", "où sont les trous du wiki", "quelles pages sont maigres". Do NOT use to find pages nobody links to — those are orphans, `wiki-lint` Check A. Do NOT use to answer a question from the wiki — that's `wiki-query`.
auto-mode
Set the wiki auto-enrichment mode for the current session — `ClaudeAsk` (default, propose + always confirm), `Hybrid` (auto-save type-safe items, ask on high-stakes), `FullAuto` (auto-save everything with safety nets), or `off` (no proactive suggestions). Pass "persist" to write OBSIDIAN_ROUTER_AUTO_ENRICH=<mode> to the workspace `.env` — refused for `FullAuto`, which no workspace file may set (the mode still applies to the session). Triggers on natural-language phrasings like "switch to Hybrid mode" / "passe en mode Hybrid", "save everything automatically" / "sauve tout automatiquement" → `FullAuto`, "stop auto-saving" / "arrête de sauver auto" → `off`.
autoresearch
Run an autonomous WEB-fed research loop on a topic. Iterates web-search → fetch → synthesize → file as wiki pages until depth is reached. Each iteration narrows the gap between what's known (in the wiki) and what's still missing. Use when the user explicitly says "research X on the web", "go research X", "deep dive online into X", "find new info about X", "build a wiki on X", "/autoresearch", or any phrasing that implies fetching NEW information from the internet. Do NOT use when the user wants answers from the existing wiki only — that's `wiki-query`. If "research X" is ambiguous, ask which is intended before kicking off the loop (it costs real tokens).
build-search-index
Build (or refresh) a vault's LOCAL BM25 search index — a deterministic, plugin-free search tier that works on every vault, including those without Smart Connections. Writes wiki-meta/search-index.json. Idempotent: an unchanged vault is detected by content fingerprint and the write is skipped. EN triggers: "build the search index", "index this vault for search", "refresh the local search index", "make search work without Smart Connections", "why does search say no index". FR triggers : "construis l'index de recherche", "indexe ce vault", "rafraîchis l'index local", "fais marcher la recherche sans Smart Connections", "la recherche dit qu'il n'y a pas d'index". Example / Exemple: EN: "build the search index for my kiviri vault" FR: "construis l'index de recherche du vault kiviri"
canvas
Create or modify Obsidian canvas (.canvas) files — visual layout layer where wiki pages, images, PDFs, and free-form text cards are arranged spatially. Supports adding nodes, defining zones (labeled regions), and laying out content with auto-positioning. Use when the user says "create a canvas", "add to canvas", "/canvas", "visualize this on a canvas", "make a canvas of <topic>", "add image to canvas", "add note to canvas", or any phrasing about visual/spatial organization of vault content.
conventions
Manage CLAUDE.md conventions across Obsidian vaults — install, remove, check status, or propagate conventions like source-type / bilingual / heading-hierarchy / auto-enrichment. Triggers (EN) `install source-type convention on smile`, `list conventions on this vault`, `what conventions are installed`, `sync source-type to all vaults`, `remove bilingual convention from vault X`. Triggers (FR) `installe la convention source-type sur smile`, `liste les conventions disponibles`, `quelles conventions sont actives sur ce vault`, `propage la convention source-type à tous les vaults`, `retire la convention bilingue du vault X`.
decision-consolidate
Consolidate a SETTLED decision page (`accepted` / `superseded` / `rejected` — never `proposed`): compress the body to canon (verdict byte-intact, minimal why, alternatives as a table) and move the deliberation chronicle to a verified `archives/` note (`type: decision-archive`) excluded from recall and search. Compress + archive, never erase the why. Contract: meta-vault decision `consolidation-sans-amnesie` (accepted 2026-07-28). EN triggers: "consolidate this decision", "compress the decision page", "archive the deliberation", "this decision page is too long for the LLM". FR triggers : "consolide cette décision", "compresse la page de décision", "archive la délibération", "cette page de décision pollue le contexte". Example / Exemple: EN: "consolidate wiki/decisions/old-choice.md" FR: "consolide adr-modes-ecriture"
defuddle
Strip noise (ads, navigation, cookie banners, related-post widgets, comment threads, footers) from a webpage and return clean readable markdown — typically saving 40-60% of tokens vs. fetching the raw page. Use as a preprocessor for wiki-ingest or autoresearch when the source is a webpage with heavy chrome. Triggered by "defuddle <url>", "clean this page", "fetch and clean <url>", "/defuddle", "strip the noise from <url>", or implicitly inside autoresearch when fetching commercial/blog pages.
hot-compact
Compact an oversized `wiki-meta/hot.md` back to its cache contract (≤ 500 words / 6 KiB, compaction target ≤ 350 words / 4 KiB): verified full backup → thin state-first rewrite → traceability line in `journal.md`. Zero data loss by construction — the backup is byte-identical and kept in the vault. Invoked on demand, or when the hot-cache guard blocks a turn with "hot.md HORS LIMITE / OVER LIMIT". EN triggers: "compact the hot", "hot.md is over limit", "shrink the hot cache", "the hot cache is too big", "run hot-compact on vault X". FR triggers : "compacte le hot", "le hot est hors limite", "dégraisse le hot.md", "le cache hot est trop gros", "lance hot-compact sur le vault X". Example / Exemple: EN: "the guard says the tradingview hot is over limit — compact it" FR: "compacte le hot du vault tradingview"
manage-delete
Permanently delete a file. Requires explicit confirm=true on a second invocation — first call shows a preview and refuses, second call with confirm=true proceeds. Designed against accidental deletes from hallucinated tool calls. EN triggers: "delete X", "remove the file X", "trash X", "wipe X", "get rid of X.md". FR triggers : "supprime X", "efface le fichier X", "mets X à la corbeille", "vire X", "débarrasse-moi de X.md". Confirmation triggers (only after a preview, only for the SAME path that was just previewed — don't loosen the guard): EN: "yes confirm=true", "go ahead", "confirm delete X", "yes delete it". FR : "oui confirm=true", "vas-y", "confirme la suppression de X", "oui supprime". Example / Exemple: EN: "delete Sessions/old-test.md" → preview, then "yes confirm=true" FR: "supprime Sessions/old-test.md" → preview, puis "oui confirm=true"
meta-attach-vault
Interactive DEFAULTS-FIRST wizard to attach an Obsidian vault to a code/dev workspace (the dominant case), or bootstrap a standalone local vault, or register a remote vault. If the target vault ALREADY exists in the router config, skip the wizard entirely — Step 0.0 is a one-command link-only path (`obsidian-mcp-router --attach <slug> [--also <slug>]`), no provisioning. Computes a complete default plan via `plan_vault`, shows it in one line, lets the user accept it as-is (happy path = 1 interaction) or adjust any point, then provisions in one `provision_vault` call. Use whenever the user wants to "set up Obsidian for this project", "attach a vault to this workspace", "add a vault to the router", "register a new obsidian vault", "create a wiki for this repo", "connect my remote vault" — in EN or FR. Replaces the old `meta-add-vault` skill (v0.12.7+); v2 defaults-first + MCP tools (v0.35.0+).
meta-setup
Install obsidian-mcp-router and register it as the user-scope Obsidian MCP. Use when the user wants to switch from per-vault MCP entries to a single multi-vault router, or when bootstrapping the router on a fresh machine.
meta-status
Diagnose the obsidian-mcp-router and all its configured vaults. Pings each vault, reports online/offline/auth status, and suggests fixes for each issue type. Use when the user says "check vault status", "diagnose the router", "are my vaults reachable", "status of obsidian", "what's wrong with the router", or asks to debug an obsidian connection issue.
meta-sync-template
Interactive flow to propagate the reference (`.template`) vault's plugins, snippets, and root docs to one or more configured vaults. Reads the active router config, lists every vault with online status, flags vaults missing `obsidian-local-rest-api` upfront, lets the user pick all or a subset, and optionally re-clones with `--force`. Use whenever the user says "propagate the template", "sync vaults with template", "propage la config du template aux autres vaults", "mets à jour les vaults avec la config du template", "diffuse les plugins du vault de référence", "/obsidian-router:meta-sync-template", or any phrasing implying the reference vault should be the source of truth for plugins/config across the fleet.
obsidian-bases
Create or edit Obsidian Bases (.base files) — the native database layer for dynamic tables, card views, list views, filters, formulas, and summaries over vault notes. Bases query the vault by frontmatter properties and tags, then render as table/card/list views. Use when the user says "create a base", "make a database view", "obsidian base", "filter notes into a table", "task tracker base", "reading list base", "/obsidian-bases", or any phrasing implying a queryable, filterable view of vault content.
obsidian-markdown
Reference for Obsidian Flavored Markdown — wikilinks, embeds, callouts, properties (frontmatter), tags, highlights, math, internal block references, and Obsidian-specific extensions. Consult this skill before writing any wiki page so the syntax renders correctly. Trigger on "obsidian markdown", "wikilink syntax", "callout syntax", "embed syntax", "how to write obsidian markdown", "obsidian formatting", or implicitly whenever the wiki/save/wiki-ingest skills are about to write a page.
read-search-smart
Semantic search via Smart Connections embeddings. Returns ranked chunks with cosine scores and breadcrumbs. Use when the query is conceptual (meaning, not literal substring). EN triggers: "find notes about X", "what do I have on X", "semantic search for X", "find concepts related to X", "notes similar to <topic>". FR triggers : "trouve mes notes sur X", "qu'est-ce que j'ai sur X", "recherche sémantique sur X", "concepts liés à X", "notes similaires à <sujet>". Example / Exemple: EN: "find my notes about position sizing" FR: "trouve mes notes sur la taille de position"
save
File the current Claude conversation (or a specific insight from it) as a structured wiki note. Auto-detects the right type (decision, answer, session-log, technique, ADR), writes appropriate frontmatter, places the file in the correct wiki folder, and updates catalog.md, journal.md, hot.md. Use when the user says "save this", "save that answer", "/save", "file this conversation", "keep this", "save as note", or any phrasing implying the current chat output should land in their knowledge base.
sync-from-github
Sync one vault (or the whole fleet) straight from the GitHub skeleton — plugins, themes, snippets, root docs — with the exact same guards as `--sync-plugins` (credential-leak refusal, BRAT anti-downgrade, per-theme clones) plus hardened archive extraction (path-traversal abort, links never materialized, size/entry caps). For machines that have neither the dev repo nor a local `.template`. Lot 3 of the template-distribution roadmap. EN triggers: "sync my vault from GitHub", "update the vault template from GitHub", "pull the latest skeleton", "sync the fleet from the repo". FR triggers : "synchronise depuis GitHub", "mets à jour le template depuis GitHub", "récupère le dernier skeleton", "synchronise la flotte depuis le repo". Example / Exemple: EN: "sync all my vaults from the GitHub template" FR: "synchronise tous mes vaults depuis GitHub"
who-is-speaking
Identify the family member speaking in a shared family vault (e.g., `vault_tribu`), then lock the router to that vault + set auto-enrich mode to `Hybrid` so subsequent auto-saves route to `wiki/People/<member>/`. Companion skill for the `tribu-routing` convention. Trigger this skill at the start of any session on a shared family/multi-user vault when the speaker's identity hasn't been established yet. Read the vault's `CLAUDE.md` to get the canonical list of members + their aliases — never invent a member that's not in the table. EN triggers: "who is speaking", "I'm <name>", "this is <name>", "it's <name> talking", "set me as <name>", "identify me", "log me in as <name>", "I'm <alias>", "/who-is-speaking". FR triggers : "qui parle", "c'est <prénom>", "je suis <prénom>", "moi c'est <prénom>", "identifie-moi", "log-moi en <prénom>", "je m'appelle <prénom>", "/qui-parle".
wiki-export
Export a vault's wiki either as a single portable file (llms.txt or llms-full.txt per the llmstxt.org standard) or as an OKF knowledge bundle (Google's Open Knowledge Format v0.1 — a shareable directory of markdown files any AI agent can consume). Use when the user says "export my wiki", "make an llms.txt", "share my wiki", "export as OKF", "make an OKF bundle", "publish my wiki as a bundle", "backup the wiki to a single file", "/wiki-export", or asks for a portable dump of their knowledge base.
wiki-fold
Roll up the wiki's journal.md entries into structured fold pages — like 2^k log compaction. Reads the last 2, 4, 8, 16... entries and writes a fold page that summarizes them by extractive summarization (no invention), with backlinks to children. Idempotent at the structural level — re-running with the same window produces a byte-equivalent fold. Use when the user says "fold the log", "rollup recent activity", "compact the log", "/wiki-fold", or after many ingestions when journal.md is becoming too long to read directly.
wiki-ingest
Read a source (file, URL, or pasted text), extract the entities and concepts that matter, and file them as wiki pages with cross-references. Updates the wiki's catalog.md, journal.md, and hot.md so future sessions can find what was ingested. Use this skill whenever the user says "ingest this", "add this to the wiki", "process this source", "file this article", "absorb this", "ingest <url>", "/wiki-ingest", or drops a file/URL with the implicit intent to incorporate it into their knowledge base.
wiki-lint
Health-check a wiki vault. Finds orphan pages (no inbound links), dead wikilinks (point to non-existent pages), missing frontmatter fields, stale claims, empty sections, and pages absent from catalog.md. Produces a structured report with severity tiers and proposes concrete fixes — but does not auto-apply them unless the user confirms. Use when the user says "lint the wiki", "health check", "audit my wiki", "find orphans", "what's broken in the wiki", "/wiki-lint", or after a long ingestion session to catch drift.
wiki-query
Answer a question using ONLY the existing wiki vault as the knowledge base — no web search, no general LLM knowledge. Reads hot.md first (cheap recent context), then catalog.md to navigate, then drills into specific pages, then optionally semantic-searches the wiki, and synthesizes an answer with citations. Use when the user asks "what do you know about X", "based on my wiki, ...", "explain X using my notes", "search the wiki for X", "from my notes, ...", "/wiki-query". Do NOT use when the user wants new information from the web — that's `autoresearch`.
wiki-refresh-digests
Regenerate stale digest sidecars in `wiki-meta/digests/` — useful after manual edits to wiki pages that haven't passed through `wiki-ingest`, or to backfill digests for pages that pre-date the v0.15.0 digest-sidecar convention. Companion to `wiki-lint --deep` (which detects which digests are stale). Use when the user says "refresh digests", "rebuild digests", "/wiki-refresh-digests", or after `wiki-lint --deep` flags stale digests.
wiki
Bootstrap or check a Karpathy-style "LLM wiki" structure inside an Obsidian vault — a self-maintaining knowledge base where pages reference each other and the LLM keeps it tidy. Sets up catalog.md (curated page catalog), journal.md (append-only operation history), hot.md (recent-context cache), and overview.md (executive summary). Use this skill when the user says "set up a wiki", "scaffold a knowledge base", "/wiki", "create my second brain", "bootstrap a vault for note-taking", or any phrasing that implies turning a plain Obsidian vault into a structured wiki for ongoing use with Claude.
write-create-or-replace
Create a new file, or replace the entire content of an existing one. Pass ifNew=true to refuse overwrite. EN triggers: "create a note X", "make a file at X", "write X", "replace X with this content", "save this as X.md". FR triggers : "crée une note X", "fais un fichier à X", "écris X", "remplace X par ce contenu", "enregistre ça comme X.md". Example / Exemple: EN: "create a note Sessions/2026-05-03.md with my morning review" FR: "crée la note Sessions/2026-05-03.md avec mon point du matin"
write-frontmatter-merge
Apply multiple frontmatter updates at once (sequential, NOT atomic — partial failures are reported per-key). Use when you want to update 2+ properties on the same file in one call. EN triggers: "update multiple properties on X", "set status, score, and tags on X", "mark Y as closed with outcome stopped", "bulk-update the metadata of X". FR triggers : "mets à jour plusieurs propriétés sur X", "définis status, score et tags sur X en une fois", "marque Y comme closed avec outcome stopped", "mets à jour plusieurs métadonnées de X d'un coup". Example / Exemple: EN: "on Trades/AAPL.md set status=closed outcome=tp1 closed_at=2026-05-03" FR: "sur Trades/AAPL.md mets status=closed outcome=tp1 closed_at=2026-05-03"
write-patch
Surgical edit — insert/replace under a specific heading, block id, or frontmatter key. Use when you need to modify ONE section of a long note without rewriting the whole file. EN triggers: "edit the X section in Y", "update the heading X", "modify the block X", "replace the content under X", "insert under heading Y". FR triggers : "édite la section X dans Y", "mets à jour le titre X", "modifie le bloc X", "remplace le contenu sous X", "insère sous le titre Y". Example / Exemple: EN: "in Indicators/ATP.md, replace the content under heading 'Module 5::Pendant le trade' with: ..." FR: "dans Indicators/ATP.md, remplace le contenu sous le titre 'Module 5::Pendant le trade' par : ..."
write-bundle
Run several vault writes as ONE logical operation with rollback — the note + the index + the journal + hot.md either all land, or none do. Use whenever a single user-visible action touches 2+ files and a half-written result would be wrong. Also the recovery entry point for bundles a crash left unfinished. EN triggers: "write these files together", "all or nothing", "make this atomic", "roll back if any of it fails", "recover the unfinished bundle", "something crashed mid-save". FR triggers : "écris ces fichiers ensemble", "tout ou rien", "rends ça atomique", "annule tout si une étape échoue", "récupère le lot inachevé", "ça a planté au milieu de la sauvegarde". Example / Exemple: EN: "save the note, add it to the index and log it — all three or none" FR: "écris la note, ajoute-la à l'index et journalise — les trois ou aucun"
discover-list-vaults
List all configured Obsidian vaults — active vaults with online status, latency, and metadata, AND disabled vaults (skipped by the disabledVaults config). Returns three fields: defaultVault, vaults[] (active), disabled[] (skipped). EN triggers: "list my vaults", "show me my Obsidian vaults", "what vaults do I have", "are my vaults online", "which vaults are active", "which vaults are disabled", "show me all vaults including disabled". FR triggers : "liste mes vaults", "montre mes vaults Obsidian", "quels vaults j'ai", "mes vaults sont-ils en ligne", "quels vaults sont actifs", "quels vaults sont désactivés", "montre tous mes vaults y compris les désactivés". Example / Exemple: EN: "list my Obsidian vaults" FR: "liste mes vaults Obsidian"
lock
Restrict the router to a single vault for the current session (single-vault isolation mode). While locked, tool calls targeting any other vault are refused, cross-vault fan-out (`vault: "*"`) is refused, and tool calls without an explicit `vault` resolve to the locked one. Lift the lock with `/obsidian-router:unlock`. Pass "persist" to make the lock survive a restart: it is recorded on this workspace's binding in the user's own config, since a lock named only by a project `.env` is no longer applied at start-up. EN triggers: "lock to vault X", "lock the router to X", "I only want to work on vault X", "restrict me to X", "isolate to vault X", "single-vault mode on X". FR triggers : "verrouille sur le vault X", "lock le router sur X", "je ne veux travailler que sur le vault X", "restreins-moi à X", "isole sur le vault X", "mode mono-vault sur X". Example / Exemple: EN: "lock to tradingview, persist this so it stays after restart" FR: "verrouille sur tradingview de manière permanente"
bind-workspace
Deterministic wizard that binds the current workspace to a PRIMARY vault, then to SECONDARY vaults with a write tier each (read-only strict, read-only with writes on request, read-write). Detects the vaults whose Obsidian is open, lists them, asks which one, confirms, binds; the secondaries follow the same detect → confirm → one-question-per-vault flow, and can be run on their own. English canonical prompts, answered in the user's language. EN triggers: "bind this workspace", "I want to bind this workspace", "attach this workspace to a vault", "set the primary vault", "configure the secondary vaults", "let's configure the secondaries", "make X read-only for this project". FR triggers : "je veux lier ce workspace", "lie ce workspace", "rattache ce workspace", "définis le vault principal", "paramétrons les vaults secondaires", "configure les vaults secondaires", "mets X en lecture seule pour ce projet". Example / Exemple: EN: "I want to bind this workspace" FR: "paramétrons les vaults secondaires"
discover-list-files
List files and subdirectories inside a vault directory (or vault root). EN triggers: "list files in X", "show me what's in <folder>", "what's inside <folder>", "ls X", "browse the X directory". FR triggers : "liste les fichiers de X", "qu'est-ce qu'il y a dans <dossier>", "montre le dossier X", "ls X". Example / Exemple: EN: "list files in Sessions" FR: "liste les fichiers du dossier Sessions"
manage-move
Move or rename a file. The router does GET source → PUT destination → DELETE source (Local REST API has no native move). Reports if the source-delete step fails so you can clean up. EN triggers: "rename X to Y", "move X to Y", "relocate X into <folder>", "move X into the archive", "send X to <folder>". FR triggers : "renomme X en Y", "déplace X vers Y", "déplace X dans <dossier>", "archive X", "envoie X dans <dossier>". Example / Exemple: EN: "rename Sessions/draft.md to Sessions/2026-05-03.md" FR: "renomme Sessions/draft.md en Sessions/2026-05-03.md"
read-frontmatter
Read frontmatter (the whole object or one key) from a file. Types are preserved (numbers stay numbers, arrays stay arrays). EN triggers: "what's the frontmatter of X", "show me the metadata of X", "read the properties of X", "what's the status of X", "get the tags on X". FR triggers : "quel est le frontmatter de X", "montre les méta de X", "lis les properties de X", "quel est le statut de X", "récupère les tags de X". Example / Exemple: EN: "what's the status of Trades/AAPL.md" FR: "quel est le statut de Trades/AAPL.md"
read-get
Read the full content of a file from a vault (markdown + frontmatter). EN triggers: "show me X", "open the file X", "read X", "what's in X.md", "fetch X". FR triggers : "montre-moi X", "ouvre le fichier X", "lis X", "qu'est-ce qu'il y a dans X.md", "récupère X". Example / Exemple: EN: "show me Sessions/2026-05-03.md" FR: "ouvre Sessions/2026-05-03.md"
read-search
Plain-text (substring) search inside a vault, with surrounding context. EN triggers: "find <text> in my vault", "search for the literal string X", "grep for X", "where do I mention X", "find files containing X". FR triggers : "trouve <texte> dans mon vault", "cherche la chaîne X littéralement", "grep <X>", "où est-ce que je mentionne X", "trouve les fichiers contenant X". Example / Exemple: EN: "find 'risk management' in my vault" FR: "cherche 'gestion du risque' dans mes notes"
template-execute
Execute a Templater template, optionally writing the rendered output to a new file. Arguments are exposed to the template via tp.mcpTools.prompt("key") (directly under tp, NOT under tp.user — easy footgun). EN triggers: "render the X template", "run the daily template", "execute Templates/X.md with arg1=v1", "use template X to create Y", "preview template X". FR triggers : "rends le template X", "exécute le template daily", "exécute Templates/X.md avec arg1=v1", "utilise le template X pour créer Y", "prévisualise le template X". Example / Exemple: EN: "render Templates/Trade.md with ticker=AAPL and create Trades/AAPL.md" FR: "rends Templates/Trade.md avec ticker=AAPL et crée Trades/AAPL.md"
unlock
Lift the single-vault lock and restore normal multi-vault routing. Pass "persist" to ALSO lift the lock where a restart reads it from — the `locked` flag on this workspace's binding in the user's router config — and to remove the `OBSIDIAN_ROUTER_LOCKED` hint from the workspace `.env`. Without it, a lock recorded on the binding comes back at the next start; a leftover `.env` line on its own does not, since a lock named only by a project file is no longer applied. EN triggers: "unlock vaults", "unlock the router", "I want access to all vaults again", "give me back multi-vault mode", "exit single-vault mode", "lift the lock". FR triggers : "déverrouille les vaults", "unlock le router", "je veux pouvoir avoir accès à tous les vaults", "redonne-moi le mode multi-vault", "sors du mode mono-vault", "lève le verrou". Example / Exemple: EN: "unlock and clean up the .env" FR: "déverrouille et nettoie le .env"
write-append
Append content at the end of a file. Auto-creates the file unless requireExisting=true. Best for daily journals, logs, running captures. EN triggers: "add to X", "append to my journal", "log this in X", "tack on the end of X", "add a line to X". FR triggers : "ajoute à X", "append dans mon journal", "log ça dans X", "rajoute à la fin de X", "ajoute une ligne à X". Example / Exemple: EN: "append 'closed AAPL position +2.3%' to Trades/journal.md" FR: "ajoute 'fermé position AAPL +2,3%' à Trades/journal.md"
write-frontmatter-set
Set or replace a single frontmatter property. Type-preserving (numbers stay numbers, arrays stay arrays). EN triggers: "set status to X on Y", "tag this with X", "set the property X on Y", "mark Y as <status>", "change the score of X to Y". FR triggers : "passe le statut de Y à X", "tag ça avec X", "mets la property X sur Y", "marque Y comme <statut>", "change le score de X à Y". Example / Exemple: EN: "set status to closed on Trades/AAPL.md" FR: "passe le statut de Trades/AAPL.md à closed"
Bio shown is the top-scored skill's repo description as a fallback — real GitHub bios land in a future update.