The stream that unites everything.
Version: v3.9.1-tiramisu
BACH is a text-based operating system that empowers Large Language Models (LLMs) to work autonomously, learn, and self-organize. Part of the ellmos family (Extra Large Language Model Operating Systems), BACH provides comprehensive infrastructure for task management, knowledge management, automation, and LLM orchestration.
- 113+ Handlers - Full CLI and API coverage of all system functions
- 550+ Tools - Extensive tool library for file processing, analysis, and automation
- 1870+ Skills - Reusable workflows and templates
- 58 Workflow Templates - Pre-built process workflows
- Knowledge Store - Lessons, Facts, and Multi-Level Memory System (6 memory types)
- Agent CLI -
bach agent start/stop/listfor direct agent control - Machine-readable Status Surfaces -
bach agent list/status --jsonplusbach scheduler status/jobs/session status --jsonfor external tooling and automation-safe polling - Path Surface -
bach pathexposes canonical system/workspace/DB paths, validation, resolve helpers, and DB overrides in text or JSON - Prompt System - Central prompt management with board system and versioning
- Install Security Gate - Static pre-load scans block obvious code-injection patterns during
skills install/plugins load; MCP setup validates allowlisted packages/configs fail-closed, plugin setup contracts now require explicit shell/desktop/MCP checks, and blocked local imports are quarantined - Manifest-first Plugins -
bach plugins inspectpreviews activation, provider/model, setup, and capability metadata without importing plugin runtime code - Structured
bach_apiCore -taskandmemorynow expose discoverable methods viadir(...), return Python objects for common reads/writes, and still keepraw(...)for legacy handler-style calls - SharedMemory Bus - Multi-agent coordination with conflict detection and decay
- USMC Bridge - United Shared Memory Communication for cross-agent communication
- llmauto Chains - Claude prompts as chain steps with
bach://URL resolution - Chat Service - Multi-backend Telegram bot (5 backends), Control API, Web Dashboard, cross-platform System Tray
# Clone the repository
git clone https://github.com/ellmos-ai/bach.git
cd bach
# Install dependencies and make `bach` CLI available
pip install -e .
# Pre-flight check
bach setup preflight
# Full install (MCP servers, hooks, secrets, user profile)
bach setup full-installBACH provides two MCP servers for integration with Claude Code, Cursor, and other IDEs:
# Install and configure MCP servers (recommended)
python system/bach.py setup mcp
# Or manually via npm:
npm install -g ellmos-codecommander-mcp ellmos-filecommander-mcp- ellmos-codecommander-mcp - Code analysis and refactoring tools
- ellmos-filecommander-mcp - File management and batch operations
# Start BACH
python bach.py --startup
# Create a task
python bach.py task add "Analyze project structure"
# Manage agents
python bach.py agent list
python bach.py agent start bueroassistent
# Manage prompts
python bach.py prompt list
python bach.py prompt add "My Prompt" --content "..."
# Check scheduler status
python bach.py scheduler status
# Shut down BACH
python bach.py --shutdownFull GTD system with prioritization, deadlines, tags, and context tracking.
Structured memory system with Facts, Lessons, and automatic consolidation (6 memory types, 210+ DB tables).
11 Boss agents orchestrate 22 experts for complex tasks. The Agent CLI allows direct starting, stopping, and listing of agents via bach agent.

