GRM Early access

Your coding agent stops forgetting.

GRM reads the conversations and code already on your machine and puts the relevant piece into your agent's context before it starts thinking — no tool call, nothing for it to remember to do. It runs entirely on your computer and makes no network calls of any kind.

7 days free, counted from your first run — not from the day you downloaded it. Then $99 per machine per year, paid once.

the agent is asked a question — this arrives before it answers
> why did we bind the licence key to the machine instead of just an expiry date ## From memory (recalled by the memory engine) [2026-08-14] GRM licence keys are machine-bound as of 15 Aug 2026, built because Ganesh asked what stops a buyer posting their key online where thousands use it free until expiry with no way for us to know [2026-08-14] The id is FNV-1a over the system volume serial and hostname, salted, printed as 12 hex characters — derived locally, never transmitted, and not reversible into anything about the machine [2026-08-14] trials | a key with no machines runs anywhere, which is correct for a trial shipped inside the download and wrong for anything sold --- from the source code --- [File: pm-rs\src\license.rs, Block: 3] /// The date inside a key is absolute, so a 7-day trial key minted /// today is dead on the 22nd for everybody -- including the person /// who downloads it on the 21st and gets four hours. pub const TRIAL_DAYS: u64 = 7; cues: bind licence key machine instead expiry date

Real output, captured from a live install — a decision from an earlier session and the source that implements it, delivered without the agent asking for anything. (The [2026-08-14] timestamp is recorded in UTC, which is why the conversation text inside reads 15 Aug 2026 after midnight in Indian Standard Time.)

01 / How it works

Two things decide whether a memory is worth having: whether it turns up unasked, and what it costs to keep running.

Memory that arrives, and never leaves

Nothing to call, nothing to configure per project, and no bill that grows with how much you use it.

It arrives on its own

The memory is in context before reasoning starts. There is no tool for the agent to call, no moment where it must notice something is missing, and nothing for it to forget.

It works on a three-word prompt

ok do it gives a search nothing to search on. At the end of the previous turn the agent already said what it was about to do, and the answer was fetched then and set aside.

Exact identifiers, not approximations

The precise filename, function name, error string or compiler flag you asked about. No near-misses, and no invented detail presented as fact.

It knows when to stay quiet

Across 715 recorded decisions it said nothing 297 times rather than crowd your context with a guess. Silence is what makes the rest of it trustworthy.

No model, no embeddings, no GPU

The ranking is arithmetic over words you already wrote. That is why there is nothing to meter, nothing to rate-limit, and no per-query bill — ever.

Your memory is a file you own

One document on your disk. Read it, copy it, back it up, delete it. Uninstalling takes all of it with you and leaves nothing behind.

02 / Watch it

One recording, one screenshot, both off this machine. Nothing staged, nothing sped up, no edits.

See it remember

The memory reaches an agent two ways. On the left it is asked and answers. On the right nobody asked — it was already there.

Antigravity IDE asked for it
Three things happen. The folder on the left is a fresh install — the downloaded zip is still in it. First Memory [recall] fires and dated blocks come back. Then the agent ends its own answer with [[next: …]], writing down what it expects to need. On the following turn the answer arrives marked “pulled from the pre-fetched context, no recall call needed.” 46 seconds.
Watch the last line too. The agent flags that one retrieved line matched only lexically and refuses to draw a conclusion from it. That is the honest failure mode of a word-based memory — a near-miss that reads as a hit — caught and handled on camera. It is left in because a demo with no bad hits in it is a demo nobody should believe.
Claude Code nobody asked
A Claude Code session. Before any tool is called, the memory has
                                  already supplied the warning that the packaging script only re-zips
                                  what is in each folder and does not rebuild the binaries.
A real session from this build. The memory delivered one line — that the packaging script re-zips rather than rebuilds — before the first tool call, and it stopped a release going out with stale binaries in it. Nothing was searched for.

Neither of these was re-shot for this page. Both were typed at working speed, typos and all — the model reads intent, not spelling.

03 / Measured

Every decision the engine made was logged as it happened, then scored afterwards against what was actually written next.

Numbers from real work

Not a benchmark. Two months of one developer's real history, searched by the automatic half of the memory — the part that speaks without being asked.

24,625
memories held
56.7%
of what it volunteered was used in the work that followed
92%
carried something the agent did not already have
100%
stays on your machine
What it was measured on
Words of conversation and source2,005,699
Characters, as 24,625 memories13,694,306
Distinct words32,323
Blocks of source code2,404
Days without a gap66
Recorded decisions715
Times it spoke418
Times it stayed silent297

How the 56.7% is counted. An engine cannot be asked whether it helped — hand any model an answer that agrees with what it already thinks and it will say yes. So it is not asked. Every volunteered memory is compared against what was written afterwards, and counts only if material from it appears there. Anything the memory quoted back to itself is excluded.

It averages two very different days. One scored 74.6%, the other 34.3%. The high day moved between unrelated pieces of work; the low day was one long unbroken session on a single subject, where the answer to almost everything was already a few screens up. On that day the share of memory genuinely new to the session fell with it, 27.6% to 20.0% — there was simply less left to tell.

