{"id":47962637,"url":"https://github.com/scott-walker/mememory","last_synced_at":"2026-04-04T10:00:53.339Z","repository":{"id":349019639,"uuid":"1196454047","full_name":"scott-walker/mememory","owner":"scott-walker","description":"Persistent semantic memory for AI agents. MCP server with PostgreSQL + pgvector. All data stays local.","archived":false,"fork":false,"pushed_at":"2026-04-03T21:18:34.000Z","size":189,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-03T21:38:51.378Z","etag":null,"topics":["ai-agents","claude-code","embeddings","golang","local-first","mcp","mcp-server","ollama","pgvector","postgresql","privacy","rag","semantic-memory","vector-database"],"latest_commit_sha":null,"homepage":"https://scott-walker.github.io/mememory/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scott-walker.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-30T18:03:04.000Z","updated_at":"2026-04-03T21:18:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/scott-walker/mememory","commit_stats":null,"previous_names":["scott-walker/mememory"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/scott-walker/mememory","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scott-walker%2Fmememory","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scott-walker%2Fmememory/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scott-walker%2Fmememory/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scott-walker%2Fmememory/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scott-walker","download_url":"https://codeload.github.com/scott-walker/mememory/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scott-walker%2Fmememory/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31395450,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T09:13:02.600Z","status":"ssl_error","status_checked_at":"2026-04-04T09:13:01.683Z","response_time":60,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-agents","claude-code","embeddings","golang","local-first","mcp","mcp-server","ollama","pgvector","postgresql","privacy","rag","semantic-memory","vector-database"],"created_at":"2026-04-04T10:00:52.707Z","updated_at":"2026-04-04T10:00:53.325Z","avatar_url":"https://github.com/scott-walker.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# MEMEMORY\n\n**Persistent semantic memory for AI agents**\n\nStore, search, and deliver knowledge across sessions. MCP server with PostgreSQL + pgvector. All data stays local.\n\n[![CI](https://github.com/scott-walker/mememory/actions/workflows/ci.yml/badge.svg)](https://github.com/scott-walker/mememory/actions/workflows/ci.yml)\n[![Release](https://img.shields.io/github/v/release/scott-walker/mememory)](https://github.com/scott-walker/mememory/releases/latest)\n[![Go Report Card](https://goreportcard.com/badge/github.com/scott-walker/mememory)](https://goreportcard.com/report/github.com/scott-walker/mememory)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\n\n[Documentation](https://scott-walker.github.io/mememory/) · [Quick Start](#quick-start) · [MCP Tools](#mcp-tools) · [Releases](https://github.com/scott-walker/mememory/releases)\n\n\u003c/div\u003e\n\n---\n\n## What it does\n\n- **Stores** memories with scope, type, weight, tags, and TTL\n- **Searches** by semantic similarity with hierarchical scope inheritance\n- **Delivers** accumulated rules and knowledge to agents at session start\n- **Detects** contradictions when new memories conflict with existing ones\n- **Evolves** beliefs through supersede/weight mechanisms without losing history\n\n## Quick Start\n\n```bash\ngit clone https://github.com/scott-walker/mememory.git\ncd mememory\ncp .env.example .env\ndocker compose -f docker/docker-compose.yml up -d\n```\n\nAdd to Claude Code config (`~/.claude/.claude.json` → `mcpServers`):\n\n```json\n{\n  \"memory\": {\n    \"type\": \"stdio\",\n    \"command\": \"docker\",\n    \"args\": [\"exec\", \"-i\", \"mememory-admin\", \"memory-server\"],\n    \"env\": {}\n  }\n}\n```\n\nAdmin UI at `http://localhost:4200`.\n\n## Architecture\n\n```\nAgent ──stdio──▶ memory-server (Go, MCP)\n                      │\n              ┌───────┴───────┐\n              ▼               ▼\n         PostgreSQL       Ollama / OpenAI\n        (pgvector)       (embeddings)\n```\n\nOne `docker compose up` — no Go, Node.js, or other toolchains needed.\n\n## MCP Tools\n\n| Tool | Description |\n|------|-------------|\n| `remember` | Store a memory with scope, type, tags, optional TTL |\n| `recall` | Semantic search with hierarchical scope inheritance |\n| `forget` | Delete by ID |\n| `update` | Update content, re-embed |\n| `list` | List with filters |\n| `stats` | Count breakdown by scope/project/type |\n| `help` | Usage documentation |\n\n## Key Concepts\n\n**Scopes** — global (everywhere), project (one project), persona (one agent role within a project). Recall searches hierarchically: persona sees global + project + own.\n\n**Types** — rule, feedback, fact, decision, context. Rules and feedback load automatically at session start.\n\n**Scoring** — `similarity × scope_weight × memory_weight × temporal_decay`. Recent, specific, high-weight memories rank higher.\n\n**Contradiction detection** — warns when a new memory is \u003e75% similar to existing ones. Does not block storage.\n\n**Session bootstrap** — all global rules and feedback are sent to the agent as MCP instructions at connection time. No config needed per project.\n\n## Embedding Providers\n\n| Provider | Model | Dimension | Setup |\n|----------|-------|-----------|-------|\n| **Ollama** (default) | nomic-embed-text | 768 | Included in Docker stack |\n| **OpenAI** | text-embedding-3-small | 1536 | Set `EMBEDDING_PROVIDER=openai` + API key |\n\n## Documentation\n\n- [Full Documentation](https://scott-walker.github.io/mememory/) — guides, reference, API\n- [Architecture](docs/architecture.md) — system design, data flow\n- [Memory Model](docs/memory-model.md) — scopes, types, scoring, belief evolution\n- [MCP Tools Reference](docs/mcp-tools.md) — all tools and parameters\n- [Setup Guide](docs/setup.md) — installation, configuration, development\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscott-walker%2Fmememory","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscott-walker%2Fmememory","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscott-walker%2Fmememory/lists"}