emaballarin
User✨ Personal plugins for Claude Code (& friends)... maybe worth sharing!
Categories
Indexed Skills (20)
audit
Read a training/evaluation pipeline and emit ranked, evidence-graded, priced findings on its speed↔quality frontier — across the algorithmic (A), systems (B), and protocol (C) tiers. Use for `/parml:audit`, "why is my training slow", "how do I speed up this training without losing accuracy", "review my training loop for efficiency", "what am I leaving on the table here", "is my pipeline input-bound", or before committing to a round of optimisation. Modality-agnostic — vision, text, audio, tabular, graph, time-series. Prices everything in time-to-target-quality, never throughput. Read-first: writes only ./.parml/findings.md and never edits project code. Do NOT use for a one-line "make this loop faster" on non-ML code, for model-quality debugging with no efficiency question, or to run training.
plan
Choose an operating point on the speed↔quality frontier and turn findings into an ordered, gated change plan — with a quality floor, named non-negotiables, revert triggers, a measurement contract, and a stop rule. Use for `/parml:plan`, "which of these should I actually do", "I have N GPU-hours and need quality Q", "how much accuracy can I trade for speed here", "what order should I make these changes in", or after `/parml:audit`. Writes ./.parml/frontier.md and hands off to /ar:start when the work is many measured iterations under a locked harness. The operating point is the operator's decision, not the agent's — this skill frames it and asks. Do NOT use to discover opportunities (that is /parml:audit) or to check a change already made (that is /parml:review).
review
Adversarially review a proposed or applied efficiency change to a training/evaluation pipeline: did the claimed mechanism actually engage, is the measurement still valid, what did it silently break. Use for `/parml:review`, "I made this training faster, check it", "review this diff before I merge it", "why did throughput improve but accuracy drop", "did this speedup actually work", or on any diff touching a training loop, data pipeline, optimiser, precision, or evaluation path. Walks a pitfall catalogue — score inflation, dead knobs, the throughput fallacy, optimisations that never engaged, stale step-unit hyperparameters, train/eval mismatch, leakage. Read-only; verdicts, not edits. Do NOT use to find new opportunities (that is /parml:audit) or for general code review of non-ML code (that is /code-review).
canvas-design
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
doc-coauthoring
Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.
figure-composer
Compose one publication-grade multi-panel figure. Entry from a one-line claim + data refs, OR from an existing figure via `derive_outline_task(png)`. Runs a per-figure loop: outline (12-col grid, per-panel ask + label_budget) → fan-out one Task subagent per panel (each loads `figure-style`) → tile + stamp letters → adversarial composite review with two-tier feedback (Tier-1 outline_revisions / Tier-2 per-panel violations) → regen affected panels, ≤3 rounds. Kernel exposes panel_task / compose_figure / compose_crops / composite_review_task / derive_outline_task (import by absolute path). For one standalone plot use `figure-style`; for whole-paper figure ordering use `paper-narrative`.
figure-style
Publication-grade figure correctness and legibility rules. Load before drawing any plot and call `apply_figure_style()` — sets a role-mapped font-size ladder, outward ticks, frameless legends, and 300-dpi output. The skill is a checklist, not a house look: data fidelity (claim-titles tested against every row, excluded data never enters summaries), label economy (floor and ceiling), colour threading, chart-choice-by-data-shape, layout, and a render-then-verify QA loop (bbox collision + per-panel perceptual check). Ships helpers: focal_palette, bar_with_points, strip_with_median, end_of_line_labels, panel_letter, set_frame, panel_crops. For multi-panel figures load `figure-composer`; for whole-paper figure arc load `paper-narrative`.
literature-review
Find, verify, and synthesize STEM literature across every field — from "what's the seminal paper for X" through full multi-source reviews. Treats journal articles, arXiv/preprints, and conference proceedings as first-class; grounds every claim in a retrieved source, never fabricates DOIs, checks for superseded/withdrawn/refuted work, calibrates confidence to evidence strength (including SOTA/reproduction/ablation caveats for CS and ML), and emits a tidy DOI-pinned BibTeX reference list. Pairs with the deep-researcher agent.
paper-narrative
Judge and reshape the STORY a paper's figures tell. Input is the work itself — manuscript (or abstract) + figure deck — no hand-written brief. `derive_paper_brief_task(abstract, captions)` builds the prompt whose JSON is pitch/vision/per-figure-claims; a handling-editor reviewer on the full deck returns hook_verdict (would Fig 1 make me send this for review?), arc (hook→mechanism→evidence→application), figure_moves (panels in the wrong figure), missing_panels (concrete analyses to RUN), kill_list, and boldest_defensible_fig1. Hands per-figure claims to `figure-composer`. Load when writing or revising a paper.
pdf-explore
Use this skill when the user has attached or pointed to a PDF, paper, report, or other document and the answer needs content from more than one place in it: summarize the methods or any other section, compare sections, find where a topic is discussed, read a value or label off a figure or chart, pull tables out as CSV, or find/list/extract every instance of something across the whole document (datasets, benchmarks, citations, figures, table rows, accession numbers — including appendices). It parses the PDF once in Python: pdf_pages (pages as persistent text), pdf_outline (TOC), pdf_tables (deterministic table extraction with per-table page provenance), pdf_images (embedded figures at native resolution), and prepare/assemble helpers that fan whole-doc relevance scans / per-page maps / structured extraction out over Task subagents so the pages never fill your own context. Complementary to the built-in Read(pages=...), which attaches ≤20 PDF pages as ephemeral vision dropped after one turn — reach for this skill
web-artifacts-builder
Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.
dump
Consolidate the current session's progress into the project's auto-memory directory — the "log everything, update state, prepare for resumption" drill. Use when the user says "log everything", "checkpoint", "save progress", "update memory", "dump state", or autonomously when a long session is approaching context saturation, a natural checkpoint has been reached, or substantial non-derivable state has accumulated that would be lost on session end. Works on any project primed with /mf:prime; writes to the Claude Code auto-memory dir under ~/.claude/projects/<slug>/memory/.
prime
Prime the current project for the mindfunnel workflow — stamp a project-scoped `AGENTS.md` from the bundled stub (if absent), create a project-local `CLAUDE.md` symlink to `./AGENTS.md`, touch an empty `PROJECT.md` if absent, clean up legacy `SOUL.md` / `CLAUDE.md` / `AGENTS.md` symlinks left behind by pre-0.3.0 primings, and strip legacy `CLAUDE.md`/`AGENTS.md` entries from `.gitignore` so the new committed files track cleanly. Run from the project root. Idempotent with a safety guard — leaves pre-existing hand-authored files alone. Requires `/mf:setup` to have been run first.
setup
One-time bootstrap — seed ~/.mindfunnel/ with AGENTS.md, SOUL.md, USER.md, and PROJECT.md.example from the plugin's bundled templates. Use the first time you run the mindfunnel plugin on a new machine, or when ~/.mindfunnel/ is missing. Idempotent — detects existing files and never overwrites. Also creates a CLAUDE.md symlink pointing at AGENTS.md inside ~/.mindfunnel/, and ~/.claude/{SOUL,USER}.md + ~/.codex/{SOUL,USER}.md symlinks so both agents can reach the same personal files.
spinup
Read project memory and produce a tight "where we are + next action" brief, then wait for direction. Invoke ONLY when the user explicitly asks to resume, catch up, or get oriented on prior work — e.g. "spin up", "catch up", "resume", "where were we", "get up to speed", "what were we working on". Do NOT auto-fire on general project questions, code edits, or unrelated asks. Works on any project primed with /mf:prime; reads from the Claude Code auto-memory dir under ~/.claude/projects/<slug>/memory/.
report
Write the final summary of an autoresearch run to `./.ar/final_report.md` — trajectory, best commit and its diff, what worked, what failed, and what to try next. Use for `/ar:report`, "write up the autoresearch results", or "summarise the experiment loop". Reads `./.ar/ar.jsonl` from disk, so it works in a fresh session. Writes only the report; never iterates, commits, or reverts, and leaves the loop able to continue.
resume
Run the autoresearch experiment loop — propose one change, measure it, keep it only if it beats the noise floor, repeat. Use to resume or continue an autoresearch run, for `/ar:resume`, for "keep iterating", "next experiment", "continue optimising", or whenever `./.ar/ar.jsonl` exists and the loop should advance. Reconstructs everything from disk, so it survives compaction, `/clear`, and a fresh session. Requires `/ar:start` to have run first.
start
Open a new autoresearch experiment loop — dedicated `ar/…` git branch, `./.ar/` state, and a measured baseline noise floor so later gains can be told apart from run-to-run scatter. Invoke ONLY when explicitly asked to start an autoresearch run, open an experiment loop, or `/ar:start` — e.g. "autoresearch this", "start an ar run", "set up a loop to minimise X". Do NOT auto-fire on ordinary optimisation work. "Make this faster", "improve the accuracy", "tune these hyperparameters", "benchmark this", "find the best configuration" are normal requests to handle directly, not loops. Warranted only when many measured iterations under a locked harness are wanted — it creates a git branch and a commit on first use.
status
Print the current autoresearch run's state — goal, baseline, noise floor, best-so-far, run tallies, budget, branch, and the last few iterations. Use for `/ar:status`, "how is the loop doing", "what's the best so far", or any read-only check on an autoresearch experiment. Reconstructs everything from `./.ar/ar.jsonl` on disk, so it works in a fresh session with no prior history. Strictly read-only — never iterates, edits, commits, or reverts.
stop
End the current autoresearch run — append a `status:stopped` sentinel to `./.ar/ar.jsonl`, which is also what halts the external `ar-loop.sh` driver. Use for `/ar:stop`, "stop the loop", "halt autoresearch", or "that's enough iterations". Writes the sentinel and the final report, then prints (does not run) the command to return to the original branch. Never reverts or discards work — every kept commit stays on the experiment branch.
Bio shown is the top-scored skill's repo description as a fallback — real GitHub bios land in a future update.