neuron / docs

How Neuron works.

One chat for 261 AI models that keeps nothing it hears, a memory that only your wallet can open, for you and for your agents, paid in USDC on Solana, with a tenth of every purchase going to the people who stake $NEURON. Everything below is what the code does, and where it stops.

#Your first private chat.

There is no sign-up form, no card and nothing to install. Any Solana wallet works: Phantom, Solflare, Backpack, OKX, MetaMask and others. On a phone, the app opens itself inside your wallet’s browser.

  1. Connect and sign. One line of text, no transaction.
  2. Add credits in USDC, from $5. That is about 11,100 messages to Claude Haiku 5.5.
  3. Ask. Pick any model; switch whenever you like.

(a) Connect a wallet. One signature is the whole sign-in; Neuron learns an address and nothing about who holds it.

(b) Add credits in USDC, from $5. $5 is about 11,100 messages to Claude Haiku 5.5. The payment is split on chain as it lands.

(c) Ask anything, of any model. The words go to the model and back to you under a shared key; nothing is written down.

The three steps, as they happen. Each panel plays when it scrolls into view.

#A signature, not an account.

The app asks your wallet to sign the text below. The server checks the signature against your address, refuses anything older than ten minutes, and hands back a session that carries your address and an expiry seven days out, sealed with a server secret. Signing moves no funds.

Sign in to Neuron

Wallet: 7xKX…q2Pd
Issued: 2026-10-25T14:02:11.000Z

This signs no transaction and moves no funds.

#What leaves your browser.

Every request is rebuilt from three things only: the messages, the model, and the model’s own settings. Your wallet, any metadata and your IP never travel with it.

It goes out through OpenRouter with routing locked to providers that keep no data (zero data retention). If a model has none at that moment, the request fails instead of falling back to one that does. Type below and watch both sides.

Listing 1. An account-based AI app

{  "account": "usr_88120",  "email": "you@mail.com",  "ip": "84.21.140.7",  "device": "iPhone 16 · Seoul",  "card": "visa •••• 4242",  "history": "kept",  "prompt": "is it bad that i lied on my resume about one year"}

Tied to you, stored, searchable later.

Listing 2. What Neuron sends to the model

{  "model": "anthropic/claude-sonnet-5.5",  "messages": [{ "role": "user",    "content": "is it bad that i lied on my resume about one year" }],  "provider": { "zdr": true }}

Under one key every Neuron user shares. The provider sees words, not a person.

Kept afterwards, one line like this14:02 UTC · anthropic/claude-sonnet-5.5 · 392 tokens · 0.21 credits

Left: what an app with accounts usually keeps next to your words. Right: everything Neuron sends.

#One key for everyone.

Every Neuron user reaches the model under the same key. To the provider that is one customer sending many requests. It can count them; it cannot tell whose is whose.

you, and everyone elseone Neuron keythe provider sees one customer
Many people, one key, one line of identical requests.

#What we keep.

Two things, both needed to bill you, and nothing else.

Kept

  • Your wallet address and its credit balance
  • Each purchase’s transaction signature
  • Per request: time, app or API (and which key), model, token counts, cost

Never kept

  • Your prompts and the answers
  • Tool calls, search queries, images you send or make
  • Your IP address
API keys
Stored only as a hash. Each key can be paused, given a budget, or limited to certain models.

#History on your device.

By default a conversation lives only in the open tab. If you choose to keep history, your wallet signs one more fixed line, and your browser turns that signature into a key that never leaves it:

The key cannot be exported; the conversations are stored encrypted in this browser.

Wallet signatures of this kind are deterministic, so the same wallet rebuilds the same key on another device. Nothing about your history reaches our server. Conversations can be renamed, exported as Markdown, or deleted from the sidebar.

#Memory in the chat.

Turn on Memory under the message box and the chat keeps what you ask it to, locked with a key only your wallet can make. Start a message with “remember” and that sentence is locked in your browser before it is sent to be kept.

remember that my sister Hana lives in Busan and runs a bakery

