# Unl, your why agent. For every agent you run.

> Your AI already knows how to reason. Unl gives it your reason.

Agents can be replaced without restarting the undertaking. Unl keeps your target, what you decided and why, and gives each agent what matters before it acts. Reported outcomes carry the work forward across tools and models.

*POST /api/v1/import · your first call*

```
curl -s https://api.unlimitless.ai/api/v1/import \
  -H "authorization: Bearer $UNL_KEY" \
  -H "content-type: application/json" \
  -d '{"name":"README.md","text":"<your README>"}'
```

The API is on every tier, Free included, on one usage meter. Free is $0. Basic $10, Pro $30 and Max $90 a month, opening for checkout shortly. [See pricing](https://unlimitless.ai/pricing)

## A live fleet, running on Unl

When your agents need a decision, answer in Slack. Unl keeps the why for their next turn. (An illustration on the page: the agent asks "Keep the existing library or replace it?", you answer "Keep it. The team already knows how to maintain it.", and the agent extends the existing library. Adding Unl to your own Slack is rolling out.) Watch the stream at https://unlimitless.ai/live. Run it in any terminal: `npm install -g unlimitless`, then `unl`. Point it at your own fleet: run `unl` in any terminal, open the stream in [your Unlimitless portal](https://unlimitless.ai/portal/terminal), or let your agents read it at `GET /api/serve-log` with your key. See which why reached which agent, and every heads-up Unl raised.

## What Unl does

**Your agents stop re-arguing what you settled.**

Unl keeps each decision you make with its reason, and hands your agent only the ones that bear on the task before it acts.

- **It serves what bears, with the why** (Live)
- **It catches decisions as you make them** (Live)
- **It reaches the model on every turn** (Live with the hook)
- **It shapes what it serves to each model** (Live for two models)

**Thoughts worth keeping.** Connect Unl to keep useful thoughts with their why. Kept with its reasoning, without becoming a rule unless you settle it.

## Compared

**You stop writing things down for your AI.**

| The usual way | Where it stops | With Unl |
| --- | --- | --- |
| Custom instructions in ChatGPT or Claude | Stays inside one app, and applies to every chat whether it's relevant or not | The same decisions reach every AI you use, and only when they bear on the turn |
| CLAUDE.md, .cursorrules, project knowledge | Lives in one repo and one editor, kept up by hand, and goes stale | Your decisions follow you across repos, tools and models, and update the moment you change your mind |
| Memory features | Remember what you said, not why you decided it | Keeps each decision with its reason, and what it replaced |
| Building your own MCP memory server | You host it, configure it and keep it running | Connect once. Unl is the why agent already running |

Unl notices decisions as you make them, and hands each AI the one that matters, when it matters. [See the full comparison](https://unlimitless.ai/compare).

## For fleets

**Every agent in your fleet works from the same decisions.**

Unl is the infra agent for your fleet, the one that carries your why to every other agent. It never does the work itself.

Your agents never need to message each other. Each one works from the same decisions, so they pull in the same direction.

**The right information.** Connect Unl to bring the right information into the moment. Your sources, read against the criteria you set.

## Quickstart

**Settle one decision, then serve it.**

1. [Add Unl to your AI](https://unlimitless.ai/connect) and settle one real decision in your own words. When it offers to keep it, say yes.
2. [Mint a key in the portal](https://unlimitless.ai/portal/keys).
3. Serve it. What comes back is your own decision, with its why.

*POST /api/v1/serve*

```
curl https://api.unlimitless.ai/api/v1/serve \
  -H "authorization: Bearer $UNL_KEY" \
  -H "content-type: application/json" \
  -d '{ "query": "what did I just settle" }'
```

## The API

**One address for every agent, over MCP, with a REST API beside it.**

REST at `api.unlimitless.ai` with a Bearer key. It only ever grows, so nothing you build on it breaks.

- `GET /api/v1/schema`. Every type, as JSON Schema.
- `POST /api/v1/serve`. What bears on a turn, with its why.
- `POST /api/v1/propose`. Offer a decision; a person says yes.
- `POST /api/v1/import`. A file in, its decisions out.
- `GET /api/v1/parts`. What a serve is composed from.
- `POST /api/v1/snapshots`. Keep a composition by name.
- `GET /api/v1/walk/:id`. One decision, back to where it was settled.

**The world, watched.** Connect Unl to watch the world against what you decided. A crossing arrives when the world bears on your position.

## Over MCP

**Your agent connects in one step and signs in once.**

Add `https://api.unlimitless.ai/mcp` as an MCP server and sign in once over OAuth. No key and no header. Eight tools arrive, and each one declares what it may do, so your agent reads freely and writes only on your word.

## Three calls

**A connect, a serve and a write, start to finish.**

*One · connect, and read where the work stands*

```
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": { "name": "connect_to_unl", "arguments": {} }
}
```

*Two · serve the reasoning that bears on this turn*

```
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "ask_unl",
    "arguments": {
      "query": "should we ship the import flow before the billing screen",
      "session": "<the token connect_to_unl returned>"
    }
  }
}
```

*Three · a write, kept only on the person's own words*

```
{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "save_to_unl",
    "arguments": {
      "kind": "reflection",
      "content": "<the thought, as you would say it back to them>",
      "why": "<why it matters, or null when there is no honest why>",
      "human_direction": "<their own words asking for it: "yes, keep that">",
      "nonce": "<the single-use nonce from connect_to_unl>"
    }
  }
}
```

## Full reference

**Everything else, in one place, for you and your agents.**

- [The full developer reference](https://unlimitless.ai/llms-full.txt), every endpoint, field, error and example
- [This page in Markdown](https://unlimitless.ai/developers.md), for an agent reading the site
- [llms.txt](https://unlimitless.ai/llms.txt), a short index of the site for AI readers
- [The live schema](https://api.unlimitless.ai/api/v1/schema), the API's own published JSON Schema, read with your key

---

Every response, error, scope and worked example is in [the full reference](https://unlimitless.ai/llms-full.txt). This file is generated from the page itself (https://unlimitless.ai/developers).
