Skip to main content

Crate lash_sansio

Crate lash_sansio 

Source

Re-exports§

pub use attachment::AttachmentCreateMeta;
pub use attachment::AttachmentId;
pub use attachment::AttachmentMeta;
pub use attachment::AttachmentRef;
pub use attachment::ImageMediaType;
pub use attachment::MediaType;
pub use causal::CausalRef;
pub use llm::types::LlmTerminalReason;
pub use plugin::CheckpointKind;
pub use plugin::PluginMessage;
pub use plugin::PluginRuntimeEvent;
pub use plugin::PromptContribution;
pub use plugin::PromptContributionGate;
pub use prompt::PreparedPrompt;
pub use prompt::PromptBuildInput;
pub use prompt::PromptCache;
pub use prompt::PromptContext;
pub use prompt::PromptContributionSet;
pub use prompt::PromptFingerprint;
pub use prompt::build_prompt;
pub use prompt::build_prompt_cached;
pub use prompt::prompt_template_fingerprint;
pub use prompt::prompt_text_fingerprint;
pub use prompt::prompt_tool_names_fingerprint;
pub use sansio::ChatContextProjector;
pub use sansio::CheckpointDelivery;
pub use sansio::CheckpointResumeAction;
pub use sansio::CompletedToolCall;
pub use sansio::ContextProjector;
pub use sansio::DriverAction;
pub use sansio::DriverContextView;
pub use sansio::Effect;
pub use sansio::EffectId;
pub use sansio::LlmCallError;
pub use sansio::PendingToolCall;
pub use sansio::ProjectorContext;
pub use sansio::ProtocolDriverHandle;
pub use sansio::Response;
pub use sansio::TurnCause;
pub use sansio::TurnCheckpoint;
pub use sansio::TurnMachine;
pub use sansio::TurnMachineConfig;
pub use sansio::TurnProtocol;
pub use sansio::UnitTurnProtocol;
pub use sansio::WaitingExecState;
pub use sansio::WaitingLlmState;
pub use sansio::render_turn_causes_prompt;
pub use session::CompletedTurn;
pub use session::ExecImage;
pub use session::ExecResponse;
pub use session::PromptUsage;
pub use session::SansIoSessionState;
pub use session::TextProjectionMetadata;
pub use session::apply_completed_turn;
pub use session_model::message::MessageOrigin;
pub use session_model::AcceptedInjectedTurnInput;
pub use session_model::BaseRenderCache;
pub use session_model::ConversationRecord;
pub use session_model::ErrorEnvelope;
pub use session_model::MAIN_AGENT_INTRO;
pub use session_model::Message;
pub use session_model::MessageRole;
pub use session_model::MessageSequence;
pub use session_model::Part;
pub use session_model::PartAttachment;
pub use session_model::PartKind;
pub use session_model::PromptBuiltin;
pub use session_model::PromptLayer;
pub use session_model::PromptSlot;
pub use session_model::PromptSlotLayer;
pub use session_model::PromptTemplate;
pub use session_model::PromptTemplateEntry;
pub use session_model::PromptTemplateSection;
pub use session_model::PruneState;
pub use session_model::RenderedPrompt;
pub use session_model::ResolvedPromptLayer;
pub use session_model::SessionEvent;
pub use session_model::SessionEventRecord;
pub use session_model::TokenUsage;
pub use session_model::TurnFinish;
pub use session_model::TurnOutcome;
pub use session_model::TurnStop;
pub use session_model::default_prompt_template;
pub use session_model::messages_are_prompt_resume_safe;
pub use session_model::resolve_prompt_layers;
pub use session_model::shared_parts;
pub use tool_contract::CompactToolContract;
pub use tool_contract::LashSchema;
pub use tool_contract::ModelTool;
pub use tool_contract::SchemaProjectionOverride;
pub use tool_contract::ToolActivation;
pub use tool_contract::ToolAgentExecutableSurface;
pub use tool_contract::ToolAgentSurface;
pub use tool_contract::ToolArgumentProjectionPolicy;
pub use tool_contract::ToolAvailability;
pub use tool_contract::ToolAvailabilityConfig;
pub use tool_contract::ToolContract;
pub use tool_contract::ToolDefinition;
pub use tool_contract::ToolId;
pub use tool_contract::ToolManifest;
pub use tool_contract::ToolOutputContract;
pub use tool_contract::ToolRetryPolicy;
pub use tool_contract::ToolScheduling;
pub use tool_contract::schema_for;
pub use tool_contract::validate_tool_input;
pub use tool_output::ModelToolReturn;
pub use tool_output::ModelToolReturnPart;
pub use tool_output::ToolCallOutcome;
pub use tool_output::ToolCallOutput;
pub use tool_output::ToolCallRecord;
pub use tool_output::ToolCallStatus;
pub use tool_output::ToolCancellation;
pub use tool_output::ToolControl;
pub use tool_output::ToolFailure;
pub use tool_output::ToolFailureClass;
pub use tool_output::ToolFailureSource;
pub use tool_output::ToolRetryDisposition;
pub use tool_output::ToolValue;
pub use tool_output::format_tool_output_content;
pub use tool_output::model_parts_from_tool_output;
pub use tool_surface::ToolContractResolver;
pub use tool_surface::ToolSurface;
pub use tool_surface::ToolSurfaceBuildInput;
pub use tool_surface::ToolSurfaceContribution;
pub use tool_surface::ToolSurfaceEntry;
pub use tool_surface::ToolSurfaceOverride;
pub use tool_surface::build_tool_surface;
pub use turn::PreparedTurnMachine;
pub use turn::SansIoTurnInput;
pub use turn::build_turn;
pub use turn_driver::TurnDriverConfig;
pub use turn_driver::TurnDriverPreamble;
pub use turn_driver::TurnLimitFinalMessage;
pub use turn_driver::append_assistant_text_part;
pub use turn_driver::normalized_response_parts;
pub use turn_driver::reasoning_part;

Modules§

attachment
causal
llm
plugin
prompt
sansio
Sans-IO state machine for session turns.
session
session_model
tool_contract
tool_output
tool_surface
turn
turn_driver
Shared types and helpers used by protocol drivers. Concrete drivers and their prompts live in protocol plugin crates; this module exposes the common turn-driver surface:

Constants§

VERSION

Functions§

head_tail_truncate