… a week later, on another device …

What does Hana do?

Every later question first opens your memory in the tab, picks the few entries that match it, and sends only those to the model, as a short note beside your words. The rest stays on the device, and nothing ever reaches our server unlocked.

  • Two signatures to turn it on. One makes the memory key, one gives this browser a token to reach your memory. Neither is a transaction.
  • Any device. The same wallet makes the same key, so a phone opens what a laptop kept.
  • 1.0 MB free for every wallet, thousands of memories. See, open and forget them, issue agent tokens and buy more space at /memory.
What goes to the model
The matching entries travel with your message, under the same routing as your words (zero retention providers only). With Memory off, nothing from your memory is sent.

#Any agent, one command.

Claude Code, Cursor, Claude Desktop or any MCP client gets the same memory through neuron-mcp, a small server that runs on your machine. Make your key and a token at /memory; the page prints the command with all four values filled in.

claude mcp add neuron \
  -e NEURON_API=https://neuronmemory.app \
  -e NEURON_WALLET=<your address> \
  -e NEURON_KEY=ek1_… \
  -e NEURON_TOKEN=et1_… \
  -- npx -y https://neuronmemory.app/neuron-mcp.tgz
ToolWhat it does
rememberKeeps one fact, with optional tags. Locked on your machine, then sent
recallSearches everything remembered, on your machine. Without a query, the latest
forgetAn open memory is deleted. A sealed one stays in its capsule and is never recalled again
memoriesCount, space used, and where the sealed chain ends
resurrectRebuilds everything from the newest capsule back to the first, over IPFS alone

The key is shown on that page and nowhere else; treat it like a password. Optional settings: NEURON_PAYER and NEURON_MAX_USDC_PER_DAY (an agent that pays for its own space, below), NEURON_GATEWAYS (IPFS gateways to fall back on), NEURON_HOME (where sealed capsules are cached).

#The key and the lock.

Your wallet signs a fixed line that says it moves no funds. The signature becomes a 256-bit key on your device, and each memory is locked with it before it leaves:

A fresh 12-byte nonce for every memory. The address and the memory's id are bound in, so a memory moved to another wallet or id fails to open.

WhoSees
YouEverything, on your devices
Neuron’s serverLocked bytes, their time and size, which wallet they belong to, which token sent them
AnyoneThat a wallet has a capsule for a day, how many memories it holds, and its address
  • Forgetting. A memory not sealed yet is deleted. A sealed one is kept, as promised, and marked forgotten so recall leaves it out.
  • Losing the wallet. The memories cannot be opened, by you or by us. There is no reset.
  • Size. One memory holds at most 16 KB.

#Sealed every night.

In the first minutes after 00:00 UTC, every open memory from the day before joins its wallet’s capsule for that day, and each capsule names the one before it. The day, the count and the previous address are plain; the entries are locked. The file is named by a hash of the wallet, never the address.

{
  "v": 1,
  "day": 20753,
  "prev": "bafy…/3c1e9a….json",
  "count": 3,
  "entries": [{ "id": "…", "at": 1793059200, "iv": "…", "data": "…" }]
}

All of a day’s capsules go into one directory, packed as one CAR under one IPFS address. Each finished day the keeper posts a Checkpoint to the Neuron program with the root of every wallet’s newest capsule, so anyone can check where a chain ends without asking us:

Sorted pairs hashed up to the root; GET /api/memory/proof gives the path. Posting starts with the program at launch.

Resurrection: from the newest capsule, follow prev back to the first. Any IPFS gateway serves the capsules and your key opens them; nothing else is needed.

#Three copies, checked.

Every sealed day goes to three independent places: IPFS pinning services (Filebase and Pinata today) and the Neuron node, this server’s own IPFS node. Each copy is fetched through its provider’s own gateway every day and its bytes hashed against the address; a copy that fails three checks in a row is rebuilt from a healthy one.

Each day's checks form one Merkle tree, and its root goes into the same Checkpoint.

