Zene
An Embeddable Agent Execution Engine for Coding Workflows
Installation • Usage • Documentation • Contributing
Philosophy
Zene combines "Zen" and "Engine".
- Zen: Minimalist, focused, and distraction-free. We avoid bloated frameworks to provide a pure coding flow.
- Engine: High-performance, reliable, and powerful. Written in Rust to act as the execution core behind coding agents and developer tools.
We believe in:
- Embeddable Runtime: Zene should be usable from a CLI, a Rust library, or another host application.
- Single Binary: No complex runtime dependencies.
- Explicit Configuration: No magic, just standard environment variables.
- Observable Execution: Structured events, session state, and tool boundaries should be visible to the host.
Features
- Embeddable Engine: Use Zene as a Rust library, a CLI runtime, or an execution backend for other developer tools.
- Async Native: Built on
tokio, Zene is non-blocking and suitable for concurrent integrations. - Streaming Events: Real-time agent events make it easier to build UIs, logs, and execution dashboards on top.
- Workspace Awareness:
FileStateChangedevents enable IDE-like file tree updates in frontend integrations. - Structured Agent Loop: Planning, execution, and reflection are implemented as explicit runtime stages instead of hidden prompt behavior.
Why Zene
- Embeddable by Design: The
ZeneEnginefacade exposes a host-friendly runtime API. - Model Agnostic: Built on
llm-connector, supporting OpenAI, Anthropic, DeepSeek, Google Gemini, and more. - Context Aware: Uses
tree-sitterand fast file walking to understand project structure. - Blazing Fast: Written in Rust with async I/O and structured concurrency.
Installation
Pre-built Binaries
Download the latest release for your platform from the Releases Page.
From Crates.io
Build from Source
Usage
1. Set Environment Variables
Zene prioritizes DeepSeek but supports OpenAI as a fallback.
2. Run a Task (One-Shot)
Execute a single instruction directly from the command line.
# Create a file
# Refactor code (Context aware)
# Fetch Web Content
3. Embed Zene in Your Own Host
Zene can also be embedded as a Rust library or consumed through its Python bindings. This is the recommended direction if you want to build your own IDE integration, automation service, or internal coding platform on top of the runtime.
Sessions are persisted under ~/.zene/sessions/<session_id>.json when using the default file-backed session store.
Documentation
Detailed documentation is available at zene.run (or in the www/ directory):
- Architecture Guide
- Execution Kernel vs Strategy
- Context & Memory
- Technical Design Specs
- Project Roadmap
Contributing
Contributions are welcome! Please read our architecture documentation to understand the core philosophy before submitting PRs.
License
MIT