Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

🐔 Coop

Raise, train, and trade autonomous AI agents on your own hardware.

CI Release License Rust Status

Quickstart · Deploy · Architecture · Docs · Contribute

Coop — 30-second CLI quickstart: seal a vault, hatch a hen, see your farm

Coop Farm UI — flock view


Coop is an open-source AI agent farm OS in Rust. Run autonomous AI agents — Hens — on a Raspberry Pi, a Mac, a Windows box, or a fleet of cloud nodes. One static binary: no Python, no Docker required.

🚧 Pre-alphav0.1 "ALONE FARMER". See DECISIONS.md for scope and CHANGELOG.md for what shipped.

✨ Why Coop?

🏡 Self-hosted Your hardware, your agents, your data. No mandatory cloud.
🔐 BYOK vault Sealed xchacha20poly1305 vault for your model keys, or pull them from Azure Key Vault. Locked at rest.
🤖 Real autonomy Hens get a sandboxed PTY shell, a tool ABI, and a pluggable brain — Anthropic, OpenAI, or any OpenAI-compatible server (Ollama, vLLM, OpenRouter…).
🧠 Persistent memory Hens remember. Each job becomes a compact episode replayed into the next run, with retention + inheritance — so a hen continues from context, not from zero.
🐝 In-farm delegation Give a hen the delegate tool and it becomes a manager: it hands subtasks to specialist hens on the same farm and collects the results. Opt-in, depth-capped, audited — the flock becomes an org chart.
🧱 Per-hen isolation Each hen runs in its own OS sandbox (macOS Seatbelt / Linux Bubblewrap) — confined to its workdir, scrubbed env, siblings unreadable.
🌐 Network egress policy Per-hen network: block — off / allowlist / open. Fail-closed: a hen that can't enforce its policy refuses to hatch.
🖥️ Live shell Click any hen in the Farm UI to drop into a real terminal in its workdir.
🍓 Runs on a Pi First-class binaries for Raspberry Pi 3/4/5 + Pi Zero 2.
One static binary coopd daemon + coop CLI. No runtime deps.

🚀 Quickstart

# 1. install coopd + coop
curl -fsSL https://raw.githubusercontent.com/dcluomax/coop/main/scripts/install.sh | sh
# …or, with a Rust toolchain:  cargo binstall coop-cli   (prebuilt, no compile)

# 2. start the daemon
coopd serve &

# 3. watch your flock
open http://127.0.0.1:9700/      # Farm UI
coop hen list

Defining a Hen, sealing your model key, and running your first job → docs/quickstart.md.

Prefer source? git clone … && cargo build --release (Rust 1.85+), binaries land in target/release/.

📦 Deploy

Target Command
🐳 Docker docker compose up -d (compose)
🍺 Homebrew brew install dcluomax/coop/coop (macOS + Linux)
📦 Debian/Ubuntu/Pi sudo apt install ./coop_*_<arch>.deb (amd64 · arm64 · armhf)
🛠️ systemd contrib/systemd/coopd.service (24/7 bare metal)
📥 Binaries latest release — 7 platforms, SHA-256 checksums
📦 cargo-binstall cargo binstall coop-cli — fetches the prebuilt release binary for your platform

Full guide, including LAN/public exposure and the required COOP_API_TOKEN

🏛️ Architecture

Coop is organised into four conceptual layers — this repo is L1 (the agent OS).

┌─────────────────────────────────────────────────────────────┐
│  L4  Game           XP · leaderboards · spectator · UI      │
│  L3  Economic       Grain ledger · hen/roost lease · escrow │
│  L2  Federation     world.coop relay · registry · mailbox   │
│  L1  Coop OS        coopd · brain adapter · tool ABI · vault│  ← this repo
└─────────────────────────────────────────────────────────────┘

Workspace (7 OSS crates): coopd (daemon — HTTP/WS API, orchestrator) · coopd-core (types/traits) · coopd-storage (redb) · coopd-vault (sealed BYOK) · coopd-tools (bash/file_*/http) · coopd-brain (Anthropic + OpenAI / OpenAI-compatible adapters) · coop-cli (the coop binary).

🖥️ Farm UI

Open http://127.0.0.1:9700/. The single-page UI lists every hen with a live state badge and lets you click a hen to open a real terminal streamed over WebSocket directly into that hen's workdir — drive claude login / gh auth login, inspect generated files, or troubleshoot a stuck job.

Agents tab

🐔 Agents — the flock, live state badges.

Sessions tab — live PTY shell

🖥 Sessions — live PTY into a hen's workdir.

📚 Docs

Doc What
Quickstart Install → vault → first Hen → first job
Deployment Docker · Compose · systemd · LAN/public
Configuration Every environment variable
Network isolation Per-hen sandbox + egress policy (off/allowlist/open)
Memory Persistent episodic Hen memory (record · replay · retention · inheritance)
Delegation In-farm Hen-to-Hen delegation (the delegate tool)
Farmhand (design) Remote monitor & steer the flock from another device (roadmap)
Discord connector One channel per chicken
Decisions · Launch · Changelog Roadmap & rationale
Security Threat model & private advisory flow

🔓 Open-core split

Coop ships as open core. This repo (Apache-2.0) is the farm + hens runtime — agent OS, vault, tools, brain adapter, Farm UI, CLI — fully usable on its own for single-farm and single-hen workflows. The cross-Coop Market layer (listings, bids, escrow, federation to the World relay) is a separate proprietary component in a private repo; the OSS daemon has zero market awareness. Need market functionality? Reach out to the maintainer.

🤝 Contributing

We're pre-alpha and moving fast. Dev loop, DCO sign-off, and commit style → CONTRIBUTING.md. AI coding agent? → AGENTS.md. By participating you agree to the Code of Conduct.

📜 License

Surface License
Code Apache-2.0 + NOTICE
Spec docs CC-BY-4.0
Assets CC-BY-SA-4.0

Built with 🦀 + 🐔 by farmers, for farmers.

About

🐔 An open-source, distributed AI agent farm OS. Raise, train, and trade autonomous agents on your own hardware.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages