1仕組みと動作原理
背景色に GitHub Dark のカラーパレット(#0d1117 背景 / #161b22 面 / #30363d 枠線)を直接採用。コードブロックやステータスカラーが開発者の視覚的慣習と自然に一致するため、ダークテーマ体系を再構築する必要がありません。
--oc-bg:#0d1117;
「紫青アンビエントライト」=2層の radial-gradient を重ね合わせ(紫 at 28%/38%、青 at 72%/62%)、左上と右下からそれぞれ光を当てることで、一様なグラデーションではなく対角線上の空気感を演出します。
.tpl-obsidian-claude-gradient .oc-cbg{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 28% 38%,rgba(124,58,237,.25) 0%,transparent 60%),radial-gradient(ellipse at 72% 62%,rgba(88,166,255,.18) 0%,transparent 60%)}
「60pxグリッドマスク」=双方向の1pxライン(#30363d 40%)+ 60px間隔 + 中央のみを残す radial mask。SKILL.md で固定定義された60pxと一致しています。
.tpl-obsidian-claude-gradient .oc-cgrid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(48,54,61,.4) 1px,transparent 1px),linear-gradient(90deg,rgba(48,54,61,.4) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse at center,black 35%,transparent 80%)}
「3色グラデーション見出し」=linear-gradient(135deg, #a855f7 → #60a5fa → #34d399) + background-clip:text。紫→青→ミントグリーンの3色は、Claude や開発者エコシステムで定番の配色です。
.tpl-obsidian-claude-gradient .oc-g{background:linear-gradient(135deg,#a855f7 0%,#60a5fa 55%,#34d399 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
「GitHub風コード + 紫左ボーダーハイライト」:コードブロックに #010409 の濃い背景色 + 4種のトークンクラス(.cp 緑 / .cc 青 / .ca 紫 / .cm 薄灰)を使用し、GitHub のシンタックスハイライト習慣を踏襲しています。
.tpl-obsidian-claude-gradient .oc-code{background:#010409;border:1px solid var(--oc-border);border-radius:12px;padding:20px 24px;font-family:'JetBrains Mono',monospace;font-size:14px;line-height:1.85;width:100%;max-width:860px;text-align:left;color:#e6edf3}
「紫色ピルタグ」=カプセルタグ + 半透明の紫背景(rgba(124,58,237,.14))+ 1pxの紫枠線でテーマ(MCP / agent など)を明記。また、ステータス表示用に4色のバッジ(.oc-bp/.oc-bb/.oc-bg/.oc-bo)も用意されています。
.tpl-obsidian-claude-gradient .oc-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--oc-accent3);background:rgba(124,58,237,.14);border:1px solid rgba(168,85,247,.3);padding:5px 16px;border-radius:999px;margin-bottom:22px}
ページ骨格は「製品プロモーション」ではなく「チュートリアル構成」:COVER / SECTION / 比較カード / 手順ページ / コードページ / STATS / QUOTE-CTA / THANKS であり、サンプルコンテンツは Obsidian を Claude Desktop に接続する MCP 設定チュートリアルとなっています。
<!-- 3. CONTENT — compare cards -->
ランタイム実行はホスト側が担当:テンプレートディレクトリ内に実行ファイルはゼロ、サンプル内の <script> もゼロ。プロンプトはホスト側で組み立てられた後、ローカル agent CLI に渡されます。
import { spawn, type ChildProcessWithoutNullStreams } from "node:child_process";
2コア機能
3外部依存関係
| Kind | Dependency / Endpoint |
|---|---|
| network | Google Fonts(JetBrains Mono / Inter / Noto Sans SC) |
| network | 宿主共享指令声明的 Tailwind CDN(宿主侧要求,非本模板要求) |
| package | 示例配置文本里提到的 MCP server 包(仅作为教程代码示例出现,skill 不安装也不运行) |
4推奨統制措置と判定根拠
- SKILL.md: 純粋なプロンプト指示およびルールテキストのみで構成され、スクリプト実行や外部影響は一切ありません
5二重目の独立検証
- [ok] 示例中的 127.0.0.1:27123 是否构成网络调用 — 不构成。该字符串只出现在 <pre> 的 MCP 配置示例文本里(OBSIDIAN_HOST 的值);全文件 <script> 计数为 0,没有 fetch/XHR/Image/iframe 等任何请求代码,也没有 WebSocket。它是教程文案,不是运行时外发。
- [ok] 「60px 网格 mask」是否兑现 — .oc-cgrid 的 background-size:60px 60px + mask-image radial-gradient,与 SKILL.md 的 60px 一致。
- [ok] 「三色渐变标题」是否为真渐变 — .oc-g 使用 #a855f7 → #60a5fa → #34d399 的 135° 渐变 + background-clip:text。
- [ok] 「GitHub 风代码 palette」是否真为四类 token — .cp / .cc / .ca / .cm 四个类分别对应绿 / 蓝 / 紫 / 暗灰,落在 #010409 深底代码块内。
- [ok] 教程内容中的凭据写法是否安全 — 配置示例的 OBSIDIAN_API_KEY 用 xxxxxxxxxxxxxxxx 占位,未嵌入任何真实密钥;这是示例文案的良好实践。
- [ok] 目录内是否有脚本 / 凭证读取 / 写盘 — 目录仅 SKILL.md + example.html;<script> 计数 0;无 env/凭证访问代码、无写盘代码。
- [ok] pin commit 与路径 — HEAD = 553ed98c283f9c0f489902d035416a972d6a9699;skill.path = next/src/lib/templates/skills/deck-obsidian-claude,含 SKILL.md。
6結論
b2eadd1665cf47d9…