diagram-generation
- Repo stars 19,426
- Author repo opik
Diagram Generation
Generate self-contained HTML diagrams that visualize code changes, data flows, and architecture decisions.
When to Use
- Visualizing PR changes for code review
- Explaining architectural decisions
- Documenting data/request flows
- Illustrating before/after comparisons
Output
- Self-contained HTML file at
{MAIN_REPO_ROOT}/diagrams/opik-{TICKET_NUMBER}-diagram.html— always resolved against the main repo root (viagit rev-parse --git-common-dir), even when the session runs inside a worktree, so the file outlives the worktree - Includes "Copy as image" button for sharing in Slack, Jira, PR descriptions
- Dark GitHub theme, semantic color coding, responsive layout
How to Generate
Follow the style guide in style-guide.md and use the HTML template in template.md.
Required Sections (pick what applies)
- Request / Data Flow — how data moves through layers
- Why This Approach — problem vs solution comparison
- Files Changed by Layer — grid of affected files grouped by component
- Key Design Decisions — numbered guards, trade-offs, or constraints
Section Selection
- Bug fix: Focus on before/after flow, root cause, safety guards
- New feature: Focus on data flow, architecture, files changed
- Refactor: Focus on before/after architecture, files changed
- Cross-component: Show all layers with connecting flows
Reference Files
- style-guide.md — Semantic colors, box themes, section labels, flow patterns, architecture trees
- template.md — Base HTML structure, copy-as-image script, section recipes
Common Gotchas
- SRI hash on CDN scripts: The html2canvas
<script>tag must includeintegrityandcrossoriginattributes — see template.md for the current hash - Absolute paths for Playwright screenshots: Playwright saves relative to its own CWD, not the repo root — always use absolute paths when calling
browser_take_screenshot - Max 4 sections: More than 4 sections makes diagrams too tall for screenshots and hard to scan visually
- No raw diff content: Diagrams show high-level summaries (component names, file names, flow descriptions) — never embed verbatim diff hunks or Jira comments
toBlobcan return null: The CanvastoBlobcall in the copy-as-image script needs a null check — see template.md
- Fluxly category
- AI
- Author-declared agents
- No explicit declaration found; this is not inferred or tested compatibility
- Static check
- 88 / 100 · heuristic scan, not runtime safety proof
- Author / version / license
- @comet-ml · no license declared
- Fluxly token estimate
- Lean
- Fluxly setup estimate
- Plug-and-play
- External API key
- No requirement detected
- Detected OS requirements
- Unspecified
- Runtime requirements
- Unspecified
- Detected file/system behavior
-
- Read-only
- Write / modify
- Detected network behavior
- Local-only
- Install commands
- None (reference only)
Profile is derived at build time from SKILL.md and install vectors. Subject to drift from author intent.
Heads up: 未限定 allowed-tools,默认拥有全部工具权限。
The current SKILL.md does not define a fixed output example. Visualizing PR changes for code review Explaining architectural decisions Documenting data/request flows
Self-contained HTML file at {MAINREPOROOT}/diagrams/opik-{TICKETNUMBER}-diagram.html — always resolved against the main repo root (via git rev-parse --git-common-dir), even when the session runs inside a worktree, so the file outlives the worktree
Follow the style guide in style-guide.md and use the HTML template in template.md.
Request / Data Flow — how data moves through layers Why This Approach — problem vs solution comparison Files Changed by Layer — grid of affected files grouped by component
Bug fix: Focus on before/after flow, root cause, safety guards New feature: Focus on data flow, architecture, files changed Refactor: Focus on before/after architecture, files changed
style-guide.md — Semantic colors, box themes, section labels, flow patterns, architecture trees template.md — Base HTML structure, copy-as-image script, section recipes
# Diagram Generation
Generate self-contained HTML diagrams that visualize code changes, data flows, and architecture decisions.
## When to Use
- Visualizing PR changes for code review
- Explaining architectural decisions
- Documenting data/request flows
- Illustrating before/after comparisons
## Output
- Self-contained HTML file at `{MAIN_REPO_ROOT}/diagrams/opik-{TICKET_NUMBER}-diagram.html` — always resolved against the main repo root (via `git rev-parse --git-common-dir`), even when the session runs inside a worktree, so the file outlives the worktree
- Includes "Copy as image" button for sharing in Slack, Jira, PR descriptions
- Dark GitHub theme, semantic color coding, responsive layout
## How to Generate
Follow the style guide in `style-guide.md` and use the HTML template in `template.md`.
### Required Sections (pick what applies)
1. **Request / Data Flow** — how data moves through layers
2. **Why This Approach** — problem vs solution comparison
3. **Files Changed by Layer** — grid of affected files grouped by component
4. **Key Design Decisions** — numbered guards, trade-offs, or constraints
### Section Selection
- **Bug fix**: Focus on before/after flow, root cause, safety guards
- **New feature**: Focus on data flow, architecture, files changed
- **Refactor**: Focus on before/after architecture, files changed
- **Cross-component**: Show all layers with connecting flows
## Reference Files
- [style-guide.md](style-guide.md) — Semantic colors, box themes, section labels, flow patterns, architecture trees
- [template.md](template.md) — Base HTML structure, copy-as-image script, section recipes
## Common Gotchas
… Author text anchors workflow facts; Fluxly only indexes current sections, terms, files, and commands.
sections -> When to Use → Output → How to Generate → Required Sections (pick what applies) → Section Selection → Reference Files
terms -> Request / Data Flow · Why This Approach · Files Changed by Layer · Key Design Decisions · Bug fix · New feature · Refactor · Cross-component
files/cmd -> {MAINREPOROOT}/diagrams/opik-{TICKETNUMBER}-diagram.html · git rev-parse --git-common-dir · style-guide.md · template.md · <script> · integrity · crossorigin · browsertakescreenshot
body sha256 -> 30b25aeb4e88
Decide Fit First
Design Intent
How To Use It
Boundaries And Review