メインコンテンツへスキップ

ObsidianとClaude Codeでタスク管理を改善した話

· loading · loading ·
kiitosu
著者
kiitosu
aws community builder. 画像処理やデバイスドライバ、データ基盤構築からWebバックエンドまで、多様な領域に携わってきました。地図解析や地図アプリケーションの仕組みにも経験があり、幅広い技術を活かした開発に取り組んでいます。休日は草野球とランニングを楽しんでいます。
目次

はじめに
#

仕事もプライベートも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. 日誌が肥大化する: タスクと会議メモとコードスニペットが混在し、1ファイル500行超に
  2. タスクが埋もれる: どのタスクが今ブロックされているか、何が最優先か分からない
  3. 毎日コピーの手間: 未完了タスクを翌日の日誌に手動コピーしていた

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に変換してもらったものです。

alt text

実際の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と構成を相談しながら下書きを作りました。

  1. タスクに #ブログネタ タグを付ける
  2. claude/blog/ブログネタ.md にDataviewで自動収集される
  3. claude-obs でClaude Codeを起動し、構成を相談
  4. claude/blog/下書き/ に下書きを作成
  5. ブログリポジトリに記事として清書

すべてObsidian上で完結するので、ツールの行き来がありません。

最後に
#

まとめると、やったことは:

  1. タスクをプロジェクトノートに分離した(日誌から独立)
  2. Dataviewでダッシュボードを作った(自動集約)
  3. タグで状態を可視化した#待ち #一日一善
  4. CLAUDE.mdでClaude Codeにルールを教えた(定型作業を委任)

結果として日誌は500行超から数十行になり、タスクの全体像はダッシュボードで一望でき、完了タスクの整理はClaude Codeに任せられるようになりました。

Obsidianの柔軟性とClaude Codeの実行力を組み合わせると、自分だけのタスク管理システムを素早く構築できます。同じような悩みを持っている方の参考になれば幸いです。

Reply by Email

関連記事

Obsidianコミュニティプラグインを公開してみる
· loading · loading
Obsidianコミュニティプラグイン入門
· loading · loading
ObsidianでRibbonに設定したボタンで特定のテンプレートのファイルを生成する
· loading · loading