The agenti ecosystem  ·  MIT  ·  Self-hosted

Run AI Agents like a toolchain

The Agenti ecosystem is the control plane for your fleet of Claude Code agents. One operator. One factory floor. One identity.

$ pip install agentihooks

Profiles, guardrails, broadcast, brain connector, cost-saving compression. Standalone — runs on raw Claude Code.

$ pip install agenticore

The engine. Fleet mode for containerised dispatch, agent mode for purpose-built conversational endpoints. Independent install.

$ pip install agentibridge

The workforce network: session indexing, semantic search, A2A registry, project handoff, MCP front door. Independent install — pulls nothing else.

Three independent pip packages — install one, two, or all three. The Brain is a separate self-hosted service: see the AgentiBrain docs.

Solo agents are dead-ends. Workforces ship.

A single Claude Code session is a brilliant intern with amnesia. The agenti ecosystem turns that intern into a coordinated team — same model, completely different operating system.

1

Before

One window. One task. The session ends, the context dies. Re-explain everything next time. Cost balloons. Mistakes repeat.

2

After

Many agents working in parallel. They share a brain, hear the same broadcasts, and dispatch work to each other while you run the room.

3

How

Four open-source pillars. Pick one. Run all four. They snap together — no SaaS, no lock-in, no telemetry leaving your machine.

Ten things your AI toolchain can do

Every capability below is live, open source, and shipping today. Each is independent — adopt the one that hurts most first.

🤝

Agent-to-Agent Dispatch

Agents announce themselves, discover peers by capability, and call each other across machines. Your fleet self-coordinates instead of waiting on you.

AgentiBridge
💬

Talk to a Custom Agent

Wrap any configured Claude Code agent as a real-time chat endpoint. Drop it into your favourite client and have a real conversation with a specialist.

AgentiCore
🏭

Fleet on Demand

One to a thousand containerised agents pulling work from a shared queue. Each one clones a repo, ships a PR, and disappears. Scale is a config switch.

AgentiCore
🎛️

One Control Room

Drive the whole ecosystem from any MCP-aware client — Claude, Grok, VS Code — or wire it into a shell script. The front door is yours to choose.

AgentiBridge
💰

Cost-Saving Hooks

Smart context compression, retry circuit breakers, and stale-attention refresh. Your bill drops, your sessions stay sharp, your agents stop chasing their tails.

AgentiHooks
🧠

Brain & Broadcast

A shared institutional memory plus a fleet PA system. Push a signal — every active agent hears it and adjusts. The whole floor thinks together.

AgentiHooks
✉️

Reach Your Fleet from Telegram

Native bot connector turns any specialised agent into a Telegram chat. Live tool-call chips during the turn, the final answer as a clean message, voice notes both ways. Owner-locked. No web UI to maintain.

AgentiCore
🎤

Talk to Your Agents by Voice

Pluggable STT/TTS adapter — bring ElevenLabs, Deepgram, Whisper, or your own service. Send a voice note, get a voice note back. Per-conversation toggle, transcript fallback, no vendor lock-in.

AgentiCore
🔊

Operator-Side Voice Output

Hear your agent's reply summarised aloud on your own machine. Stop-hook fork → Sonnet one-sentence distillation → POST /speak → ffplay. Per-session toggle, 10 s cooldown, auto-disables on quota exhaustion.

AgentiHooks
🔑

Bypass Mode for Trusted Dev Work

Say "disable controls" and the CI-manifesto signal gates short-circuit for the session — branch, PR, release-merge, hotfix, force-push. Subagents inherit. Push-to-main and secrets-in-files stay locked.

AgentiHooks

Four pillars. One operator.

Each pillar is a separate open-source repo with its own job. Use one. Use all four. They're designed to interlock without forcing you to swallow the whole stack.

🌐

AgentiBridge — The Workforce Network

"Where my agents find each other — and where I ask my AI's history anything."

Bridge turns isolated sessions and lone agents into a workforce. Every Claude Code transcript is auto-indexed, embedded with pgvector, and semantically searchable: ask "what was I working on Tuesday at 8?" from any MCP client and get the session back, ready to resume. The same MCP server hosts the A2A registry — specialised agents announce themselves, discover peers by capability, hand off context across projects, and call each other across machines. Reachable from Claude Code, claude.ai, VS Code, Grok, or anything that speaks MCP.

⚙️

AgentiCore — The Engine Room

"How an agent actually runs."

One binary. Two modes. One environment variable to flip between them. Fleet mode is a work-stealing queue: submit a task via REST, MCP, or CLI and a containerised Claude worker clones the repo, ships the PR, and recycles — KEDA autoscales from one pod to a thousand. Agent mode flips the same binary inside-out and exposes a customised agent as a streaming OpenAI-compatible chat endpoint with token-by-token thinking and tool deltas. Same image, same Helm chart — drop-in for LibreChat, OpenWebUI, LiteLLM, or raw curl.

