jpskill.com
🛠️ 開発・MCP コミュニティ

agent-channeltalk

Channel Talkのデスクトップアプリやブラウザの認証情報を利用して、チャットの閲覧、メッセージ送信、メッセージ検索、グループ管理など、顧客とのコミュニケーションを円滑に進めるための機能を利用するSkill。

📜 元の英語説明(参考)

Interact with Channel Talk using extracted desktop app or browser credentials - read chats, send messages, search messages, manage groups

🇯🇵 日本人クリエイター向け解説

一言でいうと

Channel Talkのデスクトップアプリやブラウザの認証情報を利用して、チャットの閲覧、メッセージ送信、メッセージ検索、グループ管理など、顧客とのコミュニケーションを円滑に進めるための機能を利用するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o agent-channeltalk.zip https://jpskill.com/download/10066.zip && unzip -o agent-channeltalk.zip && rm agent-channeltalk.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/10066.zip -OutFile "$d\agent-channeltalk.zip"; Expand-Archive "$d\agent-channeltalk.zip" -DestinationPath $d -Force; ri "$d\agent-channeltalk.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して agent-channeltalk.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → agent-channeltalk フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

Agent Channel

AIエージェントと人間が、シンプルなコマンドインターフェースを通じてChannel Talkワークスペースとやり取りできるTypeScript CLIツールです。Channel Talkデスクトップアプリからのゼロコンフィグでの認証情報抽出(ブラウザフォールバック付き)と、マルチワークスペースのサポートを特徴としています。

主要な概念

始める前に、Channel Talkの用語についていくつか説明します。

  • Channel = ワークスペース(Slackのようなチャットチャンネルではありません)。APIでは「channel」と呼ばれていますが、これはワークスペース全体を意味します。
  • UserChats = エンドユーザー(顧客)との1対1の会話。
  • Groups = チームのインボックスチャンネル(Slackのチャンネルに似ています)。IDで参照されます。
  • DirectChats = マネージャー間のダイレクトメッセージ。
  • Managers = チームの人間エージェント。
  • Bots = ワークスペース内の自動エージェント。
  • Messagesblocks 形式を使用します: [{ type: "text", value: "..." }]。CLIは、プレーンテキストを渡すとこれを自動的に処理します。

クイックスタート

# ワークスペースのスナップショットを取得(認証情報は自動的に抽出されます)
agent-channeltalk snapshot --pretty

# グループにメッセージを送信
agent-channeltalk message send group grp_abc123 "Hello from the CLI!"

# ユーザーチャットにメッセージを送信
agent-channeltalk message send user-chat uc_abc123 "Thanks for reaching out!"

# ユーザーチャットをリスト表示
agent-channeltalk chat list

認証

認証情報は、初回使用時にChannel Talkデスクトップアプリ(またはフォールバックとしてChromiumブラウザ)から自動的に抽出されます。手動での設定は不要で、APIキーも必要ありません。任意のコマンドを実行するだけで、認証がバックグラウンドでサイレントに行われます。

Channel Talkデスクトップアプリは、認証クッキーをSQLiteデータベースに保存します。macOSでは、クッキーはプレーンテキストであり、キーチェーンのプロンプトは不要です。Windowsでは、クッキーはDPAPIで暗号化され、自動的に復号化されます。macOSでChromiumブラウザにフォールバックする場合、クッキーにはキーチェーンの復号化が必要です。CLIは次の2つのクッキーを読み取ります。

  • x-account (JWT) - あなたのアカウントID
  • ch-session-1 (JWT) - あなたのセッショントークン

これらのクッキーは約30日後に期限切れになります。期限切れになると、CLIは次のコマンドでデスクトップアプリまたはブラウザから新しいクッキーを自動的に再抽出します。

重要: 認証情報を取得するには、必ず agent-channeltalk auth extract を使用してください。CLIは最初にデスクトップアプリから抽出し、アプリがインストールされていない場合はChromiumブラウザにフォールバックします。

マルチワークスペースのサポート

複数のChannel Talkワークスペースにログインしている場合、すべてが自動的に検出されます。最初のワークスペースがデフォルトで選択されます。

# 利用可能なすべてのワークスペースをリスト表示
agent-channeltalk auth list

