🦆

# Claude Code × Todoist 連携

に公開

Claude Code × Todoist 連携

1.この投稿はAIによって作成しました。
2.この手順を踏まずとも、APIキーをClaudecodeに渡して、Todoistへのタスク登録をターミナル上から行うよう指示すれば誰でも実装可能だと思います。


この資料でわかること

  • ターミナルから Todoist へ即時タスク登録する方法
  • 必要な環境と API トークンの取得手順
  • 最小実装(コード例)とエラー対策
  • CLI コマンド一覧と短縮スクリプト
  • 便利な使い方 & 拡張アイデア

背景 ── なぜ必要?

# コーディング中
# 「バグ修正メモしよう」
# → アプリ切替 🔀 集中力ダウン

課題: タスク登録のためにエディタを離れると生産性が落ちる

解決: コマンド1行で Todoist に直接登録


準備

  1. Claude Code (導入済み)

  2. Node.js

  3. Todoist API トークン

    • Todoist › 設定 › 統合 › 開発者トークン をコピー
    • .env 等に TODOIST_TOKEN="xxxx" と保存

フロー概要

コマンド入力 → Claude Code 関数 → Todoist REST API → タスク生成

最小構成で操作は 1 コマンド のみ。


実装ステップ

1. function.json

{
  "name": "todoist",
  "description": "Add task to Todoist",
  "parameters": {
    "type": "object",
    "properties": {
      "task": { "type": "string" }
    },
    "required": ["task"]
  }
}

2. todoist.js

const https = require("https");
const TOKEN = process.env.TODOIST_TOKEN;

module.exports = async ({ task }) => fetchTask(task);

async function fetchTask(content){
  const data = JSON.stringify({ content });
  const opt = {
    hostname: "api.todoist.com",
    path: "/rest/v2/tasks",
    method: "POST",
    headers: {
      "Authorization": `Bearer ${TOKEN}`,
      "Content-Type": "application/json"
    }
  };
  return request(opt, data);
}

エラー対策の勘所

ステータス/症状 原因 対処
401 トークン無効 再コピー・再設定
429 50 req/min 超過 setTimeout でリトライ
通信失敗 ネットワーク プロキシ・VPN を確認

CLI コマンド一覧

add-task [options] <content>    新しいタスクを追加
list-tasks [options]            タスク一覧を表示
complete-task <taskId>          タスクを完了にする
delete-task <taskId>            タスクを削除する
list-projects                   プロジェクト一覧を表示
add-project [options] <name>    新しいプロジェクトを追加
add-comment <taskId> <content>  タスクにコメントを追加
quick-add [options] <content>   クイックタスク追加 (Claude Codeから使用)
help [command]                  ヘルプを表示

Claude Code での短縮コマンド

ターミナル操作をさらに短縮して ./t に一本化。

# スクリプト作成
echo '#!/bin/bash
/path/to/your_project/todoist"$@"' > ~/bin/t
chmod +x ~/bin/t

# 使い方例
./t quick-add "タスク内容"
./t add-task "詳細タスク" --priority 3 --due "tomorrow"
./t list-tasks
./t complete-task 9328880452

✅ "Claude Code環境でのテスト - 短縮コマンド動作確認" が追加されました (ID: 9328880452)


使い方サンプル

# 基本
cc todoist "README 更新"

# 優先度 + ラベル
cc todoist "本番バグ修正" -p1 -l bug
  • -p1 : 🔴 最優先
  • ラベルはカンマ区切りで複数指定可

便利ワザ

# zsh エイリアス例
a()  { cc todoist "$@"; }
bug(){ cc todoist "$@" -p1 -l bug; }
  • 1単語で高速登録
  • チーム共通エイリアスを dotfiles に追加すると◎

次の一手

  • タスク一覧/完了 API で CLI を拡張
  • 自然言語〆切 (due_string) 対応
  • Slack や GitHub Actions との自動連携

まとめ

  • 切替ゼロ でタスクを即メモ → 集中力維持
  • 実装は function.json + JS 1 ファイル だけ
  • ./t スクリプトでさらに時短
  • まずは個人環境で試し、生産性アップを体感しよう

お問い合わせ

質問や改善提案はお気軽に!

Discussion