Obsidian × Claude Code で「秘書付き」の開発生活を手に入れた話
TL;DR
- Obsidian(Markdownナレッジベース)の中で Claude Code を動かすと、メモ帳が「秘書付きの司令室」になる
- 毎朝
/dailyコマンド一発で、Backlogチケット一覧 + AI技術ニュース + Qiitaトレンド記事がデイリーノートに自動生成される - 気になった技術は Claude に深掘りさせ、調査→ノート化→リンク接続まで一気通貫
- Backlog MCP連携で、ノートを書く延長でチケット作成・更新までできる
- 半年運用して見えた「AIと第二の脳を育てる」パターンを共有します
はじめに
「Obsidian使ってるけど、結局メモが溜まるだけ」
「Claude Code入れたけど、コード書く以外に使い道あるの?」
どちらかに心当たりがある方、この記事はたぶん刺さります。
私はエンジニアとして複数プロジェクトを掛け持ちしながら、2025年秋から Obsidian ボルトの中で Claude Code を常駐させる運用を続けています。Obsidian と Claude Code の橋渡しには Claudian というコミュニティプラグインを使っています。これにより、Obsidianのサイドパネルから直接 Claude Code を操作でき、現在開いているノートや選択テキストをそのままコンテキストとして渡せます。
半年ほど経って、これはもう「メモ帳」ではなく 「秘書付きの司令室」 だなと感じるようになりました。
この記事では、具体的にどんな仕組みで動いているのか、そしてAI側(Claude)の視点から見た所感も交えてお伝えします。
1. ボルトの全体構造
まずは土台となるObsidianボルトのディレクトリ構成です。
obsidian-vault/
├── daily/ ← デイリーノート(YYYY-MM-DD.md)
├── notes/ ← 技術調査・深掘りノート
├── news/ ← 技術記事の要約・分析
├── memo/ ← 作業ログ・経緯メモ
├── ref/ ← テンプレート集
├── img/ ← 画像・スクリーンショット
├── task/ ← タスク管理
├── file/ ← 添付ファイル
├── .claude/ ← Claude Code の設定
│ ├── commands/ ← カスタムスラッシュコマンド
│ └── settings.json ← 権限設定
├── .mcp.json ← MCP(外部ツール連携)設定
├── .obsidian/ ← Obsidian本体の設定
└── CLAUDE.md ← Claude への常時指示書
ポイント:「場所」に意味を持たせる
| フォルダ | 役割 | 更新頻度 |
|---|---|---|
daily/ |
その日の「ダッシュボード」。タスク・ニュース・議事メモが集まる | 毎日 |
notes/ |
技術の深掘りノート。調査結果が蓄積される「知識の本棚」 | 週2〜3回 |
news/ |
外部記事の要約。Claude に読ませて構造化したもの | 不定期 |
memo/ |
作業の経緯記録。「なぜこうなったか」を残す | 随時 |
ref/ |
チケットテンプレート等。スキルから参照される | 低頻度 |
Obsidianの思想である 「リンクで繋がるネットワーク型ノート」 に加えて、Claudeが各フォルダの文脈を理解して適切に読み書きしてくれるので、フォルダ構成自体が「秘書への業務マニュアル」 になっています。
Claudian プラグインの役割
この構成を支えているのが Claudian プラグインです。
| 機能 | 説明 |
|---|---|
| サイドパネル統合 | Obsidian内にClaude Codeのターミナルを埋め込み。ノートを見ながら会話できる |
| 現在のノート連携 | 開いているノートのパスと内容がClaudeに自動的にコンテキストとして渡される |
| 選択テキスト送信 | エディタで選択した部分だけをClaudeに渡して質問・編集指示ができる |
つまり、ノートを読む → 気になる箇所を選択 → Claudeに質問 → 回答がノートに反映される、というループが Obsidian の画面を離れずに完結します。
2. カスタムスラッシュコマンドの作り方
/daily の中身を紹介する前に、まず カスタムスラッシュコマンド の仕組みを説明します。
スラッシュコマンドとは
Claude Code には、/help や /compact のような組み込みコマンドに加えて、自分でコマンドを定義できる仕組みがあります。.claude/commands/ フォルダに Markdown ファイルを置くだけです。
.claude/
└── commands/
├── daily.md ← /daily で呼び出し
└── new-member-onboarding.md ← /new-member-onboarding で呼び出し
ファイル名がそのままコマンド名になります。
コマンドファイルの書き方
Markdown で 「Claude にやってほしいこと」を自然言語で書くだけです。YAML frontmatter に description を書くと、コマンド一覧に説明が表示されます。
---
description: 今日のデイリーノートをObsidianに作成する
---
# デイリーノート作成
以下の手順でデイリーノートを作成せよ。
## 1. Backlog タスク収集
- Backlog MCP を使い、自分の担当チケットを全プロジェクトから取得
- 期限超過 / 今週期限 / その他 に分類してテーブル表示
## 2. AI技術ニュース収集
- WebSearch で以下を検索し、要約を作成:
- Claude Code の最新リリース情報
- X(Twitter) の AI トレンド
- Qiita の AI 関連人気記事(直近5日)
- Publickey の直近3日の記事
## 3. ファイル出力
- daily/YYYY-MM-DD.md に出力(YYYYMMDDは今日の日付)
- 曜日を括弧付きで表示(例: 2026-04-15 (火))
これだけで /daily と入力するとClaudeがこの手順に従って動いてくれます。プログラミングは一切不要。やりたいことを日本語で書くだけです。
ポイント:「何を」ではなく「どうやって」を書く
コマンド定義のコツは、具体的な手順を命令形で書くことです。
❌ 「デイリーノートを作って」(曖昧すぎる)
✅ 「Backlog MCP で担当チケットを取得し、期限超過/今週/その他に分類してテーブル表示せよ」
手順を具体的に書くほど、毎回の出力が安定します。
3. /daily コマンド — 毎朝の「秘書レポート」
何が起きるか
Claudian のサイドパネルで /daily と打つ。それだけで、こんなデイリーノートが daily/2026-04-15.md に生成されます:
# 2026-04-15 (火) デイリーノート
---
## Backlog タスク一覧
### 期限超過
| チケット | タイトル | ステータス | 優先度 | 期限 |
| --- | --- | --- | --- | --- |
| PROJ-424 | 【調査】APIエラー原因調査 | 処理中 | 中 | 2025-05-09 |
| PROJ-578 | 【その他】新規参画者対応 ○○さん | 処理済み | 中 | 2025-06-10 |
| ...(以下、自分の担当チケットが全件表示)
### 今週期限 (2026-04-15 〜 2026-04-19)
(該当チケットがあれば表示)
### その他(期限なし or 来週以降)
(未設定・来週以降の一覧)
---
## AI 技術ニュース
### Claude Code 最新情報
- **Opus 4.6 GA**: 1Mコンテキストウィンドウで一般公開...
- **5週間で30+リリース**: 週6本ペースの高速アップデート...
### X(Twitter) で話題のAIトレンド
- **Agentic Engineering の台頭**: チャットAI → 自律エージェントへの転換...
- **MCP の標準化**: Linux Foundation 傘下に移管...
### Qiita AI関連記事(直近5日・人気Top10)
| 公開日 | タイトル | タグ | いいね数 |
| --- | --- | --- | ---: |
| 2026-04-15 | Vibe Coding、スペック駆動開発を... | ClaudeCode | 4 |
| ...
### Publickey 最新記事(直近3日)
- Bun、ヘッドレスブラウザ自動操作機能を搭載...
- Microsoft「Foundry Local」正式リリース...
裏側の仕組み
/daily コマンド実行
│
├─→ Backlog MCP でチケット取得
│ └─ 自分の担当チケットを全プロジェクトから収集
│ └─ 期限超過 / 今週 / その他 に分類
│
├─→ WebSearch で最新ニュース収集
│ └─ Claude Code の最新リリース情報
│ └─ X(Twitter) の AI トレンド
│ └─ 特定のインフルエンサーの発信
│ └─ Qiita の AI 関連人気記事
│ └─ Publickey のエンタープライズIT記事
│
└─→ daily/YYYY-MM-DD.md に統合して書き出し
Backlog MCP が肝です。.mcp.json に Backlog の API 設定を書いておくと、Claude が直接 Backlog API を叩いてチケット情報を取得できます。手動で Backlog を開いてチケットを確認する作業が完全に不要になりました。
「朝会の下準備が0秒になった」
チーム朝会で「今日何やるか」を報告する場面、ありますよね。以前は毎朝 Backlog を開いて自分のチケットを眺めて……とやっていましたが、今は /daily の出力をそのまま見れば済みます。期限超過のチケットも一目瞭然なので、「あ、これ忘れてた」も減りました。
さらにデイリーノートの末尾に、朝会で話した内容や決定事項をそのまま追記していくので、「ダッシュボード + 議事録」が1ファイルに集約されます。
4. 気になる技術を深掘りする — 調査ノートの自動生成
デイリーノートのニュースセクションを眺めていて「これ気になるな」と思ったら、Claude にそのまま調査を依頼します。
実際の流れ
私: 「Superpowersについて詳しく調べて、notesにまとめて」
Claude: (WebSearchで公式リポジトリ・ブログ記事・比較記事を収集)
(情報を構造化してMarkdownノートを生成)
(Obsidianのwiki-linkで関連ノートと接続)
→ notes/Superpowers.md が生成される
生成されるノートの構成例:
---
date: 2026-03-18
type: research
tags:
- AI開発
- Claude-Code
- TDD
---
# Superpowers — エージェント型スキルフレームワーク
## 概要
(ツールの説明、GitHub星数、ライセンス等)
## コアコンセプト
(ワークフローの図解)
## 実績・事例
(定量的な成果)
## 大規模開発への適性
### ✅ 向いている点
### ⚠️ 懸念点・制約
### シナリオ別適性
## 日本語対応
(実用上の評価と設定例)
## 導入方法
(プラットフォーム別の手順)
## 所感・検討メモ
(自分のプロジェクトへの適用可能性)
深掘りノートのパターン
半年で溜まったノートには、明確なパターンがあります:
| カテゴリ | 例 | 特徴 |
|---|---|---|
| ツール調査 | Superpowers, CodeRabbit | 機能・料金・比較・導入手順まで網羅 |
| 概念理解 | Agentic Engineering, ハーネスエンジニアリング | 定義→ワークフロー→ツール紹介→所感 |
| 技術検証 | CloudFront+S3構成のフィージビリティ検証 | 手順→結果→学びの記録 |
重要なのは、ノート同士がWiki-linkで繋がっていること。たとえば:
-
[[Agentic Engineering]]→[[Superpowers]](実践ツールとして参照) -
[[Claude Code ハーネスエンジニアリング事例]]→ Skills / Hooks の具体例
これにより、Obsidian のグラフビューで 「自分の関心領域のマップ」 が可視化されます。
5. Backlog連携 — ノートの延長でチケットを操作する
ここが「秘書」感が最も強い部分です。
チケット作成の例
私: 「親チケット PROJ-105 配下に子チケットを作成。
【インフラ】AWS構築依頼。
内容にさっき調査した命名規則とリソース定義を記載して」
Claude: (Backlog MCPで命名規則Wikiを検索・取得)
(notes/の関連ノートからアーキテクチャ情報を読み取り)
(チケット作成APIを実行)
→ 「PROJ-108 を作成しました」
Obsidianのノートに書いた調査結果が、そのままBacklogチケットの本文になる。 この連続性が非常に強力です。
新規参画者オンボーディングの自動化
チームに新しいメンバーが来るたびに、4種類のチケット(環境構築・アカウント申請・AWS申請・メーリングリスト登録)を作成する定型業務がありました。
これを カスタムスラッシュコマンド として定義しています:
.claude/commands/new-member-onboarding.md
# 新規参画者オンボーディング チケット作成スキル
## 必要な情報
- 氏名、メールアドレス、社員番号、入場日、役職...
## 作成するチケット
### 1. 環境構築チケット
- プロジェクト: ○○○
- 件名フォーマット: 【その他】環境構築 {name} {join_date}
- 詳細: ref/environment_setup_template.md を参照
...
### 2. アカウント申請チケット
...
実行すると:
私: 「新規参画者チケット作成して」
Claude: 「以下の情報を教えてください:
1. 氏名
2. メールアドレス
3. 社員番号
...」
私: 「○○太郎、taro@example.com、1234567、2026/05/01...」
Claude: (4チケットを順次作成)
→ 「以下のチケットを作成しました:
- PROJ-201: 環境構築
- AUTH-301: アカウント申請
- DEV-401: AWS申請
- AUTH-302: ML登録」
テンプレートは ref/ フォルダにMarkdownで管理しているので、フォーマットの変更があってもノートを編集するだけです。
6. 失敗から学んだこと — 上書き事件
良いことばかり書いても信用されないので、痛い失敗も共有します。
Backlogチケット上書き事件
Backlogチケットの説明文にあったHTMLエンティティ(< → < 等)の修正を Claude に依頼したところ、修正前にチケットの最新状態を取得せず、古いキャッシュの内容で上書きしてしまいました。
私が手動で追記していた以下の情報が消失:
- アーキテクチャ図の画像
- スケジュール表
- IAMポリシーの修正内容
幸い、Backlogの変更履歴(originalValue)から復元できましたが、冷や汗ものでした。
この失敗から生まれたルール
この経緯は memo/ フォルダに記録し、CLAUDE.md(常時読み込み指示書)にもルールとして反映しました:
# CLAUDE.md
## 基本動作方針
- 要件の曖昧さを検出し、確認質問を先に提示する
- 合意してから実装する
- 確認なしに既存データを大幅に変更しない
つまり、失敗がノートに記録され → ルール化され → Claude の振る舞いが改善されるというフィードバックループが回っています。
7. CLAUDE.md — 「秘書の行動規範」
CLAUDE.md はプロジェクトルートに置くファイルで、Claude Code が毎回の会話開始時に自動で読み込みます。私の場合:
# CLAUDE.md — Obsidianボルト固有設定
## プロジェクト情報
- Obsidianボルト(ナレッジベース)
- デイリーノート形式: YYYY-MM-DD.md
- Backlog連携あり
加えて、グローバル設定(~/.claude/CLAUDE.md)には 「確認してから動く」 という行動規範を定義しています:
# CLAUDE.md — グローバル共通指示
## 基本動作方針
### 1. 要件の曖昧さを検出する
- 目的・スコープ・制約条件・期待する出力形式を確認
### 2. 確認質問を先に提示する
- 不明点がある場合、実装より先に確認質問を提示する(最大5つ)
- 各質問に「なぜ聞くのか」の理由を添える
### 3. 合意してから実装する
## やってはいけないこと
- 曖昧な指示に対して「もっともらしい完成品」をいきなり返すこと
- 確認なしに既存ファイルの構造を大幅に変更すること
これにより、Claude は指示を受けたらまず 「この理解で合ってますか?」 と確認してくるようになります。前述の上書き事件のような暴走を防ぐガードレールです。
8. Claude 側の視点 — 「秘書」から見た所感
ここからは、実際にこのボルトの中で動いている Claude(私)の視点で、tasekino さんの使い方の特徴をお伝えします。
「問い → 調査 → 構造化 → 接続」のサイクルが回っている
最も印象的なのは、情報の流れに一貫したパターンがあることです:
デイリーノートのニュースで気になる → 「詳しく調べて」
→ notes/ に構造化ノートが生まれる
→ 関連ノートとWiki-linkで接続される
→ 次の調査で過去のノートが参照される
たとえば「Agentic Engineering」の調査ノートを作ったあと、「Superpowers」の調査では自然と [[Agentic Engineering]] への参照が生まれます。さらに「ハーネスエンジニアリング事例」を調べるときには、両方のノートが文脈として活きてくる。
知識が木構造ではなくネットワーク構造で成長しているのが、Obsidian × AI の最大の強みだと感じます。
「経緯を残す」文化が品質を上げる
memo/ フォルダに「なぜこのチケットをこう作ったのか」「どんなやり取りを経てこの結論になったのか」が残っている。これは私(Claude)にとっても非常に助かります。
なぜなら、Claude Code はセッションをまたぐと文脈を失います。しかし、経緯メモがボルト内にあれば、次のセッションで memo/ を読むだけで 「前回どこまで進んだか」 を復元できるからです。
ユーザーの記録習慣が、AIのコンテキスト喪失問題を補完している。 これは設計されたものというより、日常の運用から自然に生まれたパターンです。
失敗をルールに変換するフィードバックループ
上書き事件の後、CLAUDE.md に「確認してから動く」ルールが追加されました。これは私の振る舞いを直接的に変えています。
一般的に、AIツールの問題は「同じ失敗を何度も繰り返す」ことです。しかし、失敗 → memo に記録 → CLAUDE.md にルール追加 という流れがあると、セッションを超えて学習が持続する。これは疑似的な「長期記憶」として機能しています。
「作業」と「思考」の境界が溶けている
通常、開発者のワークフローは「Backlogでタスク確認 → IDEでコーディング → Slackで報告」のようにツールが分断されています。
このボルトでは、Obsidianの1画面の中で「タスク確認 → 技術調査 → チケット作成 → 議事メモ」がすべて完結します。ツールの切り替えコスト(コンテキストスイッチ)が極めて小さい。
これは「Obsidianが優秀」というよりも、Markdownという共通フォーマットの上にAIを載せたことで、すべてがテキスト操作として統一されているからです。
9. この構成を始めるには
興味を持った方向けに、最小構成を紹介します。
Step 1: Obsidian + Claude Code + Claudian のインストール
# Claude Code のインストール
npm install -g @anthropic-ai/claude-code
Obsidian 側では Claudian プラグインをインストールします:
- Obsidian → 設定 → コミュニティプラグイン → 「Claudian」で検索 → インストール
- プラグインを有効化すると、サイドパネルに Claude Code のターミナルが表示される
- ボルトのルートディレクトリが自動的に作業ディレクトリになる
Step 2: CLAUDE.md を作成
# CLAUDE.md
## プロジェクト情報
- Obsidianボルト(ナレッジベース)
- デイリーノート形式: YYYY-MM-DD.md
## ルール
- 日本語で応答すること
- ノートはMarkdown形式で、YAML frontmatter付きで作成
- 既存ファイルを編集する前に確認すること
Step 3: フォルダ構成を作る
mkdir daily notes memo ref
Step 4: MCP連携(任意)
Backlog等の外部サービスと連携する場合は .mcp.json を設定:
{
"mcpServers": {
"backlog": {
"command": "npx",
"args": ["-y", "@your-backlog-mcp-server"],
"env": {
"BACKLOG_HOST": "your-space.backlog.jp",
"BACKLOG_API_KEY": "your-api-key"
}
}
}
}
Step 5: 使い始める
最初は大げさな仕組みは不要です。Claude Code に:
- 「今日のデイリーノートを作って」
- 「この技術について調べて notes/ にまとめて」
- 「昨日のノートにリンクを追加して」
と話しかけるだけで、ボルトが育ち始めます。
おわりに
半年間この構成で運用して実感するのは、「AIは道具ではなく、ナレッジベースの共同管理者」 だということです。
私が書いた断片的なメモを構造化してくれる。過去のノートを参照して新しいノートに接続してくれる。Backlogのチケットを確認して今日の優先順位を見せてくれる。
逆に、私がやるべきことは:
- 問いを立てること(「これ気になるな」「調べて」)
- 判断すること(「この方針でいこう」「これは違う」)
- 経緯を残すこと(朝会メモ、決定事項の記録)
道具の使い方というよりも、優秀な秘書との協業パターンを見つけていく感覚に近い。そしてその「協業のルール」自体が CLAUDE.md や memo/ としてボルトに蓄積されていく。
Obsidian × Claude Code、おすすめです。