# 別のワークスペースに切り替え
agent-channeltalk auth use <workspace-id>

# 認証ステータスを確認
agent-channeltalk auth status

# 保存されたワークスペースを削除
agent-channeltalk auth remove <workspace-id>

メモリ

エージェントは、セッション間で永続的なメモリとして ~/.config/agent-messenger/MEMORY.md ファイルを保持します。これはエージェントによって管理され、CLIはこのファイルを読み書きしません。メモリファイルを管理するには、Read ツールと Write ツールを使用します。

メモリの読み取り

すべてのタスクの開始時に、Read ツールを使用して ~/.config/agent-messenger/MEMORY.md を読み取り、以前に検出されたワークスペースID、グループID、チャットID、マネージャーID、および設定をロードします。

  • ファイルがまだ存在しない場合は、問題ありません。それなしで続行し、最初に役立つ情報を保存するときに作成します。
  • ファイルを読み取れない場合(権限、ディレクトリの欠落)、メモリなしで続行します。エラーを出さないでください。

メモリの書き込み

役立つ情報を検出した後、Write ツールを使用して ~/.config/agent-messenger/MEMORY.md を更新します。書き込みトリガーは次のとおりです。

  • ワークスペースIDと名前を検出した後(auth listsnapshot などから)
  • グループIDと名前を検出した後(group listsnapshot などから)
  • チャットIDを検出した後(chat list などから)
  • マネージャーIDと名前を検出した後(manager list などから)
  • ボット名を検出した後(bot list などから)
  • ユーザーがエイリアスまたは設定を付与した後(「これをサポートワークスペースと呼ぶ」、「私のメイングループはX」)

書き込むときは、ファイルの内容全体を含めます。Write ツールはファイル全体を上書きします。

保存するもの

  • ワークスペースIDと名前
  • グループIDと名前
  • UserChat IDとコンテキスト
  • マネージャーIDと名前
  • ボットIDと名前
  • ユーザーが指定したエイリアス(「サポートワークスペース」、「請求グループ」)
  • インタラクション中に表明されたユーザー設定

保存しないもの

クッキー、トークン、認証情報、または機密データを保存しないでください。メッセージの内容全体(IDとコンテキストのみ)を保存しないでください。個人のユーザーデータを保存しないでください。

古いデータの処理

記憶されたIDがエラーを返す場合(チャットが見つからない、グループが見つからない)、MEMORY.md から削除します。記憶されたデータを盲目的に信頼しないでください。何かおかしい場合は確認してください。古くなっている可能性のある記憶されたIDを使用するよりも、再リスト表示を優先してください。

形式 / 例

# Agent Messenger Memory

## Channel Talk Workspaces

- `abc123` - Acme Support

## Groups (Acme Support)

- `grp_111` - Support Inbox
- `grp_222` - Billing Inbox
- `grp_333` - Engineering

## Recent UserChats (Acme Support)

- `uc_aaa` - John Doe inquiry (opened)
- `uc_bbb` - Refund request (closed)

## Managers (Acme Support)

- `mgr_001` - Alice (Team Lead)
- `mgr_002` - Bob (Support Agent)

## Bots (Acme Support)

- `bot_001` - Support Bot
- `bot_002` - Notification Bot

## Aliases

- "support" -> `grp_111` (Support Inbox in Acme Support)

## Notes

- User prefers --pretty output for snapshots
- Main workspace is "Acme Support"

メモリを使用すると、繰り返しの group list および chat list 呼び出しをスキップできます。以前のセッションからIDをすでに知っている場合は、直接使用してください。

コマンド

Auth Commands


# Channel Talkデスクトップアプリまたはブラウザからクッキーを抽出(通常は自動)
agent-channeltalk auth extract
agent-channeltalk auth extract --browser-profile ~/browser-data
agent-channeltalk auth extract --browser-profile "$HOME/work-profile,$HOME/personal-profile"

# --browser-profile ac

(原文はここで切り詰められています)
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Agent Channel

A TypeScript CLI tool that enables AI agents and humans to interact with Channel Talk workspaces through a simple command interface. Features zero-config credential extraction from the Channel Talk desktop app (with browser fallback) and multi-workspace support.

Key Concepts

