1#![warn(missing_docs)]
11
12pub mod agent;
13pub mod bridge;
14pub mod cli;
15pub mod config;
16pub mod event_log;
17pub mod prompt;
19pub mod render;
20pub mod session;
22
23pub use agent_base::{
31 AgentError, AgentResult, AgentRuntime, ApprovalDecision, ApprovalHandler, ApprovalRequest,
32 ConsecutiveFailureRecovery, Content, LlmClient, Middleware, OpenAiClient, PlanItem, PlanStepStatus, PostLlmCtx,
33 PreLlmCtx, ReasoningConfig, ReasoningEffort, RiskLevel, RunOutcome, RuntimeEvent, SafetyConfig, SessionId, Tool,
34 ToolContext, ToolMetadata, ToolPolicy, TurnFactMiddleware, TurnToolLimitMiddleware, UpdatePlanTool, UserMessageCtx,
35};
36pub use agent_works::AgentBuilder;
37
38#[cfg(feature = "telemetry")]
40pub use phi_telemetry::{
41 SessionMetrics, SessionOutcome, SessionSummary, TurnMetrics, TurnOutcome, list_all_metrics, load_metrics,
42 save_metrics, try_load_metrics,
43};
44
45pub use agent_works::focus::{Context as FocusContext, Focus, FocusError, FocusInput, FocusOutput};
47pub use agent_works::multi_agent::{ChildPermissionMode, MultiAgentConfig};
48
49#[cfg(feature = "mcp")]
51pub use agent_works::mcp::{McpServeConfig, McpServer, McpServerConfig, McpServerTransport, McpTransport};
52
53pub use agent::{
55 CompressionConfig, PhiAgent, PhiAgentConfig, SummarizingMiddleware, base_agent_builder,
56 base_agent_builder_with_excludes,
57};
58pub use cli::{ApprovalMode, AutoApprovalHandler};
59pub use config::{LlmConfig, resolve_llm_config};
60pub use event_log::{event_to_jsonl, event_to_value, save_turn_log};
61pub use prompt::{build_system_prompt, build_system_prompt_cn};
62pub use render::{
63 EventRenderer, JsonStreamRenderer, NullRenderer, OutputFormat, create_renderer, create_stdout_renderer,
64};
65pub use session::{
66 SessionContext, SnapshotInfo, cleanup_expired_sessions, create_snapshot, delete_snapshot, list_snapshots,
67 resolve_session, restore_snapshot, validate_session_id, validate_snapshot_name,
68};