🛡️

AgentiHooks — The In-Agent Harness

"What loads inside every Claude Code so the workforce stays sharp, safe, and synced."

Hooks runs inside every session — yours, every fleet worker, every specialised agent. Four sub-pillars in one pip package: Identity (profiles, chaining, bundles) shapes what each agent is. Guardrails (secrets, branch protection, retry breaker, prod lockdown) keep it inside the lines. Context intelligence (token compression, attention refresh, tool-memory replay) defends the bill and the brain. Fleet command (broadcast, brain pump) keeps every active session in sync — and writes lessons back to the vault.

🧠

AgentiBrain — The Closed-Loop Vault

"Where the workforce remembers what it learned today, so it doesn't relearn tomorrow."

Not a static memory — a vault that thinks. Agents emit markers as they work (@lesson, @milestone, @signal, @decision) and the AgentiHooks brain-adapter posts them up. A tick engine runs every two hours, clusters raw markers into Arcs (hot focus blocks), synthesises long-term knowledge, decays cold ones, and broadcasts the result back into every active session on the next prompt. One markdown vault, Obsidian-compatible, self-hosted — the workforce's institutional memory, on a clock.

Workforce memory · A2A fabric

Ask your AI's history. Wire your agents into a network.

AgentiBridge is the connective tissue of the workforce. It turns ephemeral Claude Code sessions into a searchable archive — and turns isolated specialised agents into a real network that finds, talks, and hands off.

Workforce memory. Every transcript indexed. Every conversation semantically searchable. Every session summarisable. Ask "what was I working on Tuesday around 20:00?" from any MCP client and get a real answer with the session ID to resume.

A2A network. Specialised agents register themselves, heartbeat with status, and discover peers by capability. spec-01 needs a database refactor done? It calls find_agents → finds spec-03 → hands off the work. Cross-machine. Real time.

Cross-project handoff. Seed a primed conversation in any other project with structured context — summary, decisions, next steps. One agent picks up exactly where another left off.

MCP front door. Speaks MCP to every client you already use — Claude Code, claude.ai, VS Code, Grok, custom MCP, your own automation. They all see Bridge as a server full of tools.

Read the AgentiBridge page
$ agentibridge search recon

"what was I working on Tuesday around 20:00?"

match 0.91 8425afcc email-template — debugging Jinja inheritance
match 0.84 7242ddf3 mcp-config — wiring agentibrain server
match 0.79 9705e5e1 build-fix — pre-commit hook breakage
→ resume: claude --resume 8425afcc
search_semantic agent_search find_agents handoff dispatch_task restore_session
Cost & Sharpness

Your agents stay cheap and sharp.

Long Claude Code sessions get expensive and forgetful. AgentiHooks defends both the bill and the brain — quietly, automatically, every turn.

Smart context compression shrinks ballooning conversations by roughly a third without dropping the parts that matter. Your wallet notices. Your agent doesn't.

Retry circuit breaker stops the loop where an agent fails the same way five times in a row. Instead of burning tokens on the same wrong answer, it pauses and asks for a different angle.

Attention refresh nudges the agent every twenty turns to re-anchor on the goal — defeating the slow drift that turns hour-long sessions into nonsense.

Tool memory replays the lessons of past errors so the agent doesn't repeat them. Mistakes become institutional knowledge instead of recurring tax.

Read the AgentiHooks page
~30% average context reduction
5 → stop retry breaker trips before runaway spend
Every 20 turns attention re-anchored on the goal
Replay-on-error past tool failures resurface in context
Zero touch runs on raw Claude Code, no plumbing
Brain & Broadcast

One brain. Every agent. Real time.

A factory floor without a PA system is a room full of strangers. AgentiBrain and the broadcast layer turn the fleet into a single mind that hears, remembers, and reacts together.

Arcs — the operator's term for the obsessive, multi-day focus blocks where real work happens. The brain spots them, scores their heat, decays them when cold, and synthesises what was learned. Every agent boots with the arcs that matter loaded.

Broadcasts push a signal — informational, alert, or critical — to every active session at once. One message, every screen. The whole floor adjusts before you finish typing.

Brain injection feeds hot context into agents through that same broadcast channel. Your fleet stops working from stale local notes and starts working from a shared, living source of truth.

Filesystem-first — your knowledge lives in a markdown vault you can open in Obsidian. No proprietary store. No vendor SDK. No "trust us with your data."

Read the AgentiBrain page
FLEET BROADCAST CRITICAL