Illustration shows BACH's five original boss agents: ati, officeassistant, finance-assistant, health-assistant, personal-assistant. The current system ships 11 boss agents and 22 experts.
Central management of prompt templates with board collections and full versioning (bach prompt).
Multi-backend Telegram bot with pluggable LLM backends (Ollama, Claude CLI, Codex CLI, Claude API, OpenAI API), HTTP Control API with web dashboard, and cross-platform system tray. Connector framework for additional services (Email, WhatsApp, etc.) and USMC Bridge for cross-agent communication.
SchedulerService for time-based jobs (chains, tasks, scripts) and event-driven workflows via the hook framework.
Multi-agent coordination with context generation, conflict detection, decay, and delta queries.
Chain steps as LLM prompts with bach:// URL resolution for dynamic context embedding.
All ellmos projects follow a water metaphor -- from a spring to a full stream:
| Tier | Project | Description | Repository |
|---|---|---|---|
| 1 | USMC | United Shared Memory Client -- the spring (shared memory only) | github.com/ellmos-ai/usmc |
| 2 | Rinnsal | The trickle -- USMC + llmauto (LLM orchestration), extremely compact | github.com/ellmos-ai/rinnsal |
| 3 | BACH | The stream that unites everything -- 113+ handlers, 1870+ skills, agents, GUI, bridge | github.com/ellmos-ai/bach |
- Quickstart Guide - Get your first workflow running in 5 minutes
- User Manual - Complete handbook
- Skills Catalog - All available skills
- Agents Catalog - All available agents and experts
- Workflows - 59 workflow templates
- SKILL.md - LLM operating instructions (for Claude, Gemini, Ollama)
How does BACH compare to OpenClaw, a popular open-source AI assistant?
| BACH | OpenClaw | |
|---|---|---|
| Focus | LLM Operating System -- deep autonomy, structured memory, multi-agent orchestration | Personal AI Assistant -- broad messaging gateway, voice, companion apps |
| Tools/Skills | 550+ tools, 1870+ skills, 59 workflows (local, curated) | Community-driven skill/plugin ecosystem; recent releases emphasize manifest-first plugin metadata and install safety |
| Memory | 6 memory types with decay, conflict detection, consolidation (210+ DB tables) | Session/runtime workspace with bootstrap files such as AGENTS.md, TOOLS.md, USER.md, and related context files |
| Agents | Boss-Expert orchestration (11 boss agents + 22 experts), SharedMemory Bus | Agent runtime with multi-session/channel operation |
| Messaging | Telegram, Email, WhatsApp (Bridge System) | 20+ platforms (WhatsApp, Telegram, Slack, Discord, Signal, Teams, Matrix...) |
| Interfaces | CLI, Python API, PySide6 GUI, Web GUI, Telegram Bot, Web Chat, System Tray | CLI, WebChat, macOS/iOS/Android apps, Voice |
| MCP | Own MCP servers (FileCommander, CodeCommander) | Native MCP Registry |
| Stack | Python 3.10+, SQLite | TypeScript, Node.js 22+ |
| License | MIT | MIT |
In short: BACH goes deep (structured memory, autonomous agents, scheduler, 210+ DB tables). OpenClaw goes wide (20+ messengers, native apps, voice, large community). Different philosophies, complementary strengths.
As of 2026-05-11, OpenClaw's releases page marks 2026.5.7 as the latest stable release, the visible prerelease line has advanced to 2026.5.10-beta.3, and the official GHCR package page currently exposes 2026.5.10-beta.2-slim as the latest tagged container. The recent notes especially reinforce queue-independent steering, checkpoint visibility, diagnostics, and installer/plugin safety. BACH already ships analogous control-plane pieces: manifest-first metadata, fail-closed setup checks, broader install scanning for skills/MCP/plugins, privacy-preserving secret/reference handling, memory/wiki provenance views, machine-readable agent/scheduler status surfaces, workspace-scoped agent-runtime cache invalidation, stable Windows agent tracking via durable console PIDs, and now chain-level operator controls via bach chain pause, bach chain resume, and bach chain steer at safe llmauto checkpoints. Next high-leverage steps remain extending the same steering semantics to broader agent/scheduler runs, low-cardinality telemetry, stricter auth gating, and external observability.
MIT License - see LICENSE for details.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
BACH ist ein textbasiertes Betriebssystem, das Large Language Models (LLMs) befähigt, eigenständig zu arbeiten, zu lernen und sich zu organisieren.
Die vollständige deutsche Dokumentation findest du hier: README.de.md
ellmos BACH v3.9.1-tiramisu - Text-Based Operating System for LLMs
Dieses Projekt ist eine unentgeltliche Open-Source-Schenkung im Sinne der §§ 516 ff. BGB. Die Haftung des Urhebers ist gemäß § 521 BGB auf Vorsatz und grobe Fahrlässigkeit beschränkt. Ergänzend gelten die Haftungsausschlüsse aus GPL-3.0 / MIT / Apache-2.0 §§ 15–16 (je nach gewählter Lizenz).
Nutzung auf eigenes Risiko. Keine Wartungszusage, keine Verfügbarkeitsgarantie, keine Gewähr für Fehlerfreiheit oder Eignung für einen bestimmten Zweck.
This project is an unpaid open-source donation. Liability is limited to intent and gross negligence (§ 521 German Civil Code). Use at your own risk. No warranty, no maintenance guarantee, no fitness-for-purpose assumed.


