The Chatwoot CLI ships with an agent skill — a small instruction file that teaches AI coding tools (Claude Code, Cursor, Codex, Gemini CLI, and 50+ others) how to useDocumentation Index
Fetch the complete documentation index at: https://developers.chatwoot.com/llms.txt
Use this file to discover all available pages before exploring further.
chatwoot correctly. With the skill installed, a prompt like “find conversations tagged refund and assign the unassigned ones to me” runs the right commands, parses JSON properly, and pauses for confirmation before sending customer-visible replies.
Install
The skill is published in the chatwoot/cli repository. Use the skills CLI to install it into whichever AI tool you use:--global (or -g) to install the skill once for every project:
Authenticate the agent
Coding agents run commands non-interactively, sochatwoot auth login has to be run separately. In certain scenarios, agents might be run in a sandbox environment so the API token may not be accessible to them. In this case, you can set the CHATWOOT_API_KEY in your shell or the agent’s environment:
What the skill teaches the agent
- The id-first grammar —
chatwoot conv 123 reply "..."instead of guessing flag layouts. - The output contract — parse
-o json, never the human-readable text format. - Safety rules —
replyis customer-visible and irreversible, so the agent shows the full text and asks before sending. - Common pitfalls —
labelreplaces rather than appends,--querysearches message content (not contacts),assign --agent <name>is a case-insensitive substring match, list endpoints paginate. - Composable patterns —
-q | xargsfor bulk operations,jqchaining for lookups.
Example prompts
Once the skill is installed, prompts like these work without further setup:- “What’s in my open inbox today? Group by priority.”
- “Find conversations tagged
refundthat have been pending for more than 48 hours and assign them to Alice.” - “Read the last five messages on conv 412 and draft a reply — show it to me before sending.”
- “Resolve every open conversation tagged
spam.”
chatwoot commands, parses JSON, and stops to confirm before any write that affects customers.

