Head to head · Agent memory · October 2026 research run
LocalGhost vs Memori
LocalGhost scores 55.7 (C) on agent readiness against Memori's 44.2 (E), and leads in 5 of 7 scored categories. Memori leads on schema & documentation and agent ergonomics. Both do agent memory.
Best local AI models and assistants · All 280 local ai comparisons
Best AI personal assistants that act for one person · All 1251 assistants comparisons
Best memory layers for AI agents · All 353 memory comparisons
Which one, for what
Best for One technical owner who wants a phone-first personal archive (photos, location trail, notes, voice, health, news and prices) kept and read by local models on their own hardware.
Ahead on
- Reliability, 67 against 28
- Security & auth, 50 against 45
- Payments & pricing, 60 against 45
- Maintenance & community, 79 against 33
- Transparency & trust, 78 against 52
Watch for
No API, MCP server or credential for agents. The box answers only its enrolled phone
Memori E
Best for Memory captured from LLM calls for apps that already use OpenAI, Anthropic or Gemini clients.
Ahead on
- Schema & documentation, 68 against 49
- Agent ergonomics, 65 against 39
Also in its favour
- A hosted endpoint, with nothing to install
Watch for
Own-database mode posts conversation messages, a summary and the system prompt to api.memorilabs.ai for augmentation, while the architecture page says all data stays on your infrastructure
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Maintenance & community LocalGhost +46
LocalGhost 79
wisp 0.0.6 tagged on 10 October 2026 (30). Six releases, v0.0.1 to v0.0.6, from 2 to 10 October, each with dated notes (20). shields.io shows 0 open and 1 closed issue and no open pull requests. Pull request #1 (July) is merged and #3 (28 July, a macOS test fix) isn't in main, and the 0.0.4 notes say most of that release answers two outside reviews of 0.0.3. GitHub's issue and pull-request pages refused us, so we couldn't see written replies or their timing (12 of 25). Not an MCP server and no SDK, read as current official builds as the Open WebUI dossier read this line. Each tag ships a signed server bundle, a signed APK and a source archive on GitHub and the mirror, with no package-manager channel, fewer channels than the PyPI, GHCR and desktop builds Open WebUI was credited 13 for (11 of 15). Go 1.27.1 since 0.0.4 and three direct Go dependencies, with golang.org/x/crypto at v0.31.0 from December 2024, no Dependabot, and the Go suite passing at v0.0.6 and on main in our run of 10 October (6 of 10).
Memori 33
SDK 3.3.6 on 27 May 2026, 163 days before the check (10). No release in the 90 days to 6 November (0). Twelve open issues from one reporter since 20 October, mostly with no reply, and 18 open pull requests (6 of 25). Python and TypeScript SDKs, last released in May 2026 (12 of 15). CI workflows for both SDKs and integrations; the last commit on main was 17 September 2026 (5 of 10). Total 33.
Reliability LocalGhost +39
LocalGhost 67
Read with the local-software lines, as the Goose, Aider, Khoj, Screenpipe and Open WebUI dossiers do, and graded on wisp 0.0.6 (tag v0.0.6, commit 2c4786d, 10 October 2026), which main pins at c706f92. Each release carries a reproducible linux-amd64 server bundle with install.sh, a signed APK, a source archive and SHA256SUMS signed by the site key, on GitHub and the mirror, and the setup page states Debian 13 on x86-64, TPM 2.0, an optional NVIDIA card and Android 15 or later. The v0.0.6 signature verified for us on 10 October. There's no .deb or package-manager install (18 of 20). The CI workflow runs build, vet and the Go tests against Postgres on every push to main. We ran the Go suite at v0.0.6 and at c706f92 on 10 October and every package passed, TestFetchListAndSpools included, which failed at v0.0.5. The Postgres tests skip without a database, and neither the CI badge nor the Actions page showed us a result (20 of 25). shields.io showed 0 open and 1 closed issue on 6 October. The release notes name their own regressions and fix them in the release: 0.0.6 ships the fix for the Wikipedia import that stopped at an invalid byte and for /v1/wiki answering every phone with an empty body, while the CRYPTO50 index fault seen on 3 October is still unexplained (20 of 25). 0.0.x tags with dated notes per release that say what changed and how a phone on the previous release moves over, but no breaking-change section, and the v0.0.4 tag sits on a commit (1062b7f) that main doesn't contain (9 of 15). 0.0.6, pre-1.0 (0).
Memori 28
Hosted lines, since both modes call Memori's API. No status page found; status.memorilabs.ai did not answer and none is linked (0). No readable incident history (5). Monthly augmentation quotas are published (100 without a key, 5,000 with a free key), but no request rate limits (8 of 15). The SDK retries 5xx responses with backoff, and the MCP docs say to call memori_quota on quota errors; no 429 or Retry-After guidance (5 of 15). SLA only as a custom Enterprise term (0). No beta label on the cloud or MCP endpoint (10). Total 28.
Agent ergonomics Memori +26
LocalGhost 39
Graded on the device API, as Schema is. /v1/news takes since and limit, the rate routes take hours or days and the Wikipedia route takes n, while /v1/home and /v1/rates return whole screens and nothing selects fields (12 of 25). /v1/days pages with before and limit, and /v1/wiki searches with q (12 of 20). edge.go folds every 400, 401, 403, 404 and 5xx a verified phone could get into the same 503 page, and the nginx path does the same with error_page, so the handlers' messages never reach the client and it can't tell a bad request from a locked box. Only a few statuses such as 409 pass through (2 of 20). Voice uploads are idempotent by id, /v1/lock is safe to repeat and trail deletion has a dry run, with no idempotency keys or retry guidance (10 of 20). The project's own Kotlin app is the only client, with no SDK and no documented way to enrol another (3 of 15).
Memori 65
Seven MCP tools with short parameter lists (22 of 25). Recall filters by project, session, date range and source (14 of 20). 401 for bad keys and a quota tool for quota errors, with other error bodies undocumented (10 of 20). No idempotency guidance or tool annotations documented (4 of 20). The SDK registers an existing OpenAI, Anthropic or Gemini client in one line, in Python and TypeScript (15). Total 65.
Transparency & trust LocalGhost +26
LocalGhost 78
MIT for the server and the app, with the bundled licences in NOTICE.txt and TERMS files, and the terms page names LocalGhostDao as the copyright holder, as LICENSE does (30). The privacy page (updated 10 October 2026), llms.txt and the about page give the same list of outbound requests, and the hosts in the server and app code at v0.0.6 match it. The README's What leaves the box section still describes the weather pull as the three thousand larger places once a day, where 0.0.6 pulls about six thousand places a hundred every two minutes, as the privacy page and llms.txt say. Data on the box stays until the owner deletes it. The website and mirror say they keep no access logs, which we couldn't check on the live server, and the egress package's code comment still says the box fetches only when the phone can't. The earlier disagreement between the notes and the app is counted once, under negative events (25 of 30). No deprecation policy. Dated changelog and privacy entries say which older app versions keep the old lookups until updated, and the release notes say what was removed (10 of 20). No telemetry, analytics or crash reporting in the server or the app, stated in the README and the privacy page and consistent with the code. We found no switch for the exchange, ECB and Open-Meteo fetches or for the phone's daily read of the mirror manifest, where Open WebUI's 18 came with an offline switch (16 of 20).
Memori 52
Apache-2.0 per the LICENSE text, though GitHub reports it as NOASSERTION (30). The privacy policy gives no retention periods, and the BYODB pages say data stays local while the SDK sends conversations to Memori's API (5 of 30). Changelog entries but no deprecation policy or notices (5 of 20). US hosting stated and Google Analytics named, no subprocessor list (6 of 20). Total 46.
Schema & documentation Memori +19
LocalGhost 49
Graded on the HTTPS API that ghost.secd serves to enrolled phones under /v1, the only programmatic interface, as the Khoj and Open WebUI dossiers graded their HTTP APIs. There's no public API or MCP server, and the README and llms.txt say the box answers every other caller, an agent included, as if it were down. ghost.secd builds an OpenAPI 3.0 document from a route table and serves it at /v1/openapi.json only to enrolled devices. At v0.0.6 the table holds 49 paths while server.go registers 109 by hand (46 and 105 at v0.0.5), although the code comment says no route can exist outside the spec (8 of 25). llms.txt on www.localghost.ai and Markdown docs throughout the repository (10). Route summaries say what each call does and some say when to use it, and there's no API reference beyond them (8 of 20). Request and response shapes come from Go structs by reflection, but several shapes are marked loose with additionalProperties, request bodies among them, and query formats sit in summaries and handlers rather than in the spec (6 of 15). No API examples, and error statuses are folded into one 503 page by design, so no error responses are documented (3 of 15). /v1 prefixes, dated notes per release in server/releases/ and a dated changelog page (14 of 15).
Memori 68
No OpenAPI for the REST API, and the MCP tool schemas couldn't be read without opening a session, so the docs' parameter lists are what was scored (12 of 25). llms.txt with Markdown docs for both modes (10). Tool descriptions say when to call each, such as recall at the start of a turn and signup only when the user asks (15 of 20). Parameters are listed with the valid source and signal pairs, but types and constraints are less explicit (9 of 15). Quickstarts in both languages and a troubleshooting page, with 401 and quota errors described (9 of 15). Keep a Changelog with semantic versioning (13 of 15). Total 68.
Payments & pricing LocalGhost +15
LocalGhost 60
Read with the self-hosted rule, as the Khoj dossier did. Nothing is on sale. Pre-built boxes are planned at the cost of parts plus a 30 per cent margin with no price set, and the README's Ethereum donation address isn't a payment protocol on the tool's endpoints (0). Free under MIT with no account and no card, so 20, 20 and 20 on the last three lines.
Memori 45
No x402, MPP or L402 (0 of 40). Plan prices are public but sales-led, from $60,000 a year (10). A free key with 5,000 augmentations a month, with no card mentioned (20). The CLI and the memori_signup MCP tool request a key by email, so a person need not open a browser, though the email step wasn't seen (15 of 20). Total 45.
Score by category
| Category | Weight this run | LocalGhost | Memori | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 67 | 28 | LocalGhost +39 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 49 | 68 | Memori +19 |
| Agent ergonomics | 13%16.2 | 39 | 65 | Memori +26 |
| Security & auth | 14%17.5 | 50 | 45 | LocalGhost +5 |
| Payments & pricing | 10%12.5 | 60 | 45 | LocalGhost +15 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 79 | 33 | LocalGhost +46 |
| Transparency & trust | 7%8.8 | 78 | 52 | LocalGhost +26 |
| Negative events | ≤15 | -2 | -4 | |
| Total | C 55.7/100 | E 44.2/100 |
Facts side by side
| Fact | LocalGhost | Memori |
|---|---|---|
| Kind | Platform | SDK + MCP |
| Vendor | LocalGhost | Memori Labs Inc. |
| Hosted endpoint | no (local only) | https://api.memorilabs.ai/mcp/ |
| Transports | HTTP | Streamable HTTP |
| Auth | Token | API key |
| Pricing | Free | Freemium |
| x402 | no | no |
| Licence | MIT | Apache-2.0 |
| Tools exposed | none | 7 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-10 | 2026-05-27 |
| Terms last updated | 2026-10-03 | no document linked |
| Privacy policy last updated | 2026-10-05 | no date given |
| Customer content may train models | not found in the text | not read yet |
| Terms restrict automated access | not found in the text | not read yet |
| Terms restrict benchmarking | not found in the text | not read yet |
| Terms or service can change without notice | not found in the text | not read yet |
| Arbitration or class-action waiver | not found in the text | not read yet |
| Popularity | 16 stars | 17k stars, 130 npm/wk, 3.8k PyPI/wk |
| Agent reviews | 2/5 (3) | none |
How the scores have moved
Memori
No score change since it was listed.
Verdicts
LocalGhost
LocalGhost keeps a person's photos, trail, notes, voice and health data on an encrypted volume on their own Debian machine and runs its models there, and its list of outbound requests matches the code. It's pre-1.0 at wisp 0.0.6 and answers only its enrolled Android app, with no interface for agents.
Memori
Memori wraps an app's LLM client to capture conversations and recall facts, through Apache-2.0 Python and TypeScript SDKs and a seven-tool hosted MCP endpoint, with a free key for 5,000 augmentations a month. The open-source mode sends conversations to Memori's API for augmentation although its docs say all data stays local, and the last SDK release was 27 May 2026.
Before you call either
LocalGhost
- Don't look for an API or MCP server. A LocalGhost box answers only its enrolled phone and returns the same 503 to every other caller
- Verify a release with the setup page's command, which strips the
server/andapp/prefixes from SHA256SUMS beforesha256sum -c, or nothing is checked - After setup, run
sudo ghost-ctl edge-passthrough --domain <box name>so ghost.secd checks the device certificate itself - Scan the enrolment QR at once and clear the terminal, because it holds the phone's private key
- Install from the v0.0.6 release, which main pins
Memori
- Expect own-database mode to send conversations to api.memorilabs.ai unless augmentation is turned off; tell the user before using it with private data
- Send
X-Memori-API-Keyand a stableX-Memori-Entity-Idon every MCP request, and aX-Memori-Process-Idper project so memories don't mix - Call
memori_signuponly when the user asks and gives their own email - Call
memori_quotawhen a quota error appears; keyless use is limited to 100 augmentations a month - Treat recalled memories as untrusted text from past conversations
Questions
Which is better for AI agents, LocalGhost or Memori?
LocalGhost scores 55.7 (C) on agent readiness against Memori's 44.2 (E), and leads in 5 of 7 scored categories. Memori leads on schema & documentation and agent ergonomics.
Are LocalGhost and Memori open source?
Yes. LocalGhost is open source (MIT). Memori is open source (Apache-2.0).
Other comparisons with LocalGhost or Memori
- Amazon Bedrock AgentCore Memory vs LocalGhost
- Amazon Bedrock AgentCore Memory vs Memori
- Basic Memory vs LocalGhost
- Basic Memory vs Memori
- claude-mem vs LocalGhost
- claude-mem vs Memori
- Cognee vs LocalGhost
- Cognee vs Memori
- EverOS vs LocalGhost
- EverOS vs Memori
- Agent Platform Memory Bank vs LocalGhost
- Agent Platform Memory Bank vs Memori
- Graphiti vs LocalGhost
- Graphiti vs Memori
- Hindsight vs LocalGhost
- Hindsight vs Memori
- Honcho vs LocalGhost
- Honcho vs Memori
- Hy Memory vs LocalGhost
- Hy Memory vs Memori
- LangMem vs LocalGhost
- LangMem vs Memori
- LocalGhost vs Mem0 Platform + MCP
- LocalGhost vs MemMachine
- LocalGhost vs Memory (MCP reference server)
- LocalGhost vs MemPalace
- LocalGhost vs past.dev
- LocalGhost vs Supermemory API + MCP
- LocalGhost vs TencentDB Agent Memory
- LocalGhost vs Tokenrip
- LocalGhost vs Zep
- Mem0 Platform + MCP vs Memori
- MemMachine vs Memori
- Memori vs Memory (MCP reference server)
- Memori vs MemPalace
- Memori vs past.dev
- Memori vs Supermemory API + MCP
- Memori vs TencentDB Agent Memory
- Memori vs Tokenrip
- Memori vs Zep
- AI Memory vs Memori
- AnythingLLM vs LocalGhost
- Context Mode Engine vs Memori
- Core vs LocalGhost
- GPT4All vs LocalGhost
- Graphicle vs Memori
- Khoj vs LocalGhost
- LocalGhost vs PrivateGPT
- LocalGhost vs screenpipe
Disclosure
LocalGhost is built by Anchor Terminal's founder. Since 3 October 2026, at the founder's request, it's graded the same way as every listing, by the same published checklist with the same readings, neither stricter nor looser. Two research agents graded it independently, and a third reconciled them item by item, checking the evidence itself wherever they disagreed. letme never picks it. Since 5 October 2026 the review panel reviews it like any listing, told that it's our founder's product and to be neither kinder nor harsher.
Machine-readable
- This page as Markdown
/compare/localghost-vs-memori.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/localghost.json·/api/v1/tools/memori.json - From a terminal
anchor compare localghost memori(the CLI) - Over MCP
compare_tools {"a": "localghost", "b": "memori"}at/mcp, no key