Generate AI summaries for markdown notes using Ollama and populate the frontmatter `summary` property. Use hierarchical map-reduce for notes exceeding model context. Trigger when asked to summarize notes, generate note abstracts, add AI summaries to frontmatter, or batch-summarize Obsidian vault notes.
Installation
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Generate AI summaries for markdown notes using Ollama and populate the frontmatter `summary` property. Use hierarchical map-reduce for notes exceeding model context. Trigger when asked to summarize notes, generate note abstracts, add AI summaries to frontmatter, or batch-summarize Obsidian vault notes.
allowed-tools
Read, Grep, Glob, Bash
Instructions
Ask the user which Ollama model to use (e.g., qwen3:8b, llama3, gemma2). The model must already be pulled in Ollama.
Dry-run first to preview summaries without modifying files:
uv run --with ollama,pyyaml \
skills/summarize-note/scripts/summarize_note.py <model> --dry-run <file_path> [...]
If summaries look good, run without --dry-run to write them:
uv run --with ollama,pyyaml \
skills/summarize-note/scripts/summarize_note.py <model> <file_path> [...]
Review the JSON output to confirm summaries were generated and written correctly.
Key behaviors
Notes with an existing human summary (no [AI] prefix) are skipped automatically.
Long notes are split by headings and summarized via concurrent map-reduce.
Thinking model tags (e.g. <think>) are stripped automatically.
Use --chunk-size to adjust for models with smaller context windows (default: 50000 chars, ~12K tokens, sized for 32K+ context models).
Use --base-url to point to a remote Ollama instance.