Also available in: English
今年、Obsidianのワークフローを一から見直した。以前は、ノートを書いて、手動でリンクを貼って、たまにClaudeに何か質問するくらいだった。それでも回っていた。でもリンクの抜け漏れは多かったし、wikiとして複利的に知識が積み上がる感覚はなかった。
Andrej Karpathyのツイートで、自分のノートをLLMが管理するwikiとして運用するというアイデアを見て、自分のvaultでも試してみることにした。 今のワークフローでは、何を入れて何を重視するかは自分で決める。でも面倒な作業はAIがやってくれる:新しいアイテムの振り分け、既存ページとのクロスリンク、重複のマージ、重要なノートの昇格など。
要するに、AIアシストコーディングの、ナレッジワーク版だ。
ざっくりこんな感じ:
ワークフロー
新しいワークフローで一週間がどう回るか:アイデアのメモから、wikiが勝手に整理されるまで。
アイデアのキャプチャ
外出中にアイデアが浮かぶことが多い。Zettel(マークダウンメモをサッと取るために自作したアプリ)をスマホで開いて、3行書いて、0_Inbox/に放り込む。未整理のノートが一旦溜まるステージングフォルダだ。以上、おしまい。
夜間に、process-inboxというスケジュール実行のClaude Code Routineがそのノートを拾って、vault内の適切な場所を判断し、メタデータ付きのページを作成して、既存のノートとクロスリンクしてくれる。翌朝には、3行のメモが2つのプロジェクトアイデア(自分でも忘れていたやつ)にリンクされた、ちゃんとしたページになっている。
ボイスメモも同じ。スマホで録音して、ショートカットで文字起こしして、そのテキストがインボックスに入る。process-inboxがちゃんとしたノートに変えてくれる。
以前なら、このワークフローは「座って、ファイルを作って、メタデータヘッダーを書いて、関連ノートを手動で検索して、リンクを貼って…」という作業だった。正直やらなかった。今はハードルが「メモアプリに3行打つ」だけ。
wikiの健全性を保つ
ノートは腐る。ページが重複していったり、トピックが気づかないうちに膨らんだり、クロスリファレンスが古くなったり。それに、毎日のprocess-inboxがたまに全体像を見落とすこともある。
そこで週次ルーティンのreconcileが登場する。毎週日曜に過去7日間の変更をレビューして、レポートを出してくれる:*「Xについてのこの2ページ、ほぼ重複してるけどマージする?」とか、「Yについてのこのページ、一ヶ月間ずっと成長してるからCanonに昇格するのはどう?」*とか。
こうやってvaultの整理状態が保たれ、ノートが腐らない。
状況を把握する
夜間に走るルーティンは、何をやったか報告してくれないと意味がない。それに、自分が判断すべきことはちゃんとフラグを立ててほしい。
2つのファイルがそれを担っている:
log.md(追記専用の実行ログ。何を処理したかの記録)notifications.md(AIの通知センターみたいなもの)
log.mdとnotifications.mdをObsidianの新しいタブページにピン留めしているので、アプリを開くたびにエージェントが伝えたいことがすぐ目に入る:

インタラクティブな作業
全部を自動化できるわけではない。wikiのセクションを再構成したり、新しいページを関連ノートとクロスリンクしたり、「Xについて何がある?」と聞きたいときは、自分がループに入る必要がある。
そのためにClaude Codeを使っている。ファイルを直接読み書きできるAIアシスタントだ。デスクトップではCLI(このプラグインでObsidianに組み込み)、モバイルではClaudeアプリ経由で動く。電車の中でスマホから「インボックスの日本のビザのノートをワーキングホリデープロジェクトのフォルダに移して」と言えば、同じスキル、同じ設定ファイル、同じvaultで実行される。
ルーティンとの違い:自分がその場にいて、承認したり軌道修正したりできること。そして何より、AIが詰まったところで自分がインプットを出せること。

ちょっとした調べもの
Claude Codeは変更を加えるのに向いている。でもちょっとした質問をしたいだけのときは、大げさすぎる。
そういうときはClaude Projectsを使う。Claudeにファイル群をバックグラウンド知識として渡せるチャットインターフェースで、一般知識ではなく自分の実際のノートに基づいた回答が得られる。地味にすごい機能:GitHubリポジトリのフォルダをナレッジとしてリンクでき、リポが更新されると自動で同期される。つまり電車で文法ノートを追加したら、それが自動的にProjectのナレッジに反映される。手動アップロード不要。
日本語のProjectに「先週勉強した、変な活用の文法って何だっけ」と聞けば、自分の実際のノートに基づいた答えが返ってくる。速い、安い、ファイル編集不要。
Claude UIからプロジェクトへのファイル追加は簡単にできる:

