Bottery is a prototyping environment and mini-language for designing conversational agents as explicit state machines rather than opaque bundles of code. It encourages authors to model intents, dialog turns, and transitions in a compact, declarative form that’s easy to visualize and simulate. A built-in simulator lets you “play” the conversation, test edge cases, and tweak flows without wiring up back-end services first. Because behavior is defined in a DSL, teams can version the conversation design alongside code and keep product, research, and engineering aligned. The repo includes examples of slots, branching, and side effects, showing how to express common patterns like confirmations, fallbacks, and small talk. Bottery’s value is in reducing the gap between whiteboard diagrams and a running prototype you can test with real users.
Features
- Declarative DSL for intents, slots, and state transitions
- Interactive simulator to play through dialog flows
- Deterministic modeling that’s easy to diff and version
- Patterns for confirmations, fallbacks, and side effects
- Rapid iteration without standing up full back ends
- Exportable designs that map cleanly to production bots