Install
$ agentstack add skill-ar9av-obsidian-wiki-wiki-context-pack ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Wiki Context Pack — Bounded Token Retrieval
You are producing a focused, token-bounded context pack from the wiki. Unlike wiki-query (which answers a question), this skill packages the most relevant wiki knowledge into a single markdown block that a downstream agent, skill, or user can consume directly.
Before You Start
- Resolve config — follow the Config Resolution Protocol in
llm-wiki/SKILL.md(walk up CWD for.env→~/.obsidian-wiki/config→ prompt setup). This givesOBSIDIAN_VAULT_PATHand any QMD variables. - Read
$OBSIDIAN_VAULT_PATH/hot.mdif it exists — gives instant context on recent activity. - Read
$OBSIDIAN_VAULT_PATH/index.md— the full page inventory.
Invocation Forms
/wiki-context-pack "transformer attention mechanism" --budget 16000
/wiki-context-pack "my-project architecture decisions" --budget 8000
/wiki-context-pack --recent --budget 4000 # recent activity pack from hot.md
/wiki-context-pack "authentication patterns" # default budget: 8000 tokens
Parse the user's invocation to extract:
- topic — the query string (required unless
--recent) --budget N— token budget in tokens (default:8000; max:100000)--recent— pack the most recently updated/ingested pages instead of a topic query
Algorithm
Step 1: Relevance Pass (cheap)
Without opening page bodies:
- Scan
index.mdand frontmatter for topic match. Score each page:
- +5 exact title or alias match
- +3 tag match
- +2
summary:field contains the query term - +1
index.mdentry description contains the query term
- For
--recentmode: sort pages byupdated:frontmatter descending. Take top 20 as candidates.
- For topic mode: collect the top 20 candidates by score. If QMD is configured (
QMD_WIKI_COLLECTIONset), run a semantic pass and merge with the frontmatter score (QMD rank adds +4 to the page's score).
Step 2: Tier-Aware Selection
Within the candidate set, sort by relevance score, then apply tier ordering within each score bucket (see llm-wiki/SKILL.md, Importance Tiering section):
- All
core-tier matches first - Then
supporting - Then
peripheral(only if budget allows)
Maintain this ordering when filling the budget in Step 3.
Step 3: Compression
For each selected page (in tier/relevance order), compute its compressed representation — not a full read, but a structured distillation:
- Required: title,
tier:,tags:,summary:(from frontmatter — cheap, no body read needed) - If budget allows: add the page body, but stripped of:
- Frontmatter block (already captured above)
- The
## Sourcessection (keep source names in a one-liner instead) - Duplicate wikilinks that are already mentioned in included pages
- Boilerplate headers with no content following them
- Dedup overlapping content — if two selected pages share a paragraph (or near-identical claim), keep it only in the more relevant page. Mark the removal:
_(content also in [[other-page]])_.
Estimate tokens for each page representation as len(text_chars) / 4.
Step 4: Budget Enforcement
Fill the pack greedily in tier/relevance order until the budget is exhausted:
- Always include the frontmatter summary block for every selected page, even if the body doesn't fit.
- If a page body doesn't fit in full, include a compressed excerpt: the first non-header paragraph plus the "Key Ideas" section (if present).
- Drop
peripheral-tier pages first when trimming. - Keep a running token count. Stop adding pages when the next page would exceed the budget.
- Track how many pages were dropped and note it in the header.
Step 5: Render Output
Emit a single markdown block:
# Context Pack:
# Generated:
# Budget: tokens | Actual: tokens | Pages: /
# Methodology: 4 chars/token estimate
---
## [[]] (, ~ tokens)
tags: #tag1 #tag2
summary:
---
## [[]] (, ~ tokens)
...
If --recent mode, the header reads:
# Context Pack: Recent Activity (last N pages)
Empty result: If no pages scored above 0 and --recent produced no results, output:
# Context Pack:
No relevant pages found. Consider running /wiki-ingest to add sources about this topic.
Step 6: Log
Append to $OBSIDIAN_VAULT_PATH/log.md:
- [TIMESTAMP] CONTEXT_PACK topic="" budget= actual_tokens= pages_included= pages_dropped=
Use Cases
- Feed into
/wiki-research— pass the pack as context to avoid re-discovering known facts - Pass to
/wiki-synthesize— scoped input for a specific synthesis task - Provide to external agents via MCP or clipboard — bounded, structured, citation-ready
- Checkpoint context before a long multi-step task — know what the wiki already knows before starting
Notes
- The
4 chars/tokenheuristic matcheswiki-status's token footprint estimate — consistent across skills - The pack is a snapshot; it is not written to the vault. Re-run to refresh.
- For very large budgets (> 50K tokens), warn the user: "This pack is large. Consider narrowing your topic or using wiki-query for a targeted answer instead."
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Ar9av
- Source: Ar9av/obsidian-wiki
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.