cache-notes
FreeFetch & embed AI transcripts as Obsidian callouts. Args: <path>, all, refresh <path>. Prompts for URLs if empty.
The English summary is being prepared. Showing the original description.
Triage Meetings/_inbox/ — move each file to the correct subfolder by finding adjacent/similar notes via qmd, applying learned routing conventions from memory, and confirming with the user.
The English summary is being prepared. Showing the original description.
Review the instructions the agent will receive before you install.
/organize-meetings — Sweep Meetings/_inbox/ and propose destinations for every file./organize-meetings <path> — Categorize a single file (in or out of _inbox/)./organize-meetings --auto — Apply only high-confidence proposals (≥ 4/5 majority); leave the rest in _inbox/ for next sweep.| Caller | When |
|---|---|
| Standalone | Whenever you want to drain Meetings/_inbox/ (e.g. after /mail-transcripts created some stubs). |
/meeting wrap pending | Step 1.5 — between /mail-transcripts and pending discovery, so triaged files are included in the pending scan. |
The Gemini-emailed archiver (.scripts/gmail_ai_transcripts_to_meetings.py) only knows deterministic patterns: daily standups, sprint ceremonies, recurring team meetings, etc. Everything name-dependent — 1:1s with anyone, cross-team syncs, novel meeting titles — lands in Meetings/_inbox/ and waits here for triage.
Routing is agent-driven, not script-driven: similarity (via qmd-vector_search) finds where the new note's siblings live; memory (feedback_meeting-routing.md) captures learned exceptions so future runs apply them automatically.
Files in _inbox/ are normal meeting notes with Notes: and created: frontmatter. The skill does not modify frontmatter — it only moves files (git mv) and updates the H1 inside when renaming.
See vault-context for vault discovery conventions.
obsidian base:query path=Meetings.base view=Inbox format=paths. Returns every file under Meetings/_inbox/ (the .gitkeep is excluded automatically since it's not a .md).<path> arg: single-file mode — operate on that path.Nothing to organize. and exit.Check memory/feedback_meeting-routing.md (if present). It contains routing hints the user has confirmed over time, e.g.:
Titles with both "<name-a>" and "<name-b>" →
Meetings/Tech Syncs/(not One-on-ones/), filename<Name A> x <Name B> Sync - YYYY-MM-DD.md.
Apply these before qmd similarity so they always win.
For each candidate file:
- YYYY-MM-DD.md (or use the H1 inside the body if cleaner).confidence = high (memory). - YYYY-MM-DD.md → keep date suffix.YYYY-MM-DD.md only (e.g. Engineering/Scrum/) → use date-only.Tech Leads Weekly - ) → consider renaming to match.| Match count | Confidence |
|---|---|
| 5/5 or 4/5 same folder | high |
| 3/5 same folder | medium |
| < 3/5 or no matches | low |
⚠️ Never move files without confirmation, except in --auto mode (where only high-confidence proposals run, low/medium skip).
Display a numbered table:
| # | File | → Folder | New filename | Confidence | Reasoning |
|---|------|----------|--------------|------------|-----------|
| 1 | _inbox/Jane x Me - 2026-06-02.md | One-on-ones/ | Jane x Me - 2026-06-02.md | high (5/5 qmd) | siblings: John x Me, Alex x Me, Sam x Me |
| 2 | _inbox/PatMe Sync - 2026-06-02.md | Tech Syncs/ | PatMe Sync - 2026-06-02.md | high (memory) | memory: Pat/Me → Tech Syncs |
| 3 | _inbox/Foo Bar - 2026-06-01.md | ? | ? | low (1/5 qmd) | no clear majority — needs user |
Ask the user: "all", "high-confidence only", "1,3", "none", or per-file corrections (e.g. "2 → Engineering/").
For each approved proposal:
git mv "<old path>" "<new path>" — preserves history.When the user overrides a proposal ("don't put Pat/Me in One-on-ones, it goes to Tech Syncs"), this is feedback worth saving. Write or update memory/feedback_meeting-routing.md:
---
name: meeting-routing-conventions
description: Learned routing rules for /organize-meetings — overrides qmd similarity
metadata:
type: feedback
---
When triaging Meetings/_inbox/ via /organize-meetings:
- Titles containing both "<name-a>" and "<name-b>" → `Meetings/Tech Syncs/`.
**Why:** It's a recurring manager sync, not a standard 1:1.
**How to apply:** Apply before qmd similarity. Filename pattern: `<original> - YYYY-MM-DD.md`.
- (more learned rules append here over time)
Always include a Why: (the user's reasoning, if given) and How to apply: (the precondition + filename pattern). Capture one rule per bullet so future updates are atomic.
See /commit. Skip when called as part of /meeting wrap pending — the parent sequence commits at the end.
When called standalone: commit with update: /organize-meetings — N files moved (or similar). Skip if nothing was moved.
NotesCached, Participants, TodosExtracted already set in frontmatter): still route it — wrapping doesn't lock the file location. Frontmatter survives the move.# Meeting): leave it alone; don't fabricate a new H1..dup-N or ask the user.git mv, never mv — history matters.low confidence proposals, even in --auto mode.Notes:, Participants:, NotesCached:, or TodosExtracted: frontmatter. Those belong to /cache-notes, /fill-participants, and /followup-todos.No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Fetch & embed AI transcripts as Obsidian callouts. Args: <path>, all, refresh <path>. Prompts for URLs if empty.
The English summary is being prepared. Showing the original description.
Stage and commit with flexible intent parsing. Accepts file/folder scope, free-text description, amend, or any combination.
The English summary is being prepared. Showing the original description.
Extract clean markdown content from web pages using Defuddle CLI, removing clutter and navigation to save tokens. Use instead of WebFetch when the user provides a URL to read or analyze, for online documentation, articles, blog posts, or any standard web page.
The English summary is being prepared. Showing the original description.
Resolve and fill Participants frontmatter + link unlinked names in body. Args: <path>, all.
The English summary is being prepared. Showing the original description.
Extract action items as plain markdown bullets (with confirmation). Args: <path>. No args = run [/note-status pending --step=todos](../note-status/SKILL.md#pending-mode).
The English summary is being prepared. Showing the original description.
Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections. Use when working with .canvas files, creating visual canvases, mind maps, flowcharts, or when the user mentions Canvas files in Obsidian.
The English summary is being prepared. Showing the original description.