From patrick204nqh
Produces a small, focused diagram — flow, sequence, hierarchy, or state — when a relationship is the actual point of the explanation and prose would bury it. Emits mermaid by default. Make sure to use this skill whenever the user says "draw this", "diagram", "visualise", "show me the flow", "picture this", "can you sketch", or asks how things connect / call each other / sequence — even if they don't use those exact phrases.
How this skill is triggered — by the user, by Claude, or both
Slash command
/patrick204nqh:diagram-itThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Draw the thing. One small picture beats three paragraphs about who calls
Draw the thing. One small picture beats three paragraphs about who calls whom.
A human reader who needs to see a relationship — components calling each other, a sequence of events, a hierarchy, a state machine. They will glance for two seconds before deciding whether to read your prose. The diagram has to land in that glance.
Trigger on any of:
Do not trigger when:
Choose the diagram type before drawing anything. Wrong kind = wasted diagram.
| If the point is… | Use | Mermaid keyword |
|---|---|---|
| "A leads to B leads to C" | Flow | flowchart LR |
| "A asks B, B replies, B asks C" | Sequence | sequenceDiagram |
| "A contains B contains C" | Hierarchy | flowchart TD or graph TD |
| "thing transitions between modes" | State | stateDiagram-v2 |
| "two things share these, differ on those" | Compare — use a table, not a diagram | — |
If you cannot name which kind in one sentence, you do not yet understand the relationship well enough to draw it. Write prose first.
> **Takeaway:** [one sentence — what the reader should conclude]
```mermaid
[diagram]
```
[2-4 sentences of prose explaining the parts the diagram cannot —
nuance, edge cases, "why this shape and not the other".]
Bad (prose smuggling a flowchart):
When the user hits
/login, the request goes to the auth service, which validates against the user store, then calls the token service to mint a JWT, then returns the JWT to the client, which stores it and uses it on subsequent requests to the API gateway, which validates it against the token service again on every call.
Good (diagram + takeaway + prose):
Takeaway: Every API call re-validates the token — there is no client-side trust.
sequenceDiagram
Client->>Auth: POST /login
Auth->>TokenSvc: mint(user)
TokenSvc-->>Auth: jwt
Auth-->>Client: jwt
Client->>Gateway: GET /thing + jwt
Gateway->>TokenSvc: validate(jwt)
The round-trip to TokenSvc on every call is deliberate: it lets us revoke tokens immediately rather than waiting for them to expire. The cost is one extra hop per request, which we accept.
You produce a text representation of the diagram. The artifact a human actually sees is the host's job — keep this clean separation.
[Client] --POST /login--> [Auth] --mint--> [TokenSvc]
| ^
v |
[Client] --GET--> [Gateway]
You are not the renderer. If the user wants polish — styling, colours, brand fit — that is a separate step, not a feature of this skill.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub patrick204nqh/skills --plugin patrick204nqh