Skip to main content

Meta-package for the Zeno AI assistant framework.

Project description

zeno-framework

A modular Python framework for building AI assistants. Bring an LLM, plug in channels (CLI, email, iMessage), wire memory adapters (SQLite, Chroma, Qdrant), and ship.

zeno-framework is a meta-package — it ships no code of its own and pulls in the right combination of zeno-* packages via extras.

Install

# minimal core — ships the Claude provider by default
uv add zeno-framework

# terminal chat with memory
uv add 'zeno-framework[memory,cli]'

# OpenAI-compatible provider on top of the default Claude provider
uv add 'zeno-framework[openai]'

# the full kitchen sink
uv add 'zeno-framework[all]'

Python 3.12+ required.

By default, pip install zeno-framework installs zeno-provider-claude so ClaudeSDKProvider works out of the box. To use OpenAI-compatible endpoints (OpenAI, OpenRouter, LiteLLM, Azure v1, Ollama, vLLM), add the openai extra. The claude extra is also declared for explicit installs but is redundant with the default.

Hello world

import asyncio

from zeno.agent import Agent
from zeno.app import ZenoApp
from zeno.channels.cli.channel import CliChannel
from zeno.providers.claude_sdk import ClaudeSDKProvider


async def main() -> None:
    app = ZenoApp(
        agent=Agent(
            name="root",
            instructions="You are a helpful assistant.",
        ),
        channels=[CliChannel()],
        provider=ClaudeSDKProvider(),
    )
    await app.run()


asyncio.run(main())
export ANTHROPIC_API_KEY=sk-ant-...
uv run python hello.py

That's a working terminal-chat assistant. Add memory, more channels, or swap the provider as you grow.

Extras

Extra Pulls in What you get
memory zeno-memory SQLite session, conversation, and user-memory stores.
chroma zeno-memory + zeno-chroma ChromaDB-backed KnowledgeStore for RAG.
qdrant zeno-memory + zeno-qdrant Qdrant-backed KnowledgeStore for RAG.
cli zeno-channel-cli Terminal channel (stdin/stdout with streaming).
email zeno-channel-email Email channel (Resend inbound + outbound).
sendblue zeno-channel-sendblue iMessage channel via Sendblue webhooks.
claude zeno-provider-claude Claude Agent SDK provider (default; redundant extra for explicit installs).
openai zeno-provider-openai OpenAI-compatible provider (OpenAI, OpenRouter, LiteLLM, Azure v1, Ollama, vLLM).
scheduler zeno-scheduler Proactive triggers: one-shot, heartbeat, cron.
browser zeno-tools-browser Playwright-backed browser tools (browse, click, …).
secrets-1password zeno-secrets-1password 1Password CLI-backed SecretsStore adapter.
all every extra above (except browser, which carries Playwright) Everything bundled.

zeno-core is always installed — it provides the Agent, ZenoApp, Ctx, @tool, provider/channel protocols, and the turn worker.

What's in the framework

  • Agents and sub-agents — composable Agent instances with the Task tool for delegation.
  • Tools@tool decorator with auto-injection of Ctx, secrets, and memory binders.
  • Channels — pluggable transports (CliChannel, EmailChannel, SendblueChannel); contributed via the zeno.channels entry-point group.
  • ProvidersClaudeSDKProvider (default) and OpenAIProvider; contributed via the zeno.providers entry-point group.
  • Memory — three-layer model (session, conversation, user memory) with SQLite defaults and pluggable vector knowledge stores.
  • Scheduler — proactive triggers for cron/heartbeat workflows.
  • SecretsSecretsStore protocol with env-var default and optional 1Password adapter.

See the example chat app for a complete reference implementation in ≤150 lines.

Links

MIT licensed.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zeno_framework-1.0.0.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zeno_framework-1.0.0-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file zeno_framework-1.0.0.tar.gz.

File metadata

  • Download URL: zeno_framework-1.0.0.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for zeno_framework-1.0.0.tar.gz
Algorithm Hash digest
SHA256 dc72096f937d8db04d8428388abea1c39a44d7c961c85146a5e1814d7dbbc9cf
MD5 54da620adbb1249c26deaf0202e58b86
BLAKE2b-256 533ef25d30496814fc6e155331e90633f9e3575962c0c12dac5978453491cd2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for zeno_framework-1.0.0.tar.gz:

Publisher: publish.yml on nkootstra/zeno

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zeno_framework-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: zeno_framework-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for zeno_framework-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ea291e4f74b342297490475bb1ac4dc8a996e5fb72d028f5b6b7464b8600a87f
MD5 ffe2ec798e8e26b949aa5bc935a473fe
BLAKE2b-256 57780c41189d7bf903742e4b5b7c60d8fccac1b5bf65f74568915593f75df313

See more details on using hashes here.

Provenance

The following attestation bundles were made for zeno_framework-1.0.0-py3-none-any.whl:

Publisher: publish.yml on nkootstra/zeno

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page