# microsoft/botframework-sdk

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/microsoft-botframework-sdk).**

7,803 stars · 2,432 forks · JavaScript · MIT · archived

## Links

- GitHub: https://github.com/microsoft/botframework-sdk
- awesome-repositories: https://awesome-repositories.com/repository/microsoft-botframework-sdk.md

## Topics

`azure-bot-service` `bot` `bot-builder` `bot-framework` `csharp` `dotnetcore` `java` `javascript` `microsoft-bot-framework` `nodejs` `python` `sdk` `typescript`

## Description

This project is a conversational AI software development kit and framework used to build interactive chatbots that engage in natural language conversations and execute tasks for end users. It provides a multi-channel bot framework that connects conversational agents to various external messaging services using standardized adapters.

The SDK includes a conversational workflow orchestrator and a natural language processing toolkit for analyzing user intent and extracting entities to route conversation flows. It further incorporates a speech integration framework that enables bidirectional audio streaming and the conversion between speech and text for voice-based agents.

The platform covers a broad range of capabilities, including automated question answering derived from structured documents, a system for rendering cross-platform adaptive cards, and tools for managing state-based conversation tracking. Developer tooling is provided through a conversational experience designer and environments for testing and debugging bot logic.

## Tags

### Artificial Intelligence & ML

- [Conversational AI Frameworks](https://awesome-repositories.com/f/artificial-intelligence-ml/conversational-ai-frameworks.md) — Provides a comprehensive library and set of tools for building interactive chat interfaces that maintain context and manage history. ([source](https://github.com/microsoft/botframework-sdk/blob/main/aka.ms/agents))
- [Conversational AI Platforms](https://awesome-repositories.com/f/artificial-intelligence-ml/conversational-ai-platforms.md) — Provides a comprehensive framework and SDK for building, deploying, and orchestrating interactive conversational AI agents.
- [Intent Recognition](https://awesome-repositories.com/f/artificial-intelligence-ml/agent-architectures/user-intent-modeling/intent-recognition.md) — Analyzes text input to identify user goals and route the conversation to the appropriate dialog or skill. ([source](https://github.com/microsoft/botframework-sdk/tree/main/Orchestrator))
- [Conversational Agent Development](https://awesome-repositories.com/f/artificial-intelligence-ml/agentic-development-environments/conversational-agent-development.md) — Provides a complete environment for developing agents designed for multi-turn conversational interaction.
- [Dialog Flow Engines](https://awesome-repositories.com/f/artificial-intelligence-ml/conversation-state-management/conversation-flow-design/dialog-flow-engines.md) — Includes a runtime engine for executing multi-turn conversational paths and managing complex dialog sequences.
- [Conversational State Managers](https://awesome-repositories.com/f/artificial-intelligence-ml/conversational-state-managers.md) — Tracks user interactions and maintains persistent conversation data across multiple asynchronous turns.
- [Natural Language Processing Libraries](https://awesome-repositories.com/f/artificial-intelligence-ml/natural-language-processing-libraries.md) — Ships a suite of NLP utilities for analyzing human language to route conversation flows and extract entities.
- [Dialogue Flow Orchestration](https://awesome-repositories.com/f/artificial-intelligence-ml/workflow-orchestration/dialogue-flow-orchestration.md) — Includes a workflow orchestrator for designing and managing complex dialogue paths and question-and-answer layers.
- [Logic Testing & Debugging](https://awesome-repositories.com/f/artificial-intelligence-ml/conversational-bot-development/logic-testing-debugging.md) — Provides a dedicated desktop environment to run and inspect conversational logic for bots hosted locally or remotely. ([source](https://github.com/microsoft/botframework-sdk#readme))
- [Question Answering](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/document-data-intelligence/question-answering.md) — Generates conversational responses by extracting answers from FAQ URLs and structured documents.
- [Speech-to-Text Conversions](https://awesome-repositories.com/f/artificial-intelligence-ml/speech-to-text-conversions.md) — Provides integrated audio processing to transform spoken words into machine-processable text. ([source](https://github.com/microsoft/botframework-sdk/blob/main/README.md))
- [Voice Interaction Providers](https://awesome-repositories.com/f/artificial-intelligence-ml/speech-to-text-integrations/voice-interaction-providers.md) — Orchestrates both speech-to-text and text-to-speech services to enable bidirectional voice interactions. ([source](https://github.com/microsoft/botframework-sdk#readme))
- [Speech-to-Speech Frameworks](https://awesome-repositories.com/f/artificial-intelligence-ml/text-to-speech/speech-to-speech-models/speech-to-speech-frameworks.md) — Provides a framework for bidirectional audio streaming and real-time conversion between speech and text.
- [Voice Interfaces](https://awesome-repositories.com/f/artificial-intelligence-ml/text-to-speech/voice-interfaces.md) — Integrates speech synthesis and recognition to enable full voice-based interactions for conversational agents.

### Part of an Awesome List

- [Natural Language Understanding](https://awesome-repositories.com/f/awesome-lists/ai/natural-language-understanding.md) — Provides comprehensive tools for analyzing user intent and extracting entities to drive chatbot conversation logic.
- [Conversational Input Routing](https://awesome-repositories.com/f/awesome-lists/ai/natural-language-understanding/conversational-input-routing.md) — Provides logic to arbitrate between multiple language understanding services to route user input to the correct component. ([source](https://github.com/microsoft/botframework-sdk/tree/main/Orchestrator))

### Networking & Communication

- [Bot Frameworks](https://awesome-repositories.com/f/networking-communication/bot-frameworks.md) — Provides a unified framework for connecting conversational agents to multiple external messaging platforms via standardized adapters.
- [Conversational Channel Integrations](https://awesome-repositories.com/f/networking-communication/conversational-channel-integrations.md) — Implements adapters that connect conversational agents to a wide variety of third-party messaging platforms.
- [Messaging Platform Integrations](https://awesome-repositories.com/f/networking-communication/messaging-platform-integrations.md) — Implements adapters that connect conversational applications to a wide variety of external messaging services. ([source](https://github.com/microsoft/botframework-sdk#readme))
- [Middleware-Based Request Pipelines](https://awesome-repositories.com/f/networking-communication/communication-protocols-architectures/request-processing-architectures/request-processing/middleware-based-request-pipelines.md) — Processes incoming messages through modular chains of interceptors for authentication, logging, and data transformation.

### Development Tools & Productivity

- [Conversational Flow Designers](https://awesome-repositories.com/f/development-tools-productivity/conversational-flow-designers.md) — Includes a visual editor for mapping out complex dialogue paths and conditional chatbot logic. ([source](https://github.com/microsoft/botframework-sdk#readme))

### Software Engineering & Architecture

- [Asynchronous Messaging](https://awesome-repositories.com/f/software-engineering-architecture/asynchronous-messaging.md) — Uses an event-driven asynchronous messaging model to handle bi-directional communication between clients and servers.

### User Interface & Experience

- [JSON-Based Card Rendering](https://awesome-repositories.com/f/user-interface-experience/json-based-card-rendering.md) — Delivers structured UI components as JSON payloads that are rendered as visual cards by the host client.
- [Cross-Platform Rendering](https://awesome-repositories.com/f/user-interface-experience/native-ui-component-libraries/web-based-native-ui/cross-platform-rendering.md) — Renders native user interfaces across diverse messaging platforms from a unified JSON codebase.
- [Web Chat Interfaces](https://awesome-repositories.com/f/user-interface-experience/web-chat-interfaces.md) — Ships a customizable, embeddable web-based chat interface for direct user interaction with bots. ([source](https://github.com/microsoft/botframework-sdk/blob/main/README.md))

### Web Development

- [Bidirectional Speech-to-Text Streams](https://awesome-repositories.com/f/web-development/real-time-data-streaming/bidirectional-streams/bidirectional-speech-to-text-streams.md) — Enables real-time voice conversations through full-duplex streams of audio fragments and transcriptions. ([source](https://github.com/microsoft/botframework-sdk/blob/main/README.md))
- [Intent-Based Routing](https://awesome-repositories.com/f/web-development/request-routing/intent-based-routing.md) — Directly dispatches user messages to specific logic handlers based on recognized natural language intent.
