AIがコーディングをしてくれるようになり、人間がWebを検索して、、逐一デバッグして、、という手間は少なくなりました。
しかし、昨今のAI時代、なぜそう書いたのか、他の書き方にしなかったのかを十分に考えるプロセスが減っているのではないかと思います。
出力したコードに責任を持つのは最後にGOサインを出した人間です。「そこはAIが書いたので…」では実務ではダメなのです。
そこで本記事では、Obsidian × Claude Code を組み合わせて、AI時代の学びを"自分の知識"として蓄積していくワークフローを紹介します。
なぜObsidianなのか
ObsidianとはローカルのMarkdownファイルをそのままノートとして扱える、いわば"育てる知識ベース"です。
特に優れている点が、
- 双方向リンク
[[note名]]で知識同士をつなげられる - グラフビューで自分の知識マップが可視化される
ことです。
そして、mdファイルで書くということは、「Claude Codeから自在に操作できる、自分専用の知識ノート」 として扱えるわけです。
ここが本記事の肝です。
セットアップ
obsidianではフォルダのことをvaultと言います。
vaultのルートでClaude Codeを起動するだけ。
cd ~/obsidian-vault
claude
これでClaudeはvault内のノートを全て認識した状態で動き出します。あとは普通に対話するだけです。
CLAUDE.md で自分の学び方をルール化する
Claude Codeはプロジェクトルートの CLAUDE.md を毎回コンテキストとして読み込んでくれます。例えば、Pythonをこれから始める人なら、こんな書き方がおすすめです。
# Python学習Vault
## このVaultの目的
Python初心者の私が、写経で終わらせず「自分で書けるようになる」ためのノート群。
## ディレクトリ構成
- `/basics/` - 文法・概念ノート(変数、for文、関数、クラスなど)
- `/snippets/` - 「これ覚えた!」というコード片
- `/errors/` - 出会ったエラーと、その原因・対処法
- `/projects/` - 練習で作っている小さいプログラム
- `/daily/` - 今日学んだことの日次ログ
## ノート作成ルール
- 既存概念は必ず [[wiki link]] でつなぐ(例: [[for文]] [[リスト内包表記]])
- コード例には必ず日本語コメントを添える
## 学習スタイル(超重要)
- 私はPython初心者です。
- 日本語で「どう考えるか」を説明 → そのあとコードを見せる
- 内包表記・lambda・デコレータなど "Pythonらしい書き方" は、
まず for 文などの素朴な書き方を見せてから紹介すること
- エラーが出たら、**エラーメッセージの読み方** を教えること
(どの行を見るか、英語のどこを訳すか、まで)
ポイントは最後の「学習スタイル」セクションです。
初心者が一番やりがちなのが「動いたコードをそのままコピーして次に進む」というパターン。これを防ぐために、Claudeを最初から "先生モード" に固定しておきます。前章の「なぜそう書くの?」を聞きやすくする土台にもなります。
ワークフロー例:iOSアプリを作りながら学ぶ
例えばSwiftUIでTODOアプリを作っているとします。Claude Codeに頼めば、数秒で動くコードが出てきます。でも、それを眺めているだけでは何も学べません。
そこで本記事のいちばん大事なスタンスがこれです。
「なぜそう書いたの?」を必ず聞く
動くコードを受け取ったら、そのまま受け入れずに、片っ端から「なぜ」をぶつけにいきます。
- まず実装を依頼
> TodoListView を作って。追加・削除・完了トグルができるように。 - 出てきたコードを読んで、引っかかった部分を全部聞く
> なぜ items は @State じゃなくて @StateObject の ViewModel に持たせたの? > なぜ ForEach の id に \.id を明示してるの? > なぜ削除は onDelete モディファイア経由なの? Button で書くのと何が違う? - 納得したら、その「なぜ」たちをvaultに流し込む
> 今の3つの解説を、vault の関連ノートに追記して。 対応するノートが無ければ新規作成。
「なぜ」が出てくる実装は、それだけ学びの種が埋まっている証拠です。Claude Codeは何度聞いても怒りませんし、納得いくまで時間をかけて聞き倒して良いのです。そして、その答えを必ずObsidianに固定する。これだけで、書き捨てだったコードが "リンクで繋がった知識" として育っていきます。
実際に効いている使い方 トップ3
1. 「これってどういうことなの?」を突き詰める
新しい技術を学ぶとき、一度ではスッと理解できないこともあります。〜〜との違いは何なんだろう。と疑問も生じます。
> Reactのuseで読み込んだPromiseと、Suspenseの関係を整理したい。
既存の [[React Suspense]] ノートと矛盾しないように、差分だけ追記して。
これで、Claudeが既存ノートを読んだうえで、整合性を保ったまま追記してくれます。
自分で全文を書き直したり、整理する必要もありません。
2. 書いたノートの場所を探す
Claudeに
> 〇〇について書いた記憶があるけどどこにあるかな?
これだけで対象・関連のノートを探してくれます。わからないことがあれば、
> これってどういうことなんだっけ?
で再度学習できます。
3. MOC(目次ノート)の自動メンテナンス
ノートが増えてくると、どこに何があるか分からなくなります。目次ノートを渡して「最近追加されたノートを適切な見出しの下に追加して」と頼めば、Claudeが構造を保ったまま整理してくれます。
注意点:AIに任せすぎない
これは自戒も込めて、ですが、Claudeに全部書かせると本当に何も残りません。動けばいいや、何となく良さそう、でGOサインを出してしまいます。
Claude Codeはあくまで"作業者"であって、コードに責任を持つのは自分。この線引きさえ守れば、AI時代でも学びはむしろ効率的になり深まり続けます。
昔なら先輩エンジニアに聞いていた質問を何度でもAIに投げれば良いのです。
まとめ
AIに任せられる時代だからこそ、「自分の頭の中に何を残すか」を意識的に設計する必要があります。Obsidian × Claude Code の組み合わせは、その手助けになる素晴らしいツールだと思っています。