agentleFS
tizonaitizonai/hyperui/skills/diagram/SKILL.md

diagram

Skill2 starsChanged 29 days agoApache-2.0View on GitHub

Architecture, workflow, sequence, data-flow, lifecycle, ERD, class, tree, timeline and waterfall diagrams that people explore and agents read, drawn with Archify (installed as a Claude Code skill and updated on every use): Archify's typed JSON IR is the source of truth, Archify validates and renders the explorable HTML (Live/Still motion, light/dark, focus and reach, image/SVG export), hyperui adds the profile, the .hyperui/ memory, the spec integration, the artifact publish and a Mermaid export for READMEs. Use when the user asks for a diagram, an architecture picture, a flow, a sequence, a data flow, a lifecycle/state diagram or 'how does this connect' — any language (hazme el diagrama, dibuja la arquitectura, el flujo de pago, cómo se conecta) — and when spec needs the design-phase diagrams for a backend + UI, multi-service or new-platform change.

51 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use ios-sync, benchmark-models and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • Saqlain-811Skill

    ios-sync

    Regenerate the iOS debug bridge against the latest upstream gstack templates. (gstack)

    Also in 4 projects that use this

  • ShreyRaviSkill

    benchmark-models

    Cross-model benchmark for gstack skills. Runs the same prompt through Claude, GPT (via Codex CLI), and Gemini side-by-side — compares latency, tokens, cost, and optionally quality via LLM judge. Answers "which model is actually best for this skill?" with data instead of vibes. Separate from /benchmark, which measures web page performance. Use when: "benchmark models", "compare models", "which model is best for X", "cross-model comparison", "model shootout". (gstack) Voice triggers (speech-to-text aliases): "compare models", "model shootout", "which model is best".

    Also in 5 projects that use this

  • ShreyRaviSkill

    landing-report

    Read-only queue dashboard for workspace-aware ship. Shows which VERSION slots are currently claimed by open PRs, which sibling Conductor workspaces have WIP work likely to ship soon, and what slot /ship would pick next. No mutations — just a snapshot. Use when asked to "landing report", "what's in the queue", "show me open PRs", or "which version do I claim next". (gstack)

    Also in 5 projects that use this

  • timurgaleevSkill

    document-generate

    Generate missing docs for a feature, module or project as tutorials, how-tos, reference and explanation.

    Also in 4 projects that use this

  • Saqlain-811Skill

    ios-clean

    Remove the DebugBridge SPM package and all #if DEBUG wiring from an iOS app. (gstack)

    Also in 3 projects that use this

  • seek888Skill

    open-gstack-browser

    Launch GStack Browser — AI-controlled Chromium with the sidebar extension baked in. Opens a visible browser window where you can watch every action in real time. The sidebar shows a live activity feed and chat. Anti-bot stealth built in. Use when asked to "open gstack browser", "launch browser", "connect chrome", "open chrome", "real browser", "launch chrome", "side panel", or "control my browser". Voice triggers (speech-to-text aliases): "show me the browser".

    Also in 4 projects that use this

  • +2 more from ShreyRavi
  • +1 more from Saqlain-811

The file

We split this skill into the rules it gives an agent

2 rules. 0 are common, 0 are distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 43 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Read what already describes the system before inventing it: brief.md, .hyperui/spec/<topic>/02-design.md, decisions.md, existing …

    line 29
  2. Very specific:

    Every delivery ends with the root §9 care line — diagram validated only when deliver (or finalize) exited 0, plus a11y and dark mode …

    line 98

“Common” is measured: kept by at least 6 in 10 of the 43 edited versions of this file we could read. “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

hyperui:diagram — Archify draws, hyperui remembers

Archify (MIT) is the engine: its IR, validator, renderer and viewer. This skill picks the type, keeps the diagram in the user's repo, links it to the spec, publishes it and exports Mermaid. Layout and markup are never restated here: Archify's own skill text is the manual.

