jpskill.com
🎨 デザイン コミュニティ

canvas-create

Obsidian Canvasで、白紙または12種類のテンプレートから新しいキャンバスファイルを作成し、ディレクトリ作成や初期構造の設定を自動化して、アイデア整理やプロジェクト開始を効率化するSkill。

📜 元の英語説明(参考)

Create new Obsidian Canvas files — blank with a starter structure, or from one of 12 template archetypes (presentation, flowchart, mind-map, gallery, dashboard, storyboard, knowledge-graph, mood-board, timeline, comparison, kanban, project-brief). Handles directory creation, slug generation, and starter zone setup. Triggers on: canvas create, create canvas, new canvas, canvas new, start canvas.

🇯🇵 日本人クリエイター向け解説

一言でいうと

Obsidian Canvasで、白紙または12種類のテンプレートから新しいキャンバスファイルを作成し、ディレクトリ作成や初期構造の設定を自動化して、アイデア整理やプロジェクト開始を効率化するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o canvas-create.zip https://jpskill.com/download/10538.zip && unzip -o canvas-create.zip && rm canvas-create.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/10538.zip -OutFile "$d\canvas-create.zip"; Expand-Archive "$d\canvas-create.zip" -DestinationPath $d -Force; ri "$d\canvas-create.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して canvas-create.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → canvas-create フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

canvas-create: 新しいキャンバスを作成する


操作

空のキャンバス (/canvas create [name])

  1. 名前をスラッグ化します: 小文字化、スペースをハイフンに、特殊文字を削除。
  2. キャンバスディレクトリを決定します (コンテキスト検出については canvas orchestrator を参照)。
  3. スターター構造で [canvas_dir]/[slug].canvas を作成します:
{
  "nodes": [
    {
      "id": "zone-default",
      "type": "group",
      "label": "General",
      "x": -400, "y": -140, "width": 800, "height": 400, "color": "4"
    },
    {
      "id": "title",
      "type": "text",
      "text": "# [Name]\n\n画像をドロップしたり、PDF、メモをここにドロップしたりできます。",
      "x": -400, "y": -300, "width": 400, "height": 120, "color": "6"
    }
  ],
  "edges": []
}

注: グループは、配列内のコンテンツノードの前に配置する必要があります (z-index の順序 — グループはコンテンツの背後にレンダリングされます)。

  1. レポート: "Created [canvas_dir]/[slug].canvas. Open it in Obsidian to view."

テンプレート化されたキャンバス (/canvas create [name] from [template])

  1. テンプレート名を12個のアーキタイプに対して検証します。
  2. テンプレート名が指定されていないか不明確な場合は、利用可能なテンプレートを表示します:
presentation   — スライドデッキ (1200x675, Advanced Canvas)
flowchart      — プロセスフロー (Sugiyama/dagre レイアウト)
mind-map       — 放射状の中心から外への拡張
gallery        — 画像ノードのグリッド
dashboard      — メトリックカード + チャート + ゾーン
storyboard     — 線形シーンカード + スクリプト注釈
knowledge-graph — 力指向エンティティマップ
mood-board     — 非対称画像グリッド
timeline       — 水平イベントシーケンス
comparison     — サイドバイサイドの列
kanban         — 列ゾーン (Todo/Doing/Done)
project-brief  — ヒーローゾーン + 目標 + 成果物
  1. テンプレート固有のパラメータ (タイトル、アイテム数、配色) をユーザーに尋ねます。
  2. インスタンス化のために canvas-template skill に委譲します。
  3. 必須: すべてのプレースホルダーテキスト を、すべてのノードで、タイトルとトピックに基づいて、実際の関連コンテンツに置き換えます。 これはオプションではありません:
    • 生成されたキャンバス JSON を読み取ります
    • 各テキストノードについて、一般的なテキスト ("Describe this step"、"YYYY-MM-DD"、"Value: 0") を、キャンバスのタイトルに関連する実際のコンテンツに置き換えます
    • Edit ツールを使用して、各ノードの text フィールドを更新します
    • これがスケルトンと完成したキャンバスの違いです
  4. python3 scripts/canvas_validate.py <path> を実行して、有効性を検証します。
  5. 作成されたキャンバスをノード/ゾーン数とともに報告します。

