# Render

> Render knowledge-base content into shareable artifacts: Marp slide decks, matplotlib charts, printable briefs, Mermaid diagrams, and concept-graph visualizations. Output files land in the vault's outputs/ folder and re-open in Obsidian. Use when the user says 'turn this into slides', 'chart this data', 'build a deck from my notes', 'visualize the concept graph'. Part of the knowledge-base pack.

- **Type:** Skill
- **Install:** `agentstack add skill-markfive-proto-obsidian-brain-vault-render`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [markfive-proto](https://agentstack.voostack.com/s/markfive-proto)
- **Installs:** 0
- **Category:** [AI & ML](https://agentstack.voostack.com/c/ai-and-ml)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [markfive-proto](https://github.com/markfive-proto)
- **Source:** https://github.com/markfive-proto/obsidian-brain-vault/tree/main/skills/render
- **Website:** https://supermarcus.ai/brain-os

## Install

```sh
agentstack add skill-markfive-proto-obsidian-brain-vault-render
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## 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 `:

1. Gather source material:
   - If ``, search compiled/ for related notes and load top 5-10.
   - If ``, use that single note as the spine.
2. Draft an outline: title slide → problem → 3-5 key points → synthesis → references.
3. Write Marp-flavored markdown to `outputs/slides/.md`:
   ```markdown
   ---
   marp: true
   theme: default
   paginate: true
   ---

   # 

   ---

   ## Problem
   - ...

   ---

   ## Key idea 1
   - ...

   ---

   ## References
   - [[source-1]]
   - [[source-2]]
   ```
4. 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 `:

1. 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.
2. Save to `outputs/briefs/.md`.
3. Suggest: `pandoc  -o .pdf` to export.

### /chart — Render a matplotlib chart from structured data

When the user invokes `/chart `:

1. Locate structured data (a dataset note under `raw/datasets/`, or an embedded table in a compiled note).
2. Decide chart type from the question shape:
   - Time series → line.
   - Comparison → bar.
   - Distribution → histogram / violin.
   - Part-of-whole → stacked bar (not pie).
   - Correlation → scatter.
3. 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)
   ```
4. Run it. Save PNG next to the script.
5. Write a companion `outputs/charts/.md` that embeds the PNG and explains the chart.

### /graph — Render a concept graph

When the user invokes `/graph []`:

1. Build a node set from `compiled/concepts/*.md`.
2. Build edges from wikilinks between them.
3. If `` provided, restrict to 2-hop neighborhood.
4. Emit a Mermaid diagram:
   ```markdown
   ```mermaid
   graph TD
     A[Concept A] --> B[Concept B]
     ...
   ```
   ```
5. Save to `outputs/graphs/.md`. Obsidian's native Mermaid renderer will draw it.
6. 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 `:

1. Pull events from the relevant notes (look for dates in frontmatter and inline).
2. Output a Mermaid `gantt` block in `outputs/charts/timeline-.md`.

### /flashcards — Render concepts as spaced-repetition cards

When the user invokes `/flashcards `:

1. Pull 10-30 concepts.
2. Emit Anki-compatible format:
   ```
   Front: What is ?
   Back:  (source: [[]])
   ```
3. Save as `outputs/flashcards/.tsv` for Anki import.

### /handbook — Compile a printable "handbook" PDF from a tag

When the user invokes `/handbook `:

1. List all compiled notes with that tag.
2. Order them by frontmatter `order` field if present, else alphabetical.
3. Concat into a single markdown with auto-generated TOC.
4. Save as `outputs/handbooks/-handbook.md`.
5. Suggest `pandoc  -o .pdf --toc` for a bound PDF.

### /talk — Full talk package (slides + speaker notes + handout)

When the user invokes `/talk `:

1. Run `/slides ` for the deck.
2. Run `/brief ` for a 1-page handout.
3. Add speaker notes to each slide (Marp: HTML comments inside the slide).
4. 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 `qa` in future runs.
- It can be linked from concept pages (`## Derived outputs`).
- `lint` checks 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:
```yaml
---
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](https://github.com/markfive-proto)
- **Source:** [markfive-proto/obsidian-brain-vault](https://github.com/markfive-proto/obsidian-brain-vault)
- **License:** MIT
- **Homepage:** https://supermarcus.ai/brain-os

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-markfive-proto-obsidian-brain-vault-render
- Seller: https://agentstack.voostack.com/s/markfive-proto
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
