Expand description
§fluers-core
Core agent primitives and model abstractions for Fluers.
This crate is the native Rust stand-in for Flue’s two foundational TypeScript dependencies:
@earendil-works/pi-agent-core— the agent loop: messages, tool definitions, tool calls/results, thinking levels.@earendil-works/pi-ai— the model/provider abstraction:Model,ImageContent, streaming, provider calls.
Flue itself is a harness layer on top of these two. Neither has a
published Rust crate, so a faithful native Rust port must re-implement
this foundation first. Everything else (fluers-runtime, fluers-cli,
…) builds on the traits defined here.
Re-exports§
pub use error::CoreError;pub use error::Result;pub use event::EventSink;pub use event::NullEventSink;pub use event::RunEvent;pub use event::RunHooks;pub use message::AgentMessage;pub use message::ContentBlock;pub use message::ImageContent;pub use message::Role;pub use message::SignalMessage;pub use model::Model;pub use model::ModelProvider;pub use model::ModelRequest;pub use model::ModelResponse;pub use model::StreamEvent;pub use policy::PolicyVerdict;pub use policy::ToolPolicy;pub use request::ToolFactory;pub use request::ToolRequestContext;pub use runner::run_agent;pub use runner::run_agent_streaming;pub use runner::FanoutTurnSink;pub use runner::RunConfig;pub use runner::RunOutcome;pub use runner::TurnSink;pub use subagent::SubagentOptions;pub use subagent::SubagentProfile;pub use subagent::TaskTool;pub use subagent::DEFAULT_MAX_DELEGATIONS;pub use subagent::DEFAULT_MAX_DEPTH;pub use thinking::ThinkingLevel;pub use tool::InvokeContext;pub use tool::JsonValue;pub use tool::ParameterSchema;pub use tool::Tool;pub use tool::ToolCall;pub use tool::ToolDefinition;pub use tool::ToolResult;
Modules§
- error
- Error types for the core crate.
- event
- Run-lifecycle events and the
EventSinkseam. - message
- Conversation messages and content blocks.
- model
- Model and provider abstraction.
- policy
- A generic, content-aware tool policy hook consulted before a tool runs.
- request
- Request-scoped tool construction.
- runner
- The pure agent turn-loop.
- subagent
- Subagent delegation: the built-in
tasktool. - thinking
- Model reasoning effort (“thinking”) configuration.
- tool
- Tool definitions, calls, and the
Tooltrait.
Enums§
- Json
- Re-export of
serde_json::Valueunder a domain-friendly alias. Represents any valid JSON value.