wiki-query
Answer questions using the Obsidian wiki vault. Reads hot cache first, then index, then relevant pages. Synthesizes answers with citations. Files good answers back as wiki pages. Supports quick, standard, and deep modes. Triggers on: what do you know about, query:, what is, explain, summarize, find in wiki, search the wiki, based on the wiki, wiki query quick, wiki query deep.
What this skill does
# wiki-query: Query the Wiki The wiki has already done the synthesis work. Read strategically, answer precisely, and file good answers back so the knowledge compounds. --- ## Transport (v1.7+) Reads should prefer the same transport the rest of the plugin uses. Consult `.vault-meta/transport.json` (auto-created by `bash scripts/detect-transport.sh`) and use the `preferred` entry: - **cli** — `obsidian-cli read "$VAULT" "$NOTE"` and `obsidian-cli search "$VAULT" "<query>"` (Obsidian-native ranking); see [`skills/wiki-cli/SKILL.md`](../wiki-cli/SKILL.md) - **mcp-obsidian** / **mcpvault** — `mcp__obsidian-vault__read_note`, `search_notes`; see [`skills/wiki/references/mcp-setup.md`](../wiki/references/mcp-setup.md) - **filesystem** — Claude's `Read` and `Glob`/`Grep` tools (final floor; always works) Full decision tree: [`wiki/references/transport-fallback.md`](../../wiki/references/transport-fallback.md). Quick mode (hot.md only) is transport-agnostic — always uses `Read`. --- ## Retrieval (v1.7+) If `wiki-retrieve` is feature-detected — `[ -x scripts/retrieve.py ] && [ -d .vault-meta/chunks ] && [ -f .vault-meta/bm25/index.json ]` — Standard and Deep modes consult it BEFORE the legacy hot→index→drill chain: ```bash python3 scripts/retrieve.py "<the user's question verbatim>" --top 5 ``` Output is JSON with a `candidates` array. Each candidate has `absolute_path` to the source page, a `snippet`, and `bm25_score` + `rerank_score`. Read the cited pages (using the transport selector from §Transport above) and synthesize with chunk-level citation. If `retrieve.py` exits 10 (feature not provisioned), or any step in the pipeline errors, fall back to the v1.6 legacy read order described in the Standard/Deep workflows below — no user-visible breakage. Quick mode always skips retrieval (hot.md only — keeps the ~1,500 token budget intact). Full spec: [`skills/wiki-retrieve/SKILL.md`](../wiki-retrieve/SKILL.md). Setup: `bash bin/setup-retrieve.sh`. The legacy read-order workflows below remain authoritative when wiki-retrieve is not installed. --- ## Query Modes Three depths. Choose based on the question complexity. | Mode | Trigger | Reads | Token cost | Best for | |------|---------|-------|------------|---------| | **Quick** | `query quick: ...` or simple factual Q | hot.md + index.md only | ~1,500 | "What is X?", date lookups, quick facts | | **Standard** | default (no flag) | hot.md + index + 3-5 pages | ~3,000 | Most questions | | **Deep** | `query deep: ...` or "thorough", "comprehensive" | Full wiki + optional web | ~8,000+ | "Compare A vs B across everything", synthesis, gap analysis | --- ## Quick Mode Use when the answer is likely in the hot cache or index summary. 1. Read `wiki/hot.md`. If it answers the question, respond immediately. 2. If not, read `wiki/index.md`. Scan descriptions for the answer. 3. If found in index summary, respond and do not open any pages. 4. If not found, say "Not in quick cache. Run as standard query?" Do not open individual wiki pages in quick mode. --- ## Standard Query Workflow 1. **Read** `wiki/hot.md` first. It may already have the answer or directly relevant context. 2. **Read** `wiki/index.md` to find the most relevant pages (scan for titles and descriptions). 3. **Read** those pages. Follow wikilinks to depth-2 for key entities. No deeper. 4. **Synthesize** the answer in chat. Cite sources with wikilinks: `(Source: [[Page Name]])`. 5. **Offer to file** the answer: "This analysis seems worth keeping. Should I save it as `wiki/questions/answer-name.md`?" 6. If the question reveals a **gap**: say "I don't have enough on X. Want to find a source?" --- ## Deep Mode Use for synthesis questions, comparisons, or "tell me everything about X." 1. Read `wiki/hot.md` and `wiki/index.md`. 2. Identify all relevant sections (concepts, entities, sources, comparisons). 3. Read every relevant page. No skipping. 4. If wiki coverage is thin, offer to supplement with web search. 5. Synthesize a comprehensive answer with full citations. 6. Always file the result back as a wiki page. Deep answers are too valuable to lose. --- ## Token Discipline Read the minimum needed: | Start with | Cost (approx) | When to stop | |------------|---------------|--------------| | hot.md | ~500 tokens | If it has the answer | | index.md | ~1000 tokens | If you can identify 3-5 relevant pages | | 3-5 wiki pages | ~300 tokens each | Usually sufficient | | 10+ wiki pages | expensive | Only for synthesis across the entire wiki | If hot.md has the answer, respond without reading further. --- ## Index Format Reference The master index (`wiki/index.md`) looks like: ```markdown ## Domains - [[Domain Name]]: description (N sources) ## Entities - [[Entity Name]]: role (first: [[Source]]) ## Concepts - [[Concept Name]]: definition (status: developing) ## Sources - [[Source Title]]: author, date, type ## Questions - [[Question Title]]: answer summary ``` Scan the section headers first to determine which sections to read. --- ## Domain Sub-Index Format Each domain folder has a `_index.md` for focused lookups: ```markdown --- type: meta title: "Entities Index" updated: YYYY-MM-DD --- # Entities ## People - [[Person Name]]: role, org ## Organizations - [[Org Name]]: what they do ## Products - [[Product Name]]: category ``` Use sub-indexes when the question is scoped to one domain. Avoid reading the full master index for narrow queries. --- ## Filing Answers Back Good answers compound into the wiki. Don't let insights disappear into chat history. When filing an answer: ```yaml --- type: question title: "Short descriptive title" question: "The exact query as asked." answer_quality: solid created: YYYY-MM-DD updated: YYYY-MM-DD tags: [question, <domain>] related: - "[[Page referenced in answer]]" sources: - "[[wiki/sources/relevant-source.md]]" status: developing --- ``` Then write the answer as the page body. Include citations. Link every mentioned concept or entity. After filing, add an entry to `wiki/index.md` under Questions and append to `wiki/log.md`. --- ## Gap Handling If the question cannot be answered from the wiki: 1. Say clearly: "I don't have enough in the wiki to answer this well." 2. Identify the specific gap: "I have nothing on [subtopic]." 3. Suggest: "Want to find a source on this? I can help you search or process one." 4. Do not fabricate. Do not answer from training data if the question is about the specific domain in this wiki. --- ## How to think (10-principle mapping) When working on this skill, apply the 10-principle loop. See [`skills/think/SKILL.md`](../think/SKILL.md) for the canonical framework. | # | Principle | Application here | |---|-----------|-------------------| | 1 | OBSERVE (ext) | Read `wiki/hot.md` first, then `wiki/index.md`, then specific pages. Don't skip the cache. | | 2 | OBSERVE (int) | Am I synthesizing from training-data memory when I should be citing wiki pages? Check the source of each claim. | | 3 | LISTEN | What is the user's REAL question? The surface query is often a proxy for a deeper need. | | 4 | THINK | Quick / standard / deep mode? Match depth to question complexity, not eagerness. | | 5 | CONNECT (lat) | Are there pages I missed that would CHANGE the answer? Cross-check related pages before answering. | | 6 | CONNECT (sys) | Hot cache + index + wiki-retrieve (when provisioned) layer into a single retrieval pipeline. | | 7 | FEEL | Cite specific pages, not vague references. Future-me wants traceability back to the source page. | | 8 | ACCEPT | When the wiki doesn't have the answer, say so explicitly. Don't fabricate from training data. | | 9 | CREATE | The answer with citations + an offer to file the answer if it's worth keeping. | | 10 | GROW | Questions the wiki can't answer are content gaps — log them as autoresearch inputs. |
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.