複数ベンダーの年次サイバーセキュリティ報告書を探して取得し、脅威やランサムウェア、侵害統計の傾向を出典付きで比較・分析します。
- 脅威レポートをカテゴリ別に探したいとき
- 特定ベンダーの報告書を取得したいとき
- ランサムウェア動向を複数社で比較したいとき
アイデアや構成を、手描き風のExcalidraw図としてライブキャンバスに描き、既存の図の整理やMermaidからの変換も行います。
Sketches ideas as hand-drawn Excalidraw diagrams on a live local canvas via the pinned mcp-excalidraw-server CLI, with mermaid conversion, file I/O, and share links. USE WHEN excalidraw, whiteboard, canvas, sketch a diagram, draw this on a canvas, hand-drawn diagram, draw my idea, architecture sketch, live canvas, put this on the whiteboard, read my canvas, organize my whiteboard, .excalidraw file, mermaid to excalidraw. NOT FOR polished images (Art), web UI (Webdesign), video (HyperFrames).
実行スコア 未検証
インストール方法を見るアイデアや構成を、手描き風の図としてExcalidrawのライブキャンバスに描きます。既存のキャンバスや.excalidrawファイルを読み取り、要素を整理したり、Mermaid記法の図を変換したりできます。図はファイルへ書き出せるほか、画像を含まない場合は共有リンクを作成できます。画像を含む図は、画像データを保てる.excalidrawファイルなどで受け渡します。
考えをホワイトボード上で整理したいときや、システム構成・手順をラフな図にしたいときに使えます。すでにある図を読み取って、まとまりや関係が分かるように整えたい場合にも向いています。
mcp-excalidraw-serverを利用するCLIが必要です。ライブキャンバスはローカルで動作し、表示にはブラウザーでキャンバスを開きます。画像を含む図は共有リンクではなく、.excalidrawファイルなどで渡します。
この紹介文は、公開されている SKILL.md をもとに AI(OpenAI Codex)が作成しました。正確な仕様は下の原文を確認してください。
SKILL.md の記述から、注意が要る操作と導入の前提を AI が確認しました。点数は実際に動かした結果(実行検証)だけで付けています。
点数には入れていません。 2026年10月28日 時点で AI(OpenAI Codex)が判定しました。目安なので、入れる前に原文も確認してください。
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Drives a live Excalidraw canvas from the command line via the community mcp-excalidraw-server package (MIT), version-pinned through Tools/Canvas.ts. The canvas runs locally; the user watches the diagram draw itself at the canvas URL and can hand-edit the moment the model stops. Two directions: model → canvas (sketch ideas) and canvas → model (describe reads a human's rough canvas back as structured data).
Tools/ContrastCheck.ts exiting 0 against the real ground, which holds in light and dark themes alike.Tools/Share.ts for a scene without images, the exported .excalidraw file (or a PNG flattened from it) for a scene carrying screenshots, and never a local canvas screenshot as final art.Tools/Canvas.ts, so the pinned package version and port hold, and the skill registers no MCP server.| Intent | Trigger | File |
|---|---|---|
| SketchDiagram | "sketch a diagram", "draw this", "put this on a canvas" | Intents/SketchDiagram.md |
| RefineDiagram | "refine the diagram", "read my canvas", "organize my whiteboard", edit an existing .excalidraw | Intents/RefineDiagram.md |
| File | Read when |
|---|---|
References/Cheatsheet.md | writing element JSON or using a command the intents do not show: full command list, element format, palette and sizing, layout anti-patterns, quality checklist, error recovery, raw REST API |
User customizations live at <configRoot>/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/Excalidraw/ (configRoot is $CLAUDE_CONFIG_DIR when set, else ~/.claude). When the directory exists, its PREFERENCES.md (default export directory, preferred palette, canvas port override) applies; when it is absent, the defaults stand.
bun ~/.claude/skills/Excalidraw/Tools/Canvas.ts <command> [...] — pins mcp-excalidraw-server@2.0.0 and port 3579; all commands pass through.http://127.0.0.1:3579 — the user opens this to watch live and hand-edit. Any canvas-touching command auto-starts the server.bun ~/.claude/skills/Excalidraw/Tools/ContrastCheck.ts [--bg <hex>] — deterministic WCAG check of every text element against its effective background; MUST exit 0 before any diagram is declared done.bun ~/.claude/skills/Excalidraw/Tools/AddImage.ts <image> --x N --y N [--w N --h N] or --replace <shapeId> to fit a screenshot inside an existing box. Registers the bytes as a data-URL file and adds an image element; the file travels inside the exported .excalidraw. Use for real screenshots as diagram nodes (e.g. a dashboard capture as the "Agents Dashboard" node).bun ~/.claude/skills/Excalidraw/Tools/Share.ts <scene.excalidraw> [--bg <hex>] — uploads to excalidraw.com with the canvas background baked in (default #111114). Use it, never the CLI share (which hardcodes a white canvas). The shared-link editor does not reliably honor the file's viewBackgroundColor alone, so a non-white scene also carries a backdrop rectangle (Gotchas)..excalidraw files open at excalidraw.com (File → Open) or in the Excalidraw VS Code extension. A .excalidraw.md export targets the Obsidian plugin's native format.strokeColor and the shape's fontSize prop (default 16). So: put fontSize: 20 on labeled shapes, choose stroke colors that read on the fill, and give solid-color focal boxes a PALE fill with a saturated stroke (never saturated fill + dark stroke, which makes the label invisible). No post-add patching, no free-text label workaround — free labels detach from shapes and were retracted after live use (2026-08-26). The viewer's dark mode inverts the whole canvas, so colored text on colored fill can vanish even when a light-mode screenshot looks fine; run Tools/ContrastCheck.ts before declaring done. Inversion preserves contrast ratios, so a passing check holds in both themes.#json= link path doesn't populate; only the scene travels. Images DO survive the exported .excalidraw FILE (open it via File→Open / the VS Code extension / desktop app and the picture renders). So a diagram carrying screenshots ships as the FILE, or as a flattened PNG rendered from the file — never as a share link.Tools/Share.ts (or the exported .excalidraw file). Never ship a local screenshot as final art without eyeballing it.export + import --replace (full rebroadcast). Warn the user never to click the app's "Sync to Backend" button in a blank tab — it pushes the empty scene over the server (snapshot first regardless).Tools/Canvas.ts, never bare bunx mcp-excalidraw-server — the wrapper pins version and port; a bare invocation on default port 3000 collides with dev servers and drifts on @latest.import does not apply appState.viewBackgroundColor (verified). For a non-white ground, draw an explicit locked backdrop rectangle first (created first = behind everything) and pass its color to ContrastCheck.ts --bg.text on a large background-zone rectangle — the bound label centers mid-zone, overlapping everything inside, and cannot be repositioned. Use a free-standing text element at the zone's top-left instead.echo mangles element JSON — it expands \n inside strings. Write specs to a file and pass the path, or pipe with printf '%s'.query --type text (look for containerId), delete, let sync settle.fontFamily must be a string ("1"–"8" or a name like "helvetica"); a bare number fails.label: {text}, start/end: {id}) — only relevant when POSTing to the API directly.stop when the session's drawing work is done if the user won't keep using the canvas — the server runs detached and survives the session.mcpServers block, and never run the upstream install-skill command (it writes a non-canonical skill dir).Example 1: Idea to diagram
User: "Sketch the three-stage pipeline as a diagram"
→ SketchDiagram intent
→ The live canvas URL with the pipeline drawn, ContrastCheck passing, and an exported .excalidraw file or verified share link
Example 2: Structure a rough canvas
User: "I dumped ideas on the canvas — organize them"
→ RefineDiagram intent
→ The user's own elements, clustered into labelled zones and connected with bound arrows, visible live on the canvas
まだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
複数ベンダーの年次サイバーセキュリティ報告書を探して取得し、脅威やランサムウェア、侵害統計の傾向を出典付きで比較・分析します。
個別の機能や部品の設計と、システム全体の目的を同じ問いで比較し、両者の食い違い、適切な実装範囲、全体との整合性を3段階で整理するスキルです。
文章のテーマに合う格言や引用を探し、著者・出典と選定理由を添えて提案します。引用の追加、思想家の調査、利用履歴の管理を通じて、同じ引用の繰り返しも防ぎます。
ブログの挿絵や技術図解、比較図、マンガ、アイコンなどを用途別の手順で制作します。形式に合う構図や配色を組み立て、確認用の画像を出力します。
画像や映像、スライド、サイト画面の品質を複数の判定役で評価し、修正点の整理から基準を満たした成果物の引き渡しまで進めます。
arXivの論文をテーマ・分野・論文IDで探し、著者や要旨、リンクをまとめます。新着論文の確認や、用意されている場合はAlphaXivのAI生成概要の取得にも対応します。