Skip to content

Latest commit

 

History

History
121 lines (96 loc) · 11 KB

File metadata and controls

121 lines (96 loc) · 11 KB

Agents

This is an Obsidian vault with AI agent skills. See USER.md for the vault owner's identity. Agents working in this repo should be aware of the following structure and conventions.

Skills

Custom skills live in .agents/skills/. Each has a SKILL.md with usage, workflow, and conventions.

Skill What it does Arguments
meeting Create a meeting note
/meeting Pick from today's Google Calendar events
/meeting {title} Manual creation with today's date folder={subfolder}
/meeting wrap <path> Wrap up: cache → participants → todos → commit
/meeting wrap pending [dates] Find & wrap all pending meetings today, yesterday, last week, 2026-01-01..2026-02-03
cache-notes Fetch & embed AI transcripts as Obsidian callouts
/cache-notes <path> Cache a specific meeting file (prompts for URLs if empty)
/cache-notes all Batch-cache all uncached meetings
/cache-notes refresh <path> Re-fetch and overwrite existing cache
fill-participants Resolve and fill Participants: frontmatter
/fill-participants <path> Fill for a specific meeting note
/fill-participants all Scan and fill all meetings missing participants
followup-todos Extract action items as plain markdown bullets
/followup-todos <path> Extract from a specific meeting note
/followup-todos /note-status pending --step=todos
recap Produce a recap from emails, Slack, Jira, and vault notes
/recap Recap current week (Monday through today)
/recap [dates] Recap a specific date range today, yesterday, last week, 2026-01-01..2026-02-03
sync-upstream-obsidianos Pull structural updates from upstream ObsidianOS
/sync-upstream-obsidianos Preview and merge upstream updates
/sync-upstream-obsidianos preview Show what's new without merging
note-status Verify meeting notes are fully processed
/note-status <path> Check a specific note
/note-status [dates] Check notes in a date range today, yesterday, last week, 2026-01-01..2026-02-03
/note-status all Check every meeting note
/note-status pending [dates] Filter to pending, prompt selection --step=notes|cache|participants|todos
commit Stage and commit with flexible intent parsing
/commit Staged files, or infer related changes
/commit <file or folder> Scope commit to a specific path
/commit <description> Infer scope from free-text intent
/commit amend [scope/description] Amend last commit (with optional scope or new message)
(sequence mode) Deferred — sub-skills skip, caller commits once at the end
defuddle Extract clean markdown from web pages with Defuddle CLI (prefer over raw fetch for articles & docs)
json-canvas Create and edit Obsidian JSON Canvas (.canvas) files
obsidian-bases Create and edit Obsidian Bases (.base) — views, filters, formulas
obsidian-cli Drive a running Obsidian app via the obsidian CLI (read/write/search, dev helpers)
obsidian-markdown Obsidian Flavored Markdown — wikilinks, embeds, callouts, properties

Skill proxies (symlinks to .agents/skills/)

The canonical skill tree is .agents/skills/. These paths are symlinks to the same directory so each agent discovers the same skills:

Path Used by
.cursor/skills Cursor
.claude/skills Claude Code
.opencode/skills OpenCode
skills/ OpenClaw (workspace skills)

OpenCode also discovers .agents/skills/ directly; the .opencode/skills link matches the Cursor / Claude layout.

Rules

Shared rules live in .agents/rules/ and are the single source of truth. Agent-specific wrappers point to them.

Rule Purpose
qmd-search Prefer QMD over grep for vault search (always apply)
skill-conventions Skill structure, shared conventions, project context
skill-registry Keep skill tables in sync when skills change

Agent wrappers

Agent Instruction files How rules are loaded
Cursor .cursor/rules/*.mdc Auto-injected by glob; each .mdc points to .agents/rules/
Claude Code CLAUDE.md, .agents/skills/CLAUDE.md Read on startup; point to .agents/rules/
OpenCode / Crush OpenCode.md Read on startup; points to .agents/rules/
OpenClaw AGENTS.md (and your gateway config) Rules live in .agents/rules/; skills via repo skills/.agents/skills/

Vault Layout

Meetings/              Meeting notes by subfolder (PAM/, TBs/, Eng/, etc.)
Templates/             Obsidian templates
Teams/People/          Person files: @Name.md
Teams/                 Team files: +TeamName.md
ToDo's.md              Aggregated Tasks plugin view
Tracker.md             Project tracker

Conventions

  • User: See USER.md for identity, timezone, aliases, and agent behavior rules.
  • Frontmatter: YAML between --- fences. modified: is managed by Obsidian — never set manually.
  • Participants: [[@Name]] wikilinks (people) or [[+Team]] (teams).
  • AI Transcripts: Cached under ## 🤖 AI Notes with provider subheadings and collapsible callouts ([!gemini_notes]-, [!gemini_todos]-, [!gemini_transcript]-).
  • Tasks priorities: 🔺 highest, ⏫ high, 🔼 medium, 🔽 low.

MCP & external tools

Syncing from Upstream

If you forked or cloned this repo into a private vault, you can pull structural updates (skills, rules, shared conventions) without overwriting your personal data.

./.scripts/sync-upstream.sh              # fetch + merge
./.scripts/sync-upstream.sh --preview    # see what's new without merging

First-time setup:

git remote add upstream <url-to-this-repo>
./.scripts/sync-upstream.sh              # auto-configures merge driver on first run

Protected paths (always keep local version during merge): USER.md, Tracker.md, .env, .cursor/mcp.json, Meetings/, Teams/, Templates/, Recaps/. Edit .gitattributes to add or remove paths.