0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code GTDスキルにPro機能を実装した話

0
Last updated at Posted at 2026-04-07

はじめに

前回の記事で、Claude Code 用の GTD タスク管理スキル /todo を公開しました。

30+ コマンドの基本機能を実装した後、「毎日の運用をもっと快適にしたい」と思い、4つの追加機能を実装しました。この記事ではその設計と実装について書きます。

追加した4つの機能

機能 コマンド 一言で
ダッシュボード /todo dash 今日やることが一目でわかる
デイリーレビュー /todo daily 朝の計画と夜の振り返り
カスタムビュー /todo view フィルタ条件を保存・呼び出し
レポート出力 /todo report weekly 週次の生産性を可視化

1. ダッシュボード

課題

/todo list は全カテゴリを表示するため、朝イチで「今日何をやるべきか」がすぐに掴めない。/todo stats は統計情報で、アクションに直結しない。

解決

「今日」にフォーカスした俯瞰ビューを作りました。

/todo dash

表示内容を優先度順に並べています:

# 📋 Dashboard — 2026-04-06

## ⚠️ 期限超過(2件)
  🔴 #8  障害対応  [@PC]  📅 2026-04-04
      #15 経費精算  📅 2026-04-05

## 🎯 今日やること(3件)
  🟡 #5  設計書レビュー  [@会社]
      #12 週次レポート
      #18 メール返信  [@PC]

## 📅 今週期限(2件)
  🟡 #22 提案書提出  [@会社]  📅 2026-04-10
      #25 定例会議準備  📅 2026-04-11

## ✅ Next Actions(5件)
  🔴 #30 セキュリティレビュー  [@PC]
      #32 ドキュメント更新
      ...

📊 next: 12件 / inbox: 3件 / waiting: 2件
✅ 今日: 2件完了 / 今週: 8件完了

💡 Inbox に 3件 の未処理タスクがあります。

設計のポイント

  • 全オープンIssue + クローズ済みIssueを一度に取得し、Node.js で分類・ソート
  • 期限超過は全カテゴリ横断で表示(next 以外でも期限切れなら警告)
  • Next Actions は上位10件に絞って表示(残りは件数のみ)
  • 完了実績(今日/今週)を下部に表示して達成感を可視化

2. デイリーレビュー

課題

GTD は週次レビューが有名ですが、実は毎日の「朝の計画」と「夜の振り返り」が継続のカギ。/todo weekly-review は作ったけれど、デイリーでの対話フローがなかった。

解決

朝と夜で異なるフローを実行する対話式レビューです。

/todo daily          # 時刻で自動判定(15時が境界)
/todo daily morning  # 明示的に朝モード
/todo daily evening  # 明示的に夜モード

Morning モード(朝の計画)

Step 1: ダッシュボード表示
Step 2: Inbox に未処理タスクがあれば仕分けるか確認
Step 3: 「他に今日やりたいタスクは?」→ 番号指定で due=今日 に設定
Step 4: 今日の計画サマリーを表示

## 🎯 今日の計画

1. 🔴 #8  障害対応
2. 🟡 #5  設計書レビュー  [@会社]
3.     #12 週次レポート

合計: 3件。がんばりましょう!

「今日やるタスクを自分で選ぶ」ステップがポイントです。期限付きタスクだけでなく、「今日やりたい」タスクにも due を設定することで、ダッシュボードの「今日やること」セクションに集約されます。

Evening モード(夜の振り返り)

Step 1: 今日の完了タスク一覧 → 「お疲れさまでした!」
Step 2: 未完了タスクを1件ずつ処理(tomorrow / done / someday / skip)
Step 3: 明日の予定を表示
Step 4: 一日のサマリー

未完了タスクに対して tomorrow と答えるだけで期限が明日に更新されるので、「やり残し」が翌日にスムーズに繰り越されます。