From: brain · To: every active agent

“Production rollout paused. Hold non-critical pushes until further notice.”

agent-01 ✓ agent-02 ✓ agent-03 ✓ agent-04 ✓ agent-05 ✓ agent-06 ✓ agent-07 ✓ agent-08 ✓
Two modes, one engine

Dispatch a fleet. Or sit down for a conversation.

AgentiCore is one binary that flips between two completely different jobs with a single environment switch. Same image. Same Helm chart. Same observability pipeline.

Fleet mode is your on-demand workforce. Submit a task — refactor this module, fix that bug, write these tests — and a containerised agent picks it up, clones the repo, does the work, opens a PR, and recycles. Run one. Run a thousand. Kubernetes does the rest.

Agent mode turns the same engine inside-out and exposes a customised Claude Code agent as a streaming chat endpoint that any standard client can talk to. Your specialist agent becomes a service you can have a real conversation with.

Both modes share the same identity layer, the same brain, the same broadcasts. The agent on the chat tab is the same kind of citizen as the agent in the production queue.

Read the AgentiCore page
Fleet mode
↳ submit task
↳ spin container
↳ clone · work · PR
↳ recycle
scale: 1 → 1000
or flip the switch
Agent mode
↳ load identity
↳ open chat endpoint
↳ stream tokens & tool calls
↳ remember the session
drop-in for any chat client

Two reusable building blocks

An agent needs a body and a soul. Bundles give Claude Code its environment in one git clone. AgentiHub gives every specialised agent its identity as a versioned package.

AgentiHooks Bundles

Portable Claude Code, in one git clone.

"Slash commands, sub-agents, rules, skills, and named profiles — one repo, every machine."

A bundle holds your global Claude Code assets (slash commands, sub-agents, coding rules, skills) and your named profiles (model, permissions, MCP servers, OTEL telemetry). Clone the repo on any machine, run agentihooks bundle init, and your full identity is restored. Profiles can override globals. Bundles can chain. Your team shares one source of truth instead of 12 dotfile forks.

agentihooks-bundle-example/
├── .claude/                # global assets — shared across profiles
│   ├── agents/             # sub-agents (e.g. code-reviewer.md)
│   ├── commands/           # slash commands (e.g. /review-changes)
│   ├── rules/              # always-on coding rules
│   └── skills/             # reusable skill packages
├── profiles/
│   └── copilot/            # one folder per identity
│       ├── profile.yml     # model · perms · MCP · telemetry
│       ├── CLAUDE.md       # profile-scoped behavior rules
│       └── .claude/        # profile overrides for global assets
└── setup.sh                # one-shot installer
View bundle example →
AgentiHub Agents

Agent identities for agent mode.

"System prompt, MCP config, hooks, runners, evals — one package per agent."

AgentiCore agent mode loads its soul from AgentiHub. Each agent is a directory with the system prompt, MCP servers, Claude Code settings, runners, and an evaluation harness — bundled and version-controlled. AgentiCore clones the hub at startup, copies the requested agent's package/ into /app/package/, and the pod boots as that agent. Fork the example to ship a publishing agent, security auditor, content writer — anything that should run as a long-lived endpoint.

agentihub-example/
└── agents/
    └── publishing/            # one folder per agent identity
        ├── agent.yml          # model · turns · timeout · MCP cats
        ├── package/           # prod config — copied to /app/package/
        │   ├── CLAUDE.md      # the agent's system prompt
        │   ├── system.md      # extended system instructions
        │   ├── .mcp.json      # MCP servers for this agent
        │   ├── .claude/       # Claude Code settings + hooks
        │   └── runners/       # startup scripts
        └── evaluation/        # eval harness + cases
View hub example →
100+ hundreds of agents in parallel
4 open-source pillars
1 brain shared by every agent
MIT licence · self-hosted · no telemetry

Frequently asked questions

No. Each pillar is independent — start with whichever pain you feel first. Cost-saving hooks for a runaway bill, the brain for shared memory, the engine for a containerised fleet, the bridge for fleet-wide control. They're designed to compose, not to be swallowed whole.

No — the opposite. Claude Code is the agent. The agenti ecosystem is the workforce, the brain, and the control room around it. Anthropic gives you a brilliant solo worker. We give you a factory floor.

On your machine. Your cluster. Your storage. Everything is self-hosted by default — no SaaS, no telemetry, no proprietary database. The brain is a markdown vault you can open in Obsidian. Read every line of the source code.

Anything that speaks MCP. Claude Code, claude.ai, Grok, VS Code, your own automation, a shell script. The bridge is the door — you bring whichever key you like best.

Take the wheel.

Spin up your first agent. Free. Self-hosted. Yours.

Open the GitHub org