次のステップ
Xのフィードの90%はスロップだ。怒りを煽るもの、エンゲージメント稼ぎ、焼き直し。でも10%は本当に面白い。問題は、そのシグナルを見つけるためにノイズをスクロールしなきゃいけないこと、見つけてもタイムラインに埋もれてしまうこと。
アイデア:3つ目のルーティンを追加して、X CLIでホームフィードを毎日取得し、AIで良いものだけにフィルタして、0_Inbox/に投入する。そこから先はprocess-inboxが他のアイテムと同じように処理してくれる。
ワークフローまとめ
全体像と、各Claudeの機能をどう使い分けているか:
| Routines | Claude Code | Projects | |
|---|---|---|---|
| いつ | スケジュール実行、夜間 | 何かを変更・質問したいとき | ちょっとした質問 |
| 何を | process-inbox、reconcileを自律実行 | ファイル編集、スキル実行、質問応答 | vaultの知識に基づいた読み取り専用Q&A |
| どうやって | 自律的、入力不要 | インタラクティブ、デスクトップ/モバイル | 速い、安い、会話的 |
どう動いているのか?
何ができるかはわかった。ここからは仕組みの話。自分でも作れるように。 全体は3つのパーツで成り立っている:設定ファイル、スキルフォルダ、フィードバックループ。
設定ファイル:CLAUDE.md
エージェントがセッションを開始するたびに、CLAUDE.mdというマークダウンファイルを読み込む。ここにvaultのフォルダ構成、frontmatterのスキーマ、プライバシールール、reconcileなどのキーワードの意味、エッジケースの処理方法が定義されている。
スキル:7_Agent/skills/
スキルは、手順を記述したモジュール式のマークダウンファイルだ。process-inboxはスキル。reconcileもスキル。各スキルは、エージェントが関連タスクに取り組むときに読むマークダウンドキュメントにすぎない。つまり、エージェントの操作マニュアルをObsidianで直接編集できるということだ!
これを機能させるには、
.claude/skills/→7_Agent/skills/にシンボリックリンクを張る必要がある。これでClaude Codeがvault内のスキルを認識する。
エージェントファイル
毎回ゼロから始まるエージェントはあまり役に立たない。状態が必要だ:前回何をしたか、何がまだ未処理か、vaultがまだ知らないことは何か。3つのマークダウンファイルがその記憶を担い、実行間のフィードバックループを形成する:
log.mdは何が起きたかを記録する。毎回の実行がエントリを追記する。notifications.mdは自分が注目すべきことを浮上させる。エージェントが非同期で何かをフラグするための仕組みだ。questions.mdはvaultがまだ知らないことを追跡する。既存のノートからは答えられない質問をしたとき、そのギャップを記録する。次に関連するトピックが出てきたとき、「そのページを書こう」というプロンプトになる。こうやってwikiは、成長すべき方向を学んでいく。
Git
ここまでの全てには、vaultがgitリポジトリであることが前提になっている。Claude Codeにはクローンするリポが必要だし、ルーティンには操作対象のリポが必要だし、Projectsにはナレッジ同期用のGitHubフォルダが必要だ。tradeoffとしてgitはプログラマー向けツールだが、適切なプラグインを使えばiCloudのような感覚で使える。別のガイドに書いた:ObsidianでGitをセットアップする。
この仕組みを使おう
CLAUDE.mdはCLAUDE.mdで公開している。スキルも7_Agent/skills/で全部読める。自分と同じスキルを使う必要はない。必要なのはパターンだ:gitで管理されたマークダウンのフォルダ、毎セッション読み込まれる設定ファイル、そしてマークダウンで書かれたいくつかのスキル。
一部のページが404になる理由
このvaultはQuartz経由でalexanderweichart.deに公開されている。一部のフォルダは除外されている:
7_Agent/(エージェント関連ファイル)、6_Private/(個人・業務機密)、0_Inbox/(未整理アイテム)、draft: trueのノート。デッドリンクがあるのはそのためだ。