obsidian-memory-contract

Enforces frontmatter, tag, and canvas rules for writing memory notes into Obsidian vaults.

2|Updated Jul 28, 2026
One-click install
npx skills add https://github.com/mbadali25/useful-claude-add-ons --skill obsidian-memory-contract-mbadali25
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: obsidian-memory-contract
Source: https://github.com/mbadali25/useful-claude-add-ons/tree/main/plugin/obsidian-vault/skills/obsidian-memory-contract
Command: npx skills add https://github.com/mbadali25/useful-claude-add-ons --skill obsidian-memory-contract-mbadali25

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Notes written into an Obsidian vault without a consistent contract break Dataview dashboards, tag vocabularies, and recall workflows, leaving durable memory fragmented and unqueryable. ## Core Features & Use Cases - Six-key frontmatter contract: Defines mandatory type, title, created, updated, status, and tags keys, plus type-specific keys for concept, session, source, and decision notes. - Tag and evidence discipline: Requires reusing the vault's existing tag vocabulary and forbids invented locators, quotes, dates, or confidence scores. - Canvas and scale rules: Mandates that canvases hold no facts and that large vaults (50,000+ notes) use filesystem Read/Grep/Glob instead of MCP bridge calls. - Use Case: Before writing a session summary into a configured Obsidian vault, apply this contract so the note passes the vault_guard.py hook, carries valid frontmatter, and stays visible to Dataview queries. ## Quick Start Apply the Obsidian memory contract to write a conforming concept note about today's architecture decision into my configured vault.

Frequently Asked Questions about obsidian-memory-contract

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a conforming memory note in an Obsidian vault?

Start from the plugin's templates directory or run /obsidian-vault:note, which stamps the title and dates for you. Every note needs six frontmatter keys: type, title, created, updated, status, and at least one tag.

What frontmatter fields does an Obsidian memory note require?

Every note requires type, title, created, updated, status, and tags. Type-specific keys extend this: concepts add complexity, domain, and sources; decisions add decision_id, deciders, and supersedes fields.

Should I use MCP or filesystem access for large Obsidian vaults?

Use plain filesystem Read, Grep, and Glob once a vault exceeds roughly 50,000 notes, since Omnisearch indexing and backlink resolution make MCP calls slow at that scale. Reserve MCP for operations only the running app can perform.

Can Obsidian canvases store facts for later recall?

No. A canvas is a spatial arrangement of file references and labels; anything stated only inside a canvas is invisible to recall tools like /obsidian-vault:reflect. Facts must live in notes.

Why does the vault guard reject my note write?

The vault_guard.py hook blocks writes missing any of the six required frontmatter keys or with malformed YAML, such as inline comments after a value. Check that title matches the filename exactly and tags are listed one per line.