agentleFS
stark-ai-destark-ai-de/agent-skills/skills/engineering-workflows/visual-reports/SKILL.md

visual-reports

Skill8 starsChanged 3 months agoApache-2.0View on GitHub

Create and update visual reports with optional native interaction, one guided topic at a time, useful diagrams, concise points, joint comparisons and complete offline HTML/Markdown/JSON exports. Use when richer output helps an authorized answer or the user asks for a visual report; keep small answers in chat. Not production application UI or clinical advice.

The file

We split this skill into the rules it gives an agent

11 rules. About 0 are common, 10 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈10

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use reports for comparisons, multi-step plans, relationships and data-rich findings within the authorized answer.

    line 30
  2. Distinctive:

    Do not use for production application UI, unrelated artwork, external service operation or medical/clinical advice.

    line 35
  3. Distinctive:

    Read Reader experience: distinguish information, completed work, required action and conditional action.

    line 62
  4. Very specific:

    Use --templates to select one of eight purpose templates and five domain profiles.

    line 65
  5. Distinctive:

    Keep exports, style and version controls in a closed, labeled footer toolbox, separate from report content.

    line 90
  6. Distinctive:

    No external skill text is copied.

    line 123
  7. Distinctive:

    Treat markup and SVG as untrusted.

    line 134
  8. Distinctive:

    If a source or logo is unavailable, mark the gap and retain the readable name.

    line 136
  9. Distinctive:

    If a stale update fails, inspect the new current model and reconcile deliberately.

    line 137
  10. Distinctive:

    Keep caches, preferences, private sources and report stores out of commits.

    line 138
  11. Distinctive:

    No clinical, WCAG-compliance or universal host-compatibility claims from fixtures.

    line 139

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Visual Reports

Goal

Make the answer, decision or next action easy to find. Use the shared renderer, clear hierarchy, short lists and meaningful visuals. Identify whether the reader needs an action, a decision or a summary before choosing the format. Preserve facts, evidence states, sources and decisive limitations. Do not invent quantities to fill charts.

Prefer a native interactive visualization as the primary view when the current host can invoke and display one that fully serves the report. Otherwise display the verified HTML report. Keep the same concise reader contract and complete HTML, Markdown and JSON exports from one validated snapshot in either case. Follow presentation selection and fallback.

For v2 reports, the shared renderer starts with one guided topic at a time. Group related sections into topics; keep a meaningful diagram above concise points and keep genuine comparisons together. The author explicitly selects reading or slides when requested. Follow the reading contract for layout, accessible navigation and source fidelity.

When to use

Use reports for comparisons, multi-step plans, relationships and data-rich findings within the authorized answer. Keep tiny answers in chat.

When not to use

Do not use for production application UI, unrelated artwork, external service operation or medical/clinical advice.

Workflow

RouteAuthorized outcomeRead when selected
Create or updateComplete report from the same source snapshotReader experience, selection, v2 model
Preview and continueStable local URL, version history, explicit revision switchingManaged reports
Present or prototypeSlides, opt-in motion or validated state simulationLegacy blocks and 24 recipes
Edit locallyBoard, flags or prompt draft with separate exportEditor contract
Explore stylesCurrent, balanced and calm previews with identical factsPresentation
Adopt preferencePersist an explicitly selected style in ignored local statePreference contract

For clear intent, announce the route and proceed. For a bare invocation or options request, show the complete inventory; options alone authorize no execution. Choose a report automatically when it improves the authorized answer, especially comparisons, relationships, multi-step plans or data-rich findings. Keep one fact or a short action in chat. Do not impose an interview or a chart-count quota.

Inputs to inspect

Inspect the reader question, authoritative sources, current model/revision, evidence gaps, reviewed assets, repository policy and explicitly selected preferences.