設計のポイント

  • 新しいロジックは最小限。既存コマンド(Dashboard, Review Inbox, Set due, Move, Done)の「オーケストレーション」として設計
  • 時刻による自動判定で、/todo daily だけで朝夜が切り替わる

3. カスタムビュー

課題

毎回 /todo list next @会社 p1 と入力するのが面倒。特に複数のコンテキストを組み合わせる場合。

解決

フィルタ条件を名前付きで保存して、呼び出せるようにしました。

# 保存
/todo view save 仕事 next @会社 p1
/todo view save 自宅PC next @自宅 @PC
/todo view save 緊急 p1

# 使う
/todo view 仕事    # → next + @会社 + p1 でフィルタして表示

# 一覧・削除
/todo view list
/todo view delete 仕事

設計のポイント

  • ~/.claude/todo-views.json にローカル保存(テンプレート機能と同じパターン)
  • ビュー名のバリデーションはテンプレートと同じルールを再利用
  • view use <名前> でも view <名前> でも呼び出せる(use は省略可能)

テンプレート機能の設計パターン(JSONファイル + Node.js CRUD + バリデーション)をそのまま踏襲したので、実装は速かったです。

4. レポート出力

課題

「今週どれだけ生産的だったか」を振り返る手段がなかった。/todo stats は現在のスナップショットで、時系列の推移が見えない。

解決

/todo report weekly    # 直近7日間
/todo report monthly   # 直近30日間
/todo report 14d       # 任意の日数

出力例:

# 📊 生産性レポート

**期間:** 2026-03-30 〜 2026-04-06(7日間)


## 完了サマリー

| 指標 | 値 |
|------|-----|
| 完了タスク数 | **18件** |
| 1日あたり平均 | 2.6件 |
| 現在のオープン | 12件 |
| 期限超過 | 1件 |

## 日別完了数

04-01 ████████████████ 4
04-02 ████████ 2
04-03 ████████████ 3
04-04 ████ 1
04-05 ████████████████████ 5
04-06 ████████████ 3

## カテゴリ別完了数
  next: 15件
  inbox: 2件
  waiting: 1件

## 優先度別完了数
  🔴 p1: 3件
  🟡 p2: 5件
  p3: 10件

設計のポイント

  • 日別バーチャートは 文字の繰り返し(最大幅20)。シンプルだがターミナルで見やすい
  • 全オープン + 全クローズ済みIssue を一度に取得して Node.js で集計
  • 完了タスク一覧は直近10件に絞って表示

全体の設計思想

4機能に共通する設計思想があります。

既存コマンドの組み合わせで作る

ダッシュボードは list + stats のフォーカス版。デイリーレビューは dashboard + review + due + move + done のオーケストレーション。カスタムビューは list のフィルタ条件をJSONに保存しただけ。

新しいデータ構造は todo-views.json(カスタムビュー用)の1つだけ。バックエンド(GitHub Issues)への変更はゼロです。

メンテナンスコストを最小に

機能を追加するたびにバックエンドの構造を変えると、既存データとの互換性問題が発生します。GitHub Issues の構造(ラベル + body のメタデータ)はそのままに、表示・集計のロジックだけを追加する方針にしました。

「毎日使いたくなる」を目指す

基本機能(タスクの追加・完了・移動)は「正しく動く」ことが重要。追加機能は「使いたくなる」ことが重要。ダッシュボードの「今日やること」、デイリーレビューの「がんばりましょう!」「お疲れさまでした!」、レポートのバーチャートは、機能的には不要ですが、毎日使い続けるモチベーションになります。

まとめ

機能 使いどころ
/todo dash 朝イチで開く。今日何をやるか把握する
/todo daily 朝の計画と夜の振り返りを習慣化する
/todo view 仕事 よく使うフィルタをワンコマンドで呼ぶ
/todo report weekly 週末に1週間を振り返る

リポジトリはこちらです。フィードバックや改善提案は Issue でお待ちしています。


この記事は Zenn からのクロスポストです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?