Install
$ agentstack add skill-markfive-proto-obsidian-brain-vault-render ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Render Pack — "Make my knowledge look like something"
render is the output layer. Same content, many presentations: a deck for a talk, a chart for a post, a printable brief for a stakeholder, a graph for your own orientation. Everything lands in outputs/ and is viewable directly in Obsidian (with Marp plugin for slides, standard image embeds for charts).
Commands
/slides — Render notes as a Marp deck
When the user invokes /slides :
- Gather source material:
- If ``, search compiled/ for related notes and load top 5-10.
- If ``, use that single note as the spine.
- Draft an outline: title slide → problem → 3-5 key points → synthesis → references.
- Write Marp-flavored markdown to
outputs/slides/.md:
```markdown --- marp: true theme: default paginate: true ---
#
---
## Problem
- ...
---
## Key idea 1
- ...
---
## References
- [[source-1]]
- [[source-2]]
```
- Report the path and instructions to preview in Obsidian (Marp plugin) or export with
marp --pdf.
Slide density rules:
- ≤ 6 bullets per slide.
- ≤ 12 words per bullet.
- One idea per slide.
- Always include a "References" slide at end linking back to the vault notes.
/brief — Render an exec brief (1-2 page PDF-ready)
When the user invokes /brief :
- Draft a brief in this structure:
- Title + 1-line summary.
- "So what" — the single most important takeaway (2-3 sentences).
- 3 key findings (bullet list).
- Supporting evidence table.
- Recommendations / next steps.
- Sources.
- Save to
outputs/briefs/.md. - Suggest:
pandoc -o .pdfto export.
/chart — Render a matplotlib chart from structured data
When the user invokes /chart :
- Locate structured data (a dataset note under
raw/datasets/, or an embedded table in a compiled note). - Decide chart type from the question shape:
- Time series → line.
- Comparison → bar.
- Distribution → histogram / violin.
- Part-of-whole → stacked bar (not pie).
- Correlation → scatter.
- Write a standalone Python script to
outputs/charts/.py:
``python import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv("") # ... chart code ... plt.tight_layout() plt.savefig("outputs/charts/.png", dpi=200) ``
- Run it. Save PNG next to the script.
- Write a companion
outputs/charts/.mdthat embeds the PNG and explains the chart.
/graph — Render a concept graph
When the user invokes /graph []:
- Build a node set from
compiled/concepts/*.md. - Build edges from wikilinks between them.
- If `` provided, restrict to 2-hop neighborhood.
- Emit a Mermaid diagram:
``markdown `mermaid graph TD A[Concept A] --> B[Concept B] ... ` ``
- Save to
outputs/graphs/.md. Obsidian's native Mermaid renderer will draw it. - For large graphs (>40 nodes), use Graphviz DOT instead and export PNG.
/timeline-chart — Render a timeline as Gantt or dated bar
When the user invokes /timeline-chart :
- Pull events from the relevant notes (look for dates in frontmatter and inline).
- Output a Mermaid
ganttblock inoutputs/charts/timeline-.md.
/flashcards — Render concepts as spaced-repetition cards
When the user invokes /flashcards :
- Pull 10-30 concepts.
- Emit Anki-compatible format:
`` Front: What is ? Back: (source: [[]]) ``
- Save as
outputs/flashcards/.tsvfor Anki import.
/handbook — Compile a printable "handbook" PDF from a tag
When the user invokes /handbook :
- List all compiled notes with that tag.
- Order them by frontmatter
orderfield if present, else alphabetical. - Concat into a single markdown with auto-generated TOC.
- Save as
outputs/handbooks/-handbook.md. - Suggest
pandoc -o .pdf --tocfor a bound PDF.
/talk — Full talk package (slides + speaker notes + handout)
When the user invokes /talk :
- Run
/slidesfor the deck. - Run
/brieffor a 1-page handout. - Add speaker notes to each slide (Marp: HTML comments inside the slide).
- Output triple:
outputs/slides/.md,outputs/briefs/.md,outputs/handouts/.md.
File-in-back rule
Every rendered artifact is itself a markdown file in the vault. That means:
- It is indexable by
qain future runs. - It can be linked from concept pages (
## Derived outputs). lintchecks its frontmatter and links like any other note.
Obsidian plugin recommendations
- Marp for Obsidian — preview slides inline.
- Advanced Tables — for brief/handbook tables.
- Excalidraw — companion hand-drawn diagrams.
- Mermaid (core) — graph + timeline rendering.
- Pandoc plugin (or shell pandoc) — export to PDF.
Output frontmatter
Every rendered artifact gets:
---
type: rendered
render_kind: slides|brief|chart|graph|timeline|flashcards|handbook|talk
rendered_from: []
rendered_at:
tags: [output, render]
---
So lint and qa can filter them out when reading source material.
Related skills (same pack)
[[ingest]]— source of material[[compile]]— where the graph structure comes from[[qa]]— answers that can be rendered as slides/briefs[[lint]]— can render its report as a dashboard
Attribution
Pack inspired by Karpathy's preference for visual outputs (Marp slides, matplotlib, markdown reports) filed back into the vault so explorations compound.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: markfive-proto
- Source: markfive-proto/obsidian-brain-vault
- License: MIT
- Homepage: https://supermarcus.ai/brain-os
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.