tikz-flowchart
TikZ Flowchart Skill
This skill provides standardized templates/styles for establishing professional technical diagrams using LaTeX TikZ. It is designed for creating flowcharts, architecture diagrams, and process flows.
Usage
When asked to "create a flowchart" or "draw a diagram" in this project, first choose a single theme, then open only that theme's file as the starting point.
Before writing any \node or \draw commands, plan the layout first: decide the main flow direction, group nodes into rows/columns or lanes, and make sure related nodes are aligned so the connectors can stay orthogonal.
If you need to judge whether the generated diagram actually satisfies the user's requirements, do not rely only on your own generation pass. Spawn a subagent for an independent review and use that review to verify compliance or identify gaps.
- Use the default Material-like theme for conventional engineering diagrams with stronger semantic color coding and distinct data/storage/compute shapes.
- Use the Anthropic theme when the user wants warm ivory backgrounds, quiet dashed grouping containers, pastel cards, thin connectors, and a calm product-diagram look.
Theme Selection
- If the request mentions Anthropic, warm/product-diagram styling, pastel cards, or dashed ownership lanes, use the Anthropic theme.
- Otherwise default to the Material-like theme.
Theme Files
| Theme | File |
|---|---|
| Default Material-Like | themes/material-like.md |
| Anthropic | themes/anthropic.md |
After selecting a theme, read the corresponding file for the full style guide, color definitions, node styles, and LaTeX template.
Best Practices
- Layout First: Determine the node layout before drawing edges. Decide the dominant reading direction, assign nodes to rows/columns or swimlanes, and align related nodes so most edges can be drawn with zero or one bend. If the routing looks awkward, fix the layout first instead of forcing the edge.
- Relative Positioning: Use
right=of Node,below=of Node, or explicit coordinates to keep the layout stable. Adjust spacing vianode distanceor fixedx/ygaps so nodes have enough room for labels and bends. - Perpendicular Edge Entry: Connect to explicit anchors such as
.east,.west,.north, and.south. The segment that touches a node should be perpendicular to that side: horizontal into.east/.west, vertical into.north/.south. - Orthogonal Edges: Prefer straight
--lines for nodes that already share a row or column, and use-|/|-only when a bend is actually needed. Avoid diagonal lines and avoid lines that hit a node corner or graze an edge at an angle. - Grouping: Use the
fitlibrary and a background-layer group style to draw lane or phase containers. For the Anthropic theme, keep containers transparent and dashed. - Conciseness: Keep node text short. Use
\\for line breaks and\scriptsizeor a dedicated label macro for secondary details. - Anthropic Node Shapes: Prefer rounded rectangles as the default node shape in the Anthropic theme. Use diamonds only for true decisions and avoid heavy cylinders or shadowed compute boxes.
- Anthropic Typography: Keep the full diagram sans-serif, with tinted primary and secondary lines inside each node instead of pure black text.
- Independent Review: When evaluating whether the generated flowchart meets the user's constraints, spawn a subagent to review the output against the requirements. Do not treat self-evaluation during generation as sufficient verification.
More from yzlnew/infra-skills
tilelang-developer
Write, optimize, and debug high-performance AI compute kernels using TileLang (a Python DSL for GPU programming). Use when the user requests: (1) Writing custom GPU kernels for AI workloads (GEMM, Attention, MLA, etc.), (2) Optimizing existing TileLang code for NVIDIA, AMD, or Ascend hardware, (3) Implementing non-standard operators (like DeepSeek MLA, FlashAttention variants), (4) Debugging TileLang compilation or runtime errors, or (5) Cross-platform kernel development targeting multiple GPU vendors.
13megatron-memory-estimator
Estimate GPU memory usage for Megatron-based MoE (Mixture of Experts) and dense models. Use when users need to (1) estimate memory from HuggingFace model configs (DeepSeek-V3, Qwen, etc.), (2) plan GPU resource allocation for training, (3) compare different parallelism strategies (TP/PP/EP/CP), (4) determine if a model fits in available GPU memory, or (5) optimize training configurations for memory efficiency.
11slime-user
Guide for using SLIME (LLM post-training framework for RL Scaling). Use when working with SLIME for reinforcement learning training of language models, including setup, configuration, training execution, multi-turn interactions, custom reward models, tool calling scenarios, or troubleshooting SLIME workflows. Covers GRPO, GSPO, PPO, Reinforce++, multi-agent RL, VLM training, FSDP/Megatron backends, SGLang integration, dynamic sampling, and custom generation functions.
8material-you-slides
Create presentation slides using Material You (Material Design 3) style. Generates 1280x720 HTML slides with M3 color tokens, Roboto typography, rounded cards, flow diagrams, metric cards, code blocks, and structured layouts. Use when the user asks to create slides, presentations, or decks and wants a clean, modern Material Design 3 aesthetic.
3