render Skill
scriptsVerwandelt Pläne, Reviews und Reports in interaktive HTML-Seiten, auf denen Nutzer direkt verankertes Feedback und Markups hinterlassen können.
- GitHub Stars
- 8
- Dateien
- 27
- Letzter Commit
- 28. Okt. 2026
- Lizenz
- MIT
- Erlaubte Tools
- —
Was macht der render Skill?
render ist ein Agent Skill. Verwandelt Pläne, Reviews und Reports in interaktive HTML-Seiten, auf denen Nutzer direkt verankertes Feedback und Markups hinterlassen können.
Zusammenfassung erzeugt aus der SKILL.md des Skills.
Über den render skill
Dieser Skill ermöglicht es, komplexe Pläne, Reviews und Reports in interaktive HTML-Seiten umzuwandeln. Er wurde für Entwickler und Projektleiter entwickelt, die über lineares Markdown hinausgehen wollen, um strukturiertes, visuelles Feedback zu geben. Anstatt durch lange Dokumente zu scrollen, interagieren Nutzer mit spezialisierten Layouts wie Anforderungsmatrizen, Abhängigkeitsplänen oder Code-Review-Boards, bei denen jedes Element direkt an einem spezifischen Inhalt verankert ist.
Ein Agent sollte diesen Skill laden, wenn ein Nutzer verlangt, ein Dokument visuell aufzubereiten, einen Plan ordentlich zu reviewen oder den Output eines anderen Tools zu wrappen. Er kann bestehende Skills über einen Slash-Command wie `render /review-code` wrappen oder bestehende Dateien konvertieren, indem man den Pfad angibt. Der Skill erzeugt eine einzelne, eigenständige HTML-Datei mit eingebettetem State, sodass Nutzer Markups und Kommentare hinterlassen können, die der Agent später wieder auslesen kann, um darauf zu reagieren. Er nutzt spezifische Design-Templates und Assembly-Scripts, um sicherzustellen, dass jede Seite funktional und themenkorrekt bleibt.
Geschrieben basierend auf dem SKILL.md des skills. Jeder use case wurde gegen ein zitat daraus geprüft.
So installierst du den render Skill
Jeder Befehl kopiert den Skill-Ordner in das Skills-Verzeichnis des Clients. Starte den Client neu oder beginne eine neue Session, um ihn zu laden.Den render Skill in Plugin installieren
/plugin marketplace add mgiovani/cc-arsenal /plugin install cc-arsenal@cc-arsenal-marketplace
Den render Skill in Claude Code installieren
~/.claude/skills/render/SKILL.md
$ npx degit mgiovani/cc-arsenal/skills/render ~/.claude/skills/renderDen render Skill in Claude Code (project) installieren
.claude/skills/render/SKILL.md
$ npx degit mgiovani/cc-arsenal/skills/render .claude/skills/renderDen render Skill in Codex installieren
~/.agents/skills/render/SKILL.md
$ npx degit mgiovani/cc-arsenal/skills/render ~/.agents/skills/renderDen render Skill in Gemini CLI installieren
~/.gemini/skills/render/SKILL.md
$ npx degit mgiovani/cc-arsenal/skills/render ~/.gemini/skills/renderDen render Skill in Claude.ai installieren
npx degit mgiovani/cc-arsenal/skills/render render && zip -r render.zip render # claude.ai → Customize → Skills → + → Create skill → Upload a skill → render.zip
SKILL.md
Auf GitHub ansehenRender
Build a page the user can work, not a document they have to scroll. Long findings lists, requirement inventories, option matrices and step plans all lose their shape as linear markdown. This skill gives them one, and gives the user a way to answer back that survives the round trip.
Invocation forms
| Form | Behavior |
|---|---|
render <mode> [subject] |
Build that mode's page for the subject |
render /<skill> [args] |
Run the wrapped skill, then render its output in the matching mode |
render <path> |
Read an existing file and convert it to its matching mode |
render |
Show the mode table and ask which one; never pick one silently |
Modes
| Mode | The page is | Per-item verdicts |
|---|---|---|
prd |
Requirements grouped by family, the evidence behind each | keep / change / drop |
plan |
Ordered steps, their dependencies, the files each touches | approve / rework / cut |
review |
Findings by severity and file, with the code excerpt | fix / won't fix / discuss |
audit |
Whole-repo findings, filterable by area and severity | same triage as review |
compare |
Options against weighted criteria, evidence per cell | pick a winner |
brainstorm |
Idea cards, the tension each one resolves, by theme | shortlist / park / drop |
explain |
The one-line answer, the mechanism, then detail on demand | none, comments only |
map |
Module graph, data flow, entry points | none, comments only |
tour |
A guided walkthrough of the code, one stop per file or function | none, comments only |
timeline |
Dated events for an incident or a piece of history | none, comments only |
diff |
Before/after hunks the reader decides on | accept / revise / reject |
report |
A status and metrics summary | none, comments only |
Each mode's contents are specified in references/<mode>.md. Load only the one
you need, and load it after the mode is settled.
Workflow
1. Resolve the mode
From the first argument:
- A mode name: use it.
- A skill name with a leading slash: run that skill first, then map its output
to a mode using the table in
references/wrapping.md. - A file path: read the file, then pick the mode its content matches. State which mode you picked and why, in one line, before building.
- Nothing: print the mode table above and ask. Do not guess.
2. Gather the real content
The page renders what the run actually produced. Never invent an item to fill a grid, never write placeholder copy, never carry an example from a reference file into a real page. If a section would be empty, the page says it is empty and why.
A wrapped skill supplies its own output, and a file supplies its contents. With
a bare mode, do the work the mode implies before rendering: render review on a
diff runs the review first.
3. Load the design guidance
Announce Using artifact-design to calibrate this page's treatment and load the
artifact-design skill before writing any HTML, via the Skill tool where one
exists. If the page will declare a runtime capability, load
artifact-capabilities the same way.
Both are host skills rather than siblings in this repository, so they are absent on some agents. Where neither can be loaded, say so in one line and apply references/page-kit.md directly: it carries the theming rules, the type and layout floor, and the state contract this skill depends on. The page is still built; it just loses the calibration pass.
4. Build the page
No page is hand-authored from a blank file. assets/page.css and
assets/page.js ship the whole design system and runtime; assets/gallery.html
renders every block once and is the visual catalog to check a block's markup
against; assets/templates/<mode>.html is the composition to start from.
Building means:
- Copy
assets/templates/<mode>.htmlfor the resolved mode straight to the real output path,.cc-arsenal/renders/<mode>-<slug>-<YYYY-MM-DD>.html(see the Document skeleton section of references/page-kit.md for why the move is safe even though the template's../page.cssand../page.jslinks are relative). - Replace the whole
/*SAMPLE*/-markedDATAobject with the real content gathered in step 2. Keep the template's structure and itsRender.anchored()calls. - Compose any section the template doesn't already cover only from the block library in references/blocks.md: prefer a block whenever the content has a shape (a sequence, a comparison, a magnitude, a before/after, a hierarchy) over writing another paragraph.
- Visual first, prose last. Every section leads with a block or a diagram.
Prose is at most about three short paragraphs per section, placed in a
.pairbeside its visual. Prefer facts, bars, steps, flow or a diagram over a paragraph. The shell fills the viewport; never add a max-width. - Never hand-write a new CSS color or a raw length. Every value already comes
from a token in
assets/page.css. A diagram comes fromRender.diagram.<type>(spec), never hand-drawn SVG; see references/diagrams.md for the type catalog. - Run
scripts/assemble.pyon that same path, in place (-opointing at the input), to inlinepage.cssandpage.jsinto the single file the gate checks and the reader receives, and let it gate the result against the design contract. A real page never passes--allow-sample: a leftover/*SAMPLE*/marker is a gate failure, not a warning. - Run
npx impeccable detecton the assembled file (needs Node.js:fnm install --ltsorbrew install node) and fix whatever it flags before delivering.
Anchors and the comment affordance are specified in
references/feedback-loop.md, and every mode
carries them through the templates. Reach for
references/diagrams.md only once the content turns
out to have a shape worth drawing as a graph block.
Six rules hold across every mode:
- Every page is annotatable. Anchors and the comment affordance are not a per-mode feature. A page without them cannot return feedback, which is the point of the skill.
- Real content only. See step 2.
- Theme-correct in all three states. Define the light palette as tokens on
bare
:root, redefine those tokens under@media (prefers-color-scheme: dark)guarded by:not([data-theme="light"]), and redefine them again under:root[data-theme="dark"]. Givebodyan explicit token background. A color whose only definition sits inside a media block renders one theme's text on the other theme's background. - The page is greyscale, including verdicts. Every color on the page is
one of the eight neutral tokens in
assets/page.css. There is no hue anywhere, not even for keep/change/drop. A verdict's decision reads from the pressed segment's position in its fixed-order ink-fill control rather than from a color. A dropped or rejected item strikes its title. Corners are square:border-radius: 0everywhere, including form controls and SVGrx/ry. Shadows are limited to a 1px inset outline. No text on the page sets afont-sizebelow 15px, since hierarchy comes from weight and color rather than from shrinking text. See the Color and Shape sections of references/page-kit.md. - Diagrams are data, not drawings. Never hand-write SVG or coordinates;
call
Render.diagram.<type>and let it lay itself out. Over budget means the content gets split into more than one diagram, never squeezed to fit. See references/diagrams.md. - State drives the DOM, never the reverse. The page renders from its embedded state object. Saving serializes that object, never the live DOM.
5. Deliver and report
Report the output path, the published link if there is one, and whatever count matters for this mode. Then say how to answer back: marks and comments are both kept by the page, so the user presses save and tells you. Keep this to two lines.
6. Read the marks back
When the user says they have marked it, read the page back per
references/feedback-loop.md, then act on what it returns. Group your response
by what they decided, not by page order, and name any comment whose anchor no
longer resolves rather than dropping it.
Worked examples
Bare mode (render compare postgres vs sqlite for the vault store): gather
the real criteria from the project's own constraints and build the matrix with
evidence behind every cell. Publish it, report the link, and wait. The user
picks a winner on the page; you read it back and write the decision up.
Wrapping a skill (render /review-security): run review-security to
completion first. Its output is a severity-ranked list with file:line evidence,
which maps to review mode. Build the triage board from the findings it
actually produced, one anchor per finding.
Converting a file (render docs/plans/auth.md): read it first. It turns out
to be an ordered step list with dependencies, so say "rendering as plan mode"
before building. Do not rewrite the plan's content while converting it.
No argument (render): print the mode table and ask which mode. Build
nothing until that is answered.
Notes
- The wrapped skill never needs to know this skill exists.
render /<skill>runs it unchanged and renders what comes out. - Re-running
renderon the same subject updates the same page when the output path matches. This is the intended way to revise, and preserving the reader's marks across it is a required step, not a side effect: read the existing state block and embed it in the new page, per the re-render rules in references/feedback-loop.md. - Five modes carry no verdict controls:
explain,map,tour,timelineandreport. They still carry anchored comments, which is usually the only feedback those pages need.
Dateien in diesem Skill
27render Skill-Fragen
Wie installiere ich den render Skill in Claude Code?
Führe npx degit mgiovani/cc-arsenal/skills/render ~/.claude/skills/render aus. Claude Code lädt Skills aus ~/.claude/skills (alle Projekte) oder .claude/skills (ein Projekt) und nutzt einen Skill, wenn seine Beschreibung zur Aufgabe passt.
Welche Clients können den render Skill nutzen?
Jeder Client, der das Agent Skills-Format liest: Claude Code, Codex, Gemini CLI und claude.ai (als ZIP hochladen). Skripte im Skill laufen nur dort, wo der Client Codeausführung erlaubt.
Was kann ich mit diesem Skill rendern?
Du kannst PRDs, Pläne, Reviews, Audits, Vergleiche, Brainstorms, Architektur-Maps, Code-Walkthroughs, Incident-Timelines, Diffs oder Statusberichte in interaktive Seiten umwandeln.
Wie gebe ich Feedback auf einer gerenderten Seite?
Die Seiten verfügen über Funktionen für verankerte Kommentare und Einzelbewertungen (wie keep/change/drop), mit denen du die Seite direkt markieren und deine Änderungen speichern kannst.
Kann ich diesen Skill nutzen, um andere Skills zu wrappen?
Ja, du kannst einen anderen Skill ausführen und dessen Output sofort rendern, indem du die Syntax render /<skill> [args] verwendest.
Unterstützt der Skill Dark Mode?
Ja, das Designsystem ist themenkorrekt und unterstützt sowohl Light- als auch Dark-Color-Schemes über CSS-Tokens.