Zeph is a Rust-native AI agent built for work that cannot fit into one chat window: coding sessions, operations, research loops, document RAG, scheduled jobs, and multi-agent workflows. It keeps short-term context sharp, persists long-term memory, builds a relationship graph from decisions and entities, and routes each task to the cheapest provider that can handle it.
Unlike single-session assistants, Zeph is designed to remember why a decision happened, not just the last messages around it.
| If you want... | Zeph gives you... |
|---|---|
| An agent that survives long projects | SQLite conversation history, semantic recall, graph memory, session digests, trajectory memory, and goal-aware compaction. |
| Lower infrastructure cost | A default SQLite vector backend, local Ollama defaults, feature-gated bundles, and provider routing for simple vs. hard tasks. |
| More than keyword memory | Typed graph facts, BFS recall, SYNAPSE spreading activation, MMR reranking, temporal decay, and write-quality gates. |
| Provider freedom | Ollama, Claude, OpenAI, Gemini, Candle, any OpenAI-compatible endpoint, and a Gonka.ai path through GonkaGate. |
| Agent-grade safety | Age-encrypted vault secrets, sandboxed tool execution, MCP injection detection, SSRF guards, PII filtering, and exfiltration checks. |
| Daily operator ergonomics | CLI, TUI dashboard, MCP tools, plugins, skills, sub-agents, ACP for IDEs, A2A, scheduler, and JSON output modes. |
Install the latest release:
curl -fsSL https://github.com/bug-ops/zeph/releases/latest/download/install.sh | shOr install from crates.io:
cargo install zephInitialize and run:
zeph init
zeph doctor
zeph --tuiImportant
Zeph requires Rust 1.95 or later when building from source. Pre-built binaries do not require a Rust toolchain.
For a local-first setup, run Ollama and pull the default lightweight models:
ollama pull qwen3:8b
ollama pull qwen3-embedding
zeph init
zephZeph is being wired for Gonka.ai in two phases:
- GonkaGate today: use the existing OpenAI-compatible provider path and store the
gp-...key in the age vault asZEPH_COMPATIBLE_GONKAGATE_API_KEY. - Native Gonka next: the
gonkaprovider config shape and vault key resolution have landed; the signed native transport is the active follow-up.
Example GonkaGate provider:
[[llm.providers]]
name = "gonkagate"
type = "compatible"
base_url = "https://api.gonkagate.com/v1"
model = "Qwen/Qwen3-235B-A22B-Instruct-2507-FP8"
default = trueZeph resolves compatible provider secrets by name. For name = "gonkagate", store the gateway key under:
ZEPH_COMPATIBLE_GONKAGATE_API_KEY
Note
Native type = "gonka" currently validates configuration but still returns "gonka provider is not yet implemented" at provider construction. Use GonkaGate until the signed node transport lands.
Zeph combines several memory layers instead of treating recall as a side feature:
| Layer | Purpose |
|---|---|
| Working context | Keeps the current task coherent under context pressure. |
| Semantic memory | Stores conversations, tool outputs, documents, and summaries for retrieval. |
| Graph memory | Records entities, decisions, relationships, causality, temporal links, and hierarchy. |
| Episodic memory | Preserves session-level scenes, digests, goals, and trajectories. |
| Quality gates | Reject noisy writes, validate compaction, and log retrieval failures for later improvement. |
Ask "Why did we choose PostgreSQL?" and Zeph can traverse decision edges instead of searching raw chat text.
Zeph does not require a heavyweight stack to be useful:
- The default vector backend is embedded SQLite.
- Qdrant is optional for larger semantic and graph workloads.
- The default local chat model is
qwen3.6:8bthrough Ollama. - Feature bundles let you build only what you need:
desktop,ide,server,chat,ml, orfull. - Release builds are optimized for small native binaries.
Declare providers once in [[llm.providers]], then route work by complexity, cost, latency, and reliability:
[[llm.providers]]
name = "fast"
type = "ollama"
model = "qwen3:8b"
embedding_model = "qwen3-embedding"
embed = true
[[llm.providers]]
name = "quality"
type = "claude"
model = "claude-sonnet-4-6"
default = true
[llm]
routing = "bandit"Use local models for extraction, embeddings, routing, and summarization. Keep expensive models for planning, code generation, and expert reasoning.
Secrets live in the Zeph age vault, not in .env files or shell profiles. Tool execution goes through trust gates, command filters, sandboxing, audit logs, and redaction paths. MCP tools are discovered and exposed without dropping the injection and authorization checks.
zeph init # generate config through the wizard
zeph doctor # run preflight checks
zeph --tui # launch the dashboard
zeph ingest ./docs # ingest documents into semantic memory
zeph skill list # inspect installed skills
zeph plugin list --overlay # inspect plugin config overlays
zeph router stats # inspect adaptive provider routing
zeph memory export dump.json # export memory snapshot
zeph project purge --dry-run # preview local state cleanupcurl -fsSL https://github.com/bug-ops/zeph/releases/latest/download/install.sh | shcargo install zeph
cargo install zeph --features desktopdocker pull ghcr.io/bug-ops/zeph:latestgit clone https://github.com/bug-ops/zeph.git
cd zeph
cargo build --release --features full
./target/release/zeph init| Area | Highlights |
|---|---|
| Memory | SQLite/PostgreSQL history, embedded SQLite vectors or Qdrant, graph memory, SYNAPSE, SleepGate, ReasoningBank, document RAG. |
| Context | Goal-aware compaction, typed pages, tool-output archive, session recap, active-goal injection. |
| Skills | SKILL.md registry, hot reload, BM25 + embedding matching, trust levels, self-learning skill improvement. |
| Providers | Ollama, Claude, OpenAI, Gemini, OpenAI-compatible APIs, Candle local inference, adaptive routing. |
| Tools | Shell, file, web, MCP, tool quotas, approval gates, audit trail, sandboxing, output compression. |
| Interfaces | CLI, TUI, Telegram, Discord, Slack, ACP, A2A, HTTP gateway, scheduler daemon. |
| Code intelligence | Tree-sitter indexing, semantic repo map, LSP diagnostics and hover context through MCP. |
| Observability | Debug dumps, JSONL mode, Prometheus metrics, OpenTelemetry traces, profiling builds. |
zeph
src/ CLI, bootstrap, init wizard, command handlers
crates/zeph-core agent loop and runtime orchestration
crates/zeph-config TOML schema, migration, provider registry
crates/zeph-llm provider abstraction and model backends
crates/zeph-memory semantic, graph, episodic, and document memory
crates/zeph-skills skill registry, matching, trust, learning
crates/zeph-tools tool executors, sandboxing, policy, audit
crates/zeph-mcp MCP client and tool lifecycle
crates/zeph-tui ratatui dashboard
crates/zeph-acp IDE integration through Agent Client Protocol
crates/zeph-a2a agent-to-agent protocol support
crates/zeph-subagent sub-agent definitions, spawning, transcripts
crates/zeph-orchestration DAG planning, scheduling, verification
- Full documentation
- Installation guide
- Configuration recipes
- Graph memory
- Security model
- Feature flags
Zeph draws from published work on parallel tool execution, temporal knowledge graphs, agentic memory linking, failure-driven compression, retrieval quality, and multi-model routing. See References & Inspirations for the full list.
See CONTRIBUTING.md, CODE_OF_CONDUCT.md, and SECURITY.md.

