# Sagents v0.4.2 - Table of Contents ## Pages - [Sagents](readme.md) - [Changelog](changelog.md) - [LICENSE](license.md) - Docs - [Architecture Overview](architecture.md) - [Conversations Architecture](conversations_architecture.md) - [Agent Lifecycle Management](lifecycle.md) - [PubSub & Presence](pubsub_presence.md) - [Middleware Development](middleware.md) - [Middleware Messaging Guide](middleware_messaging.md) - [Observability & Custom Telemetry](observability.md) - [State Persistence](persistence.md) - [FileSystem Setup Guide](filesystem_setup.md) ## Modules - [Sagents](Sagents.md): Sagents provides hierarchical agent capabilities with composable middleware. - [Sagents.AgentPersistence](Sagents.AgentPersistence.md): Behaviour for persisting agent state snapshots. - [Sagents.DisplayMessagePersistence](Sagents.DisplayMessagePersistence.md): Behaviour for persisting display messages (user-facing message representations). - [Sagents.Horde.AgentsSupervisorImpl](Sagents.Horde.AgentsSupervisorImpl.md): Module-based Horde.DynamicSupervisor for agent processes. - [Sagents.Horde.ClusterConfig](Sagents.Horde.ClusterConfig.md): Configuration helpers for Horde clustering. - [Sagents.Horde.FileSystemSupervisorImpl](Sagents.Horde.FileSystemSupervisorImpl.md): Module-based Horde.DynamicSupervisor for filesystem processes. - [Sagents.Horde.RegistryImpl](Sagents.Horde.RegistryImpl.md): Module-based Horde.Registry for dynamic configuration. - [Sagents.MessagePreprocessor](Sagents.MessagePreprocessor.md): Behaviour for transforming user-submitted messages into separate display and LLM representations. - [Sagents.Mode.Steps](Sagents.Mode.Steps.md): Sagents-specific pipeline steps for custom execution modes. - [Sagents.Modes.AgentExecution](Sagents.Modes.AgentExecution.md): Standard sagents execution mode. - [Sagents.ProcessRegistry](Sagents.ProcessRegistry.md): Abstraction over process registry implementations. - [Sagents.ProcessSupervisor](Sagents.ProcessSupervisor.md): Abstraction over dynamic supervisor implementations. - [Sagents.SubAgent.Compiled](Sagents.SubAgent.Compiled.md): Pre-compiled SubAgent with an existing Agent instance. - [Sagents.SubAgent.Config](Sagents.SubAgent.Config.md): Configuration for dynamically-created SubAgents. - [Sagents.Supervisor](Sagents.Supervisor.md): Top-level supervisor for Sagents infrastructure. - Core Agent - [Sagents.Agent](Sagents.Agent.md): Main entry point for creating Agents. - [Sagents.AgentServer](Sagents.AgentServer.md): GenServer that wraps a DeepAgent and its State, managing execution lifecycle and broadcasting events via PubSub. - [Sagents.AgentSupervisor](Sagents.AgentSupervisor.md): Custom supervisor for managing an Agent and its supporting infrastructure. - [Sagents.AgentUtils](Sagents.AgentUtils.md): Shared utilities for Agent and SubAgent HITL (Human-in-the-Loop) support. - [Sagents.State](Sagents.State.md): Agent state structure for managing agent execution context. - Middleware - [Sagents.Middleware](Sagents.Middleware.md): Behavior for DeepAgent middleware components. - [Sagents.Middleware.ConversationTitle](Sagents.Middleware.ConversationTitle.md): Middleware that automatically generates conversation titles based on the initial user message. - [Sagents.Middleware.FileSystem](Sagents.Middleware.FileSystem.md): Middleware that adds mock filesystem capabilities to agents. - [Sagents.Middleware.HumanInTheLoop](Sagents.Middleware.HumanInTheLoop.md): Middleware that enables human oversight and intervention in agent workflows. - [Sagents.Middleware.PatchToolCalls](Sagents.Middleware.PatchToolCalls.md): Middleware that identifies and resolves "dangling tool calls" in the message history. - [Sagents.Middleware.SubAgent](Sagents.Middleware.SubAgent.md): Middleware for delegating tasks to specialized SubAgents. - [Sagents.Middleware.Summarization](Sagents.Middleware.Summarization.md): Middleware that automatically manages conversation length through intelligent summarization. - [Sagents.Middleware.TodoList](Sagents.Middleware.TodoList.md): Middleware that adds TODO list management capabilities to agents. - [Sagents.MiddlewareEntry](Sagents.MiddlewareEntry.md): Represents a registered middleware instance with its configuration. - SubAgents - [Sagents.SubAgent](Sagents.SubAgent.md): A runnable, pausable, and resumable agent execution context. - [Sagents.SubAgentServer](Sagents.SubAgentServer.md): GenServer wrapper for SubAgent providing blocking API. - [Sagents.SubAgentsDynamicSupervisor](Sagents.SubAgentsDynamicSupervisor.md): DynamicSupervisor for managing ephemeral sub-agent processes. - FileSystem - [Sagents.FileSystem](Sagents.FileSystem.md): Public API for filesystem lifecycle management. - [Sagents.FileSystem.FileEntry](Sagents.FileSystem.FileEntry.md): Represents a file or directory in the virtual filesystem. - [Sagents.FileSystem.FileMetadata](Sagents.FileSystem.FileMetadata.md): Metadata for a file entry in the virtual filesystem. - [Sagents.FileSystem.FileSystemConfig](Sagents.FileSystem.FileSystemConfig.md): Configuration for a filesystem persistence backend. - [Sagents.FileSystem.FileSystemState](Sagents.FileSystem.FileSystemState.md): State management for the FileSystem. - [Sagents.FileSystem.FileSystemSupervisor](Sagents.FileSystem.FileSystemSupervisor.md): Dynamic supervisor for managing FileSystemServer instances. - [Sagents.FileSystem.Persistence](Sagents.FileSystem.Persistence.md): Behaviour for persisting files to storage. - [Sagents.FileSystem.Persistence.Disk](Sagents.FileSystem.Persistence.Disk.md): Default disk-based persistence implementation. - [Sagents.FileSystemCallbacks](Sagents.FileSystemCallbacks.md): Behavior for file system persistence callbacks. - [Sagents.FileSystemServer](Sagents.FileSystemServer.md): GenServer managing virtual filesystem with debounce-based auto-persistence. - Persistence - [Sagents.Persistence.Hooks](Sagents.Persistence.Hooks.md): Optional behavior for hooking into agent state persistence events. - [Sagents.Persistence.StateSerializer](Sagents.Persistence.StateSerializer.md): Handles serialization and deserialization of AgentServer state. - Process Management - [Sagents.AgentsDynamicSupervisor](Sagents.AgentsDynamicSupervisor.md): Dynamic supervisor for managing AgentSupervisor instances. - Events & Communication - [Sagents.Presence](Sagents.Presence.md): Convenience wrappers for Phoenix.Presence operations. - [Sagents.PubSub](Sagents.PubSub.md): Helper functions for idempotent PubSub subscriptions. - Message Helpers - [Sagents.Message.DisplayHelpers](Sagents.Message.DisplayHelpers.md): Utilities for extracting displayable content from LangChain Messages. - Support Types - [Sagents.Todo](Sagents.Todo.md): TODO item structure for task tracking. ## Mix Tasks - [mix sagents.gen.live_helpers](Mix.Tasks.Sagents.Gen.LiveHelpers.md): Generates AgentLiveHelpers module for Phoenix LiveView integration with Sagents. - [mix sagents.setup](Mix.Tasks.Sagents.Setup.md): Generates all infrastructure needed for conversation-centric agents.