Space is priced so it is paid for good: three copies’ first year up front and the rest into a pool whose floor yield pays the rent every year after. One USDC buys about 50.1 MB today; a memory is a few hundred bytes.

#Agents that pay.

An agent whose memory wallet is out of space pays for more itself, inside the request that needed it, in USDC.

  1. 402. POST /api/memory answers 402 with x402 terms: the scheme neuron-purchase, the USDC amount, the program, the wallet the space is for and a one-time reference.
  2. Build. The agent asks POST /api/x402/tx for that exact purchase, paid by its own wallet, and signs it.
  3. Pay and keep. It repeats the request with X-PAYMENT. The server checks the transaction is that one purchase, sends it, counts it from the program’s own event, keeps the memory, and says so in X-PAYMENT-RESPONSE.
{
  "x402Version": 1,
  "accepts": [{
    "scheme": "neuron-purchase",
    "network": "solana",
    "maxAmountRequired": "1000000",
    "payTo": "<program>",
    "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "maxTimeoutSeconds": 900,
    "extra": { "beneficiary": "<memory wallet>", "reference": "<32 hex>", "build": "https://neuronmemory.app/api/x402/tx" }
  }]
}

With neuron-mcp, set NEURON_PAYER (a Solana keypair holding some USDC and a little SOL) and NEURON_MAX_USDC_PER_DAY (default 1) and it does all of this when remember runs out of space. A reference is used once and expires after 15 minutes. It is the same purchase as any other, so the same split applies. x402 opens with the program at launch.

#Two rooms.

Crowded roomSealed room
ModelsClaude, GPT, Gemini, Grok and the rest of the frontierOpen models: DeepSeek, Qwen, gpt-oss and others
Where it runsAt the model maker’s provider, under one Neuron keyInside a hardware enclave (Intel TDX, confidential GPUs)
What you can checkThe provider’s word: zero retention endpoints onlyA public, signed attestation report per model
Status261 models liveOpens when the enclave provider is connected

#Prices, in the open.

One credit is one cent and never expires. A request costs the provider’s own price for its tokens, read live, plus 12%. A typical message, 1,500 tokens in and 500 out, costs

Prices are in dollars per million tokens.

ModelLabIn / 1MOut / 1MPer $1
Claude Haiku 5.5Anthropic$0.112$0.5602,232
Gemini 3.8 FlashGoogle$0.420$2.10595
DeepSeek V4.1 Flash 1017DeepSeek$0.113$0.1683,941
Kimi K3Moonshot$0.201$10.01188
Claude Sonnet 5.5Anthropic$2.24$11.20111
GPT-5.5OpenAI$5.60$33.6039
Gemini 4 ArgonGoogle$2.24$11.20111
Grok 4.7xAI$2.24$6.72148
GLM 5.3Z.ai$0.0783$1.571,109
Claude Opus 5.5Anthropic$4.48$22.4055

Read at 04:24 UTC. A wallet may send 60 requests a minute and four at once.

#Make one, or send one.

Make one: pick an image model (Gemini’s image models have zero retention routes) and describe the picture. It comes back in the chat and is kept only if history is on, encrypted like the rest.

Send one: attach an image to ask a model that can see. It is shrunk in your browser, travels inside the request, and is never stored by our server.

#The API.

Neuron speaks the OpenAI chat format at https://neuronmemory.app/api/v1. Make a key in the app under Billing → API keys. It starts with hk_, is shown once, and spends your wallet’s credits.

curl https://neuronmemory.app/api/v1/chat/completions \
  -H "Authorization: Bearer hk_..." \
  -H "Content-Type: application/json" \
  -d '{"model": "anthropic/claude-haiku-5.5", "messages": [{"role": "user", "content": "Say something quiet."}]}'
EndpointWhat it does
POST /chat/completionsThe OpenAI body, streamed or not: messages (text and images, tool calls), model, sampling settings, tools, reasoning, web search and image output. Anything else is dropped
GET /modelsEvery model with its room, its price in credits per million tokens, and whether it sees or makes images
GET /attestation?model=The enclave’s signed report for sealed room models, no key needed

