Aroha
Get started
NewAroha 2.0 is on npm and PyPI. Read the release

Let agents do real work, within limits you can prove.

Give an AI agent a budget, a set of tools and a deadline. It can hand parts of the job to other agents, and every service along the way checks the limits for itself before it acts. Aroha is the open protocol that makes this work, across companies and across vendors.

  1. Person

    Maya

    $500

    Signs a mandate: up to $500 on airline fares, for one hour.

  2. Agent

    Travel assistant

    $300

    Passes on $300 of it. It can narrow the grant, never widen it.

  3. Agent

    Flight agent

    $300

    Sends the signed chain with every request it makes.

  4. Tool

    Airline API

    Checks every link back to Maya, offline, before acting.

    • $280 fareBooked
    • $420 fareDeclined, over limit
Figure 1. Maya's flight agent books the $280 fare on its own, with no one to ask. The $420 fare is over the $300 it was given, so the airline's API declines it before any money moves. The API checks the whole chain itself, and either decision can be kept as a signed receipt.

Four questions, answered for every action

Identity providers can say which agent holds a token. They cannot tell a tool three hops away what the person behind it allowed.
Who is acting?
A person or an agent, each with a key it controls. An Aroha identifier commits to its own key, so checking a signature needs no lookup.
What were they allowed to do?
A signed mandate: how much, on what, with which tools, until when. It can only narrow as it is passed from agent to agent.
Can it be stopped?
The person can revoke a mandate, and verifiers check for revocation before they act. The Aroha runtime adds a stop switch.
What actually happened?
Allowed and refused actions can each be signed as a receipt that someone outside your company can verify later.

Coming soon

Bring your limits to the assistants people already use.

  • ChatGPT and dots

    OpenAI

  • Claude and Duet

    Anthropic

  • Muse

    Meta

Each of these assistants can add tools through a remote MCP connector, and Aroha's connector is already published. It gives every person their own key, asks before anything sensitive, and turns each yes into a signed limit that the next service can check. Testing with each assistant comes next.

ChatGPT, dots, Claude, Duet and Muse are trademarks of their owners. Aroha Labs is not affiliated with OpenAI, Anthropic or Meta.

Start from what you already run

Four ways in, easiest first. Each one has a test you can run to prove the refusals work. See all four.
  1. A

    Wrap an MCP server

    Anyone using MCP tools in an assistant

    A config change, no code

  2. B

    Verify mandates in a handler

    Teams whose API or tool server agents call

    About 10 lines

  3. C

    Issue and present a mandate

    Agents acting on a person's behalf

    About 15 lines

  4. D

    Run the Aroha runtime

    A person's own assistant, on their machine

    Not yet released

Path A, in full: put a firewall in front of an MCP server

Deletes are refused, merges and pushes wait for a person to approve, and after 50 calls in a session every further call is refused.

Terminal
npx -y @aroha-sdk/mcp-guard \
  --block "*delete*,*remove*" \
  --gate  "merge_*,push_*,create_*" \
  --limit "*:50" \
  -- npx -y @modelcontextprotocol/server-github

Works with the stack you have

Every row is tested in CI unless the support matrix says otherwise. Support matrix.
Protocols
MCP (2026-07-28 revision), A2A 1.0, OpenTelemetry
Frameworks
LangChain, LangGraph, CrewAI, AutoGen, Google ADK, OpenAI Agents SDK, Composio
Assistants
Claude Code, Claude Desktop, Cursor, Windsurf, Cline, Zed, and any stdio MCP client
Models
Any. The protocol never calls a model.

Shipped today

Everything here is published and free to use. Full status.
TypeScript, on npm
32 packagesRelease 2.0.0, October 19, 2026
Python, on PyPI
aroha 2.1.0Beta, with bridges for LangChain, CrewAI, AutoGen and more
Checking a two-link chain
3.6 msMedian on a laptop, no network calls. Indicative until re-run on controlled hardware.
Open source
Apache-2.0The protocol, the SDKs and the specification

Next: Go and Java releases, an independent security review, and the assistant connectors above.

Add Aroha to an agent this afternoon.

TypeScript
npm install @aroha-sdk/core @aroha-sdk/credentials
Python
pip install "aroha>=2"