Slack のメッセージを読み書きするためのシンプルな CLI ツール。
diff コマンドで新着差分だけを取得し、AIエージェントとのワークフローを加速。
AIエージェントによるSlack監視タスクトリアージのために設計された、シンプルで強力なCLI。
前回チェック以降の新着メッセージだけを返す。AIエージェントが無駄なAPIコールをせず、効率的にSlackを監視できる。
JSON出力標準対応。ts, user_name, reactions など構造化されたデータをAIが直接処理できる。
macOS Keychain・1Password・環境変数の3段階フォールバック。トークンをファイルに平文保存しない設計。
Bot Tokenでメッセージ送信・スレッド返信に対応。AIエージェントがSlackに返信するユースケースをカバー。
Slack検索構文をそのまま利用可能。from:@user in:#channel keyword のような絞り込みが CLIから直接できる。
Bunのコンパイル機能でBun不要のバイナリを生成。CIや別マシンへの配布が簡単。
シンプルなサブコマンド構成で、直感的に使える。
$ slack-cli diff "#task-seri" $ slack-cli diff "#general" --format text $ slack-cli diff "#general" --resolve-users $ slack-cli diff "#general" --reset $ slack-cli diff "#general" --no-update
$ slack-cli send "#general" -m "Hello!" $ slack-cli send "#general" \ -m "スレッド返信" \ --thread 1708160400.000100 $ slack-cli send "#ch" -m "test" --format json
$ slack-cli history "#general" $ slack-cli history "#general" --count 50 $ slack-cli history "#general" --channel-info $ slack-cli history C08XXXXXX --format json
$ slack-cli search "デプロイ" $ slack-cli search "from:@serikawa バグ" $ slack-cli search "in:#general 重要" \ --count 5 $ slack-cli search "keyword" --sort score
$ slack-cli channels $ slack-cli channels --format json $ slack-cli channels --include-private
$ slack-cli token set --user xoxp-... $ slack-cli token set --bot xoxb-... $ slack-cli token set-1password \ --user-ref "op://Vault/Item/User Token" $ slack-cli token status
AIエージェントが無駄なく動けるよう、状態管理を内蔵している。
最新100件を取得してすべてを「新着」として出力。キャッシュを ~/.cache/slack-cli/ に保存(XDG準拠)。
前回の最新タイムスタンプ以降のメッセージだけを返す。APIコールを最小化し、処理コストを削減。
JSON出力をAIエージェントに渡し、send コマンドで返信。ループ型のSlack AIエージェントが簡単に作れる。
Bun がインストール済みなら3ステップで使える。
$ git clone https://github.com/noplan-inc/slack-cli.git $ cd slack-cli && bun install $ bun build --compile src/index.ts --outfile slack-cli $ mv slack-cli ~/.local/bin/ # トークンを設定(macOS Keychain に安全に保存) $ slack-cli token set --user xoxp-your-user-token $ slack-cli token set --bot xoxb-your-bot-token # 試してみよう $ slack-cli diff "#general" --resolve-users --format text