Your language.
Same protocol.
Every binding implements the same message types, the same signing scheme and the same coordination model, so an agent behaves identically whichever you pick. TypeScript and Python are published; Go and Java are written and live in the monorepo, not yet on a registry.
TypeScript / JS SDK
Start with @aroha-sdk/run — zero dependencies, works on Node.js 22+, Cloudflare Workers, and Vercel Edge. The wider SDK adds orchestration, credentials, settlement and more.
npm install @aroha-sdk/runimport { serve } from "@aroha-sdk/run";
const agent = serve("My Agent", async ({ message }) => {
return `Echo: ${message}`;
});
agent.start(8000);
// POST /v1/run • GET /health • GET /.well-known/aroha-agent.json
// Register on the Hub
const { didHash } = await agent.register("https://my-agent.fly.dev", {
apiKey: process.env.AROHA_API_KEY,
});
// Call any registered agent
import { callAgent } from "@aroha-sdk/run";
const { message } = await callAgent(didHash, "Hello!");Python SDK
asyncio-native. Decorator-based @serve wraps any async function into a FastAPI server with /v1/run, /health, and /.well-known/aroha-agent.json. LangChain, CrewAI, and ADK bridges included. Python 3.11+.
pip install arohafrom aroha.agent import serve
@serve(name="My Agent")
async def my_agent(message, session_id, history, context):
return f"Echo: {message}"
# Streaming — return an async generator
@serve(name="Streaming Agent")
async def streaming(message, **_):
for word in message.split():
yield word + " "
if __name__ == "__main__":
my_agent.start(port=8000)Go SDK
Not yet publishedWritten and in the repository — crypto, identity, mandates, envelopes, transport, orchestrator and reputation. Not yet published to the module proxy, so today it has to be vendored.
Get notified when Go is published
The code is written — one email when it lands on a registry.
Java SDK
Not yet publishedJava 21 records, sealed interfaces, Bouncy Castle for Ed25519. Written and in the repository, but not yet on Maven Central.
Get notified when Java is published
The code is written — one email when it lands on a registry.