Hexabot is a self-hosted TypeScript automation platform that builds and runs AI agents and agentic workflows across conversational channels, aimed at developers and teams who want agentic automation running on their own infrastructure rather than on a vendor-hosted service.
What it is
Hexabot v3 combines workflows, actions, and conversational channels into a single runtime, adding first-class AI capabilities on top of a conversational bot framework. It is distributed as a CLI published to npm as @hexabot-ai/cli, and the CLI generates and runs projects that target Node.js ^24.17.0 with npm, pnpm, yarn, or bun. The platform is schema-first, making broad use of Zod for validation and shared contracts, and it uses TypeORM as its standard backend data layer, with SQLite as the default local option and Postgres treated as first-class for production setups.
The concrete problem it solves is the assembly work that otherwise surrounds an agentic application: workflow orchestration, tool execution, memory, retrieval, and channel handling are usually stitched together from separate pieces, each with its own configuration and contract. Hexabot keeps those concerns inside one runtime, defining workflows in YAML with typed runtime contracts, expressing behavior through actions whose inputs, outputs, and settings are schema-validated, and separating reusable capability and configuration bindings from task logic. The data layer is selected through DB_TYPE and DB_* variables, so the same project can move from a local SQLite file to a Postgres deployment without changing the framework.
Key capabilities
- Agentic workflows defined in YAML with typed runtime contracts, so workflow structure is declarative rather than hand-coded.
- Action-based execution, where each action declares schema-validated inputs, outputs, and settings.
- A binding system that keeps reusable capabilities and configuration separate from task logic.
- Explicit memory definitions with runtime memory integration.
- Model Context Protocol (MCP) integration points for tool and context interoperability.
- Multi-channel continuity, with channels and helpers remaining core concepts of the runtime.
- A schema-first architecture built on Zod, and a TypeORM data layer switchable between SQLite and Postgres through
DB_TYPE.
Who uses it and how
- Developers building agentic workflows that must run across several conversational channels from one deployment.
- Teams that need to keep agent execution, memory, and retrieval on their own infrastructure, using Postgres as the production database behind the TypeORM data layer.
- Contributors working inside the Hexabot monorepo, who use PNPM, the documented package map, Turbo tasks, and the CI checks described in
CONTRIBUTING.md.
- Extension authors, who build against the extension surface linked from the README as Extensions.
- Local development and Docker-based service runs, driven by
hexabot dev, hexabot start, and hexabot stop with the --docker flag.
Getting started
Install the CLI globally with npm install -g @hexabot-ai/cli, then run hexabot create my-project followed by hexabot dev; the same flow works without a global install using npx @hexabot-ai/cli create and npx @hexabot-ai/cli dev. Local endpoints default to the admin UI at http://localhost:3000, the API at http://localhost:3000/api, and API docs at http://localhost:3000/docs in non-production.
How it compares
The facts provided do not name any paid product that Hexabot replaces, and they do not name comparable tools besides the AI and bot-framework topics attached to the repository, so on those points it stands alone in this registry. One caveat worth noting for anyone assessing it: the repository metadata lists the licence as NOASSERTION, while the README states that the project is licensed under FCL-1.0-ALv2, so the terms should be read in LICENSE.md before adoption.
When to use it — and when not to
A self-hoster must operate a Node.js ^24.17.0 environment, at least one package manager, a database (SQLite locally or Postgres in production), and optionally Docker for Docker-based services, which puts real runtime responsibility on the operator. It is a poor fit for anyone unwilling to manage that stack or for CI pipelines that expect a fully non-interactive setup, because hexabot create prompts for initial admin credentials and requires an interactive terminal, meaning it has to be run from a local terminal first. The README is also quick-start and capability oriented rather than exhaustive, and the licence signal is ambiguous between NOASSERTION and FCL-1.0-ALv2, so teams with strict licensing review should verify terms before committing.
project readme (upstream, from github) — read inline
Automate the Boring, Keep the Magic
Build and run agentic workflows across channels with YAML, tools, MCP, memory and RAG.
Website
·
Documentation
·
Extensions
·
Discord
Hexabot v3 is an automation platform with first-class AI capabilities, combining workflows, actions, and conversational channels in one runtime.
Quick Start
Prerequisites
- Node.js
^24.17.0
- One package manager (
npm, pnpm, yarn, or bun)
- Docker (optional, for Docker-based services)
This Quick Start targets projects generated with the CLI.
If you are contributing to the Hexabot monorepo itself, use PNPM (see CONTRIBUTING.md).
1) Install the CLI
npm install -g @hexabot-ai/cli
Or run the CLI without a global install:
npx @hexabot-ai/cli --help
2) Create and run a project
hexabot create my-project
cd my-project
hexabot dev
No global install? Use npx equivalents:
npx @hexabot-ai/cli create my-project
cd my-project
npx @hexabot-ai/cli dev
hexabot create auto-detects your package manager. You can force one with --pm, for example:
hexabot create my-project --pm npm
hexabot create prompts for initial admin credentials and requires an interactive terminal (TTY). In CI/non-interactive shells, run it from a local terminal first.
Default local endpoints:
- Admin UI:
http://localhost:3000
- API:
http://localhost:3000/api
- API docs (non-production):
http://localhost:3000/docs
Useful CLI commands:
hexabot create
hexabot dev [--docker] [--services ] [-d]
hexabot start [--docker] [--services ] [--build] [-d]
hexabot stop --docker [--services ] [-v] [--remove-orphans]
hexabot env
hexabot check
hexabot config
hexabot migrate [args...]
For full CLI details, see packages/cli/README.md.
Core Capabilities
- Agentic workflows: YAML workflow definitions with typed runtime contracts.
- Action-based execution: actions define workflow behavior with schema-validated inputs/outputs/settings.
- Binding system: reusable capability/config bindings separated from task logic.
- Memory support: explicit memory definitions and runtime memory integration.
- MCP integration points: Model Context Protocol support for tool/context interoperability.
- Multi-channel continuity: channels and helpers remain core concepts.
- Schema-first architecture: broad use of Zod for validation and shared contracts.
Data Layer
- TypeORM is the standard backend data layer.
- SQLite is the default local option.
- Postgres is first-class for production setups.
- Configure DB runtime using
DB_TYPE and DB_* variables.
Contributing
If you want to contribute to the Hexabot monorepo (architecture, package map, PNPM workspace, Turbo tasks, CI checks), use CONTRIBUTING.md.
License
Copyright (c) 2025 Hexastack.
Licensed under FCL-1.0-ALv2. See LICENSE.md for full terms.