Architecture¶
┌──────────────────────────────────────────────────────────────────┐
│ llamaclaw ecosystem │
│ │
│ ┌───────────────┐ ┌───────────────┐ ┌─────────────────────┐ │
│ │ end user │──▶│ terminal │──▶│ esml Python + R │ │
│ │ (researcher) │ │ (tide/Go or │ │ (stats + causal) │ │
│ └───────────────┘ │ kronos/Rust)│ │ │ │
│ └───────────────┘ │ ┌───────────────┐ │ │
│ │ │ │ turboquant │ │ │
│ ▼ │ │ (KV compress) │ │ │
│ ┌───────────────┐ │ └───────────────┘ │ │
│ │ perseus │ │ ┌───────────────┐ │ │
│ │ (LLM relay) │◀──┤ │ autoresearch│ │ │
│ └───────────────┘ │ │ (pretraining)│ │ │
│ │ ▲ │ └───────────────┘ │ │
│ ▼ │ └─────────────────────┘ │
│ ┌───────────────┐ │
│ │ Ollama │◀──────────────┐ │
│ │ (local weights│ │ │
│ └───────────────┘ ┌───────────────────┐ │
│ │ ollama.com/ │ │
│ ┌────────────────────────────────────┐ │ llamaclaw │ │
│ │ Raspberry Pi 5 zeus.local │ │ (model registry) │ │
│ │ │ └───────────────────┘ │
│ │ luci (ZeroClaw agent) ─────┐ │ │
│ │ perseus-relay service ├─▶ systemd (deploy/) │
│ │ ollama daemon │ │ │
│ │ kronos terminal │ │ │
│ └────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────┘
Dependency direction¶
Arrows point downward — higher-level repos depend on lower-level ones.
installer (Homebrew + curl|sh)
│
▼
esml ◀── turboquant ── autoresearch
│ ▲
▼ │
perseus ── Ollama
│
▼
tide / kronos (UI layer)
esml depends on: numpy, scipy, statsmodels, pandas, and (as VCS deps)
turboquant+perseus.turboquant depends on: numpy, scipy only. Standalone compression.
perseus depends on: httpx only. Pure LLM relay; auto-detects Ollama / FreeAPI / Gemini / OpenAI at runtime.
autoresearch depends on: PyTorch + MPS (main) or CUDA (upstream) +
turboquantfor PTQ.tide is a Go binary that shells out to
esmlCLI + Ollama HTTP.kronos is a Rust ARM binary with no external runtime deps.
luci is shell orchestration; queries
perseus-relayon the Pi.deploy is systemd/launchd unit files only.
yoda is pure Markdown (Claude’s persona + journal).
installer is the user-facing install entry point; doesn’t depend on any other llamaclaw repo — it just knows how to install them.
llamaclaw (umbrella) pulls all of the above as git submodules.
Hardware matrix¶
M-series Mac |
Raspberry Pi 5 |
Linux x86_64 |
|
|---|---|---|---|
esml (Python + R) |
✓ |
✓ |
✓ |
turboquant (C bridge) |
✓ |
✓ |
✓ |
perseus |
✓ |
✓ |
✓ |
autoresearch |
✓ (MPS branch) |
✗ |
✓ (upstream branch) |
tide |
✓ |
✓ (Go 1.26+) |
✓ |
kronos |
✓ |
✓ (native target) |
✓ |
luci |
✗ (needs Pi) |
✓ |
✗ |
Ollama |
✓ |
✓ |
✓ |
Where the data lives¶
Location |
Size |
|
|---|---|---|
41 built-in public-health datasets |
|
~500 MB |
fn/ registry (8,872 functions) |
|
~80 MB |
LLM model weights (Perseus) |
Ollama on zeus.local + ollama.com/llamaclaw |
8–10 GB per model |
User analysis outputs |
|
varies |
Cross-repo CI patterns¶
Per-repo CI: tests, lint, build — on every push to
dev.Secrets scan: org-level workflow runs gitleaks on every push + weekly.
Dependabot: org-level config — weekly updates for github-actions/pip/gomod/cargo, monthly for Docker.
Docker builds:
esml,tide,kronospublish multi-arch images toghcr.io/llamaclaw/<repo>on push tomain(and on semver tags).Release coordination:
llamaclaw/scripts/release.shopens synchronizeddev → mainPRs across sub-repos and tags them.