はじめに #
仕事もプライベートもObsidianを使って日誌を書いています。毎日の作業ログ、タスク管理、メモ、すべてを日誌ファイルに書き込む運用をしていました。
しかし、運用を続けるうちに日誌が肥大化し、タスクが埋もれるようになりました。そこでClaude Codeと一緒にObsidianのタスク管理を再設計した話を紹介します。
TL;DR #
- 日誌に散らばっていたタスクをプロジェクト単位のノートに分離した
- コミュニティプラグインDataviewで、プロジェクトノートのタスクを自動集約するダッシュボードを作った
- タスクに
#待ち#一日一善などのタグを付け、全プロジェクト横断でタグごとにダッシュボードへ一覧表示できるようにした
Before: 日誌に全部書いていた時代 #
何が起きていたか #
以前の運用では、日誌ファイル1つにすべてを書いていました。
- タスク一覧(
- [ ]チェックボックス) - 会議メモ
- コードスニペット
- 調査結果
- 進捗メモ
その結果、1日の日誌が 500行超 になることもありました。
# 作業記録
- [x] メールチェック
- [x] slackチェック
## 家計簿アプリ開発
- [ ] REST APIの設計
- [x] エンドポイント一覧を整理←イマココ
- [x] GET /expenses
- [x] POST /expenses
- [x] DELETE /expenses/:id
- [ ] PR出した、レビュー待ち
- [ ] フロントエンドの実装
- Reactでの画面遷移:
- react-router-domでルーティング設定
- グラフ表示はrecharts使う予定
- 月次集計のロジック...
(実装メモが延々と続く)
## ブログ運用
- [ ] Hugo記事の自動デプロイ
- [ ] GitHub Actionsのワークフロー修正
- [ ] 動作確認待ち!
- [ ] OGP画像の自動生成を追加
## 読書メモ
- [ ] 「Clean Architecture」の続きを読む
- [ ] 「プログラマの数学」を買う
## AWS資格勉強
- [ ] SAP模擬試験を解く
- [ ] Well-Architectedの復習
---
# TODO
## Obsidianプラグイン開発
- [ ] READMEの英語化
(...さらに続く)
問題点 #
- 日誌が肥大化する: タスクと会議メモとコードスニペットが混在し、1ファイル500行超に
- タスクが埋もれる: どのタスクが今ブロックされているか、何が最優先か分からない
- 毎日コピーの手間: 未完了タスクを翌日の日誌に手動コピーしていた
After: 新しい運用の全体像 #
Vault構造 #
記録/
├── 日誌/ # 日々の行動ログ (YYYY-MM-DD.md)
├── dashboard.md # タスクダッシュボード(Dataview自動集約)
├── projects/ # プロジェクト別タスク管理
├── weekly/ # 週次振り返り
├── books/ # 書籍メモ
├── permanent/ # 永続的なナレッジノート
├── temp/ # 一時メモ
├── claude/ # Claude関連のノート
└── CLAUDE.md # Claude Code用のルール
日誌: 行動ログに集中 #
新しい日誌はこんな感じになります。
# 作業記録
- [x] メールチェック
- [x] slackチェック
- [x] aws whats new
- [[家計簿アプリ開発#REST API設計]] PRのレビューコメント対応した
- [[ブログ運用#OGP画像]] テンプレート作成できた
# [DAILY_SUMMARY]
- 家計簿アプリのAPI設計が完了した
タスクの詳細はプロジェクトノートにあるので、日誌には「今日何をしたか」だけ書きます。[[家計簿アプリ開発#REST API設計]] のような見出しリンクで、ワンクリックでタスクの詳細に飛べます。見出しリンクは Obsidian が保管してくれるので簡単に作成できます。
プロジェクトノート: タスクの本拠地 #
各プロジェクトに1ファイル作り、## 見出し単位でタスクをグループ化します。
# 家計簿アプリ開発
## REST API設計
- [x] エンドポイント一覧を整理→完了
- [ ] バリデーションの共通化 #待ち
- zodのスキーマ定義をフロントと共有する方針に。monorepo化の検討中
## フロントエンド実装
- [ ] グラフ表示コンポーネント #一日一善
- rechartsで月次推移グラフを作る
- [ ] カテゴリ別集計画面
- useReducerで状態管理
- フィルタ条件:
- 期間指定 → DateRangePicker
- カテゴリ → ドロップダウン
## CI/CD整備
- [ ] GitHub Actionsでテスト自動実行 #一日一善
# 完了したタスクたち
(完了したセクションはここに移動)
ルール:
##セクション内のタスクがすべて完了したら、セクションごと# 完了したタスクたちに移動する- 日誌からは
[[家計簿アプリ開発#REST API設計]]で参照する - タスクの詳細(依存関係、実装メモ、参考リンク)はすべてここに書く
タグ運用 #
タスクに付けるタグは3つだけ。シンプルに保ちます。
| タグ | 意味 | 用途 |
|---|---|---|
#待ち |
ブロック中 | 他者の対応待ち、マージ待ちなど |
#一日一善 |
コツコツ進める | 急ぎではないが少しずつ進めたいタスク |
#ブログネタ |
ブログ記事のネタ | 後でブログにまとめたいタスク |
ダッシュボード: Dataviewで自動集約 #
dashboard.md にDataviewクエリを並べて、全プロジェクトのタスクを一望できるようにしました。実際の内容は公開できないので、実際の画面をChatGptに変換してもらったものです。
実際のdashboard.mdはObsidianのcallout記法で2カラムレイアウトにしています。dashboardに追加したいprojectをdashboard.mdに追記します。
> [!col2]
> > [!info]+ 待ち状態(ブロック中)
> > ```dataview
> > TASK
> > FROM "projects"
> > WHERE contains(tags, "#待ち") AND !completed
> > GROUP BY header
> > ```
>
> > [!info]+ 一日一善(急ぎではないがコツコツ)
> > ```dataview
> > TASK
> > FROM "projects"
> > WHERE contains(tags, "#一日一善") AND !completed
> > GROUP BY header
> > ```
> [!col2]
> > [!note]+ プロジェクト名
> > ```dataview
> > TASK
> > FROM "projects/プロジェクト名"
> > WHERE !completed
> > GROUP BY header
> > ```
[!col2] calloutで左右2カラムに並べ、[!info]+ の + で折りたたみ可能にしています。上段にはタグ横断のクエリ(#待ち と #一日一善)、下段にはプロジェクト別のクエリを並べる構成です。
これにより:
- 「今ブロックされているタスクは何か?」が左上で一目で分かる
- 「手が空いたときに何を進めればいいか?」が右上で分かる
- プロジェクトごとの残タスクも下段で把握できる
日誌 → プロジェクト → ダッシュボードの連携 #
日誌(行動ログ)
└─ [[家計簿アプリ開発#REST API設計]] PRのレビューコメント対応した
└─ projects/家計簿アプリ開発.md の ## REST API設計 セクション
└─ dashboard.md が Dataview で自動集約
この3層構造により:
- 日誌: 今日何をしたか(行動ログ)
- プロジェクトノート: タスクの詳細と状態(Single Source of Truth)
- ダッシュボード: 全体の状況を俯瞰(自動集約)
がそれぞれの役割に集中しています。
どうやったか: Claude Codeとの協業 #
claude-obs: ObsidianをClaude Codeで操作する環境 #
Claude CodeでObsidianのvaultを直接操作できる環境を作りました。
alias claude-obs='cd /path/to/vault && claude'
このエイリアスを叩くだけで、Claude Codeがvaultのファイルを読み書きできます。
ポイントは vault直下にCLAUDE.mdを置く ことです。Claude CodeはCLAUDE.mdを自動的に読み込むので、vaultのルールをここに書いておけばルール通りに動いてくれます。
CLAUDE.mdの実例 #
vault直下に置くCLAUDE.mdの実例を紹介します。これがClaude Codeへの「取扱説明書」になります。
詳細
# CLAUDE.md - Obsidian Vault操作ガイド
このファイルはClaude Codeがこのvaultを操作する際の指針です。
## Vault構造
記録/
├── 日誌/ # 日々の行動ログ (YYYY-MM-DD.md形式)
├── dashboard.md # タスクダッシュボード(Dataview自動集約)
├── projects/ # プロジェクト別タスク管理
├── weekly/ # 週次振り返り (YYYY-Www.md形式)
├── books/ # 書籍メモ・読書ノート
├── permanent/ # 永続的なナレッジノート
├── temp/ # 一時的なメモ
├── claude/ # Claude関連のノート
└── attachments/ # 添付ファイル(画像など)
## タスク管理ルール
### 原則
- タスクはプロジェクトノート(projects/)に一元管理する
- 日誌にタスクの - [ ] を書かない(プロジェクトへのリンクと進捗メモのみ)
- プロジェクトノートでは見出し(##)単位でタスクをグループ化する
### タグ運用
- #待ち — ブロック中のタスクに付ける
- #一日一善 — 急ぎではないがコツコツ進めたいタスクに付ける
- #ブログネタ — ブログ記事のネタになりそうなタスク
### 完了タスクの管理
- ## セクション内のタスクがすべて完了したら、
セクションごと # 完了したタスクたち に移動する
- 移動はユーザーが手動で行うか、Claude Codeに依頼する
- 依頼例: 「家計簿アプリのREST API設計を完了に移動して」
### ダッシュボード(dashboard.md)
- Dataviewで全プロジェクトの未完了タスクを自動集約
- 手動で書き込まない
ポイントは以下です:
- Vault構造を明示する: Claude Codeがどこに何があるか迷わない
- ルールを明文化する: 「日誌にチェックボックスを書かない」など、守ってほしいルールを書く
- 操作例を書く: 「家計簿アプリのREST API設計を完了に移動して」のように、依頼の仕方を示す
タスク移動などの定型作業を依頼できる #
完了したタスクセクションの移動は、Claude Codeに依頼するだけで済みます。
「家計簿アプリのREST API設計セクションを完了に移動して」
Claude CodeはCLAUDE.mdのルールを読んでいるので、## REST API設計 セクションを丸ごと # 完了したタスクたち に移動してくれます。
ブログネタの相談・構成整理もObsidian上で完結 #
この記事自体も、Obsidianのvault内でClaude Codeと構成を相談しながら下書きを作りました。
- タスクに
#ブログネタタグを付ける claude/blog/ブログネタ.mdにDataviewで自動収集されるclaude-obsでClaude Codeを起動し、構成を相談claude/blog/下書き/に下書きを作成- ブログリポジトリに記事として清書
すべてObsidian上で完結するので、ツールの行き来がありません。
最後に #
まとめると、やったことは:
- タスクをプロジェクトノートに分離した(日誌から独立)
- Dataviewでダッシュボードを作った(自動集約)
- タグで状態を可視化した(
#待ち#一日一善) - CLAUDE.mdでClaude Codeにルールを教えた(定型作業を委任)
結果として日誌は500行超から数十行になり、タスクの全体像はダッシュボードで一望でき、完了タスクの整理はClaude Codeに任せられるようになりました。
Obsidianの柔軟性とClaude Codeの実行力を組み合わせると、自分だけのタスク管理システムを素早く構築できます。同じような悩みを持っている方の参考になれば幸いです。
Reply by Email