スラッグの生成

import re
def slugify(name):
    slug = name.lower().strip()
    slug = re.sub(r'[^a-z0-9\s-]', '', slug)
    slug = re.sub(r'[\s]+', '-', slug)
    slug = re.sub(r'-+', '-', slug)
    return slug.strip('-')

ディレクトリ規則

  • Vault モード (wiki/canvases/ が存在する場合): そこに作成し、メディアは _attachments/images/canvas/ に作成します
  • スタンドアロンモード: .canvases/ に作成し、メディアは .canvases/assets/ に作成します
  • ディレクトリが存在しない場合は作成します。
  • ユーザーに確認せずに既存のキャンバスを上書きしないでください。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

canvas-create: Create New Canvases


Operations

Blank Canvas (/canvas create [name])

  1. Slugify the name: lowercase, spaces to hyphens, strip special chars.
  2. Determine canvas directory (see canvas orchestrator for context detection).
  3. Create [canvas_dir]/[slug].canvas with starter structure:
{
  "nodes": [
    {
      "id": "zone-default",
      "type": "group",
      "label": "General",
      "x": -400, "y": -140, "width": 800, "height": 400, "color": "4"
    },
    {
      "id": "title",
      "type": "text",
      "text": "# [Name]\n\nDrop images, PDFs, and notes here.",
      "x": -400, "y": -300, "width": 400, "height": 120, "color": "6"
    }
  ],
  "edges": []
}

Note: Groups MUST come before content nodes in the array (z-index ordering — groups render behind content).

  1. Report: "Created [canvas_dir]/[slug].canvas. Open it in Obsidian to view."

Templated Canvas (/canvas create [name] from [template])

  1. Validate template name against the 12 archetypes.
  2. If no template name given or unclear, show available templates:
presentation   — Slide deck (1200x675, Advanced Canvas)
flowchart      — Process flow (Sugiyama/dagre layout)
mind-map       — Radial center-out expansion
gallery        — Grid of image nodes
dashboard      — Metric cards + charts + zones
storyboard     — Linear scene cards + script annotations
knowledge-graph — Force-directed entity map
mood-board     — Asymmetric image grid
timeline       — Horizontal event sequence
comparison     — Side-by-side columns
kanban         — Column zones (Todo/Doing/Done)
project-brief  — Hero zone + objectives + deliverables
  1. Ask the user for template-specific parameters (title, number of items, color scheme).
  2. Delegate to canvas-template skill for instantiation.
  3. MANDATORY: Replace ALL placeholder text in every node with real, relevant content based on the title and topic. This is not optional:
    • Read the generated canvas JSON
    • For each text node, replace generic text ("Describe this step", "YYYY-MM-DD", "Value: 0") with real content relevant to the canvas title
    • Use the Edit tool to update each node's text field
    • This is the difference between a skeleton and a finished canvas
  4. Run python3 scripts/canvas_validate.py <path> to verify validity.
  5. Report the created canvas with node/zone counts.

Slug Generation

import re
def slugify(name):
    slug = name.lower().strip()
    slug = re.sub(r'[^a-z0-9\s-]', '', slug)
    slug = re.sub(r'[\s]+', '-', slug)
    slug = re.sub(r'-+', '-', slug)
    return slug.strip('-')

Directory Rules

  • Vault mode (wiki/canvases/ exists): create there, media to _attachments/images/canvas/
  • Standalone mode: create in .canvases/, media to .canvases/assets/
  • Create the directory if it doesn't exist.
  • Never overwrite an existing canvas without asking the user.