ask

A knowledge-search skill for finding and combining relevant notes from a personal vault, or stored collection of notes. The excerpt does not provide enough detail to describe its search sources or output format fully.

In plain words
What is it for?
Use it when you need to recall past work, search the vault for relevant material, and synthesize an answer from the notes it finds.
Why use it?
It is intended to recover earlier context and related notes when the needed information may already exist in the vault.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/jojoprison/mnemo/ask
Any agent
npx skills add jojoprison/mnemo --skill ask
Clone the repo
git clone --depth 1 https://github.com/jojoprison/mnemo

Made for: Claude Code, Codex.

Per session 176 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,026 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00176 $0.04026
Opus 5 $0.00088 $0.02013
Sonnet 5 $0.00035 $0.00805
Haiku 4.5 $0.00018 $0.00403

Measured 2d ago against content hash 5b2c96ec608d, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

ask scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/mnemo/skills/ask/SKILL.md · 196 lines

How it starts

The opening of the file, as written. The whole thing — 196 lines — stays where its author put it; the contents beside it link to each section on GitHub.

mn:ask — Vault Knowledge Search & Synthesis

Invocation marker (both runtimes): begin your reply with the exact line 🧠 mn:ask (mnemo) → running — the user-visible confirmation that this skill actually loaded. Emit it once per invocation, before any other output.

Portable paths

Resolve <mnemo-root> once to the absolute plugin root before reading bundled files or running bundled scripts. In Claude Code, use ${CLAUDE_PLUGIN_ROOT}; in Codex, derive it from this loaded SKILL.md path (skill directory → skills/ → plugin root). Replace <mnemo-root> with that quoted absolute path in every command — never execute the placeholder literally and never hunt versioned cache directories.

When another mnemo skill must run, use the runtime-native path: Claude Code invokes mn:<skill> through its Skill tool; Codex reads <mnemo-root>/skills/<skill>/SKILL.md completely and follows it with the prepared input. For user-facing explicit syntax, render /mn:<skill> in Claude Code and $mnemo:<skill> in Codex.

Search across the entire vault, read relevant notes, and synthesize an answer with source citations.

Prerequisites & config

Obsidian must be open. Config at ~/.mnemo/config.json — reads vault, links_section, taxonomy, and taxonomy_roles. Before resolving a semantic type, require exactly the five role keys fact, insight, source, session, and moc; require every target to exist in taxonomy; and require session → session plus moc → moc. The deterministic legacy Zettelkasten fallback is allowed; any other missing/invalid map offers the runtime-native setup skill instead of guessing. Full schema in <mnemo-root>/references/config-schema.md. If the config is missing, ask for the vault name and offer setup.

Workflow

Step 1: Accept Query

Input as argument: /mn:ask "what did we decide about pricing strategy?"

User-invoked, no argument → ask: "What would you like to find in your vault?"

Agent-invoked (proactive, mid-task) → do NOT stop to ask the user. Derive the query yourself from the task at hand — the bug about to be fixed, the subsystem being entered, the decision being weighed — and search for that. The point of proactive recall is to consult memory without interrupting the user. If nothing relevant surfaces (Step 5), don't dump a "not found" wall — note it in one line and return to the task.

Read the full file on GitHub · 196 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 196 lines · 176 tokens per session scan A 5b2c96ec608d

Subscribe to this mod's changes

ask is a skill published in the GitHub repository jojoprison/mnemo (6 stars, last pushed 12d ago), licensed MIT. It adds 176 tokens to every session and 4,026 once invoked, about $0.0009 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

design-is

Audit a design against Dieter Rams' ten "Good design is..." principles, then hand off a /make-plan prompt for one of three outcomes — new design, refine design, or redesign. Use when the user says "audit this design", "design review", "check this UI against Rams", "is this UI good", "critique this design", "design…

thedotmack/claude-mem · 91 tokens

cloud-sync

Set up or check claude-mem cloud sync with cmem.ai Pro. Use when the user says "set up cloud sync", "sync my memories", "cmem pro", "cloud backup", "sync status", or wants their memory database backed up or synced to their cmem.ai account.

thedotmack/claude-mem · 64 tokens

ix

This skill should be used when answering structural questions about a codebase: understanding what a symbol is, tracing flows, measuring change impact, finding callers/callees/imports, or detecting code smells. It drives the Ix CLI (ix map/explain/trace/impact/search/rank/smells) against a persistent code graph stored…

ix-infrastructure/Ix · 103 tokens

epistemic-transaction

Use when starting complex work, planning implementation, breaking down tasks, creating specs, or when the user says 'plan this as transactions', 'plan transactions', 'break this down', 'create a spec', 'how should I approach this', 'transaction plan', or mentions needing a structured approach to multi-step work. This…

EmpiricaAI/empirica · 96 tokens

services-audit-cron

Use when scheduling the canonical biweekly services-audit cron loop for Empirica's AI service scanner (Phase 3). The auditor body is empirica services-audit — captures a fresh scan, diffs against the previous, and emits a notification when novel running services appear. This skill provides the prompt template that…

EmpiricaAI/empirica · 126 tokens

message-cleanup

Daily housekeeping body for the canonical message-cleanup loop. Prunes expired git-notes mesh messages so the inbox stays focused on un-read ones. Loaded by the loop scheduler when the cron entry fires (default 03:17 daily) — never invoked directly by a user. Triggers: from the message-cleanup loop, "message…

EmpiricaAI/empirica · 89 tokens