2026-04-27_Obsidian飛び設定_実装依頼書
SCALE Base → Obsidian 飛び設定 実装依頼書
SCALE Base から Obsidian Vault に1クリックで飛べる導線を実装したい。
業務(SCALE Base)と知識(Obsidian Vault)の往復コストをゼロにする。
30秒で全体像
| 観点 | 一言 |
|---|---|
| 目的 | SCALE Base 上から Obsidian Vault に1クリックで飛びたい |
| 方式 | obsidian:// URI スキーム経由(ローカルObsidianアプリ起動) |
| 使う人 | 大串(メイン)/ 細川 / 全AIエージェント |
| 想定工数 | P0 部分は半日〜1日 |
背景・なぜ必要か
現状の課題
業務と知識の「往復」が発生している
1. SCALE Base で CRM見てる → 顧客の議事録を探したい → 別ウィンドウで Obsidian開く → 検索...
2. Daily Note を書きたい → Obsidianを別途立ち上げる → ファイル探す
3. AIエージェントへの指示で「◯◯の Vault ノート開いて」が頻発
解消したい状態
「いま見ている SCALE Base の画面」から、関連 Vault ノートに1クリックで飛べる
- 各セクションの上部に「📓 Obsidianで開く」ボタン
- グローバルヘッダーに Obsidian クイックジャンプ
- URLに?obsidian=<path>渡せば自動で Obsidian 起動
実装してほしい機能
Priority 0(最優先)
グローバルナビに「Obsidian」ボタン追加
配置: SCALE Base 全画面の上部ヘッダー / サイドバー
動作: クリックで Obsidian Vault のルート(または Dashboard.md)を開く
URI例:
obsidian://open?vault=SCALE-Brain&file=Dashboard
obsidian://open?vault=SCALE-Brain&file=SCALE_Hub
UI例(疑似コード):
<a href="obsidian://open?vault=SCALE-Brain&file=SCALE_Hub"
class="header-btn"
title="Obsidian Vault を開く">
📓 Obsidian
</a>
→ これだけで往復コスト9割削減
各セクション上部に「Vaultで開く」リンク
各機能ページ(CRM / Calendar / Task / Recruit / Finance 等)の上部に、対応する Vault ノートへの直接リンクを追加。
| SCALE Base ページ | 開くべき Vault ノート |
|---|---|
/home/ |
obsidian://open?vault=SCALE-Brain&file=Dashboard |
/crm/ |
obsidian://open?vault=SCALE-Brain&file=31_システム開発部/SCALE_Base/CRM/_README |
/calendar/ |
obsidian://open?vault=SCALE-Brain&file=10_Daily/$(today) |
/task/ |
obsidian://open?vault=SCALE-Brain&file=22_AI運用ルール/全部署タスク一覧 |
/finance/ |
obsidian://open?vault=SCALE-Brain&file=37_コーポレート部/_README |
/recruit/ |
obsidian://open?vault=SCALE-Brain&file=36_人事採用部/_README |
/seo/ |
obsidian://open?vault=SCALE-Brain&file=21_ナレッジベース/マーケティング/_README |
/x/ |
obsidian://open?vault=SCALE-Brain&file=21_ナレッジベース/マーケティング/_README |
/writing/ |
obsidian://open?vault=SCALE-Brain&file=21_ナレッジベース/マインドセット/_README |
UI例:
<div class="page-header">
<h1>CRM Dashboard</h1>
<a href="obsidian://open?vault=SCALE-Brain&file=31_システム開発部/SCALE_Base/CRM/_README"
class="vault-link">
📓 Vault で詳細を開く
</a>
</div>
Priority 1(次に欲しい)
Obsidian クイックジャンプモーダル
起動: Cmd+K または ヘッダーの 🔍 ボタン
動作: モーダル表示 → ノート名で検索 → Enter で Obsidian 起動
実装方法:
1. Vault のノート一覧を JSON で持つ(Cloudflare Worker / KV経由)
2. fzf-style fuzzy search でフィルタ
3. クリック or Enter → obsidian://open?vault=SCALE-Brain&file=<選択パス> に遷移
ノート一覧の取得方法:
# 毎日朝 cron でこれを実行 → KV に保存
cd /Users/oogushiyuuki/Obsidian/SCALE-Brain
find . -type f -name "*.md" \
-not -path "./.obsidian/*" \
-not -path "./.git/*" \
-not -path "./_attachments/*" \
| sed 's|^\./||' | sed 's|\.md$||' \
| jq -R . | jq -s . > /tmp/vault_notes.json
# Cloudflare KV にアップロード
wrangler kv:key put "vault_notes" --path /tmp/vault_notes.json --binding=VAULT_KV
UI例:
┌─────────────────────────────────────────┐
│ 🔍 Obsidian Quick Jump │
├─────────────────────────────────────────┤
│ scale lead │
├─────────────────────────────────────────┤
│ 📄 30_事業戦略部/SCALE_Lead_事業詳細 │
│ 📄 30_事業戦略部/SCALE_Lead_報酬体系 │
│ 📄 31_システム開発部/SCALE_CRM/_README │
│ 📄 90_Meta/MOC_営業セールス │
└─────────────────────────────────────────┘
「今日の Daily Note を開く」ショートカット
動作: 1クリックで obsidian://open?vault=SCALE-Brain&file=10_Daily/<today> に遷移
UI例: ヘッダーに「📅 今日のDaily」ボタン
<a id="open-today-daily"
href="#"
onclick="window.location.href='obsidian://open?vault=SCALE-Brain&file=10_Daily/' + new Date().toISOString().slice(0,10);">
📅 今日のDaily
</a>
Priority 2(あったらいい)
コンテキスト連動「関連 Vault ノート」サイドバー
動作: 現在見ている SCALE Base ページに応じて、関連 Vault ノート3〜5件を右サイドバーに表示。
例:
- CRM ページ閲覧中 → 「営業ナレッジ」「セールス手法」「テレアポスクリプト」 を提案
- Recruit ページ閲覧中 → 「採用面談スクリプト」「採用募集文面集」 を提案
実装: ページパス → Vault ノートマッピングを設定ファイルで持つ
Obsidian → SCALE Base の逆方向リンク
Obsidian ノート内に SCALE Base のページに飛ぶリンクを書きたい時:
- https://scale-base.pages.dev/<path> を Markdown リンクで貼れば良い(既に可能)
- ただし「ハッシュなしの本番URL」を統一ルール化したい(CLAUDE のルールに準ずる)
技術的な実装ヒント
obsidian:// URI スキームの仕様
| 操作 | URI |
|---|---|
| ノート開く | obsidian://open?vault=<vault名>&file=<パス> |
| 検索 | obsidian://search?vault=<vault名>&query=<検索語> |
| 新規作成 | obsidian://new?vault=<vault名>&file=<パス>&content=<内容> |
| Daily起動 | obsidian://daily?vault=<vault名> |
Vault名
SCALE-Brain
URIエンコード注意点
日本語パス(30_事業戦略部/...)は URI エンコード不要のケースが多いが、念のため encodeURIComponent() を通してOK:
const path = '30_事業戦略部/SCALE_Lead_事業詳細';
const url = `obsidian://open?vault=SCALE-Brain&file=${encodeURIComponent(path)}`;
ブラウザの挙動
- 初回アクセス時にブラウザが「Obsidian.appを開きますか?」と確認ダイアログを出す
- 「常に許可」にチェック入れれば以降は無確認で開く
- 大串端末は既に
obsidian://許可済み
Cloudflare Pages 環境での実装
- 静的HTMLで
<a href="obsidian://...">を埋め込むだけで動く - JS不要のシンプル実装でOK(P0/P1のリンク系)
- Quick Jump モーダルは JS + KV API で実装
受け入れ条件
P0(必須)
- [ ] SCALE Base 全画面のヘッダーに「📓 Obsidian」ボタンが存在する
- [ ] クリックで Obsidian アプリが起動し SCALE_Hub.md が開く
- [ ] 各機能ページ上部に「Vault で開く」リンクが存在する
- [ ] リンク先のVaultノートが正しく開く(上記マッピング表通り)
P1
- [ ]
Cmd+Kで Obsidian Quick Jump モーダルが起動 - [ ] ノート名で fuzzy search ができる
- [ ] Enter で対応する Obsidian ノートが起動する
- [ ] 「📅 今日のDaily」ボタンで本日のDaily Noteが開く
P2
- [ ] ページコンテキスト連動の関連ノートサイドバー表示
想定工数
| Priority | 工数目安 |
|---|---|
| P0 | 4〜6時間(半日〜1日) |
| P1 | 1〜2日 |
| P2 | 2〜3日 |
実装の優先順序
- P0 全部 → 即座に体験改善(数時間で完了)
- P1 #4 「今日のDaily」 → 単純で効果大
- P1 #3 Quick Jump → KV連携あり、少し重い
- P2 → 余力あれば
関連リソース
- SCALE Base 本番URL
- 31_システム開発部/SCALE_Base/_README
- CLAUDE — リンク送り方ルール(生URI推奨)
- SCALE_Hub — Vault全体マップ
- Obsidian URIドキュメント: https://help.obsidian.md/Concepts/Obsidian+URI
補足・質問あれば
- 大串:
y-ogushi@scale-group.co.jp/ Slack DM - 仕様の細かい部分は実装中に相談OK
- UIデザインは既存のSCALE Baseトーンに合わせて
更新履歴
| 日付 | 内容 |
|---|---|
| 2026-04-27 | 初版作成・依頼開始 |
| 2026-04-27 | 実装完了 (P0/P1全部 + P2代替実装)・本番デプロイ済み |
実装完了報告 (2026-04-27)
完了したファイル
| ファイル | 役割 |
|---|---|
lib/obsidian-links.ts |
Vault URI ヘルパー / 28システム→ノートマッピング / 40+プリセット / 履歴管理 |
components/layout/ObsidianMenu.tsx |
ヘッダー右側のドロップダウン(SCALE_Hub / Dashboard / 今日Daily / コンテキストリンク / Quick Jump 起動) |
components/layout/ObsidianQuickJump.tsx |
Cmd+K (Ctrl+K) Quick Jumpモーダル(fuzzy search、最近履歴、↑↓Enter操作) |
components/layout/Header.tsx |
ObsidianMenu埋め込み、検索ボックスをQuick Jump起動ボタン化 |
app/(dashboard)/layout.tsx |
Cmd+Kグローバルキーバインド + Quick Jumpモーダル配置 |
lib/changelog.ts |
obsidian-jump-v1 エントリ追加 |
機能実装マトリクス vs 依頼書
| Priority | 依頼内容 | 状態 |
|---|---|---|
| P0 #1 | グローバルナビに「Obsidian」ボタン | ヘッダー右側に「📓 Vault」ドロップダウン |
| P0 #2 | 各セクション上部「Vaultで開く」リンク | ヘッダードロップダウン内「このページの関連ノート」で実現(28システム分マッピング) |
| P1 #3 | Cmd+K Quick Jumpモーダル | fuzzy search + プリセット40+ + 履歴 |
| P1 #4 | 「今日のDaily」ショートカット | ドロップダウン内 + Quick Jump内に常時表示 |
| P2 #5 | コンテキスト連動サイドバー | → ドロップダウン内のコンテキストリンクで代替(ノイズ少なく統一感重視) |
| P2 #6 | 逆方向リンク(Obsidian→Base) | 既存ルール踏襲(ハッシュなし本番URL) |
デプロイ先
- 本番URL: https://scale-base.pages.dev/home/
- デプロイハッシュ:
2a8eae7f(参考、本番は↑のハッシュなしURLでアクセス)
使い方
- ヘッダー右側「📓 Vault」をクリック
- SCALE_Hub / Dashboard / 今日のDaily / 現在ページの関連ノート に1クリックで飛べる - Cmd+K (Mac) / Ctrl+K (Win)
- Quick Jumpモーダル起動 → ノート名を入力 → Enter で Obsidian起動 - ヘッダー検索バー(PC)
- クリックで Quick Jump起動(同モーダル)
技術メモ
obsidian://open?vault=SCALE-Brain&file=<path>URI スキーム経由でローカルObsidianアプリ起動- 日本語パスは
encodeURIComponentで安全にエンコード - 履歴は
localStorage(scale-base-vault-recent) 8件保持 - コンテキストリンクは
getSystemByPath(pathname)→SYSTEM_VAULT_MAP[systemId]で動的決定 - Quick Jump fuzzy search: 部分一致優先、文字順マッチでフォールバック
P2 #5 を代替実装にした理由
依頼書では「右サイドバーに3〜5件表示」だったが、SCALE Base はすでにダブルサイドバー構成(System + Section)で右側に追加するとレイアウトが破綻。代わりに ヘッダードロップダウン内に「このページの関連ノート」をコンテキスト表示 する形に変更。1クリックの数は同じ、画面占有なし。
拡張余地
- 今は1ページ→1ノートのマッピング。複数ノート提案にしたければ
SYSTEM_VAULT_MAPをVaultLink[]化すればOK - Quick Jumpのプリセットは静的JSON。Vault全ノート(493件)対応にするなら Cloudflare Worker + KV API 経由で日次同期が必要(依頼書 P1 #3 の重い版)