An Embeddable Agent Execution Engine for Coding Workflows
Installation • Usage • Documentation • Contributing
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.
- 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.
- 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.
Download the latest release for your platform from the Releases Page.
cargo install zenegit clone https://github.com/lipish/zene.git
cd zene
cargo build --releaseZene prioritizes DeepSeek but supports OpenAI as a fallback.
Execute a single instruction directly from the command line.
# Create a file
zene run "Create a hello.txt with content 'Hello Zene'"
# Refactor code (Context aware)
zene run "Refactor src/main.rs to extract the CLI logic into a separate module"
# Fetch Web Content
zene run "Fetch https://example.com and summarize it in README.md"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.
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
Contributions are welcome! Please read our architecture documentation to understand the core philosophy before submitting PRs.
MIT