Overview of the OpenAB project structure
mainThe OpenAB repository is organized as follows:
Dockerfile: A multi-stage build using a Rust build stage and adebian-slimruntime containingkiro-cli.config.toml.example: A template configuration file containing all available agent backends.k8s/: Kubernetes manifests for deployment.src/: The core source code:main.rs: The application entrypoint handling multi-adapter startup, cleanup, and shutdown.adapter.rs: Defines theChatAdaptertrait and theAdapterRouter(platform-agnostic).config.rs: Handles TOML configuration and${ENV_VAR}expansion.discord.rs: Implementation ofDiscordAdapterusingserenity'sEventHandlerand theChatAdaptertrait.slack.rs: Implementation ofSlackAdapterusing Socket Mode and theChatAdaptertrait.media.rs: Shared utilities for image resizing/compression and STT (Speech-to-Text) downloads.format.rs: Logic for message splitting and thread name shortening.reactions.rs: A status reaction controller featuring debounce and stall detection.acp/: The Agent Communication Protocol implementation:protocol.rs: JSON-RPC types and ACP event classification.connection.rs: Manages spawning the CLI and communicating viastdioJSON-RPC.pool.rs: A map managingAcpConnectioninstances by session key.