Before diving in, a few things about Channel Talk's terminology:

  • Channel = workspace (not a chat channel like Slack). The API calls it a "channel," but it means your entire workspace.
  • UserChats = 1:1 conversations with end users (customers).
  • Groups = team inbox channels (similar to Slack channels). Referenced by ID.
  • DirectChats = direct messages between managers.
  • Managers = human agents on your team.
  • Bots = automated agents in the workspace.
  • Messages use a blocks format: [{ type: "text", value: "..." }]. The CLI handles this automatically when you pass plain text.

Quick Start

# Get workspace snapshot (credentials are extracted automatically)
agent-channeltalk snapshot --pretty

# Send a message to a group
agent-channeltalk message send group grp_abc123 "Hello from the CLI!"

# Send a message to a user chat
agent-channeltalk message send user-chat uc_abc123 "Thanks for reaching out!"

# List user chats
agent-channeltalk chat list

Authentication

Credentials are extracted automatically from the Channel Talk desktop app (or Chromium browser as fallback) on first use. No manual setup required, no API keys needed. Just run any command and authentication happens silently in the background.

The Channel Talk desktop app stores auth cookies in a SQLite database. On macOS, cookies are plaintext and no Keychain prompt is needed. On Windows, cookies are DPAPI-encrypted and decrypted automatically. When falling back to a Chromium browser on macOS, cookies require Keychain decryption. The CLI reads two cookies:

  • x-account (JWT) - your account identity
  • ch-session-1 (JWT) - your session token

These cookies expire after roughly 30 days. When they expire, the CLI automatically re-extracts fresh cookies from the desktop app or browser on the next command.

IMPORTANT: Always use agent-channeltalk auth extract to obtain credentials. The CLI extracts from the desktop app first, falling back to Chromium browsers if the app isn't installed.

Multi-Workspace Support

If you're logged into multiple Channel Talk workspaces, all are discovered automatically. The first workspace is selected by default.

# List all available workspaces
agent-channeltalk auth list

# Switch to a different workspace
agent-channeltalk auth use <workspace-id>

# Check auth status
agent-channeltalk auth status

# Remove a stored workspace
agent-channeltalk auth remove <workspace-id>

Memory

The agent maintains a ~/.config/agent-messenger/MEMORY.md file as persistent memory across sessions. This is agent-managed, the CLI does not read or write this file. Use the Read and Write tools to manage your memory file.

Reading Memory

At the start of every task, read ~/.config/agent-messenger/MEMORY.md using the Read tool to load any previously discovered workspace IDs, group IDs, chat IDs, manager IDs, and preferences.

  • If the file doesn't exist yet, that's fine. Proceed without it and create it when you first have useful information to store.
  • If the file can't be read (permissions, missing directory), proceed without memory. Don't error out.

Writing Memory

After discovering useful information, update ~/.config/agent-messenger/MEMORY.md using the Write tool. Write triggers include:

  • After discovering workspace IDs and names (from auth list, snapshot, etc.)
  • After discovering group IDs and names (from group list, snapshot, etc.)
  • After discovering chat IDs (from chat list, etc.)
  • After discovering manager IDs and names (from manager list, etc.)
  • After discovering bot names (from bot list, etc.)
  • After the user gives you an alias or preference ("call this the support workspace", "my main group is X")

When writing, include the complete file content. The Write tool overwrites the entire file.

What to Store

  • Workspace IDs with names
  • Group IDs with names
  • UserChat IDs with context
  • Manager IDs with names
  • Bot IDs with names
  • User-given aliases ("support workspace", "billing group")
  • Any user preference expressed during interaction

What NOT to Store

Never store cookies, tokens, credentials, or any sensitive data. Never store full message content (just IDs and context). Never store personal user data.

Handling Stale Data

If a memorized ID returns an error (chat not found, group not found), remove it from MEMORY.md. Don't blindly trust memorized data. Verify when something seems off. Prefer re-listing over using a memorized ID that might be stale.

Format / Example

# Agent Messenger Memory

## Channel Talk Workspaces

- `abc123` - Acme Support

## Groups (Acme Support)

- `grp_111` - Support Inbox
- `grp_222` - Billing Inbox
- `grp_333` - Engineering

## Recent UserChats (Acme Support)

