Skip to content

v0.3.0

Choose a tag to compare

@yuanhao yuanhao released this 21 Feb 13:56
· 377 commits to main since this release

What's New

  • SubAgentTool — delegate tasks to child agent loops using the "agent-as-tool" pattern. Sub-agents get their own system prompt, tools, and provider with full context isolation, cancellation propagation, and real-time event forwarding.
  • Multimodal image support — tool results can now include images across all 7 providers (Anthropic, OpenAI, Azure, Google, Vertex, Bedrock, OpenAI Compat).
  • Agent::with_sub_agent() builder method for ergonomic sub-agent registration.

Example

let researcher = SubAgentTool::new("researcher", provider.clone())
    .with_description("Searches and reads files")
    .with_system_prompt("You are a research assistant.")
    .with_model("claude-sonnet-4-20250514")
    .with_api_key(key)
    .with_tools(vec![arc_read, arc_search])
    .with_max_turns(10);

let mut agent = Agent::new(provider)
    .with_sub_agent(researcher);

Full Changelog: v0.2.0...v0.3.0