bot-dialog

Create Bot Framework waterfall dialogs with ComponentDialog and DialogBot wiring.

1|Updated Aug 22, 2025
One-click install
npx skills add https://github.com/interserver/teams-chat-bot --skill bot-dialog
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: bot-dialog
Source: https://github.com/interserver/teams-chat-bot/tree/main/.claude/skills/bot-dialog
Command: npx skills add https://github.com/interserver/teams-chat-bot --skill bot-dialog

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It solves the problem of building consistent, correctly-wired waterfall dialogs for a Bot Framework DialogBot without common wiring mistakes that prevent dialogs from starting.

Core Features & Use Cases

  • Waterfall dialog scaffolding: Generates a new ComponentDialog with a WaterfallDialog and the required run(context, accessor) entry point.
  • Prompt integration: Adds and registers prompts (e.g., TextPrompt) so dialog steps can reliably collect user input.
  • DialogBot wiring: Shows how to instantiate and pass the dialog into DialogBot so the bot executes it on incoming messages.
  • Use Case: Create interactive, multi-step conversation flows such as collecting ticket details (title, description, confirmation) from Teams users.

Quick Start

Create a new file under server/dialogs/ using the provided dialog skeleton, then wire your new dialog instance into the code that constructs DialogBot.

Frequently Asked Questions about bot-dialog

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a multi-step waterfall dialog for a Microsoft Teams bot?▼

To create a multi-step waterfall dialog for a Teams bot, generate a new ComponentDialog containing a WaterfallDialog and implement the required run(context, accessor) method to integrate conversational steps.

Why does my Bot Framework ComponentDialog fail to start within DialogBot?▼

Your ComponentDialog may fail to start within DialogBot due to missing wiring requirements like a correct initialDialogId or an improperly implemented run(context, accessor) method.

How do I collect user input with prompts in a Bot Framework waterfall dialog?▼

To collect user input in a waterfall dialog, add and register prompt components like TextPrompt within your ComponentDialog so individual dialog steps can reliably gather user responses.

Does adding a new Teams waterfall dialog require modifying mainDialog.js?▼

No, adding a new Teams waterfall dialog does not require modifying mainDialog.js or logoutDialog.js; you wire the new dialog instance directly into the code that constructs DialogBot.

What is the best way to structure Bot Framework prompts for multi-step conversation flows?▼

The best way to structure multi-step conversation flows is using a WaterfallDialog inside a ComponentDialog, registering required prompts upfront, and managing dialog IDs with module-level constants.