Memory endpoints

EndpointWhat it does
POST /api/agentsIssues a token for one agent: wallet, at (seconds), signature (base58, over the agent-token text for action issue), label. Shown once; only its hash is kept
GET /api/agents · DELETE /api/agents/<prefix>Lists or revokes a wallet’s agent tokens, with a fresh signature for list or revoke
POST /api/memoryAdds one locked memory { id, at, iv, data } with Authorization: Bearer et1_…. Out of space, the answer is 402 with x402 terms
GET /api/memoryEverything needed to rebuild the memory on a device, still locked: open entries, sealed capsules newest first, forgotten ids, space left
DELETE /api/memory/<id>Forgets one memory
GET /api/memory/head?wallet=Public: where a wallet’s chain ends and how long it is, never what is in it
GET /api/memory/proof?wallet=&day=Public: the wallet’s newest capsule as of a posted day, its leaf, and the hashes up to the root on chain
GET /api/space?wallet= · POST /api/space/buyA wallet’s space (free, bought, holder bonus, used, left), and an unsigned purchase of more
POST /api/x402/txThe purchase a 402 asked for, unsigned, for the paying agent’s wallet
POST /api/txA signed transaction sent through this server. Only the program’s purchase, stake, withdraw and claim pass
GET /api/checkpointsThe days this server posted to the program, newest first

Errors

HTTPCodeWhen
401authentication_errorNo key or session, or the key is unknown
401key_disabledThe key is paused
402insufficient_balanceNot enough credit for what the request could cost
402key_limit_reachedThe key reached its spending limit
403model_not_allowedThe key may not use that model
404model_not_privateThe model has no zero retention route right now
429rate_limit_errorMore than 60 requests a minute, or 4 at once, for one wallet
502upstream_errorThe model did not answer; nothing was charged
503sealed_unavailableThe sealed room is not connected yet

#Every purchase, split.

Chat credits and memory space are both bought by paying the Neuron program on Solana in USDC, by people in the app and by agents over x402 alike. The program divides each payment before the transaction ends:

$10.00 USDCone purchase$0.00pays for the answers$0.00to NEURON stakers, in USDC$0.00buys NEURON, burns it
A $10 purchase, drawn as the program splits it. If nothing is staked, the stakers’ part goes to the treasury, so no reward is left unowned.

#Staking, paid in USDC.

Stake $NEURON and you are paid your share of every purchase in USDC, in the same transaction that pays for it:

Kept exact with a running reward per staked token and its remainder, so no fraction of a cent is lost (Batog, Boca and Johnson, 2018).

paid to you, r$100USDC a month

paid to all stakers$10KUSDC a month

bought and burned$10Kof NEURON a month

Try your own numbers. This is the program’s rule applied to what you pick, not a forecast of usage, price or returns.
  • Paid at once. Your share lands with each purchase; claim whenever you like.
  • Locked 24 hours. Staking or adding to a stake locks it for a day, so no one can borrow tokens, collect and leave in one block.
  • Counted as received. A stake counts what the vault actually received, so a token with a transfer fee cannot inflate it.

Stake and claim in the app at app/stake.

#What holders get.

  • USDC from every purchase. Staked $NEURON receives 10% of every purchase, chat credits, memory space and agents paying over x402, split by stake.
  • Buyback and burn. 10% of every purchase buys $NEURON on the open market and burns it.
  • Memory space. A wallet holding or staking 1,000,000 $NEURON gets 1.00 GB more memory, room for millions of memories, from a snapshot taken once a week.

An example, not a forecast: if people and agents spend $20,000 in a month, stakers share $2,000 in USDC and $2,000 of $NEURON is bought and burned. A wallet with 1% of all staked $NEURON gets $20 that month. The holder numbers are proposed and set at launch.

#Buyback and burn.

The buyback part of every purchase goes to a single wallet whose only job is to buy $NEURON on its market and burn it. Both transactions are public, and the burned total is read from the token’s supply below.

#What the admin can do.