- `uc_aaa` - John Doe inquiry (opened)
- `uc_bbb` - Refund request (closed)

## Managers (Acme Support)

- `mgr_001` - Alice (Team Lead)
- `mgr_002` - Bob (Support Agent)

## Bots (Acme Support)

- `bot_001` - Support Bot
- `bot_002` - Notification Bot

## Aliases

- "support" -> `grp_111` (Support Inbox in Acme Support)

## Notes

- User prefers --pretty output for snapshots
- Main workspace is "Acme Support"

Memory lets you skip repeated group list and chat list calls. When you already know an ID from a previous session, use it directly.

Commands

Auth Commands

# Extract cookies from Channel Talk desktop app or browser (usually automatic)
agent-channeltalk auth extract
agent-channeltalk auth extract --browser-profile ~/browser-data
agent-channeltalk auth extract --browser-profile "$HOME/work-profile,$HOME/personal-profile"

# --browser-profile accepts repeatable or comma-separated Chromium profile/user-data dirs

# Check auth status
agent-channeltalk auth status
agent-channeltalk auth status --workspace <id>

# Clear all stored credentials
agent-channeltalk auth clear

# List all stored workspaces
agent-channeltalk auth list

# Switch active workspace
agent-channeltalk auth use <workspace-id>

# Remove a stored workspace
agent-channeltalk auth remove <workspace-id>

Whoami Command

# Show current authenticated user
agent-channeltalk whoami
agent-channeltalk whoami --pretty
agent-channeltalk whoami --workspace <workspace-id>

Output includes the authenticated user's identity information.

Message Commands

# Send a message (chat-type: group, user-chat, or direct-chat)
agent-channeltalk message send <chat-type> <chat-id> <text>
agent-channeltalk message send group grp_abc123 "Hello team!"
agent-channeltalk message send user-chat uc_abc123 "Thanks for reaching out!"
agent-channeltalk message send direct-chat dc_abc123 "Quick question..."

# List messages from a group, user chat, or direct chat
agent-channeltalk message list <chat-type> <chat-id>
agent-channeltalk message list group grp_abc123 --limit 50
agent-channeltalk message list user-chat uc_abc123 --sort asc

# Get a specific message by ID
agent-channeltalk message get <chat-type> <chat-id> <message-id>

# Search messages across team chats or user chats
agent-channeltalk message search <query>
agent-channeltalk message search "deployment" --scope team-chat
agent-channeltalk message search "refund" --scope user-chat --limit 10

Chat Commands (UserChats)

# List user chats assigned to me (default: opened)
agent-channeltalk chat list
agent-channeltalk chat list --state opened
agent-channeltalk chat list --state snoozed
agent-channeltalk chat list --state closed
agent-channeltalk chat list --limit 50

# Get a specific user chat
agent-channeltalk chat get <chat-id>

Group Commands

# List groups
agent-channeltalk group list
agent-channeltalk group list --limit 50

# Get a group by ID
agent-channeltalk group get <group-id>

# Get messages from a group
agent-channeltalk group messages <group-id>
agent-channeltalk group messages grp_abc123 --limit 50 --sort asc

Manager Commands

# List all managers
agent-channeltalk manager list
agent-channeltalk manager list --limit 50

Bot Commands

# List all bots
agent-channeltalk bot list
agent-channeltalk bot list --limit 50

Snapshot Command

Get workspace overview for AI agents (brief by default):

# Brief snapshot (default) — fast, minimal API calls
agent-channeltalk snapshot

# Full snapshot — includes messages, managers, bots (slow, large output)
agent-channeltalk snapshot --full

# Filtered full snapshots
agent-channeltalk snapshot --full --groups-only
agent-channeltalk snapshot --full --chats-only

# Limit messages per group/chat (only with --full)
agent-channeltalk snapshot --full --limit 10

Default returns brief JSON with:

  • Workspace metadata (id, name)
  • Groups (id, name)
  • UserChat summary (total count, by state)
  • Hint for next commands

With --full, returns comprehensive JSON with:

  • Workspace metadata (id, name)
  • Groups with recent messages (id, name, messages)
  • UserChat summary (total count, by state, recent opened)
  • Managers (id, name, email)
  • Bots (id, name)