One way the measure is unfair to itself. A memory only scores when its words turn up in what gets written next, so hours spent writing code and shell commands score low however useful it was. The real figure is better than the one shown. It is reported this way on purpose.

None of it comes from the search tool. This scores only what arrived unasked. Memory the agent deliberately went looking for is not counted.

04 / Install

No account, no sign-up, no API key. The trial licence is inside the download.

Running in about a minute

One binary, three commands, then quit your agent and open it again. That is the whole procedure on every platform.

01

Fetch it in your terminal

The binary, your 7-day key and a README — about half a megabyte. macOS is built for Apple Silicon; Linux is statically linked and runs on any x86-64 distribution. curl and tar already ship with Windows 10 and 11, macOS and every Linux, so there is nothing to install first — and nothing to click past.

# Windows curl.exe -fLO https://grm-jade.vercel.app/download/grm-trial.zip tar -xf grm-trial.zip # macOS curl -fLO https://grm-jade.vercel.app/download/grm-trial-macos.tar.gz tar xzf grm-trial-macos.tar.gz && cd grm # Linux curl -fLO https://grm-jade.vercel.app/download/grm-trial-linux.tar.gz tar xzf grm-trial-linux.tar.gz && cd grm
02

Run the installer

It finds the agents already on this machine, wires itself into each of them, reads the history you already have, and starts the background half.

# Windows .\pm.exe install # macOS and Linux chmod +x pm && ./pm install
03

Name the projects you want it to read

Your conversations are picked up automatically — every Claude Code, Cursor and Antigravity session already on the machine is read during the install. Your code is not, until you say which folders. The installer leaves an empty code_roots.txt beside the memory file; put one project path on each line. Keep it short — a handful of real projects beats every folder on the disk.

# code_roots.txt — one path per line C:\Users\you\code\my-project C:\Users\you\code\other-project\src
04

Fully quit your agent, then open it again

Closing the window is not enough — an agent reads its configuration at launch, so a session already open has not seen any of this. After that it is on, and there is nothing else to run. pm doctor checks every part of it and names the fix for anything that is down.

pm doctor
$ pm doctor GRM doctor [ ok ] licence license ok for 'Ganesh-Owner' (3647 days) [ ok ] memory file real_graph.json (14.2 MB) [ ok ] journal 2.1 MB [ ok ] daemon answering on 127.0.0.1:8791 [ ok ] live ingest watching (last pass 1s ago) [ ok ] code roots 10 folder(s) watched [ ok ] Claude Code MCP configured [ ok ] Cursor MCP configured [ ok ] MCP server starts and answers the handshake

One command checks every part and names the exact fix for anything it finds. It is also the first thing to send us if you get stuck. Real output, captured from a live install.

05 / Pricing

You pay for the computers you run it on, once a year. Nothing renews on its own.

One price. Per machine. Per year.

No tiers, no seats to administer, no per-token billing.

$99$149
per machine, per year — founding price, first 50 customers
  • A year, paid once. No monthly subscription
  • Your second machine, any time — $79
  • Claude Code, Cursor, and any MCP agent
  • Every update for the year included
  • Answers from the person who wrote it
Get a licence key
$119
per machine, per year — five machines or more
  • One key covering every machine you list
  • One invoice, no seat administration
  • Every developer's memory stays private to them
  • Nothing to host, nothing to run, no server
  • Add machines mid-year, pro-rated
Talk to us

India: ₹2,999 per machine per year, payable in rupees. Same product, same key — ask for the rupee link.

What happens after you pay

  1. Install first, buy second. The download works for 7 days on its own, counted from your first run. Do not pay for something you have not tried.
  2. Send one line. Run pm id and mail what it prints to support@getgrm.tech — a 12-character fingerprint of the computer, derived locally and never transmitted by the product.
  3. Your key is cut for your own machine. A key that leaks is worth nothing to anyone else, which is why there is no activation server and nothing phones home.
  4. It arrives by email, usually within a few hours. Save it over pm_license.key and restart your agent. Your trial keeps running while you wait, so nothing stops.
  5. New laptop later? Mail us and it is re-issued. Every key we cut is recorded, so there is nothing for you to prove.
06 / Questions

The things people ask first

If something here is not answered, mail us — the answer comes from the person who wrote the code.

Does my code or my conversations ever leave this machine?

No. There is no cloud service, no embedding API, no vector database and no telemetry. The binary makes no network calls of any kind. Your memory is one file on your disk.

What does it actually store?

Sentences you and your agent already wrote, and blocks of code from folders you point it at, each with a date. Nothing is summarised by a model and nothing is sent anywhere to be processed.

What happens if the background process stops?

The memory goes quiet and your agent carries on. The hook gives up within a quarter of a second rather than making you wait, restarts the background half, and tells the agent plainly that memory was unavailable — so a fault is never mistaken for you having no history.

What are the requirements?

About 1 MB, one file. No Python, no Docker, no database, no runtime to install — it imports nothing but the operating system's own libraries. Windows and Linux on x86-64, macOS on Apple Silicon.

How long before it is useful?

Immediately. It reads the history already on your machine during install, so it knows your past work from the first question — you do not have to use it for a month first.

How do I remove it?

Delete the folder and the .pm directory in your home folder. That is all of it. Nothing else is written anywhere that matters.