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, andchatwoot apifor authenticated raw API reads when no first-class command exists.
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.
For raw API calls, agents should check the application Swagger first: application_swagger.json.