Output Format

JSON (Default)

All commands output JSON by default for AI consumption:

{
  "id": "msg_abc123",
  "channel_id": "ch_def456",
  "chat_id": "uc_ghi789",
  "chat_type": "user-chat",
  "person_type": "manager",
  "plain_text": "Hello world",
  "created_at": 1705312200000
}

Pretty (Human-Readable)

Use --pretty flag for formatted output:

agent-channeltalk group list --pretty

Global Options

Option Description
--pretty Human-readable output instead of JSON
--workspace <id> Use a specific workspace for this command

Common Patterns

See references/common-patterns.md for typical AI agent workflows.

Templates

See templates/ directory for runnable examples:

  • post-message.sh - Send messages with error handling
  • monitor-chat.sh - Poll for new UserChats
  • workspace-summary.sh - Generate workspace summary

Error Handling

All commands return consistent error format:

{
  "error": "No credentials. Run \"agent-channeltalk auth extract\" first."
}

Common errors: No credentials, Workspace not found, Invalid --limit value.

Configuration

Credentials stored in ~/.config/agent-messenger/channel-credentials.json (0600 permissions). See references/authentication.md for format and security details.

Config format:

{
  "current": { "workspace_id": "abc123" },
  "workspaces": {
    "abc123": {
      "workspace_id": "abc123",
      "workspace_name": "Acme Support",
      "account_id": "acc_001",
      "account_name": "Alice",
      "account_cookie": "...",
      "session_cookie": "..."
    }
  }
}

Feature Comparison: agent-channeltalk vs agent-channeltalkbot

Feature agent-channeltalk (user) agent-channeltalkbot (bot)
Auth method Auto-extract cookies API key + secret
Setup required None (zero-config) Manual key setup
Acts as You (manager) Bot identity
Send messages
List messages
Search messages -
Close/delete chats -
Create/delete bots -
Set default bot -
Group @name references -
Direct chat support -
Multi-workspace
CI/CD friendly -

Use agent-channeltalk when you want zero-config access acting as yourself. Use agent-channeltalkbot for server-side automation, CI/CD pipelines, or when you need bot-specific features like closing chats.

Limitations

  • Desktop app extraction: macOS and Windows. Browser fallback: macOS, Linux, and Windows.
  • No real-time events / WebSocket connection
  • No file upload support
  • No message editing or deletion
  • No chat close/delete (use agent-channeltalkbot for chat management)
  • No bot creation/deletion (use agent-channeltalkbot for bot management)
  • No @name group references (use group IDs from group list)
  • Plain text messages only (no rich blocks in v1)
  • Cookies expire after ~30 days (auto-re-extracted)

Troubleshooting

agent-channeltalk: command not found

agent-channeltalk is NOT the npm package name. The npm package is agent-messenger.

If the package is installed globally, use agent-channeltalk directly:

agent-channeltalk snapshot --pretty

If the package is NOT installed, run it directly with npx -y:

npx -y agent-messenger channeltalk snapshot --pretty

Note: If the user prefers a different package runner (e.g., bunx, pnpx, pnpm dlx), use that instead.

NEVER run npx agent-channeltalk, bunx agent-channeltalk, or pnpm dlx agent-channeltalk. It will fail or install a wrong package since agent-channeltalk is not the npm package name.

Channel Talk desktop app not found

The CLI looks for the Channel Talk desktop app's cookie database in these locations:

macOS:

  1. ~/Library/Containers/com.zoyi.channel.desk.osx/Data/Library/Application Support/Channel Talk/Cookies (Mac App Store version)
  2. ~/Library/Application Support/Channel Talk/Cookies (direct download / Electron version)

Windows:

  1. %APPDATA%\Channel Talk\Network\Cookies

If none exist, log in to Channel Talk in a supported Chromium browser (Chrome, Edge, Arc, Brave) or install the desktop app and log in.

Cookies expired

Cookies expire after roughly 30 days. The CLI automatically re-extracts on the next command. If auto-extraction fails:

  1. Open the Channel Talk desktop app or desk.channel.io in a supported Chromium browser
  2. Make sure you're logged in
  3. Run agent-channeltalk auth extract

For other troubleshooting, see references/authentication.md.

References