cs-chatbot-design
Installation
SKILL.md
Chatbot Design
Framework
IRON LAW: Intent First, Response Second
A chatbot must UNDERSTAND what the user wants (intent) before crafting
a response. Building response templates without intent classification
produces a keyword-matching FAQ, not a chatbot.
Flow: User message → Intent classification → Slot extraction → Response
Core NLU Pipeline
| Stage | What It Does | Example |
|---|---|---|
| Intent Classification | Identify what the user wants to do | "What time do you close?" → intent: check_hours |
| Entity/Slot Extraction | Extract key information from the message | "Book a table for 4 on Friday" → slots: {party_size: 4, date: Friday} |
| Dialogue Management | Decide the next action (ask for missing info, confirm, execute) | Missing slot time → ask "What time would you like?" |
| Response Generation | Produce the reply | "I've booked a table for 4 on Friday at 7pm. See you then!" |
Intent Design
- Start with 10-15 core intents covering 80% of user queries
- Each intent needs 10-20 training examples (varied phrasings)
- Include a
fallbackintent for unrecognized inputs - Group related intents:
order_status,order_cancel,order_modifyunder "Order Management"
Dialogue Flow Patterns
| Pattern | When to Use | Example |
|---|---|---|
| Single-turn | Simple Q&A, no context needed | "What are your hours?" → respond immediately |
| Multi-turn (slot filling) | Need multiple pieces of info | "Book a table" → ask party size → ask date → ask time → confirm |
| Branching | Different paths based on user's answer | "Do you have an account?" → Yes: login flow / No: registration flow |
| Confirmation | Before executing actions | "I'll cancel order #12345. Is that correct?" |
| Handoff | Bot can't handle the request | "Let me connect you with a human agent" |
Response Design Principles
- Acknowledge first: "Got it, you want to check your order status."
- Be concise: Answer the question, then stop. Don't add unnecessary information.
- Offer next steps: "Is there anything else I can help with?" or suggest related actions.
- Use quick replies/buttons: Reduce typing, guide the conversation.
- Personality: Define a consistent tone (friendly, professional, casual) and stick to it.
Metrics
| Metric | Definition | Target |
|---|---|---|
| Intent accuracy | % correctly classified intents | > 85% |
| Containment rate | % resolved without human handoff | > 60-70% |
| CSAT | Customer satisfaction score | > 4.0/5 |
| Fallback rate | % triggering fallback/unknown intent | < 15% |
| Resolution time | Average time to resolve | < 2 minutes |
Output Format
# Chatbot Design: {Use Case}
## Intent Catalog
| Intent | Description | Example Utterances | Priority |
|--------|-----------|-------------------|---------|
| {intent} | {what it means} | "{example 1}", "{example 2}" | H/M/L |
## Dialogue Flows
### {Flow Name}
1. User: {trigger utterance}
2. Bot: {response + slot question if needed}
3. User: {provides info}
4. Bot: {confirmation or action}
## Fallback Strategy
- After 1 miss: rephrase + suggest options
- After 2 misses: offer human handoff
## Metrics Targets
| Metric | Target |
|--------|--------|
| Intent accuracy | > {X%} |
| Containment | > {X%} |
Gotchas
- Users don't follow your flow: People type in unexpected ways, change topics mid-conversation, and give incomplete information. Design for messiness, not just the happy path.
- Fallback is your most important intent: A good fallback ("I'm not sure I understood. Did you mean X, Y, or Z?") is better than a bad guess.
- LLM-powered bots still need guardrails: Using GPT/Claude for response generation? Add intent classification as a first layer to route and constrain, preventing hallucination and off-topic responses.
- Test with real users, not team members: Your team knows how the bot works and phrases things "correctly." Real users don't. Test with 10+ real users before launch.
- Conversation logs are gold: Review conversation logs weekly. Failed conversations reveal missing intents, confusing flows, and training data gaps.
References
- For NLU training data best practices, see
references/nlu-training.md - For LINE/Messenger platform integration, see the ecom-conversational skill
Weekly Installs
15
Repository
asgard-ai-platf…m/skillsGitHub Stars
125
First Seen
6 days ago
Security Audits