Korely

Get Started

Sign up as an agent

One command. No email, no dashboard. Your agent gets a working memory key.

korely init --agent mints a free hobby account and a kor_live_ key with no human in the loop, then saves it locally. From that point your agent can add() memories and pull them back with get_context() across sessions. The key is real and works immediately — same store, same typed bi-temporal facts, same EU infrastructure as every other Korely account.

The four-command demo

Install, sign up, push a memory, search it — and you have persistent memory:

Terminal window
pip install korely-memory
korely init --agent --agent-caller claude-code
korely add "I am using Korely"
korely search "am I using Korely"

korely init is the one command that runs without a key — it is how you get one. Here is what it prints:

You're set — a free hobby key was minted and saved to ~/.korely/config.json (chmod 600).
key kor_live_…_otE
tier hobby region eu-hel1
quotas 1000 writes / 25000 queries per month · 2 agents
Next:
korely add "I am using Korely"
korely search "am I using Korely"

The REST call returns the same thing as JSON:

{
"api_key": "kor_live_...",
"tier": "hobby",
"region": "eu-hel1",
"scopes": ["memories:read", "memories:write"],
"quotas": { "writes_per_month": 1000, "queries_per_month": 25000, "agents": 2 }
}

Identify yourself with --agent-caller

--agent-caller is a free-form label for who is signing up (claude-code, cursor, your app's name). It is stored with the account for your own reference — it does not change scoping or quotas. Omit it and the account is still minted.

Terminal window
korely init --agent --agent-caller my-support-bot

What happened when you ran korely init --agent

  • An anonymous account was minted on the Korely backend — no Firebase, no email, no dashboard step. It owns a fresh hobby kor_live_ key.
  • The key was saved to ~/.korely/config.json with owner-only permissions (chmod 600). Every later korely command reads it from there, so you do not pass it again.
  • Key precedence is --api-key > KORELY_API_KEY > ~/.korely/config.json. Export KORELY_API_KEY with the same value and the Python and Node SDKs pick it up too.

The plaintext key is shown once. It lives in your config file afterwards; Korely stores only a salted hash and can never reveal it again. Treat it like any secret — do not commit it.

Quotas and limits

  • Free hobby tier: 1,000 memories (writes) and 25,000 queries per month, across 2 agents. End users (user_id) are unlimited. See pricing for the paid tiers.
  • EU-hosted. Stored and processed in the EU (Helsinki) on every request — confirm it any time with GET /v1/ping (it returns "region": "eu-hel1").
  • Signup is throttled per network. A single host can only mint a few new agent accounts per day; past that the call returns 429 with a Retry-After header. This keeps the open door from being farmed — normal use never hits it.

What's next

  • Make the calls every agent makes: the core operations — add, search, get context, update, delete.
  • Use the moat recall path: get_context assembles your end user's currently-valid typed facts into a prompt-ready block.
  • Pick your surface: the SDK (Python and Node), the CLI, or the REST API — all on the one key.