# CommBus v0.1.0 - Table of Contents ## Pages - [CommBus](readme.md) - [Changelog](changelog.md) - Guides - [Adopting CommBus](adopting_commbus.md) - [Integration Guide](integration.md) ## Modules - [CommBus.Context.Exclusion](CommBus.Context.Exclusion.md): Represents a reason an entry was dropped from the plan. - [CommBus.Context.Plan](CommBus.Context.Plan.md): Structured plan returned by `CommBus.Context.plan/3`. - [CommBus.Matcher.MatchResult](CommBus.Matcher.MatchResult.md): Match diagnostics for a given entry. - [CommBus.Prompts.OverrideStore.Memory](CommBus.Prompts.OverrideStore.Memory.md): In-memory override store for testing and local usage. - [CommBus.Protocol.Context](CommBus.Protocol.Context.md): Execution context shared across CommBus protocol adapters. - [CommBus.Protocol.Pipeline.State](CommBus.Protocol.Pipeline.State.md): Internal state threaded through each ALF pipeline stage, carrying the protocol context, the chosen adapter module, and the accumulated result. - [CommBus.Protocol.SectionRoles](CommBus.Protocol.SectionRoles.md): Registry for mapping CommBus sections (e.g., :system, :pre_history) to downstream message roles understood by provider pipelines. - [CommBus.Protocol.Validator](CommBus.Protocol.Validator.md): Validates assembled protocol packets before they are forwarded to downstream routers. - [CommBus.Semantic.SimpleAdapter](CommBus.Semantic.SimpleAdapter.md): Default semantic adapter that scores similarity using token overlap (Jaccard index). - [CommBus.Storage.ConversationStore](CommBus.Storage.ConversationStore.md): Behaviour for conversation persistence. - [CommBus.Storage.Ecto](CommBus.Storage.Ecto.md): Default Ecto-backed storage adapter for CommBus. - [CommBus.Storage.Ecto.ConversationSchema](CommBus.Storage.Ecto.ConversationSchema.md): Default Ecto schema used by CommBus.Storage.Ecto for persisting conversations. - [CommBus.Storage.Ecto.EntrySchema](CommBus.Storage.Ecto.EntrySchema.md): Default Ecto schema used by CommBus.Storage.Ecto for persisting entries. - [CommBus.Storage.EntryStore](CommBus.Storage.EntryStore.md): Behaviour for entry persistence. - [CommBus.Storage.Migrations](CommBus.Storage.Migrations.md): Helper functions for adding CommBus tables to your Ecto migrations. - [CommBus.Template.RenderContext](CommBus.Template.RenderContext.md): Encapsulates the rendering context passed to template engines, including variable bindings, partial templates, and strict-mode configuration. - [CommBus.Template.RenderResult](CommBus.Template.RenderResult.md): Holds the output of a successful template render, including the rendered content string, lists of variables that were used, defaulted, or provided, any partials that were loaded, and the wall-clock render time. - Core - [CommBus](CommBus.md): Conversational context assembly for LLM interactions. - [CommBus.Assembler](CommBus.Assembler.md): Prompt assembly with injected context. - [CommBus.Budget](CommBus.Budget.md): Token budget management. - [CommBus.Budget.Planner](CommBus.Budget.Planner.md): Simple helper for deriving section budgets and completion allowances. - [CommBus.Matcher](CommBus.Matcher.md): Keyword, fuzzy, and semantic matching for triggered entries with diagnostics. - Data Structures - [CommBus.Context](CommBus.Context.md): High-level planning utilities for CommBus assemblies. - [CommBus.Conversation](CommBus.Conversation.md): Conversation session state. - [CommBus.Entry](CommBus.Entry.md): Injectable context entry. - [CommBus.Message](CommBus.Message.md): Conversation message. - [CommBus.Protocol.Packet](CommBus.Protocol.Packet.md): Canonical payload produced by CommBus protocol adapters. - Template System - [CommBus.Template](CommBus.Template.md): Template rendering facade. - [CommBus.Template.Engine](CommBus.Template.Engine.md): Template engine behavior. - [CommBus.Template.Engine.BbMustache](CommBus.Template.Engine.BbMustache.md): bbmustache-based template engine. - [CommBus.Template.Engine.ExMustache](CommBus.Template.Engine.ExMustache.md): ExMustache-based template engine. - [CommBus.Template.Loader](CommBus.Template.Loader.md): Prompt template loader with YAML frontmatter. - [CommBus.Template.Prompt](CommBus.Template.Prompt.md): Prompt template definition. - [CommBus.Template.Validator](CommBus.Template.Validator.md): Validates prompt frontmatter and variable consistency. - Prompts - [CommBus.Prompts](CommBus.Prompts.md): Prompt catalog with optional overrides and cached runtime loading. - [CommBus.Prompts.OverrideStore](CommBus.Prompts.OverrideStore.md): Prompt override store behavior. - Protocol & Pipeline - [CommBus.Protocol.Adapter](CommBus.Protocol.Adapter.md): Behaviour for translating CommBus assemblies into downstream packets. - [CommBus.Protocol.LlmCoreAdapter](CommBus.Protocol.LlmCoreAdapter.md): Default adapter that converts CommBus assemblies into llm_core-friendly packets. - [CommBus.Protocol.Pipeline](CommBus.Protocol.Pipeline.md): ALF pipeline that assembles a conversation and adapts it into a protocol packet. - Storage - [CommBus.Storage.EctoAdapter](CommBus.Storage.EctoAdapter.md): Generic helper that persists CommBus entries and conversations using any Ecto repo. - [CommBus.Storage.InMemory](CommBus.Storage.InMemory.md): Lightweight ETS-backed storage adapter implementing both CommBus storage behaviours. - Methodologies - [CommBus.Methodologies](CommBus.Methodologies.md): Curated methodology catalog for reusable prompt packs. - [CommBus.Methodology](CommBus.Methodology.md): Structured methodology definition containing curated CommBus entries. - Utilities - [CommBus.Semantic](CommBus.Semantic.md): Helper for retrieving the configured semantic adapter. - [CommBus.Semantic.Adapter](CommBus.Semantic.Adapter.md): Behaviour for semantic similarity adapters used by CommBus.Matcher. Implementations should return a similarity score between 0.0 and 1.0. - [CommBus.Telemetry](CommBus.Telemetry.md): Helpers for consuming CommBus telemetry events and defining common metrics. - [CommBus.Tokenizer](CommBus.Tokenizer.md): Token counting façade with pluggable backends. - [CommBus.Tokenizer.Simple](CommBus.Tokenizer.Simple.md): Fallback tokenizer using a heuristic character/word based approximation. - Exceptions - [CommBus.Template.RenderError](CommBus.Template.RenderError.md): Exception raised or returned when a template render fails. Carries the failure `:type` (e.g. `:render_failed`, `:type_coercion_failed`, `:max_depth_exceeded`), a human-readable `:message`, and optional `:template_name` and `:variable_name` for diagnostics. ## Mix Tasks - Mix Tasks - [mix comm_bus.budget](Mix.Tasks.CommBus.Budget.md) - [mix comm_bus.compare_engines](Mix.Tasks.CommBus.CompareEngines.md) - [mix comm_bus.entries](Mix.Tasks.CommBus.Entries.md) - [mix comm_bus.simulate](Mix.Tasks.CommBus.Simulate.md): Run CommBus planning locally using YAML fixtures for conversations and entries. - [mix comm_bus.sync_fixtures](Mix.Tasks.CommBus.SyncFixtures.md): Syncs prompt files from external project directories into test fixtures.