zettel-brainstormer
SKILL.md
Zettel Brainstormer ðŸ§
This skill formalizes the process of taking a rough idea or draft and enriching it with deep research, diverse perspectives, and structured brainstorming.
The configuration file is config/models.json, which can be edited manually or using the setup.py script.
New 3-Stage Workflow
This skill now supports a 3-stage pipeline to balance cost and quality:
- Find References (with
find_links.py)
- Run
scripts/find_links.pyto identify relevant existing notes.- Wikilinked documents (follows [[wikilinks]] N levels deep, up to M total docs)
- Tag-similar documents (finds notes with overlapping tags)
- Native Obsidian Integration: Uses
obsidian-clifor high-performance indexing and discovery if available. - Semantic Discovery (Optional): Can leverage the
zettel-linkskill for finding "hidden" conceptual connections that don't share explicit tags or links.
- Output: A JSON list of absolute file paths to relevant notes.
- Subagent: Preprocess contents (with
preprocess_model)
- The agent iterates through the list of files found in Stage 1.
- For each file:
- Read the file content.
- Apply
templates/preprocess.mdusing thepreprocess_model, pass the seed note keypoints and file content as context. - Extract: Relevance score, Summary, Key Points, and Quotes.
- Output: A structured markdown summary of the note.
- Draft & Humanize (with
pro_model)
- Gather all preprocessed markdown outputs from Stage 2.
- Apply
templates/draft.mdusing thepro_model. - Synthesize points, add proper Obsidian properties, tags, and links.
- Uses the
obsidianskill if available to match style.
Files & Scripts
This skill includes the following resources under the skill folder:
scripts/find_links.py-- finds relevant note paths (linked + tag similar)scripts/draft_prompt.py-- (Deprecated) generate prompt for agentscripts/obsidian_utils.py-- shared utilities for wikilink extractiontemplates/preprocess.md-- Instructions for subagent to extract info from single notetemplates/draft.md-- Instructions for final draft generationconfig/models.example.json-- example configuration file
Configuration & Setup
First Run Setup: Before using this skill, you must run the setup script to configure models and directories.
python scripts/setup.py
This will create config/models.json with your preferences. You can press ENTER to accept defaults.
Configuration Fields:
pro_model: The model used for drafting (defaults to agent's current model)preprocess_model: Cheap model for extraction (defaults to agent's current model)zettel_dir: Path to your Zettelkasten notesoutput_dir: Path where drafts should be savedsearch_skill: Which search skill to use for web/X research (web_search, brave_search, or none)link_depth: How many levels deep to follow [[wikilinks]] (N levels, default: 2)max_links: Maximum total linked notes to include (M links, default: 10)discovery_mode: Options arestandard(default),cli(uses obsidian-cli), orsemantic(uses zettel-link).
Usage
- Trigger when user asks: "brainstorm X", "expand this draft", "research and add notes to ".
- Example workflow (pseudo):
- Pick a seed note.
- Find Links:
python scripts/find_links.py --input <seed_note> --output /tmp/paths.json - Preprocess Subagent Loop:
- Load
/tmp/paths.json. - For each path, read content.
- Prompt
preprocess_modelwithtemplates/preprocess.md+ content. - Store result.
- Load
- Final Draft:
- Concatenate seed note + all preprocess results.
- Prompt
pro_modelwithtemplates/draft.md+ concatenated context.
- Save result to note.
Notes for maintainers
- Keep preprocess outputs small (200-600 tokens) to save cost.
- Ensure all external links are included in the
Referencessection with full titles and URLs. - When appending, always include a timestamp and short provenance line.
Weekly Installs
11
Repository
hxy9243/skillsFirst Seen
Feb 12, 2026
Security Audits
Installed on
github-copilot11
codex11
kimi-cli11
gemini-cli11
opencode11
amp11