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. It can also search help center articles when you explicitly ask for knowledge-base context.
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. - Help center lookup — use
hc articlesandhc articlewhen the user asks for help center content, without making it the default step for ordinary triage. - 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.”
- “Search the help center for API channel setup docs.”
- “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.

