wiki_ask — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited wiki_ask (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Resolving script paths (read first): Commands below invoke scripts as<BIN>/X.py(and a few as<SKILLS>/...). Resolve these to absolute paths once before running anything:
>
-<SKILL_DIR>= the directory thisSKILL.mdlives in. -<SKILLS>= theskills/folder containing this skill =<SKILL_DIR>/..-<BIN>= thebin/folder beside it =<SKILL_DIR>/../../bin
>
Do not hardcode a fixed prefix like.agents/binor../bin: shell relative paths resolve against the current working directory (usually the topic root), not this skill's location. Once resolved,<BIN>is typically.agents/binwhen invoked from the hub root, or.claude/binfrom inside a topic directory.
This skill transforms the agent into a conversational interface for the knowledge base. When the user asks a question, you must intelligently deploy a combination of deterministic search tools to retrieve context and provide a highly rigorous, cited answer.
Tooling (framework-agnostic): This skill is written tool-agnostic. Where it says file-read tool, use your agent's equivalent (Readin Claude Code,view_filein Antigravity,cat/open elsewhere). Shell commands run viaBash/PowerShell(Claude Code) or your framework's shell tool.
CRITICAL INSTRUCTION: Do NOT answer questions using your parametric memory. Every factual claim or summary you provide MUST be grounded in the local knowledge base and explicitly cited using Obsidian wikilinks (e.g.,[[Concept Name]]or[[Paper Title]]).
When tasked with answering a question, follow these strategies depending on the nature of the inquiry:
If the user asks about the definition, lineage, or application of a specific concept (e.g., "What is Haag Duality?"):
python <BIN>/extract_concept_context.py --name "Target Concept" --topic-dir "<TOPIC_DIR>"
scratch/concept_context_<slug>.md file with your file-read tool.If the user asks broad survey questions or inquiries about relationships (e.g., "What papers discuss quantum error correction?"):
python <BIN>/query-graph.py "<SQL>"
nodes(id TEXT PRIMARY KEY, path TEXT, title TEXT, type TEXT, category TEXT, summary TEXT, created TEXT, updated TEXT)edges(source_id TEXT, target_id TEXT, type TEXT)tags(node_id TEXT, tag TEXT)aliases(node_id TEXT, alias TEXT)type — taken from frontmatter when present (papers use type='papers'), otherwise derived from the containing folder (concept, reference, thesis, topic). category is the broader bucket (concept/reference/topic). You can filter by either column.SELECT title, summary FROM nodes WHERE type='papers' AND id IN (SELECT node_id FROM tags WHERE tag='quantum-error-correction')SELECT title, summary FROM nodes WHERE type='concept' AND id IN (SELECT node_id FROM tags WHERE tag='duality')SELECT n.title, e.type FROM nodes n JOIN edges e ON n.id = e.target_id WHERE e.source_id = 'some-concept-id'If the user asks highly specific, detail-oriented questions requiring deep dives into math or specific mechanisms:
python <BIN>/search-wiki.py "<regex>" <files...>
If the user asks about the connection or path between two distinct concepts (e.g., "How is Concept A connected to Concept B?"):
WITH RECURSIVE SQL query to find paths up to 3 hops.python <BIN>/query-graph.py "WITH RECURSIVE undirected_edges(node1, node2) AS (SELECT source_id, target_id FROM edges UNION SELECT target_id, source_id FROM edges), path_search(current_node, path, depth) AS (SELECT 'node-A-id', 'node-A-id', 0 UNION ALL SELECT u.node2, p.path || ' -> ' || u.node2, p.depth + 1 FROM undirected_edges u JOIN path_search p ON u.node1 = p.current_node WHERE p.depth < 3 AND p.path NOT LIKE '%' || u.node2 || '%') SELECT path FROM path_search WHERE current_node = 'node-B-id' LIMIT 5"
Once you have gathered sufficient context using the strategies above:
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.