Only the program’s upgrade authority can set it up. After that, the admin key has exactly these powers, and nothing pauses staking, moves staked tokens or takes rewards.

InstructionWhoWhat it changes
purchaseAnyonePays USDC and splits it as above
stake · withdraw · claimThe stakerOnly their own stake and rewards
distributeAnyoneAdds USDC for current stakers
set_paramsAdminThe split and the minimum; stakers plus buyback at most 50%
set_destinationsAdminThe treasury and buyback wallets
propose · accept adminAdmin, then the new adminMoves the admin in two steps
set_keeperAdminWhich key may post each day’s Checkpoint
attestThe keeperPosts one day’s roots (copy checks, capsule heads); moves no funds

Program: CtTn5A2GD4RebP3AdGNyBGPM6LSSsBpx51bVWETuAD5r, deployed at launch.

#Live numbers.

Starts at launch

So far
Purchases, credits and space—
USDC spent—
USDC paid to stakers—
NEURON staked—
Stakers—
NEURON burned—
Yearly rate to stakers—

The yearly rate is last week’s USDC to stakers scaled to a year, over what is staked at today’s price. It moves with every purchase and is not a promise.

#Who sees what.

WhoSeesDoes not see
NeuronYour address, balance, and per request: time, model, tokens, costYour words or the answers, beyond relaying them
The model’s providerThe words, any recalled memories sent with them, and the answer, while it answersWho sent them; one Neuron user from another
The search providerA query the model wrote, when Search is onWho it is for
Anyone on chainThat a wallet bought credits or space, how much and whenAnything about what you asked or kept
Anyone on IPFSThat a wallet has a capsule for a day and how many memories it holdsWhat they say, without the wallet
Someone with your deviceKept history, only if they can also sign with your walletHistory, without the wallet

#Limits, stated plainly.

  • Zero retention is a promise. That providers keep nothing rests on their terms and on the routing above. The sealed room is how open models move from promise to proof.
  • Our server relays your words. It sees them in passing and is trusted to keep nothing, as described here.
  • A wallet is a name. The chain links an address to its purchases and to where its USDC came from. A fresh wallet used only for Neuron keeps those apart.
  • Recall sends what matches. With Memory on, the entries that match a question go to the model with it. Keep in memory only what you would say to the model anyway.
  • The wallet is the key. Lose it and no one can open the memory, us included. Anyone who can sign with it can.
  • Words can name you. A message that identifies its writer still does, whoever carries it.
  • Answers can be wrong. Neuron changes who keeps the conversation, not what the model knows. Nothing here is financial, medical or legal advice.

#What comes next.

  • The sealed room: open models inside hardware enclaves, with a public signed report for each.
  • A stakers’ allowance: free messages every week for staked $NEURON.
  • Studio: video and audio under the same rules.
  • Desktop: the same room and the same memory, with tools.

#Questions.

Do I need an account?
No. A Solana wallet signs one line of text; there is no email, password or card.
What do you keep?
Your address, your balance, and one line per request: time, model, tokens and cost. Never the words.
Which models can I use?
Every model with a zero retention route, 261 today, Claude, GPT, Gemini and Grok among them.
How do I pay?
USDC on Solana, from $5. One credit is one cent and never expires.
What does $NEURON do?
Stakers are paid 10% of every purchase in USDC, and 10% of every purchase buys $NEURON and burns it.
Can anyone take staked tokens?
No. The staking side of the program has no admin instruction.
Can I use it from code?
Yes. Any OpenAI client works with a key made in the app.
Can it remember things about me?
Yes, if you turn Memory on. What you ask it to remember is locked with a key only your wallet can make, and only the entries that match a question go with it.
Can you read my memories?
No. Our server holds them locked and never has the key. Your wallet makes it, on your device.
Can my agents share it?
Yes. Claude Code, Cursor or any MCP client reads and writes the same memory through neuron-mcp, each with its own token you can revoke.
When does $NEURON launch?
At launch, on Meteora. This page will show its address and the live numbers.