colmugx/posoco/runtime does not have a README file
pub(open) trait Runtime {
async fn call_model(Self, scope : InvocationScope, messages : Array[Message], tool_definitions : Array[ToolDef], call_options : Json, on_chunk : (Json) -> Unit?) -> Result[ModelCallResult, ModelFailure]
async fn execute_tool(Self, ctx : EffectContext) -> ToolOutcome
async fn cancel_effects(Self, effect_ids : Array[EffectId], reason : CancelReason) -> Array[(EffectId, CancelDisposition)]
async fn compact(Self, scope : InvocationScope, messages : Array[Message], call_options : Json, trigger : CompactTrigger) -> Result[CompactResult, ModelFailure]
}pub struct PortRuntime {
// private fields
}impl Runtime for PortRuntimeasync fn call_model(self : PortRuntime, scope : InvocationScope, messages : Array[Message], tool_definitions : Array[ToolDef], call_options : Json, on_chunk : (Json) -> Unit?) -> Result[ModelCallResult, ModelFailure]async fn cancel_effects(self : PortRuntime, effect_ids : Array[EffectId], _reason : CancelReason) -> Array[(EffectId, CancelDisposition)]async fn compact(self : PortRuntime, scope : InvocationScope, messages : Array[Message], call_options : Json, trigger : CompactTrigger) -> Result[CompactResult, ModelFailure]pub struct RuntimeControl {
// private fields
}LLM Agent framework with hexagonal (ports-and-adapters) architecture. Defines 9 traits + Agent loop. Depends on moonbitlang/async.
Dependencies