2.15.0-beta.13). Tính năng có thể thay đổi trước bản stable tiếp theo.Chuyển sang stable →Skill
Biên dịch system map tương tác với ak:diagram
Chuyển typed JSON IR, Mermaid, editorial template hoặc HTML thành SVG, HTML, PNG hoặc video xác định được, với ranh giới Skill flag và helper rõ ràng.
Dùng ak:diagram khi bạn cần system map tương tác đã được validate hoặc
editorial diagram. Skill biên dịch typed JSON IR cho architecture, workflow,
sequence, dataflow và lifecycle, đồng thời vẫn render Mermaid, editorial
template cũ và HTML đã chuẩn bị.
Chọn ak:diagram theo artifact
Dùng ak:diagram khi
- Bạn cần architecture, sequence, workflow, dataflow hoặc lifecycle map tương tác từ typed JSON.
- Bạn cần SVG, HTML self-contained, PNG hoặc video ngắn từ Mermaid hay editorial input.
- Bạn cần biên dịch cục bộ, xác định được, không CDN.
Chọn workflow khác khi
- Bạn muốn Mermaid source có thể review mà không có editorial framing. Dùng
ak:mermaidjs-v11. - Bạn cần editable canvas hoặc codebase auto-map. Dùng
ak:excalidraw. - Bạn cần khám phá và phân tích large graph. Dùng
ak:graphify. - Bạn đang quyết định visual explanation có hữu ích hay không. Bắt đầu với
ak:preview.
Gọi Skill
Hoàn tất Làm quen, và xác nhận Engineer Kit đã được cài cho runtime cùng scope của bạn. Cung cấp input file, artifact mong muốn và có cho phép browser rendering, video capture hay dependency installation không.
| Runtime | Cách gọi | Ranh giới khả dụng |
|---|---|---|
| Claude Code | /ak:diagram ... | Dùng Engineer Skill đã cài; quyền truy cập local file, process, browser cùng image review phụ thuộc session. |
| Cursor | /ak:diagram ... | Dùng cách viết slash đã được người dùng xác minh; quyền truy cập bundled helper cùng browser phụ thuộc Cursor session. |
| Codex | $ak:diagram ... | Dùng native Skill discovery; rendering phụ thuộc quyền truy cập filesystem, process, browser cùng dependency trong Codex environment. |
/ak:diagram "Compile architecture.json to interactive HTML in ./build. Use preset classic and theme dark. Do not install dependencies."/ak:diagram "Compile architecture.json to interactive HTML in ./build. Use preset classic and theme dark. Do not install dependencies."$ak:diagram "Compile architecture.json to interactive HTML in ./build. Use preset classic and theme dark. Do not install dependencies."Đây là Skill invocation flag:
| Flag | Tác dụng |
|---|---|
--type <slug> | Chọn legacy editorial template type |
--preset <preset> | Chọn classic, signal-flow, blueprint hoặc editorial cho typed IR |
--theme <light|dark> | Chọn color token typed IR mà không đổi geometry |
--format <svg|fragment|html> | Chọn output biên dịch typed IR |
--out <dir> | Chọn thư mục output |
Helper render.py / record.py đi kèm vẫn nhận --input, --title,
--caption, --no-png, --no-svg, --dry-run, --snapshot-profile,
--duration, --fps, --gif và --keep-frames. Các control helper đó không
phải Skill invocation flag.
Chọn input tier
| Tier | Input | Điều xảy ra | Ranh giới hiện tại |
|---|---|---|---|
| 1 — Typed JSON IR | .json archetype architecture, workflow, sequence, dataflow, lifecycle | Biên dịch cục bộ bằng Node 18, offline, không browser | HTML tương tác có thể search, focus, trace reach, inspect route và export share card |
| 2 — Mermaid | .mmd | Bọc Mermaid source trong editorial frame bằng Mermaid v11.4.1 được vendored, local design token và shared browser pipeline | Mermaid auto-layout cùng font metric vẫn có thể thay đổi ngoài validated renderer profile |
| 3 — Legacy editorial template | JSON cùng --type <slug> | Load template đã vendor và áp dụng slot substitution | Chỉ dùng cho editorial type không phải archetype |
| 4 — Raw HTML | .html | Chuyển nguyên trang được cung cấp qua bước rendering hoặc recording | HTML được tin theo nội dung cung cấp và có thể chứa script, asset hoặc network request riêng |
Typed IR là đường ưu tiên cho system map. HTML tương tác xác định được và tôn
trọng prefers-reduced-motion: reduce.
Tách static rendering khỏi video recording
Static rendering helper luôn ghi <basename>.html và mặc định còn ghi:
<basename>.png— screenshot 2× với animation được freeze ở final frame;<basename>.svg— chỉ khi trang đã render có SVG và có thể extract.
Control --no-png và --no-svg bỏ các output tương ứng. --dry-run ghi HTML
mà không khởi động browser. HTML là animated surface; PNG là static frame đã
freeze. SVG extraction serialize SVG đầu tiên được tìm thấy trong rendered DOM; bước này
không bảo đảm mọi input đều có SVG hoặc page-level CSS, font, asset hay animation
context vẫn hoạt động độc lập. Hãy kiểm tra static artifact đã extract.
Video là bước recording riêng trên HTML input. MP4 là default; --gif của
recording helper chọn GIF được tạo bằng palette. Helper pause browser animation,
tăng currentTime từng frame theo --duration và --fps được yêu cầu, chụp
temporary PNG frame rồi dùng ffmpeg để ghép kết quả. Mermaid không có native
animation primitive trong workflow này: animated Mermaid connector cần
post-processing, còn HTML đã chuẩn bị có thể dùng tám bundled CSS connector
effect. Các effect này freeze khi prefers-reduced-motion: reduce hoạt động.
Probe dependency mà không cài đặt
Yêu cầu Skill chạy bundled dependency probe trước rendering. Probe báo readiness và không bao giờ tự cài đặt. Probe kiểm tra:
| Probe | Vai trò |
|---|---|
| Playwright | Điều khiển browser render và frame capture |
| Chromium | Tạo PNG cùng SVG có thể extract và capture video frame |
| Vendored Mermaid asset | Render Tier 1 source mà không cần CDN |
ffmpeg | Ghép MP4 hoặc GIF; chỉ bắt buộc cho video |
mmdc | Báo optional fast-path availability; editorial renderer vẫn dùng shared HTML pipeline |
HTML-only composition có thể tránh browser bằng --dry-run của helper. PNG hoặc
SVG render qua browser cần Playwright và Chromium. Video cần thêm ffmpeg. Hãy
coi cài đặt dependency còn thiếu là action riêng cần được duyệt.
Hiểu determinism và visible effect
Mermaid được pin, animation được freeze, browser setting cố định và frame
stepping hỗ trợ output có thể tái lập với toolchain Chromium, font và ffmpeg
cố định. Snapshot comparison từ chối browser hoặc font profile sai thay vì báo
hash drift gây hiểu lầm. Ngoài profile đó, browser hoặc ffmpeg version, font
substitution, label wrapping và Mermaid auto-layout có thể làm pixel, encoding
hoặc hash thay đổi. Animated HTML vẫn động; PNG là một state đã freeze, còn MP4
hoặc GIF là frame sequence tường minh. Hãy ghi lại tool version thực sự được
dùng.
Rendering ghi file và khởi động local tool
Một lần chạy đọc .mmd, JSON hoặc HTML source của bạn, ghi artifact vào
destination đã chọn và có thể thay output trùng tên. Browser rendering khởi
động headless Chromium. Video capture tạo temporary frame và chạy ffmpeg.
Hãy review input content cùng output name trước khi tiếp tục.
Bundled Mermaid, template, style và effect là local, không cần CDN. Tuy nhiên, HTML do người dùng cung cấp có thể liên hệ network khi tham chiếu remote script, font, image hoặc asset khác. Skill không publish, upload, commit hay push artifact được tạo trừ khi workflow riêng được cho phép rõ ràng.
Kết quả đầy đủ báo input tier, type cùng variant đã chọn, exact output, dependency thực sự dùng, ranh giới static hoặc video, visual review, network activity, file bị overwrite và mọi renderer hoặc font-profile condition chưa được xác minh.
Tạo diagram dựa trên bằng chứng với ak:tech-graph
Biến mô tả hệ thống đã xác minh thành SVG và PNG được validation, rồi kiểm tra layout đã render trước khi bàn giao.
Điều hướng code theo semantic với ak:gkg
Index Git repository bằng GitLab Knowledge Graph, query definition và reference, rồi định chuẩn impact claim theo language support.