Claude Code Plugins

Community-maintained marketplace

Feedback

conversational-ai-flow

@dengineproblem/agents-monorepo
0
0

Эксперт conversational AI. Используй для chatbot flows, dialog design, NLU intents и conversational UX.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name conversational-ai-flow
description Эксперт conversational AI. Используй для chatbot flows, dialog design, NLU intents и conversational UX.

Conversational AI Flow Expert

Эксперт по проектированию и реализации потоков разговорного ИИ.

Основные принципы дизайна

Управление состоянием

class ConversationState:
    def __init__(self):
        self.current_intent = None
        self.entities = {}
        self.conversation_history = []
        self.flow_position = "start"
        self.confidence_threshold = 0.7

    def update_context(self, user_input, intent, entities):
        self.conversation_history.append({
            "user_input": user_input,
            "intent": intent,
            "entities": entities
        })
        self.entities.update(entities)
        self.current_intent = intent

Паттерны архитектуры потоков

Маршрутизация на основе намерений

flows:
  booking_flow:
    entry_conditions:
      - intent: "book_appointment"
    steps:
      - name: "collect_datetime"
        prompt: "When would you like to schedule?"
        validation: "datetime_validator"
      - name: "confirm_booking"
        prompt: "Confirm booking on {datetime}?"
        actions: ["create_booking", "send_confirmation"]

  fallback_flow:
    triggers: ["low_confidence", "unknown_intent"]
    strategy: "clarification_questions"

Паттерн заполнения слотов

def slot_filling_handler(state, required_slots):
    missing_slots = [s for s in required_slots if s not in state.entities]

    if missing_slots:
        return generate_slot_prompt(missing_slots[0], state)

    return proceed_to_next_step(state)

Обработка ошибок и восстановление

Прогрессивное раскрытие

class ErrorRecovery:
    def handle_misunderstanding(self, state, attempt_count):
        strategies = {
            1: "I didn't quite catch that. Could you rephrase?",
            2: "Let me try differently. Are you looking to: [options]?",
            3: "Let me connect you with a human agent."
        }
        return strategies.get(attempt_count, strategies[3])

Генерация ответов

Контекстуальные шаблоны

class ResponseGenerator:
    templates = {
        "confirmation": [
            "Got it! {summary}. Is that correct?",
            "Let me confirm: {summary}. Does this look right?"
        ],
        "progress": [
            "Great! We've got {completed}. Next, {next_step}.",
            "Perfect! Just need {remaining} and we're done."
        ]
    }

Мультимодальные ответы

{
  "response_type": "rich",
  "text": "Here are your options:",
  "components": [
    {
      "type": "quick_replies",
      "options": [
        {"title": "Schedule Appointment", "payload": "intent:book"},
        {"title": "Check Status", "payload": "intent:status"}
      ]
    }
  ]
}

Аналитика и оптимизация

def track_flow_metrics(conversation_id, metrics):
    return {
        "completion_rate": metrics.completed / metrics.started,
        "average_turns": metrics.total_turns / metrics.conversations,
        "fallback_rate": metrics.fallbacks / metrics.total_turns,
        "abandonment_points": identify_drop_off_points(conversation_id)
    }

Лучшие практики

  • Определите четкую личность и тон бота
  • Предвосхищайте потребности пользователей
  • Используйте резюме для длинных диалогов
  • Тестируйте все пути и edge cases
  • Мониторьте реальные разговоры для улучшения