Why Norien
Not a pitch — the reasoning. Why another agent platform should exist, why it is shaped this way, and what it refuses to do.
Why another AI agent platform?
Most agent tooling optimizes for the demo: a notebook, a single script, an API key pasted inline. That is where the hard parts are hidden, not solved. The moment an agent needs a second tool, a teammate, a specific version, a secret it should not leak, or data from a chain, the demo collapses into bespoke glue. Norien exists to make the parts after the demo boring: distribution, versioning, execution, and data — the plumbing every serious agent needs and no one wants to rebuild.
Why a registry?
Software got good at sharing when it got a registry — npm, PyPI, crates. Agents have none. An agent today is a link to a repo and a prayer that the README is current. A registry turns an agent into an addressable, versioned artifact: trading-agent@0.5.0 resolves to exactly one manifest, one set of tool dependencies, one runtime contract, for everyone, forever. Immutable versions mean an install you did last month still installs the same thing today.
Why a runtime?
Publishing is half the problem; running is the other half. An agent declares tools, permissions, and health — but declarations are worthless if nothing enforces them. The runtime is the supervisor that actually does it: it detects the language, injects only the declared tools and secrets, probes health on an interval, and restarts a crash with a loop cap so a broken agent cannot spin forever. Crucially, it runs locally. A shared registry must never execute someone else's code — so it doesn't.
Why a unified data API?
An agent that trades or reads a chain has to talk to market-data providers, explorers, TVL aggregators, and RPC nodes — each with its own auth, shape, rate limit, and outage. That integration is re-written in every project and rots constantly. Norien does it once and exposes one normalized surface. Every response carries sources and degraded: if a provider fails, the request still succeeds with whatever the others returned, and the answer is visibly partial rather than quietly wrong.
Why Robinhood Chain?
Agents that act on-chain need a chain that is fast, cheap, and legible. Norien is built for the Robinhood Chain ecosystem: the unified API defaults to it, the explorer and RPC are wired in, and token, wallet, and contract data resolve natively. One chain, deeply supported, beats ten chains supported shallowly.
Why a CLI and SDKs?
Different surfaces, one contract. The CLI is for humans and CI — every command speaks --json, stdout stays pure so it composes with jq, and diagnostics go to stderr. The SDKs (TypeScript and Python) are for programs — same endpoints, typed, with pagination and retries handled. All three are thin clients over one public REST API, so nothing can do something the API cannot.
Design principles
- One source of truth. The REST API is the product. Every client is a thin wrapper; no capability lives only in a UI.
- Partial beats wrong. A degraded answer with its provenance attached is always preferable to a confident hole.
- Immutable versions, mutable head. A published version never changes; a slug's latest pointer moves forward.
- Local-first. Everything works on your machine with no account and no server. The hosted registry is a convenience, not a dependency.
- Declarations are enforced. A manifest that lists a permission it does not need, or omits one it does, should fail — not silently over- or under-grant.
Security philosophy
The registry stores and serves manifests; it never executes them. Execution is the runtime's job, and the runtime is local, so untrusted code never runs on shared infrastructure. Tools declare their permissions and receive only what they declare. API keys are stored as hashes, shown once, and revocable. Reads are public and need no credential; identity is only required to publish. The threat model is stated, not assumed.
Long-term vision
The end state is an ecosystem where an agent is as easy to share, install, and trust as a package — where “run this agent” is one command, its data layer is already solved, and its behaviour is legible because its manifest is the contract. Norien is the registry, runtime, and data layer for that world, starting on Robinhood Chain.