Hi, DEV π
I'm part of the team building Cartha β an ops layer for AI agents that actually run in production.
This is a short intro: the problem we kept hitting, what we shipped, and what I'll write about here.
The problem
We were debugging an agent that did something inexplicable in production. Logs and traces answered what ran. They didn't answer the question that mattered:
What did the agent know when it made that call β and was it allowed to know that?
If you run multi-agent systems, you eventually need more than a pretty timeline:
| Need | Why it matters |
|---|---|
| Scoped memory | User vs agent vs team vs org β without leaks |
| Hard budgets | Soft alerts don't stop a retry loop at 3am |
| Tool limits | Child agents shouldn't inherit the keys to the kingdom |
| HITL | Some actions need a human before they execute |
Observability tells you what happened. Governance decides what is allowed to happen next.
What Cartha is
Not a chatbot builder. You keep your own agents (OpenAI, tools, business logic).
Yes a control plane for fleets:
- Run timelines (tools + LLM steps)
- Server-enforced memory scopes (
user/agent/team/org) - Fail-closed spend budgets on a run
- Nested agents + attenuated delegation
- Policies + escalations
- Dashboard for agents, traces, cost, memory
Minimal Python path
python
import cartha
cartha.init() # CARTHA_API_KEY + CARTHA_API_BASE=https://cartha.in
client = cartha.wrap_openai() # auto LLM steps + cost
@cartha.tool()
def crm_lookup(user_id: str) -> dict:
return {"plan": "pro"}
@cartha.trace(id="support", team="support", budget_usd=0.5)
def handle(user_id: str, ticket: str) -> str:
data = crm_lookup(user_id)
r = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": f"{ticket}\n{data}"}],
)
return r.choices[0].message.content or ""
Docs: How to Use (https://cartha.in/how-to-use)
Product: cartha.in (https://cartha.in)
Top comments (1)
Agent fleets make ops visible fast. Once there are multiple workers, the hard part becomes routing, shared memory, permission boundaries, and knowing which agent owns the next step. The fleet needs operations design as much as prompting.