Acorn is an LLM agent framework for building long running agents with structured I/O. It supports type-safe inputs and outputs, automatic tool calling, multi turn agentic loops, and integrations like LiteLLM, with options for streaming responses and provider caching or failover. It is useful for implementing agent workflows that call tools, recover from parse errors, and can branch into sub agents.
Project status
- The repository appears actively maintained, with a recent upstream push on 2026-04-04 and a sequence of tagged updates around 2026-03-25 to 2026-04-02 (0.8.0a1, 0.8.0, 0.8.1).
- Apparent update cadence is fairly brisk for this period, moving from the 0.8.0a1 pre-release (2026-03-25) to 0.8.0 (2026-04-02), followed quickly by 0.8.1 the same day (2026-04-02).
AI summary generated Today
Recent updates
0.8.1
2 months agoRelease 0.8.1 does not include any publisher-provided release notes. The provided diff is dominated by documentation updates and examples, plus a version bump in acorn/_version.py.
Features0.8.0
2 months agoRelease 0.8.0 (0.8.0a2) introduces two major internal capabilities: a Service abstraction for grouping tool methods with lifecycle hooks, and an optional search-based tool discovery mode that hides most tool schemas from the LLM prompt. Module execution now calls Service setup/teardown around the run, and tool schema generation changes when tool_discovery is set to "search".
BreakingFeatures0.8.0a1
2 months agoRelease 0.8.0a1 is a pre-release focused on switching Acorn to an async-first API model. The documented breaking change is that Module.__call__ is now async, requiring sync callers to use run() and async callers to await the call.
BreakingFeatures0.7.3
2 months agoRelease 0.7.3 makes a targeted change to dependency resolution. The only code diff is in pyproject.toml, where litellm is now pinned to a specific version.
0.7.2
3 months agoRelease 0.7.2 primarily adds a new model config option, `litellm_params`, which is forwarded to LiteLLM when calling the LLM. The rest of the diff is documentation and GitHub Pages deployment workflow changes, with no additional library behavior changes shown in the provided diff.
Features0.7.1
3 months agoAcorn 0.7.1 adds Jinja2-based system prompt templating via a new Template type, and updates documentation. The code diff also introduces additional LLM generation parameter plumbing (beyond max_tokens) and changes how system_prompt file paths are resolved. Branching documentation appears to be added/expanded, with at least one code change affecting branch caching behavior.
BreakingFeatures0.6.2
3 months agoRelease 0.6.2 has release notes that only state it is being published as a proxy for 0.6.1. The actual diff shows no core-library change, but there are substantial updates to the Gradio examples and demo UI, including a new example module and changes to how step logs are rendered.
Features0.6.1
3 months agoRelease 0.6.1 focuses on adding branching support, refreshing the examples, and introducing a GitHub Actions workflow to deploy demos to HuggingFace Spaces. The diff also includes deeper core changes in the Module base class, beyond what the release notes explicitly mention.
BreakingFeatures0.5.1
3 months agoRelease 0.5.1 does not include any publisher-provided release notes. The code diff shows version bumps plus a new “model fallbacks” capability wired into LiteLLM calls, along with related validation and documentation updates.
Features0.4.4
3 months agoRelease 0.4.4 updates the package version and makes small but meaningful changes to how model configuration is validated and forwarded to the LiteLLM client. It also updates internal progress documentation to describe additional phases and new example usage (streaming and caching), but the code diff shown only includes client/config wiring changes.