0. Before anything

  • Resolve the project root with ${CLAUDE_PLUGIN_ROOT}/scripts/profile.sh root and use it (absolute paths) for .hyperui/ and for every repo read/write. If <root>/.hyperui/profile.md is missing, invoke the hyperui skill first (it onboards and routes); otherwise read profile.md and state.md and never re-ask what they hold. With several roots (profile.sh roots), work in the repo the request or the touched file belongs to, with that repo's .hyperui/ (rules: ${CLAUDE_PLUGIN_ROOT}/references/workspace.md). Profile fields used: archetype (tone, §6), conversation_language (reply), product_languages[0] (label language and meta.locale: en es ar ko zh-CN zh-TW when Archify ships it, else en; identifiers stay English).
  • Engine: "${CLAUDE_PLUGIN_ROOT}/scripts/archify.sh" ensure locates Archify (<project>/.claude/skills/archify, then ~/.claude/skills/archify), installs it when missing (tell the user in one line first) and updates it (bounded; offline keeps the installed version and says so). It prints archify <version> at <ARCHIFY>: keep that root, read <ARCHIFY>/SKILL.md (Type router, Native diagram authoring, Delivery) and the schema + example it names for the type. Every Archify command below is archify.sh run <args>.
  • Read what already describes the system before inventing it: brief.md, .hyperui/spec/<topic>/02-design.md, decisions.md, existing .hyperui/diagrams/*.json, then the repo (README, entry points, services, queues, schema). Every component names something that exists or is marked new in the spec. Diagrams live in <root>/.hyperui/diagrams/<name>.{json,html,mmd}.

1. Pick the type by signals — say it in one line, never ask

Signal in the request or specArchify diagram_type
components, services, stores, "what talks to what", a system overviewarchitecture
steps, approvals, decisions, retries, "the process", a flow (hyperui's old flow)workflow
calls and returns between actors, "what happens when", a requestsequence
data moving through stages, pipelines, ETL, events, "where the data goes"dataflow
states an entity passes through, status fields, "lifecycle"lifecycle
tables and keys · classes and relations · single-parent breakdown · when things happened · where the time wenterd · class · tree · timeline · waterfall

Ambiguous → run guide "<scenario>" --json. Two types at once (architecture + happy-path sequence is the usual pair) → two files. spec's design phase for a backend + UI, multi-service or new-platform change always asks for architecture + sequence.

2. Procedure — one pass, then at most two focused repairs

  1. Name and scope. <name> = <topic>-<type> slug (checkout-architecture, order-lifecycle); title in product_languages[0], one line; a system that does not read in one view → two files, said in one line.
  2. Author the Archify IR at <root>/.hyperui/diagrams/<name>.json per <ARCHIFY>/SKILL.md and the type's schema + example: meta.output: "<name>.html", meta.locale (§0), meta.quality_profile: "showcase", fresh ids, labels that mean something, no meta.animation (Live motion is Archify's default), automatic routes first — explicit geometry only for a repair.
  3. Validate: run validate <type> <ir> --json. Exit 0 → step 5.
  4. Repair, focused and bounded. Archify's diagnostics name the element and print measured fixes (Suggested fix: set labelAt [x, y] or set labelDy 24 (below), widen component "x" so the sublabel keeps …): apply exactly the suggested value to the named element and its direct neighbourhood, nothing else moves. Re-run. Two repairs maximum; still failing → step 5 with the gap declared: the reply lists the remaining diagnostics, design.md records gap: <diagnostics> on the diagram's line, and the care line omits diagram validated. Never a silent gap, never a third loop.
  5. Deliver: run deliver <type> <ir> <root>/.hyperui/diagrams/<name>.html --json (refuses while errors remain; relay its update.noticeText once per task when update.noticeRequired is true). Chrome available and visual review asked for → run finalize <type> <ir> <html> --browser-check --json instead. Then node "${CLAUDE_PLUGIN_ROOT}/scripts/diagram-check.mjs" mermaid <ir> writes <name>.mmd (architecture, workflow, sequence, dataflow, lifecycle; other types print "no Mermaid export").
  6. Show it. Artifact tool present → publish <name>.html (title = meta.title, icon diagram); a change to an existing diagram republishes to the same url. No Artifact tool (headless -p, evals, subagents) → the .html path and one line "open it in a browser". Browser tool present → one 1280 light capture into <root>/.hyperui/evidence/<date>/ per skills/design/references/browser-verify.md; otherwise Archify's automated checks are the evidence.
  7. Memory. design.md ## Diagrams: <name> · <type> · .hyperui/diagrams/<name>.json · <artifact url or html path> · validated <date> (<n> repairs), one line per diagram, updated in place. state.md artifacts: gets diagrams/<name>.html: <url> (replaced on republish), iterations: = repairs. A spec in progress → JSON path + url under ## Diagrams in 02-design.md too. Settled decisions (a boundary, a queue) → decisions.md.

3. Iterating — change what was named, keep the rest still

"Add the queue between API and worker", "move the cache", "rename the gateway": edit the existing .json — add, remove or move only the named elements, keep every other position, re-validate (same two-repair budget), re-deliver, republish to the same url. A new view is a new file, not a rewrite; never regenerate from scratch for a small change. A .json in hyperui's pre-0.14 shape (nodes with row/col, groups, edges): architecture → node "${CLAUDE_PLUGIN_ROOT}/scripts/diagram-check.mjs" migrate <old.json> <new.json>, then step 3 onwards; other old types are re-authored in Archify IR (the script says so).

4. Mermaid — export and fast path, never the source

  • The .mmd (structure, not layout; not validated) serves READMEs, PRs and chat. Fast path: destination is a README, PR body or chat answer, or the system has ≤ 6 nodes and no boundaries → fenced mermaid block inline, IR + .mmd still written, no deliver or artifact unless asked.
  • Pasted Mermaid ("make this pretty"): Archify reads Mermaid natively — follow the "Mermaid input" section of <ARCHIFY>/SKILL.md (topology and meaning in, fresh Archify IR out), then the normal procedure. The user's Mermaid is never edited.

5. Headless, subagents and other specialists

Headless and subagents have no Artifact and no browser: steps 5–7 still run, the reply gives paths. spec calls this skill in its design phase and links the JSON in 02-design.md; critique, patterns and build read .hyperui/diagrams/*.json as Archify IR (components/boundaries/connections, participants/messages, states/transitions): ids that match the code, sublabel = technology.

6. Tone per archetype (reply in conversation_language)

  • non-tech: the artifact link first, then ONE line saying what the picture shows, then the choice. No diagnostics, no px, no file paths unless headless. dev: link or path, the type chosen and why in one line, the component count and the repairs made, the exports. senior: link/path, counts, remaining diagnostics verbatim; nothing else unless asked.
  • Every delivery ends with the root §9 care line — diagram validated only when deliver (or finalize) exited 0, plus a11y and dark mode (Archify's viewer), sources cited when the diagram cites the spec or repo files — then the §9 consent line when telemetry is unasked, then the choice prompt (root §9; numbered list as the LAST thing when headless): add or change something in the diagram (Recommended) · export PNG / Mermaid for the README · a second view (sequence of the main path, lifecycle of <entity>) · stop here.
  • state.md: phase unchanged, next: the chosen option, last_updated: today. With consent: "${CLAUDE_PLUGIN_ROOT}/scripts/telemetry.sh" event unit_closed diagram outcome=<continue|fix|stop> iterations=<repairs>.

7. Hard rules

  • Archify's IR is the only source of truth; the HTML and the .mmd are derived and never edited by hand. Labels mean something (protocol, action, data asset, mechanism); deleting a label is never a spacing fix — move it, then shorten it.
  • A boundary around one component needs a stated isolation fact; external actors stay outside every boundary. No company-specific names in the skill (the user's component names belong to the user's repo). No explainer type from here (spec/doc pages cover it).
  • The delivered HTML is ~800 KB (Archify's viewer and runtime travel inside it): say so once per project and, when the repo is public, suggest ignoring .hyperui/diagrams/*.html in git while keeping the .json and .mmd.

Sources

Cite only URLs that are listed in a skill/reference or that you opened this session; never construct or guess a URL.

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.