Beta · Windows
The installer wizard, for people who would rather not open a terminal.
One window asks a short list of questions, then builds the database, the index and the Claude Code wiring while you watch it happen. This is a beta, and I am looking for testers who will tell me how it went.
The 0.9.7 installer does not start, and the download has been taken down
The first person to run it got one line, QWidget: Must construct a QApplication before a QWidget, and then nothing: no window, no error dialog, the process gone. That is not a fault of their machine and no amount of retrying would have helped. Every copy of that build does it.
The cause was a single line in the launch path. The window was constructed before the Qt application object it needs existed, and Qt answers that by killing the process immediately. The fix is written and covered by tests, including one that starts the real entry point in a fresh process, which is the check that was missing and the reason this shipped at all.
Until a corrected build is published, the seven step install is the way in. It is unaffected and it reaches exactly the same place.
Everything below describes the installer as it is meant to work, and it stays here because the requirements and the questions it asks are unchanged. Only the download itself is on hold. If you want to be told when the fixed build is up, say so on an issue.
What beta means here
It has never been installed by anyone who did not write it.
The build is checked on every change by a hosted Windows runner, and 0.9.7 shows exactly how much that is worth. The check proved the bundle was complete, because that is what it was written to prove, and it started the window in an order the shipped entry point never used. So it passed on a build that killed itself on launch. The check now goes through the same launch path the exe does.
That is the honest version of what beta means here. What no test covers is the part I want to hear about: whether the questions made sense, whether the folder it suggested was the folder you wanted, whether anything sat there saying nothing for long enough that you thought it had died.
What I would like back
- Did it start at all, or did Windows refuse to run it.
- Which question you had to stop and think about.
- How long the install took, and where it felt stuck.
- What it wrote, and whether you could find it afterwards.
- Anything you expected it to ask and it did not.
A one line "it worked, took eleven minutes" is worth having. So is "I gave up at the second screen", and that one is worth more.
Send feedback on GitHub- File
- A zipUnpacks to a folder holding recall-install.exe
- Size
- 233 MBAbout 460 MB once unpacked
- Python
- Not neededThe runtime is inside the bundle
- Licence
- Apache 2.0Free for commercial use
Read this before you download
This build carries no signature, and on some machines Windows will not run it.
The filename says UNSIGNED, because that is the one warning a download page can give you that you cannot miss. Here is what it means, and how to find out which case you are in before spending 233 MB.
Two different refusals, and only one of them can be clicked past
SmartScreen shows a blue box saying Windows protected your PC. That one has a More info link, and under it a Run anyway button. This is the common case.
Smart App Control is stricter. Where it is enforced it blocks an unsigned executable outright, with an application control policy message and no way through. Nothing you click will start the installer, and the way in is the terminal install, which is unaffected.
Ask Windows which case you are in. Run this in PowerShell before downloading anything. It only reads a registry value.
Get-ItemPropertyValue -Path HKLM:\SYSTEM\CurrentControlSet\Control\CI\Policy -Name VerifiedAndReputablePolicyState| What comes back | What it means | What to do |
|---|---|---|
0, or an error saying the property does not exist |
Smart App Control is off, or this build of Windows does not have it. | Download it. Expect a SmartScreen warning you can click past. |
2 |
Evaluation mode. It is watching rather than blocking. | Download it. Same SmartScreen warning. |
1 |
Enforced. An unsigned executable is blocked, not warned about. | Do not spend the download. Use the terminal install instead. |
Why publish something Windows might refuse to run
Because a signing certificate for an open source project is granted on the strength of a release that already exists, and this is that release. The build pipeline is already wired for signing and refuses to publish an unsigned artifact from a tag: this one exists only because the bootstrap case was deliberately allowed on a manual run, and the filename says so.
A signature here is not decoration. Microsoft's documentation says Smart App Control will still run an app it cannot otherwise vouch for when it is signed by a certificate authority in the Trusted Root Program, which is what makes a first release runnable rather than leaving it to accumulate a reputation it can never start earning. Signed builds are the point of the next release, not a later polish.
What it needs from your machine
Docker, memory, and not much else.
The installer measures all of this and names what is missing before it starts, so this list is here to save you the download rather than to be checked by hand.
| What | Why | If it is missing |
|---|---|---|
| Windows 10 or 11, 64-bit | The bundle is built for x64. There is no ARM or 32-bit build. | Nothing to do about it here. The terminal install runs anywhere Python does. |
| Docker Desktop, running | Your memory lives in PostgreSQL with pgvector, and the installer runs that as a container. | It says so and stops. Installing Docker Desktop does not start it: launch it once and let it finish starting. |
| 4 GB of RAM | PostgreSQL and an embedding model have to fit at the same time. Below this the install is refused rather than warned about. | 8 GB is where the heavier options become available. |
| Hardware virtualization | Docker Desktop cannot start without it. | It is a firmware setting, called VT-x or AMD-V. The installer names it if it finds it disabled. |
| A few GB of free disk | The unpacked application, a PostgreSQL image, and a small embedding model downloaded once. | Nothing is written outside the folder you choose and Docker's own storage. |
You do not need Python
This is the one difference from the seven step install. The interpreter, the database driver and the embedding runtime are all inside the bundle, which is why it is 233 MB rather than a few hundred kilobytes.
What happens when you run it
Two screens, and a file you keep.
Unpack it first. Run recall-install.exe from the unpacked folder, not from inside the zip: the application needs the folder that sits beside it.
The first screen is a form. Every question has an answer filled in already, and on a first install the defaults are the right answers. A folder question gets a Browse button. A connection string, if you have your own PostgreSQL and choose to use it, gets a Test button that checks it before the install rather than during it.
The second screen builds. It brings up the database, applies the schema, indexes each of your three folders, and calibrates what can be calibrated. That takes minutes rather than seconds, and it streams a log while it works, because a window that goes quiet reads as a window that has crashed.
Your answers are saved as a configuration file, and it is that file which runs. The path is on screen before anything is built. You can re-run it, put it in CI, or hand it to a colleague and get the same install.
What it asks you
| Question | Answer on a first install |
|---|---|
| Project name | Anything. It labels every chunk. |
| Which embedder | fastembed, which runs on your own machine. |
| Where the database should live | Let it make one in Docker. |
| Where to keep its data | The suggested folder. |
| Documents folder | The suggestion. An empty folder is fine. |
| Code folder | The suggestion. |
| Agent memory folder | The suggestion. |
| Which project to wire Claude Code into | A project folder, or leave it blank to skip. |
A connection string is asked for only if you say you already have a PostgreSQL, which is why that row is not in the list above.
Rather do it by hand, or on macOS and Linux? The seven step install gets to the same place.
For when the download is back
Check that you got the file I published.
An unsigned download is exactly the sort of thing worth checking a hash on. The hash below belongs to the withdrawn 0.9.7 build and is kept only so anyone still holding that file can identify it. A corrected build will carry a different one.
Get-FileHash .\recall-install-0.9.7-windows-x64-UNSIGNED.zip -Algorithm SHA256The withdrawn 0.9.7 build hashes to
37c1450e6dbc6fafea8a2c1d2e33e6cf47ffbce783fd465f11842202bfd5a206PowerShell prints it in capitals. Case is not part of the value.
The reason this page exists
I am looking for beta testers, and the comments are the whole point.
Open an issue on GitHub. The link below opens one with the questions already in it, and you can delete any that do not apply.
Most useful to me
- The exact text of anything Windows said when you ran it.
- Your Windows version, and whether Smart App Control is on.
- The last line the log printed before it stopped, if it stopped.
- The wording of any question you had to read twice.
Least useful, and still welcome
An install that simply worked. That tells me the path is real on a machine which is not mine, and no amount of testing on my own machine can establish it.
Please do not paste a connection string into an issue. The installer scrubs passwords out of its own error messages for this reason, and a screenshot of a filled in form does not scrub itself.
The download is on hold, and the install is not.
0.9.7 could not open its own window. The fix is written; a corrected build has to be released before there is anything worth downloading here.
Install from the terminal instead