Metadata-Version: 2.4
Name: acm-memory
Version: 0.2.0
Summary: Consented, local, auditable autobiographical memory for MCP hosts (Claude Desktop and others), judged by a local model
Author: Phillip Peterkin
License: acm-memory — Proprietary Evaluation License
        
        Copyright (c) 2026 Phillip Peterkin. All rights reserved.
        
        Permission is granted to download, install, and use this software for
        personal or internal evaluation purposes only.
        
        You may not redistribute, sublicense, sell, or offer this software as a
        service; modify or create derivative works of it for distribution; or use
        it in production systems, in each case without prior written permission
        from the copyright holder.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ARISING
        FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
        IN THE SOFTWARE.
        
Keywords: mcp,memory,model-context-protocol,claude,ollama,local-first
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: httpx>=0.27
Requires-Dist: numpy>=1.26
Requires-Dist: mcp<2,>=1.28
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: build>=1.0; extra == "dev"
Requires-Dist: setuptools>=68; extra == "dev"
Dynamic: license-file

# acm-memory

**Consented, local, auditable autobiographical memory for your AI assistant.**

acm-memory is an MCP (Model Context Protocol) server that gives any MCP-capable
assistant — Claude Desktop is the primary target — durable memory of the facts
you choose to store. Tell your assistant where you keep the spare key today,
and it still knows next month, in a new conversation, after a restart.

## What makes it different

- **Nothing is stored without your explicit confirmation.** Every proposed
  memory is shown to you verbatim first — in Claude Desktop, as an interactive
  consent card. A statement that smells like an instruction rather than a fact
  is refused at commit time even after you say yes.
- **Corrections supersede; history stays visible.** When a fact changes, the
  old value is marked superseded, never silently overwritten — and you can ask
  to see the full history, or exactly what the model was shown, at any time.
- **Forget means forget.** Forgetting a fact tombstones its entire history
  through every rebuild, with a receipt. It cannot come back.
- **Local by construction.** Facts live on your machine. The only model
  acm-memory itself ever calls is a local judge (gemma4:12b via Ollama on
  loopback). No telemetry, no cloud calls of its own, no background capture —
  an MCP server only ever sees explicit tool calls.
- **Auditable.** A consent journal records every confirmation, denial, and
  forget — including *how* consent arrived (card click vs. model-relayed).
  Every read is access-logged per client.

## Requirements

- Windows 10/11 (first tester round), 16 GB RAM minimum; a GPU with 8 GB+
  VRAM is recommended (CPU-only works, slower).
- [Ollama](https://ollama.com) with the `gemma4:12b` model (~7.2 GB one-time
  download — `acm-doctor --pull` handles it).
- An MCP host (Claude Desktop recommended; consent cards render there).

## Install

```
uv tool install acm-memory
acm-doctor --pull
```

Then register the server in your MCP host. For Claude Desktop, add to
`claude_desktop_config.json` (use the absolute path to the installed shim,
e.g. `%USERPROFILE%\.local\bin\acm-memory-mcp.exe` on Windows):

```json
{ "mcpServers": { "acm-memory": { "command": "<absolute path to acm-memory-mcp>", "args": [] } } }
```

`acm-doctor` verifies the install end to end (`doctor=PASS`). Memory lives in
`~/.acm/memory` (override with `ACM_WORKSPACE`).

## Status

Evaluation release for testers. The memory behavior behind this package was
qualified against a measured production baseline (2,209/2,210 across twelve
scenario arms) with a pinned local judge. Feedback via the in-chat
`report_issue` tool.

## License

Proprietary — evaluation use. See LICENSE.txt.
