007
無料Security audit, hardening, threat modeling (STRIDE/PASTA), Red/Blue Team, OWASP checks, code review, incident response, and infrastructure security for any project.
日本語の概要は準備中です。原文の説明を表示しています。
Interact with Channel Talk using extracted desktop app or browser credentials - read chats, send messages, search messages, manage groups
インストールする前に、エージェントに与えられる指示の中身を確認できます。
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.
Before diving in, a few things about Channel Talk's terminology:
blocks format: [{ type: "text", value: "..." }]. The CLI handles this automatically when you pass plain text.# 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
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 identitych-session-1 (JWT) - your session tokenThese 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.
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>
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.
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.
After discovering useful information, update ~/.config/agent-messenger/MEMORY.md using the Write tool. Write triggers include:
auth list, snapshot, etc.)group list, snapshot, etc.)chat list, etc.)manager list, etc.)bot list, etc.)When writing, include the complete file content. The Write tool overwrites the entire file.
Never store cookies, tokens, credentials, or any sensitive data. Never store full message content (just IDs and context). Never store personal user 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.
# 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 listandchat listcalls. When you already know an ID from a previous session, use it directly.
# Extract cookies from Channel Talk desktop app or browser (usually automatic)
agent-channeltalk auth extract
# 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>
# 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.
# 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
# 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>
# 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
# List all managers
agent-channeltalk manager list
agent-channeltalk manager list --limit 50
# List all bots
agent-channeltalk bot list
agent-channeltalk bot list --limit 50
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:
With --full, returns comprehensive JSON with:
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
}
Use --pretty flag for formatted output:
agent-channeltalk group list --pretty
| Option | Description |
|---|---|
--pretty | Human-readable output instead of JSON |
--workspace <id> | Use a specific workspace for this command |
See references/common-patterns.md for typical AI agent workflows.
See templates/ directory for runnable examples:
post-message.sh - Send messages with error handlingmonitor-chat.sh - Poll for new UserChatsworkspace-summary.sh - Generate workspace summaryAll commands return consistent error format:
{
"error": "No credentials. Run \"agent-channeltalk auth extract\" first."
}
Common errors: No credentials, Workspace not found, Invalid --limit value.
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 | 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.
group list)agent-channeltalk: command not foundagent-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.
The CLI looks for the Channel Talk desktop app's cookie database in these locations:
macOS:
~/Library/Containers/com.zoyi.channel.desk.osx/Data/Library/Application Support/Channel Talk/Cookies (Mac App Store version)~/Library/Application Support/Channel Talk/Cookies (direct download / Electron version)Windows:
%APPDATA%\Channel Talk\Network\CookiesIf 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 expire after roughly 30 days. The CLI automatically re-extracts on the next command. If auto-extraction fails:
agent-channeltalk auth extractFor other troubleshooting, see references/authentication.md.
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Security audit, hardening, threat modeling (STRIDE/PASTA), Red/Blue Team, OWASP checks, code review, incident response, and infrastructure security for any project.
日本語の概要は準備中です。原文の説明を表示しています。
Guides the creation of agile user stories and Gherkin feature files. Use when the user wants to create a user story, write acceptance criteria, define Gherkin scenarios, or author BDD feature files. This should trigger for requests such as Create a user story; Write a user story; I need to write a user story. Part of cursor-rules-java project
日本語の概要は準備中です。原文の説明を表示しています。
Facilitates conversational discovery to create Architectural Decision Records (ADRs) for non-functional requirements using the ISO/IEC 25010:2023 quality model. Use when the user wants to document quality attributes, NFR decisions, security/performance/scalability architecture, or design systems with measurable quality criteria. This should trigger for requests such as Create ADR for Non-functional requirements; Document Non-functional requirements; Capture Non-functional requirements; Generate Non-functional requirements in an ADR. Part of cursor-rules-java project
日本語の概要は準備中です。原文の説明を表示しています。
Run a health check on an existing project: dependency audit, security scan, test runner detection, CI/CD evaluation, and missing configuration analysis. Maps the three execution gates (pre/in/post) from /10x-bootstrapper to an assessment framework for existing codebases. Reads optional context/foundation/stack-assessment.md from /10x-stack-assess to focus checks on identified gaps. Writes context/foundation/health-check.md with findings, prioritized fixes, and an agent-readiness verdict. Use when the user has an existing project and wants to verify its health before working with an agent. Trigger phrases: "health check", "check my project", "audit my project", "is my project healthy", "sprawdź projekt", "audyt projektu", "health-check", "project health". Use AFTER /10x-stack-assess (brownfield chain), BEFORE agent onboarding (m1-l4).
日本語の概要は準備中です。原文の説明を表示しています。
You MUST use this when building projects end-to-end. Orchestrates all 12 team roles — automatically switches between CTO, architect, PM, engineers, SRE, security, DBA, QA, and EM based on the current phase of work. Starts with brainstorming before any implementation.
日本語の概要は準備中です。原文の説明を表示しています。
Use when you need to add or configure Maven plugins in your pom.xml — including quality tools (enforcer, surefire, failsafe, jacoco, pitest, spotbugs, pmd), security scanning (OWASP), code formatting (Spotless), version management, container image build (Jib), build information tracking, and benchmarking (JMH) — through a consultative, modular step-by-step approach that only adds what you actually need. This should trigger for requests such as Add Maven plugins in pom.xml; Improve Maven plugins in pom.xml. Part of cursor-rules-java project
日本語の概要は準備中です。原文の説明を表示しています。