CLI
todoke CLI を使うと、ターミナルからアプリ・API キーの管理や通知送信ができます。
インストール
Section titled “インストール”# todoke モノレポを clone した後bun installcd apps/clibun run buildビルドすると apps/cli/dist/index.js が生成されます(package.json の bin フィールドで todoke に紐付けられています)。次のいずれかの方法で実行してください。
# 直接実行node apps/cli/dist/index.js <command>
# もしくは apps/cli で bun link しグローバルに `todoke` として実行cd apps/clibun linktodoke <command>以降の例では todoke <command> の形式で表記します。
todoke login --api-key pk_xxxxxxxxxxxxxxxx# ✔ ログインしました。設定を /Users/you/.todoke.json に保存しました。--api-key <key>: 必須。ダッシュボードで発行した API キー--api-url <url>: 省略可。省略時はhttps://api.todoke.dev
ログイン時に API キーの有効性を確認するため、内部で GET /api/v1/apps を呼び出します。認証に失敗すると次のように表示され、設定は保存されません。
todoke login --api-key pk_invalid# ✖ 認証に失敗しました: <APIからのエラーメッセージ>設定ファイルは ~/.todoke.json(os.homedir() 配下)にパーミッション 0600 で保存されます。apiKey と apiUrl が平文の JSON として書き込まれるため、取り扱いに注意してください。
todoke logout# ログアウトしました。未ログイン状態で logout を実行すると ログインしていません。(グレー表示)と出力されます。
コマンドリファレンス
Section titled “コマンドリファレンス”todoke login
Section titled “todoke login”| オプション | 必須 | 説明 |
|---|---|---|
--api-key <key> | 必須 | API キー(pk_ で始まる文字列) |
--api-url <url> | 省略可 | API URL(デフォルト: https://api.todoke.dev) |
上記「ログイン」セクションを参照してください。
todoke logout
Section titled “todoke logout”保存した認証情報(~/.todoke.json)を削除します。
todoke logout# ログアウトしました。todoke apps list
Section titled “todoke apps list”ログイン中のキーが属するアプリを表示します(引数なし)。
todoke apps list## アプリ一覧 (1件)## my-app 3f29a1d2-4b7d-4a91-9c3e-1f2b3a4d5e6fアプリが 0 件の場合は アプリがありません。(グレー表示)と出力されます。
todoke apps stats <app-id>
Section titled “todoke apps stats <app-id>”アプリの統計(アクティブ購読者・総送信数・失敗数・今月の送信数)を表示します。
todoke apps stats 3f29a1d2-4b7d-4a91-9c3e-1f2b3a4d5e6f## アクティブ購読者: 42# 総送信数: 1234# 失敗数: 3# 今月の送信数: 567todoke apps delete <app-id>
Section titled “todoke apps delete <app-id>”アプリを削除します。
todoke apps delete 3f29a1d2-4b7d-4a91-9c3e-1f2b3a4d5e6f# ✔ 削除しました。todoke keys list <app-id>
Section titled “todoke keys list <app-id>”アプリに紐づく API キー一覧(スコープ・最終使用日時)を表示します。
todoke keys list 3f29a1d2-4b7d-4a91-9c3e-1f2b3a4d5e6f## APIキー一覧 (1件)## backend-key notify 最終使用: 2026/7/2 10:00:00# 8e1c2d3f-...キーが 0 件の場合は APIキーがありません。(グレー表示)と出力されます。
todoke keys add <app-id>
Section titled “todoke keys add <app-id>”API キーを作成します。
| オプション | 必須 | 説明 |
|---|---|---|
-n, --name <name> | 必須 | キー名 |
-s, --scope <scope> | 省略可 | スコープ(subscribe_only / notify / full)。省略時は notify |
todoke keys add 3f29a1d2-4b7d-4a91-9c3e-1f2b3a4d5e6f -n backend-key -s notify# ✔ 作成しました: backend-key (notify)## APIキー: pk_a1b2c3d4e5f6...# ※ このキーは一度しか表示されません。必ずコピーしてください。todoke keys rm <app-id> <key-id>
Section titled “todoke keys rm <app-id> <key-id>”API キーを削除します。
todoke keys rm 3f29a1d2-4b7d-4a91-9c3e-1f2b3a4d5e6f 8e1c2d3f-0000-0000-0000-000000000000# ✔ 削除しました。todoke notify <app-id>
Section titled “todoke notify <app-id>”通知を送信します。
| オプション | 必須 | 説明 |
|---|---|---|
-t, --title <title> | 必須 | 通知タイトル |
-b, --body <body> | 必須 | 通知本文 |
-u, --url <url> | 省略可 | クリック時の遷移先 URL(https:// のみ) |
-e, --endpoint <endpoint> | 省略可 | 特定の購読者のエンドポイントを指定 |
詳細は次の「通知の送信」セクションを参照してください。
todoke notify 3f29a1d2-4b7d-4a91-9c3e-1f2b3a4d5e6f -t "お知らせ" -b "新しいメッセージがあります"# ✔ 通知を送信しました: "お知らせ"-u/--url を指定すると通知クリック時の遷移先を、-e/--endpoint を指定すると特定の購読者のみへの送信を設定できます。
エラー時の挙動
Section titled “エラー時の挙動”未ログイン状態で login / logout 以外のコマンドを実行すると、次のメッセージを表示して終了コード 1 で終了します。
todoke apps list# ログインしていません。`todoke login --api-key <key>` を実行してください。その他のエラー(API キーが無効・スコープ不足・リソースが見つからない等)は、API からのエラーメッセージがそのまま表示され、終了コードは 1 になります。エラーコードの一覧は エラーコード・制限値 を参照してください。