initial-setup — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited initial-setup (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.
First-time setup for mnemo. Creates config.json with all settings.
🧠 Welcome to mnemo — persistent memory for Codex and Claude Code.
Let's set up your configuration. This takes about 30 seconds.What's your Obsidian vault name?
(The name shown in Obsidian's vault switcher)
> mainVerify vault exists:
obsidian search query="test" vault="{input}"If error → "Vault not found. Is Obsidian open? Check the vault name."
Which note taxonomy do you use?
[1] Atom/Molecule/Source/Session/MOC (Zettelkasten-inspired)
[2] PARA (Projects/Areas/Resources/Archive)
[3] Custom (you'll define prefixes and tags)
> 1Map selection to taxonomy config.
What heading do you use for note cross-references?
[1] ## Связи (Russian)
[2] ## Links
[3] ## Related
[4] ## Connections
[5] Custom
> 1Write ~/.mnemo/config.json:
{
"vault": "main",
"taxonomy": {
"atom": { "prefix": "Atom — ", "tag": "atom" },
"molecule": { "prefix": "Molecule — ", "tag": "molecule" },
"source": { "prefix": "Source — ", "tag": "source" },
"session": { "prefix": "Session — ", "tag": "session" },
"moc": { "prefix": "MOC — ", "tag": "moc" }
},
"links_section": "## Связи",
"handoff_note": "Meta — Session Handoff",
"cascade": {
"obsidian": { "enabled": true },
"claude_mem": { "enabled": false, "url": "http://127.0.0.1:37777" },
"memory_dir": { "enabled": true },
"claude_md": { "enabled": false }
}
}First check — skip this step entirely if the handoff note already exists:
obsidian read file="{handoff_note}" vault="{vault}" 2>/dev/null | head -1If empty output, create via MCP (shell-safe for future edits that may contain code blocks — see references/tool-routing.md):
mcp__obsidian__create(
path: "Meta — Session Handoff.md",
file_text: """---
type: meta
tags: [meta, handoff, cross-session]
---
# Meta — Session Handoff
Cross-session continuity file. Updated by mnemo:session.
## Pending
## Context
- mnemo setup completed on {date}
"""
)Offer: "Create a hub note for short-name navigation? E.g. [[ProjectName]] → its MOC."
Why: Obsidian's resolver ignores frontmatter aliases for bare [[Name]] links (by design) — only a real file named ProjectName.md makes [[ProjectName]] resolve. See references/tool-routing.md ("Hub notes"). Without it, every short [[ProjectName]] reference is a broken ghost.
If user confirms — via MCP:
mcp__obsidian__create(
path: "{short-name}.md",
file_text: """---
type: hub
aliases: [{short-name}]
---
# {short-name}
→ [[MOC — {full project name}]]
{links_section}
- [[MOC — {full project name}]]
"""
)Skip if a file with that name already exists (obsidian read returns content). Note name must not contain # / . / / (see references/tool-routing.md naming rules).
🧠 mnemo is ready!
Your skills:
/mn:health — vault audit & analytics
/mn:connect — discover hidden links
/mn:session — session notes + handoff
/mn:ask — search & synthesize
/mn:save — memory routing cascade
/mn:review — session completeness review
Config saved to: ~/.mnemo/config.json
Handoff note created: Meta — Session Handoff
Try: /mn:healthCommon failures in references/gotchas.md. Full config schema in references/config-schema.md. Skill-specific rules:
~/.mnemo/config.json exists, show current values and ask before overwriting. User may just want to change one field, not rebuild everything.obsidian search query="test" vault={input} fails-fast if the vault name is wrong or Obsidian isn't running.project/area/resource/archive prefixes. Custom taxonomy accepts any prefixes as long as each ends in a separator ( — , : , /).~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.