graph-colorize
`.obsidian/graph.json` の `colorGroups` を書き換えて、Obsidian のグラフビューをカラーコード化します。「グラフを色分けして」「タグ別に色をつけて」「フォルダやカテゴリで色を区別したい」といった要望に応え、ボールトの実際のタグ・フォルダ・可視性に基づいた `colorGroups` 配列を生成し、既存のグラフ設定を上書きせずにマージします。実行前には必ずバックアップを作成します。
description の原文を見る
> Color-code the Obsidian graph view by rewriting `.obsidian/graph.json` colorGroups. Use this skill when the user says "color my graph", "color code obsidian", "colorize the graph", "color the graph by tag", "color by category", "highlight visibility in graph", "make the graph colorful", "distinguish tags in graph", or wants nodes in Obsidian's graph view tinted by tag, folder, or visibility. Generates a `colorGroups` array from the vault's actual tags/categories and merges it into the existing graph.json without clobbering other graph settings. Always backs up first.
SKILL.md 本文
Graph Colorize — Obsidian グラフビューをカラーコーディングする
$OBSIDIAN_VAULT_PATH/.obsidian/graph.json を書き換えて、Obsidian のグラフビューのノードをタグ、フォルダ、または可視性で色分けします。
Obsidian はグラフ設定を <vault>/.obsidian/graph.json に保存しています。colorGroups 配列は {query, color} ペアのリストであり、ノードごとに最初にマッチしたクエリが優先されます。クエリは Obsidian の検索構文を使用します: tag:#foo、path:"concepts"、file:foo など。色は {"a": 1, "rgb": <packed-int>} の形式で、整数は (R << 16) | (G << 8) | B です。
開始する前に
- 設定を解決する —
llm-wiki/SKILL.mdの Config Resolution Protocol に従います(CWD で.envを探す →~/.obsidian-wiki/config→ プロンプト設定)。これによりOBSIDIAN_VAULT_PATHが得られます。 $OBSIDIAN_VAULT_PATH/.obsidian/が存在することを確認してください。存在しない場合、Vault が Obsidian で一度も開かれていません — ユーザーに Obsidian で Vault を一度開いてから再実行するよう指示してください。- Obsidian が開いている可能性があることを警告します: Obsidian は終了時に
graph.jsonを上書きします。Vault を先に閉じるか、リロード(Cmd/Ctrl+R)に備え、リロードするまでグラフ設定に触らないよう指示してください。
ステップ 1: モードを選択する
ユーザーの表現からモードを推測してください。曖昧な場合は by-tag をデフォルトとします。
| ユーザーの意図 | モード |
|---|---|
| 「タグで色分け」、「グラフを色分けして」、「カラフルにして」(デフォルト) | by-tag |
| 「フォルダで色分け」、「カテゴリで色分け」、「ディレクトリで色分け」 | by-category |
| 「可視性をハイライト」、「グラフに internal/pii を表示」、「可視性の色」 | by-visibility |
ユーザーが明示的なマッピングを提供(tag:#foo = red、または JSON blob) | custom |
| 「タグと可視性を組み合わせて」/「両方」 | combined(可視性を先に、その後タグ) |
ステップ 2: colorGroups 配列を構築する
パレット(10色、色覚障害に配慮した色)
順に使用してください。グループ数が色数より多い場合は、循環させて、明るさを約20% の分割で調整するか、10色でキャップして、残りのタグは「その他」の色を共有することをユーザーに伝えてください。
| # | Hex | rgb(パック整数) | 役割 |
|---|---|---|---|
| 0 | #4E79A7 | 5142951 | 青 |
| 1 | #F28E2B | 15896107 | オレンジ |
| 2 | #E15759 | 14767961 | 赤 |
| 3 | #76B7B2 | 7780786 | ティール |
| 4 | #59A14F | 5873999 | 緑 |
| 5 | #EDC948 | 15583048 | 黄 |
| 6 | #B07AA1 | 11565217 | 紫 |
| 7 | #FF9DA7 | 16751527 | ピンク |
| 8 | #9C755F | 10253663 | 茶 |
| 9 | #BAB0AC | 12234924 | グレー |
すべての色は {"a": 1, "rgb": <int>} でラップされます。
モード: by-tag
$VAULT_PATH/**/*.mdをグロブして、_archives/、_raw/、.obsidian/、node_modules/、index.md、log.md、_insights.mdを除外します。- 各ページの frontmatter から
tagsをパースします。タグごとの使用数をカウントします。 visibility/*タグを頻度リストから削除します — これらはシステムタグであり、by-visibilityまたはcombinedモードでのみ処理されます。- 使用頻度の上位 10 タグを取得します。10 未満の一意なタグがある場合は、すべてを使用します。
- インデックス
iの各タグTについて:{"query": "tag:#T", "color": palette[i]}を出力します。 - オプションで、タグなしページの最後にキャッチオール エントリを追加:
{"query": "-[\"tag\":]", "color": palette[9]}— 色スロット 9 が実際のタグで既に占有されている場合は スキップ してください。
モード: by-category
7 つのボルト トップレベル フォルダを固定順で使用して、実行間で色が安定します:
| フォルダ | 色インデックス |
|---|---|
concepts | 0(青) |
entities | 1(オレンジ) |
skills | 2(赤) |
references | 3(ティール) |
synthesis | 4(緑) |
projects | 5(黄) |
journal | 6(紫) |
存在し、かつ少なくとも 1 つの .md ファイルを含むフォルダごとに 1 つのエントリを出力します。各エントリは:
{"query": "path:\"<folder>\"", "color": {"a": 1, "rgb": <int>}}
モード: by-visibility
この順序で正確に 3 つのエントリを出力します(最初のマッチが優先されるため、最も制限的なものが最初):
visibility/pii→#E15759(赤、rgb 14767961)visibility/internal→#F28E2B(オレンジ、rgb 15896107)visibility/public→#59A14F(緑、rgb 5873999)
{"query": "tag:#visibility/pii", "color": {"a": 1, "rgb": 14767961}}
visibility/ タグのないページは Obsidian のデフォルト色のままです — キャッチオールを追加しないでください。
モード: combined
by-visibility エントリを最初に出力し、その後 by-tag エントリを出力します。可視性がリストの最初に表示されるため、競合では可視性が優先されます。
モード: custom
ユーザーが明示的なマッピングを指定した場合は、それらをそのまま尊重してください。ユーザーが指定した任意の 16 進数(例: #FF00FF)を int(hex_without_hash, 16) を使用してパック整数に変換してください。各を {"a": 1, "rgb": <int>} でラップしてください。
ステップ 3: graph.json にマージ(上書きしない)
-
既存の
$VAULT_PATH/.obsidian/graph.jsonを読み込みます。存在しない場合は、このデフォルトから開始します:{ "collapse-filter": true, "search": "", "showTags": false, "showAttachments": false, "hideUnresolved": false, "showOrphans": true, "collapse-color-groups": false, "colorGroups": [], "collapse-display": true, "showArrow": false, "textFadeMultiplier": 0, "nodeSizeMultiplier": 1, "lineSizeMultiplier": 1, "collapse-forces": true, "centerStrength": 0.518713248970312, "repelStrength": 10, "linkStrength": 1, "linkDistance": 250, "scale": 1, "close": true } -
最初にバックアップします: 書き込む前に既存ファイルを
.obsidian/graph.json.backup-<YYYYMMDD-HHMM>にコピーします。同じ分のバックアップが既に存在する場合は再利用します — 重複を蓄積しないでください。 -
のみ
colorGroupsフィールドを新しい配列で置き換えます。他のすべてのフィールドはそのままにします。これにより、ユーザーのズーム、物理演算、フィルター、検索、および表示設定が保持されます。 -
元の JSON スタイルと同じでファイルを書き込みます(通常はコンパクト シングルライン または 2 スペース インデント — 既存のものを保持してください)。
ステップ 4: レポートとログ
次のようなサマリーを出力します:
Graph colorized → .obsidian/graph.json
Mode: by-tag
Groups: 7 color assignments
Palette: blue, orange, red, teal, green, yellow, purple
Backup: .obsidian/graph.json.backup-20260424-1432
Reload Obsidian (Cmd/Ctrl+R) to see the new colors.
If Obsidian is currently open, close it first OR reload immediately — Obsidian
overwrites graph.json on close and can erase these changes.
$VAULT_PATH/log.md に追記します:
- [TIMESTAMP] GRAPH_COLORIZE mode=<mode> groups=<N> backup=graph.json.backup-<stamp>
エッジケース
- Vault にタグがない
by-tagモードの場合 →by-categoryにフォールバックしてユーザーに伝えます。 - ユーザーが元に戻したい → 最新の
graph.json.backup-*から復元し、log.mdに記録します。 - ユーザーがすべてのカラー グループをクリアしたい →
colorGroups: []を設定し、バックアップして、mode=clearとしてlog.mdに記録します。 .obsidian/がない → Vault が Obsidian で一度も開かれていません。ユーザーに一度開くよう指示してから再実行してください。自分で.obsidian/を作成しないでください — Obsidian は最初のオープン時に多くのファイルをそこに設定します。- クエリ構文のいくつかの落とし穴: スペース付きフォルダ パスは引用符が必要です(
path:"my folder"); ネストされたスラッシュ付きタグは文字通り機能します(tag:#visibility/internal); URL エンコードしないでください。 - 編集中に Obsidian が開いている: リスクをサーフェスします — Obsidian は起動時に graph.json を読み込み、終了時に 書き直します。ユーザーがライブで編集している場合は、先に Obsidian を閉じるか、すぐにリロード(Cmd/Ctrl+R)を実行してリロード前にグラフ設定を開かないよう指示してください。
注記
- これは純粋な設定編集です — ページ コンテンツの変更なし、frontmatter 書き込みなし。
- 再実行は安全です: 各実行で新しいバックアップが作成され、
colorGroupsのみが書き直されます。 - ユーザーが手動でキュレートしたカラー グループを保持したい場合は、
combinedモードを提供するか、上書きする前に確認してください。 - ここのパレットは
wiki-exportのgraph.htmlコミュニティ色と一致するため、Obsidian グラフとエクスポート されたビジュアライゼーションは一貫性を持ちます。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- ar9av
- リポジトリ
- ar9av/obsidian-wiki
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/ar9av/obsidian-wiki / ライセンス: MIT
関連スキル
newsblur-cli
ターミナルからNewsBlurを管理できます。フィードの閲覧、ストーリーの検索、記事の保存・共有、インテリジェンス分類器の学習、新しいフィードの発見、ワークフローの自動化がNewsBlur CLIで実現します。ユーザーがNewsBlurアカウントを操作したい場合、フィードの確認、購読管理、またはニュース読み込みに関するスクリプト構築時に活用してください。
caveman-compress
自然言語のメモリファイル(CLAUDE.md、todos、preferences)を「原始人形式」に圧縮し、入力トークンを削減します。技術的な内容、コード、URL、構造はすべて保持したまま圧縮します。圧縮版が元のファイルを上書きし、人間が読める形のバックアップはFILE.original.mdとして保存されます。トリガー:/caveman-compress FILEPATH または「compress memory file」
find-skills
日本語の意図から Agent Skills を発見する。「楽天SEOのスキル探して」「PDFを処理したい」「データ分析を自動化したい」などの日本語リクエストに対応。Claude Code (CLI)、Codex、Gemini CLI、claude.ai (Web) いずれでも動作。日本最大の Agent Skills データベース「Agent Skills by ALSEL」(11,000件超、全件日本語化、ダウンロード可能スキル8,600件超) から、ユーザーの意図に合うスキルを推薦・インストール案内する。
planning-and-task-breakdown
仕事を順序立てたタスクに分割します。仕様書や要件が明確にあり、実装可能なタスクに分解する必要がある場合に利用してください。タスクが大きすぎて着手しづらい場合、スコープを見積もる必要がある場合、または並列で作業を進められる場合に活用できます。
docx
このスキルは、ユーザーがWord文書(.docxファイル)を作成、読み込み、編集、操作したいときに使用します。以下の場合に実行してください:「Word文書」「.docx」などの記述、または目次・見出し・ページ番号・レターヘッドなどのフォーマットを含む専門的な文書の作成リクエスト。また、.docxファイルのコンテンツ抽出・再編成、文書への画像挿入・置換、Word形式での検索置換、変更履歴やコメント機能の使用、コンテンツを整形したWord文書への変換の場合も対象です。ユーザーが「レポート」「メモ」「手紙」「テンプレート」などの成果物をWord形式または.docxファイルで求める場合はこのスキルを使用してください。PDF、スプレッドシート、Google Docs、文書作成と無関係なコーディングタスクには使用しないでください。
idea-refine
アイデアを反復的に改善します。構造化された発散的思考と収束的思考を通じて、アイデアを洗練させることができます。「idea-refine」または「ideate」を使用してトリガーします。