mcpField
T
things-todo

things-todo

github.com/steipete生産性7.4k69 回インストール1 週間前に更新
リポジトリ

things-todo について

PeterのMacで`things` CLIを使い、Things 3のタスクを管理するスキルです。タスクの追加、検索、更新、削除に対応し、変更後の読み戻し確認とデータベースへの直接書き込み回避を案内します。

主な機能

  1. 01タスクの追加と検索
  2. 02日付、期限、リスト、タグの設定
  3. 03IDによるタスクの更新と削除
  4. 04読み戻しによる変更確認
  5. 05変更前のドライラン

活用シーン

  1. 01具体的な次のアクションの記録
  2. 02検索語によるタスクの検索
  3. 03既存タスクの更新や削除
  4. 04タスク変更の反映確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/steipete/agent-scripts --skill things-todo

インストール後、Claude Code で/things-todoを入力して読み込まれたか確認します。

詳細

Things のタスク

Peter の Mac で Things 3 のタスクを管理するときに使います。Things に紐づくタスクには things を使い、ユーザーが Apple Reminders を指定した場合に限り $reminders を使います。

ツール

  • CLI:things
  • リポジトリ:https://github.com/ossianhempel/things3-cli
  • インストール:
GOBIN=/opt/homebrew/bin go install github.com/ossianhempel/things3-cli/cmd/things@latest

URL 操作の更新時の認証:

source ~/.profile >/dev/null 2>&1 || true
things auth

THINGS_AUTH_TOKEN は ~/.profile または 1Password から取得してください。決して表示しないでください。 things update --dry-run では、auth-token=*** としてマスキングする必要があります。

開始

スクリプトでの読み取りと検証には JSON を使ってください。

things tasks --format json --limit 20
things today --format json
things search "query" --format json

Things DB の読み取りには、呼び出し元アプリにフルディスクアクセスが必要な場合があります。書き込みは Things URL Scheme または things 経由の AppleScript で行い、SQLite DB に直接書き込まないでください。

追加

デフォルトでは、追加後に検索して読み戻します。

things add "Book LHR-SFO nonstop business flight" --notes "Nonstop only." --when tomorrow --tags travel
things tasks --search "LHR-SFO" --format json

便利なフラグ:

  • --notes "text"
  • --when today|tomorrow|evening|anytime|someday|YYYY-MM-DD
  • --deadline YYYY-MM-DD
  • --list "Project or Area"
  • --tags tag1,tag2
  • --checklist-item "text」を繰り返し指定
  • --dry-run で、変更を加えずに things:/// URL を確認します。

更新/削除

まず UUID を見つけてから、ID を指定して変更します。

things tasks --search "flight" --format json
things update --id <uuid> "New title" --notes "Updated notes"
things tasks --search "New title" --format json
things delete --id <uuid> --confirm <uuid>
things tasks --search "New title" --format json
things trash --search "New title" --format json

書き込み後は必ず読み戻してください。削除すると項目は Things のゴミ箱に移動します。クリーンアップが重要な場合は、通常の検索で項目が見つからず、ゴミ箱の検索では見つかることを確認してください。

規約

  • 曖昧な依頼は、具体的な次のアクションを示すタイトルにします。
  • ユーザーが書き換えではなく記録を明確に求めている場合は、表現を維持します。
  • 関連のないアクションは、別々のタスクに分けます。
  • ユーザーが指定した場合に限り Today を使い、それ以外は Inbox/Anytime のデフォルトを使います。
  • 一括更新/削除の前には、--dry-run を使うことをおすすめします。
  • 現在の日付に基づく計算には date を実行し、推測しないでください。

注意点

  • macOS 専用です。リモートホストでは、アプリが存在しない、または表示されていない場合、Things.app のバージョンが UNKNOWN と表示されることがあります。
  • update には THINGS_AUTH_TOKEN が必要ですが、add には必要ありません。
  • --tags は add/update では複数形です。tasks --tag はフィルタリング時に使う単数形です。
  • today の JSON では、start: Anytime と実際の start_date が表示されることがあります。Today に設定されたことの確認には、単一のフィールドではなく、コマンドでの所属確認や読み戻しを使ってください。

コメント