Work quickly from existing context

  1. Read Reader experience: distinguish information, completed work, required action and conditional action. A compact labeled status is enough; do not repeat it as a question, legend and introductory step. Use --templates to select one of eight purpose templates and five domain profiles. Read only the needed references, profile requirements and examples. Do not load an external catalog per report.
  2. Inspect source authority and evidence gaps. For a continuation, read the current model/revision and reuse its IDs, reviewed assets and sources. Keep consumer source registers authoritative; do not replace them for a presentation change.
  3. Set the topic sequence before selecting visuals. Follow the guided reading form on the first draft: group each topic's diagram and bullets in the documented topics model and place a useful graphic before its explanations. Use a chart only for actual quantitative data. Preserve explicitly requested layouts; reading and authored slides remain available. Follow layout and navigation. Lead with the result or a real next action; a summary needs no invented task. Apply the self-contained ADHD writing profile when requested.
  4. Compose registered blocks freely. Use comparison matrices for common criteria, automatic diagrams for structure and data charts for quantities. Use labeled bundled icons and verified product logos when they clarify the content. Preserve units, scale, direction, nulls and status semantics.
  5. Render with scripts/render-report.mjs. JSON v2 is canonical; v1 remains supported. Optional Markdown input compiles to the same model. Do not execute MDX or infer evidence from typography.
  6. Produce HTML, full Markdown and JSON from one snapshot. Use an exclusive output directory or a managed store with expected-base updates. Use the host's session-local visualization directory when provided. HTML remains readable offline without JavaScript. No per-report dependency installation or network.
  7. Select and verify the primary presentation using native presentation and HTML fallback. If native is unsuitable, unavailable or unverified, display the HTML report through an actually verified host opening route. For requested visual delivery/iteration, reuse the session-owned preview and browser tab where possible; start a loopback preview if needed. Verify the actual URL and honor host browser-tool restrictions. Offer the desktop browser tab and Microsoft Edge where available. New versions require Apply; unsaved drafts block replacement.
  8. Keep exports, style and version controls in a closed, labeled footer toolbox, separate from report content. Check semantic duplication, fidelity, relevant interactions and delivery. Use the bounded owning tests when changing the renderer; ordinary report content changes need only the relevant validation/visual checks. Report measured speed separately from model generation, research, cold start and first asset retrieval.

Scripts

From the skill directory, with Node.js:

node scripts/render-report.mjs --templates
node scripts/render-report.mjs --starter comparison --profile software --id options
node scripts/render-report.mjs --input /absolute/report.md --output /absolute/new-report
node scripts/render-report.mjs --create /absolute/report-store --input /absolute/report.json
node scripts/render-report.mjs --update /absolute/report-store --input /absolute/report.json --base REVISION
node scripts/render-report.mjs --preview /absolute/report-store
node scripts/render-report.mjs --extract /absolute/report.html --section comparison
node scripts/render-report.mjs --gallery /absolute/new-gallery

--current and --history read a managed store. --help prints the full CLI. node --test tests/*.test.mjs validates the skill with temporary local fixtures. node scripts/benchmark.mjs measures the mixed fixture and enforces warm p95 < 1 s. scripts/export-assets.mjs exports only explicitly requested, committed, digest-pinned consumer bundles; --check is read-only. It does not update pinned consumers automatically.

scripts/cache_icon.py fetches only an explicitly selected reviewed public asset into an already ignored cache, with identity, source, retrieval date and digest. Inspect it before embedding. The renderer never fetches assets. Original code is Apache-2.0; bundled dependencies retain their notices. No external skill text is copied.

Safety rules

  • Unknown is not zero or absent. Planned is not delivered; fictional is not measured. A healthy-sample fraction is not elapsed-time availability.
  • Browser filters never alter source exports. Local editor drafts never mutate source files or external services. Export or explicitly discard before switching.
  • Motion is opt-in, stoppable and suppressed for reduced-motion preferences.
  • Generation and loopback preview do not authorize deployment, upload, production mutations or permanent preference changes.
  • Treat markup and SVG as untrusted. Reject unsupported input with its field/line; never delete data or fabricate values just to pass validation.
  • If a source or logo is unavailable, mark the gap and retain the readable name. If a stale update fails, inspect the new current model and reconcile deliberately.
  • Keep caches, preferences, private sources and report stores out of commits. No clinical, WCAG-compliance or universal host-compatibility claims from fixtures.

Output format

Deliver the verified native view when suitable, otherwise the verified HTML preview/opening route, plus standalone HTML and complete exports. State significant source gaps and actual verification limits. If files changed, include a concise verified affected-file tree with added/changed/moved/ deleted/context labels and maintained/generated/local ownership as described in filesystem handoff.

Completion criteria

Confirm source fidelity, visible caveats, full exports and the actual display or HTML opening route. Record unrun gates without implying they passed.

Failure modes

Reject invalid input with field/line diagnostics. Reconcile stale bases before retrying. Preserve unsaved drafts and report blocked preview routes explicitly.

References

Reader experience owns intent, guided reading, summary/action states, footer tooling and the ADHD writing profile. The same contract owns the default topic sequence, optional tabbed presentation, shared alignment and content-sized pages without internal scrolling. The general report contract governs source fidelity and reader presentation. Comparisons adds shared-criteria and evidence rules; selection provenance records independent mdxcn-inspired choices and upstream references.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.