{
  "markdown": "# visuals-skills\n\nThree skills for turning content into something you can show — a self-contained\nHTML deck or dashboard, a vertical scroll deck built from a Markdown report, or\nan Excalidraw architecture diagram. Packaged as a single plugin named `visuals`,\ninstallable on six coding-agent harnesses.\n\n## Skills\n\n| Skill | Invoke | What it does |\n|-------|--------|--------------|\n| `visualize` | `/visuals:visualize [<file-or-content>]` | Writes one self-contained HTML file — deck, dashboard, infographic, poster, flowchart, timeline, carousel. Starts from a fixed skeleton and a design system, never from a blank page. The general-purpose default. |\n| `md-to-scrolldeck` | `/visuals:md-to-scrolldeck <input.md> [--slides n] [--outline-only]` | Compresses one Markdown document into a vertical scroll-snap deck (scrollytelling) for leadership review: progress bar, phase header, dot rail, arrow-key nav, print-ready. Prints its slide outline before writing anything. |\n| `excalidraw-diagram` | `/visuals:excalidraw-diagram <topic-or-spec>` | Generates `.excalidraw` JSON that argues visually rather than labelling boxes, renders it to PNG, looks at the render, and fixes it against a 23-item checklist before delivering. |\n\nPick by deliverable, not by topic: `.excalidraw` file -> `excalidraw-diagram`;\nMarkdown in and a vertical scroll deck out -> `md-to-scrolldeck`; everything\nelse visual -> `visualize`.\n\n### Visual guides and worked examples (GitHub Pages)\n\n- `visualize` — [visual guide](https://deity719.github.io/visuals-skills/skill-guides/visualize.html) · [usage example](https://deity719.github.io/visuals-skills/skill-output/visualize-usage.html) (Markdown to HTML output)\n- `md-to-scrolldeck` — [visual guide](https://deity719.github.io/visuals-skills/skill-guides/md-to-scrolldeck.html) · [usage example](https://deity719.github.io/visuals-skills/skill-output/md-to-scrolldeck-usage.html) (Markdown to vertical scroll deck)\n- `excalidraw-diagram` — [visual guide](https://deity719.github.io/visuals-skills/skill-guides/excalidraw-diagram.html) · [usage example](https://deity719.github.io/visuals-skills/skill-output/excalidraw-diagram-usage.html) (prompt to diagram)\n\nBoth trees are in the repo — [`docs/skill-guides/`](docs/skill-guides) holds the\nrendered skill references, and [`docs/skill-output/`](docs/skill-output) keeps\neach usage example's Markdown source beside its rendered page.\n\n`excalidraw-diagram` also has its own\n[README](skills/excalidraw-diagram/README.md) covering VSCode setup and the\nrender pipeline.\n\n## Install\n\n### Claude Code\n\n```\n/plugin marketplace add dEitY719/visuals-skills\n/plugin install visuals@visuals-skills\n```\n\n### Codex\n\n```\ncodex plugin install dEitY719/visuals-skills\n```\n\n### Kimi CLI\n\n```\nkimi plugin install dEitY719/visuals-skills\n```\n\n### Hermes Agent\n\n```\nhermes plugins install dEitY719/visuals-skills\n```\n\n### OpenCode\n\nSee [`.opencode/INSTALL.md`](.opencode/INSTALL.md).\n\n### Gemini CLI / Antigravity\n\n```\ngemini extensions install https://github.com/dEitY719/visuals-skills\n```\n\nAntigravity (`agy`) shares `~/.gemini`, so it inherits the install.\n\n### From the shell (npx)\n\n```\nnpx skills add https://github.com/dEitY719/visuals-skills\n```\n\n## Harness support\n\nThese skills are written in Claude Code's vocabulary, but they lean on very\nlittle that is Claude-Code-specific: they read files, write one output file, and\nrun a shell command. The per-harness tool mappings live in the sibling repo\n[`dEitY719/harness-skills`](https://github.com/dEitY719/harness-skills/tree/main/references);\nread the one file for the harness you are on.\n\n| Skill | Claude Code | Codex | Kimi | Gemini / Antigravity | Hermes | OpenCode |\n|-------|:-----------:|:-----:|:----:|:--------------------:|:------:|:--------:|\n| `visualize` | full | full | full | full | full | full |\n| `md-to-scrolldeck` | full | full | full | full | full | full |\n| `excalidraw-diagram` | full | needs image read-back | needs image read-back | needs image read-back | needs image read-back | needs image read-back |\n\n*needs image read-back* — Step 3 renders the diagram to PNG and then *looks at\nit* to catch overlapping text and misaligned arrows. A harness that cannot read\nan image back still produces the `.excalidraw` and the PNG, but must report the\nvisual audit as skipped rather than claiming 23/23 quality items passed. That\nstep also needs `uv` and a Playwright Chromium on the machine.\n\nAuto-open (`xdg-open` / `open`) is a no-op in a headless session; the skills\nreport the `file://` path instead.\n\n## Layout\n\nManifests live at the repo root and all point at one flat `skills/` directory:\n\n```\n.\n├── skills/{visualize,md-to-scrolldeck,excalidraw-diagram}/\n│   ├── SKILL.md\n│   ├── references/\n│   └── examples/ · evals/\n├── docs/                                        GitHub Pages guides + samples\n├── .claude-plugin/{marketplace,plugin}.json     Claude Code\n├── .codex-plugin/plugin.json                    Codex\n├── .kimi-plugin/plugin.json                     Kimi CLI\n├── .hermes-plugin/{plugin.yaml,__init__.py}     Hermes Agent\n├── .opencode/plugins/visuals.js + INSTALL.md    OpenCode\n├── .agents/plugins/marketplace.json             Antigravity\n├── gemini-extension.json + GEMINI.md            Gemini CLI\n├── package.json\n├── CLAUDE.md · AGENTS.md -> CLAUDE.md\n└── LICENSE\n```\n\nOnly Claude Code understands a nested `plugins/<name>/skills/` layout. The other\nfive harnesses resolve manifests at the repo root and a skills tree at\n`./skills/`, so this repo keeps everything flat — the nested layout it shipped\nwith through v0.4.0 is gone. See [`CLAUDE.md`](CLAUDE.md) for the full rationale\nand contribution rules.\n\nThe `.kimi-plugin/` manifest is pre-provisioned: Kimi CLI is not installed on the\nmaintainer's machines yet, and shipping the manifest now costs nothing and saves\na migration later.\n\n## CI\n\n[`.github/workflows/validate.yml`](.github/workflows/validate.yml) is a `uses:`\ncall to\n[`harness-skills/.github/workflows/skill-check.yml`](https://github.com/dEitY719/harness-skills/blob/main/.github/workflows/skill-check.yml),\nthe same reusable workflow every other `dEitY719/*-skills` repo validates\nthrough — manifests, skill frontmatter, progressive-disclosure line limits, the\nCodex description budget, version agreement across all seven version-bearing\nmanifests, plugin-name consistency, the `AGENTS.md` symlink, the flat layout,\nand shell scripts.\n\nThat shared workflow bans emoji in tracked text, and this repo's `visualize`\nskill ships example HTML — posters, decks, infographics — that uses emoji as\nintentional design glyphs in the rendered artwork. `validate.yml` exempts\nexactly those paths with the workflow's `allow-emoji-paths` input rather than\ninlining every other check to omit just that one. The repo-specific `lib/verify-html.sh --selftest` check — not\npart of the shared workflow — runs via the `tests/*.sh` convention the shared\nworkflow auto-discovers; see\n[`tests/verify-html-selftest.sh`](tests/verify-html-selftest.sh). Originally\ntracked as\n[harness-skills#2](https://github.com/dEitY719/harness-skills/issues/2).\n\n## Provenance\n\nThese skills were extracted from\n[`dEitY719/dotfiles`](https://github.com/dEitY719/dotfiles)\n(`claude/skills/devx-{visualize,md-to-scrolldeck,excalidraw-diagram}`) as a\ncontent snapshot — no history rewriting. The source commit SHA is recorded in\nthis repo's conversion commit message. The `devx-` prefix is dropped here\nbecause the plugin namespace (`visuals:`) now supplies it. The dotfiles copies\nstay in place until Phase 4 of that repo's migration plan.\n\n`visualize` and `excalidraw-diagram` originate upstream — `visualize` by\ncareerhackeralex, `excalidraw-diagram` by\n[coleam00](https://github.com/coleam00/excalidraw-diagram-skill);\n`md-to-scrolldeck` was written by [@dEitY719](https://github.com/dEitY719).\nThe manifests carry only `author: dEitY719` (the packager) and `license: MIT`,\nbecause Claude Code's manifest schema rejects any other top-level field, so\nthis section is where upstream authorship is recorded.\n\nThis is Phase 1 of the dotfiles #1410 migration; `packaging-skills` was Phase 0\nand `harness-skills` is its sibling in this phase.\n\n## License\n\nMIT. See [LICENSE](LICENSE).\n",
  "bytes": 8216,
  "sha": "234571ae812a9da343286788069c8539fa21fbf8d61823f441c1505ffd558628",
  "repo_slug": "deity719/visuals-skills",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_deity719_visuals_skills_6770c447/readme"
}