视觉画布设计
canvas-design
基于设计原则创作静态视觉作品,用于海报与品牌图形。
presentation-diagrams【文档与办公】Use when a presentation needs architecture diagrams, flowcharts, sequence diagrams, or system visuals — tagged [DIAGRAM] slides from narrative, "add a visual of how X connects to Y", or any system overview visualization for slides. Part of the presentation-* skill family.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Child of presentation-builder. Generates architecture diagrams, flowcharts, sequence diagrams, and system visuals for embedding into presentation slides.
| Request | Use Instead |
|---|---|
| Standalone image generation (not for slides) | vertex-banana |
| Data charts, bar graphs, pie charts, line charts | presentation-datavis |
| General diagram not destined for a presentation | Use Mermaid, Graphviz, or PlantUML directly |
| Styling, branding, or layout changes | presentation-styling |
| Full presentation build from scratch | presentation-builder (parent will route here when needed) |
Select the rendering tool based on the diagram's purpose. Priority order:
| Diagram Need | Best Tool | Syntax / Entry Point |
|---|---|---|
| Flowchart | mermaid | graph TD / graph LR |
| Sequence diagram | mermaid | sequenceDiagram |
| Class diagram | mermaid | classDiagram |
| ER diagram | mermaid | erDiagram |
| State diagram | mermaid | stateDiagram-v2 |
| Gantt chart | mermaid | gantt |
| Architecture / topology | graphviz | digraph { } |
| Network diagram | graphviz | graph { } |
| C4 model | mermaid (C4 plugin) or graphviz | C4Context / C4Container |
| UML specific | plantuml | @startuml |
| Creative / illustrative | vertex-banana | prompt-based |
When the capability map (from presentation-builder) shows a tool is unavailable, fall back to the next available tool in the priority list. If no renderer is available, generate ASCII art.
When a project context exists, automatically generate diagrams from available artifacts:
| Source Artifact | Generated Diagram |
|---|---|
PROJECT.md | System architecture overview diagram |
docs/components/*/COMPONENT.md | Component interaction / dependency diagram |
| Problem statement or proposal doc | Problem-to-solution flow diagram |
| Tech stack / dependency list | Technology stack layer diagram |
| API routes or endpoint definitions | Sequence diagram for key API flows |
presentation-renderer to embed.# Write the diagram source
cat > .presentations/output/assets/diagram-name.mmd << 'EOF'
graph TD
A[Service A] --> B[Service B]
B --> C[(Database)]
EOF
# Render to SVG (dark theme for dark slide backgrounds)
npx @mermaid-js/mermaid-cli -i .presentations/output/assets/diagram-name.mmd \
-o .presentations/output/assets/diagram-name.svg \
-t dark
# Or default theme for light slide backgrounds
npx @mermaid-js/mermaid-cli -i .presentations/output/assets/diagram-name.mmd \
-o .presentations/output/assets/diagram-name.svg \
-t default
# Write the diagram source
cat > .presentations/output/assets/diagram-name.dot << 'EOF'
digraph architecture {
rankdir=LR;
node [shape=box, style=filled, fillcolor="#e8e8e8", fontsize=14];
ServiceA -> ServiceB [label="REST"];
ServiceB -> Database [label="SQL"];
Database [shape=cylinder];
}
EOF
# Render to SVG
dot -Tsvg .presentations/output/assets/diagram-name.dot > .presentations/output/assets/diagram-name.svg
# Write the diagram source
cat > .presentations/output/assets/diagram-name.puml << 'EOF'
@startuml
component "Service A" as A
component "Service B" as B
database "Database" as DB
A --> B : REST
B --> DB : SQL
@enduml
EOF
# Render (requires plantuml.jar or plantuml CLI)
plantuml -tsvg .presentations/output/assets/diagram-name.puml
Invoke the vertex-banana skill for illustrative visuals, cover art, or conceptual images. Never for architecture or labeled diagrams.
All outputs are saved to:
<project>/.presentations/output/assets/
Both the source file (.mmd, .dot, .puml) and the rendered output (.svg, .png) are saved side by side.
presentation-styling for the active colour palette before rendering.| Entity Type | Shape |
|---|---|
| Service / application | Rectangle |
| Database / data store | Cylinder |
| External system / cloud | Cloud |
| User / actor | Stick figure or rounded rectangle |
| Queue / message broker | Parallelogram or trapezoid |
| Decision point | Diamond |
| Process / action | Rounded rectangle |
-t dark (Mermaid) or dark-background colours when slides use a dark theme.-t default (Mermaid) or light-background colours when slides use a light theme.presentation-styling.presentation-renderer to embed. Every generated diagram must report its output path so the renderer can include it in the final deck.| Anti-Pattern | Why It Fails | Correct Approach |
|---|---|---|
| Including every system component in one architecture diagram | Visual overload; audience cannot find the relevant parts; key message is lost in complexity | Show only the components relevant to the current discussion; use progressive disclosure across slides |
| Using inconsistent shapes and colors for the same concept | Audiences learn a visual language from the first slide; changing it mid-deck causes confusion | Define a visual key: boxes = services, cylinders = databases, arrows = data flow; maintain consistently |
| No legend or labels on technical diagrams | Only the author knows what the shapes mean; diagram becomes meaningless in two weeks | Always include a legend for shape types; label every component and connection |
| Using screenshots of code instead of sequence diagrams | Code screenshots are unreadable on projected slides; non-developers cannot follow | Use sequence diagrams for flow, activity diagrams for processes; reference code in handouts, not slides |
| Cramming too much into a single flowchart | More than 10-12 nodes on a slide becomes unreadable; audience loses the thread | Split complex flows across multiple slides with clear "you are here" indicators |