Ναύαρχος — fleet admiral.
Rust Kubernetes control plane for deploying and directing a fleet of agents with declared dependencies, sandbox profiles, and on-demand workers.
| Sibling | Role |
|---|---|
| Enodios | Node/local Hermes + vLLM bootstrap |
| Dioptra | Fleet status board (observe) |
| Nauarchos | Fleet deploy + direct (command) |
Nauarchos does not replace hermeum/hermes-agent-operator. That operator provisions a single Hermes instance. Nauarchos sits above (and beside) runtime operators: classes, fleets, tasks, sandboxes, and dependency bundles.
- Scale — many agents as first-class cluster resources
- Customization — common options as typed CRD fields; escape hatch for advanced config
- Self-hosting — point at in-cluster or network vLLM / OpenAI-compatible APIs
- Ease of use — presets (
AgentClass) + thin instances - Sandboxing — NetworkPolicy, RuntimeClass, egress templates, optional nested terminal backends
- Direction — a director that spins sub-agents on demand for tasks
Intentional learning vehicle for DataKnife: kube-rs controllers, typed CRDs, and a small async control plane.
Rust is a fit here (memory-safe long-lived controllers, solid kube ecosystem). Tradeoff vs Go is slower scaffolding and fewer operator tutorials — acceptable for this project. See docs/PLAN.md.
Design bootstrap — architecture and CRD sketch checked in; operator reconcile loop not implemented yet.
GitOps / kubectl / API
│
▼
Nauarchos operator (Rust / kube-rs)
│
├── AgentClass (presets: model, sandbox, deps)
├── Agent (long-lived worker)
├── AgentFleet (desired capacity / director)
├── AgentTask (work unit → spawn/attach worker)
└── DependencyBundle (sidecars, PVCs, secrets wiring)
│
▼
Runtime pods (Hermes, Cursor agents, custom images)
│
▼
Inference (Enodios / cluster vLLM / external APIs)
crates/
nauarchos-crd/ # CRD types (kube-derive)
nauarchos-operator/ # controller binary
docs/
Requires Rust stable and a C linker (gcc/clang). CI uses ubuntu-latest.
make help # targets
make build
make test
make lint
make ci # fmt-check + clippy + test (local quality gate)CI mirrors the operator siblings (windrose-operator): separate Lint and Tests workflows that call make vet / make test.
Review docs first: PLAN.md · ARCHITECTURE.md · CRDS.md
Apache License 2.0 · DataKnifeAI
