PluginBench
Skill
Pass
Audit score 90

show-me

humanlayer/skills

Create concise visual diagrams, code sketches, and HTML artifacts to clarify complex topics.

What is show-me?

Show-me helps users understand concepts through focused visual representations. Use it when explaining algorithms, control flow, file structures, component hierarchies, or data interactions—picking the smallest view that makes the key point clear.

  • Generate pseudocode and logic diagrams for algorithms and control flow
  • Create component trees and file-structure visualizations with ownership boundaries
  • Produce Mermaid sequence and flow diagrams for interactions and data flow
  • Build focused HTML artifacts (diagrams, infographics, slide decks) for visual comparisons
  • Use diff format to highlight changes in code, files, components, or state

How to install show-me

npx skills add https://github.com/humanlayer/skills --skill show-me
Claude Code
Cursor
Windsurf
Cline

How to use show-me

  1. 1.Describe the topic or concept you want visualized
  2. 2.Specify the type of view you need (pseudocode, tree, flow, diff, or HTML artifact)
  3. 3.The skill generates the appropriate diagram or sketch and displays it inline
  4. 4.Review the visual and ask for refinements or alternative views as needed

Use cases

Good for
  • Explaining a complex algorithm or state-management flow to a team member
  • Visualizing a proposed refactor or file-structure reorganization
  • Documenting component hierarchies and module boundaries in a UI codebase
  • Illustrating runtime interactions between services or API calls
  • Comparing before/after states or layouts during code review
Who it's for
  • Software engineers and architects designing or reviewing systems
  • Teams collaborating on complex codebases and refactors
  • Developers learning or teaching unfamiliar code structures
  • Technical leads documenting system design and interactions

show-me FAQ

When should I use show-me instead of just asking for an explanation?

Use show-me when the structure, flow, or hierarchy is easier to grasp visually—algorithms, file layouts, component trees, or interactions. Text alone often misses the spatial relationships that diagrams clarify.

Can show-me generate diagrams for existing code?

Yes. Provide the code or describe the structure, and show-me will create a diagram showing its logic, control flow, file organization, or component hierarchy.

What formats does show-me support?

Pseudocode blocks, call trees, component trees, file trees, Mermaid diagrams (sequence, flow, state), diffs, code blocks, and custom HTML artifacts for complex visuals.

Can I use show-me to compare two designs or states?

Yes. Use diff format to highlight changes, or request a side-by-side HTML artifact showing before/after states, layouts, or architectures.

Does show-me require any setup or dependencies?

No. It generates text-based and HTML visualizations inline; no external tools or libraries are required.

Full instructions (SKILL.md)

Source of truth, from humanlayer/skills.


name: show-me description: Help the user understand the current topic visually with concise diagrams, code-shape sketches, and focused HTML artifacts. disable-model-invocation: true

Help the user understand the current topic of conversation visually. Skip the preamble and keep prose brief. Pick the smallest view that makes the key point clear.

  • Show logic or an algorithm as pseudocode:
on(save)
  if content is unchanged
    return cached result
  write new content
  return fresh result
  • Show runtime control flow as a call tree:
submitForm
  createSession
    persistPrompt
    launchAgent
  navigateToSession
  • Show UI structure as a component tree, including state and module boundaries that matter:
<SessionPage> (apps/example/src/routes/session.tsx)
  useSessionEvents()
  <SessionToolbar>
    <RunSkillButton> (packages/ui)
  • Show file responsibility or a broad refactor as a shallow file tree:
src/
├── commands/       # parses user actions
├── sessions/       # owns session state
└── transport/      # sends API requests
  • Show component interaction, control flow, or data flow with Mermaid:
sequenceDiagram
    participant User
    participant UI
    participant Daemon
    User->>UI: choose command
    UI->>Daemon: send expanded prompt
    Daemon-->>UI: stream result
  • Use diff when the point is what changes and the surrounding shape already exists. Match the diff shape to the topic.

For a component change:

 <SessionPage>
   useSessionEvents()
   <SessionToolbar>
+    <RunSkillButton />
   <SessionTimeline>
+    <SkillResultCard />

For a file-layout change:

 src/
 ├── commands/
+│   └── show-me.ts       # expands the slash command
 ├── sessions/
-└── transport.ts
+└── transport/
+    ├── client.ts
+    └── stream.ts

For a call-tree or call-stack change:

 submitForm
   createSession
     persistPrompt
+    expandSkillMention
     launchAgent
-  navigateToSession
+  navigateToSession
+    subscribeToEvents

For a state or control-flow change:

 on(save)
-  write content
+  if content is unchanged
+    return cached result
+  write new content
+  invalidate cache
  • Show the whole block when most of it is new, when omitted context would hide ownership or order, or when the user needs a copyable target shape:
function expandSkill(command: string): string {
  const skillName = command.slice(1)
  return `use the ${skillName} skill`
}
  • For a visual UI, layout, state comparison, or concept too dense for Mermaid, write one focused HTML file — a diagram, an infographic, or a short slide deck, whichever fits the point. Match the product's colors, type, spacing, and components; use real labels and data; support desktop and mobile. Then open it for the user:
Bash(open path/to/show-me-{description}.html)

guidance

Place each visual next to the short text it supports. Keep only the calls, files, props, states, and boundaries needed to answer the user's current question or the options to resolve the current discussion point.

You may use one of these, you may use several, it is unlikely you will use all of them. Use your judgement and don't overwhelm the user.