LocalRecall
Memory framework
First committed by mudler
Published in mudler/LocalRecall. Publisher page
988 GitHub stars
What it is
:brain: 100% Local Memory layer and Knowledge base for agents with WebUI
Summary from the brain’s metadata
brain: 100% Local Memory layer and Knowledge base for agents with WebUI
How it works
Memory model: Hybrid
AutoGineer overview, from the brain’s own files
Memory model: Hybrid. Folders: .github (agent config, 2 files); docs (docs, 2 files); pkg (source code, 6 files); test (tests, 29 files).
| Folder | Role | Files |
|---|---|---|
| .github | agent-config | 2 |
| docs | docs | 2 |
| pkg | source-code | 6 |
| test | tests | 29 |
| internal | folder | 4 |
| rag | folder | 83 |
| static | folder | 4 |
Requirements
Apps: Docker
Runtimes: Go
Databases: PostgreSQL
API keys (by name): LOCALRECALL_API_KEY, OPENAI_API_KEY
Set it up
- Not scanned by AutoGineerThe author’s README also describes installing it from a clone of its repository. Read its install section: AutoGineer did not scan that path. https://github.com/mudler/LocalRecall/blob/09926f78c8cf087e53ded3fd5be708a1fee34516/README.md#-quickstart
- Not scanned by AutoGineerThe author’s README also describes installing it with Docker Compose. Read its install section: AutoGineer did not scan that path. https://github.com/mudler/LocalRecall/blob/09926f78c8cf087e53ded3fd5be708a1fee34516/README.md#quick-start-with-docker-compose
First committed by mudler. Published in mudler/LocalRecall. Licence: MIT License.
Usage
AutoGineer’s guidance for this type of brain
Install the library in your own agent code and call it to store and retrieve memories; see its documentation for the API.
Documentation by mudler
A licence file holds personal contact details, so AutoGineer links to the files instead of copying them. Read the documentation at the source
148 files · 148 not served here
- .dockerignore (not served here)
- .github/workflows/image.yml (not served here)
- .github/workflows/test.yml (not served here)
- .gitignore (not served here)
- Dockerfile (not served here)
- Dockerfile.pgsql (not served here)
- LICENSE (not served here)
- Makefile (not served here)
- README.md (not served here)
- collections_registry.go (not served here)
- collections_registry_test.go (not served here)
- docker-compose.yml (not served here)
- docs/agent-memory-backend.md (not served here)
- docs/raw-vector-api.md (not served here)
- go.mod (not served here)
- go.sum (not served here)
- internal/init-db.sh (not served here)
- internal/init.sql (not served here)
- internal/postgres-init.sh (not served here)
- internal/versioning/version.go (not served here)
- main.go (not served here)
- pkg/chunk/chunk_test.go (not served here)
- pkg/chunk/chunking.go (not served here)
- pkg/chunk/suite_test.go (not served here)
- pkg/client/client.go (not served here)
- pkg/client/raw.go (not served here)
- pkg/client/raw_test.go (not served here)
- rag/collection.go (not served here)
- rag/collection_postgres_test.go (not served here)
- rag/collection_test.go (not served here)
- rag/engine.go (not served here)
- rag/engine/chromem.go (not served here)
- rag/engine/chromem_embedding_test.go (not served here)
- rag/engine/chromem_memory.go (not served here)
- rag/engine/chromem_memory_test.go (not served here)
- rag/engine/chromem_test.go (not served here)
- rag/engine/localai.go (not served here)
- rag/engine/localai/client.go (not served here)
- rag/engine/memory.go (not served here)
- rag/engine/mock.go (not served here)
- rag/engine/postgres.go (not served here)
- rag/engine/postgres_bm25_config_test.go (not served here)
- rag/engine/postgres_memory.go (not served here)
- rag/engine/postgres_memory_delete_test.go (not served here)
- rag/engine/postgres_memory_test.go (not served here)
- rag/engine/postgres_migration_test.go (not served here)
- rag/engine/postgres_planning_test.go (not served here)
- rag/engine/postgres_pool_test.go (not served here)
- rag/engine/postgres_registry.go (not served here)
- rag/engine/postgres_registry_test.go (not served here)
- rag/engine/postgres_scope.go (not served here)
- rag/engine/postgres_scope_test.go (not served here)
- rag/engine/postgres_test.go (not served here)
- rag/engine/postgres_timeouts_test.go (not served here)
- rag/engine/sanitize_test.go (not served here)
- rag/engine/suite_test.go (not served here)
- rag/engine/types.go (not served here)
- rag/internal/pgutil/config.go (not served here)
- rag/internal/pgutil/config_test.go (not served here)
- rag/internal/pgutil/index.go (not served here)
- rag/internal/pgutil/search.go (not served here)
- rag/memory.go (not served here)
- rag/memory_chromem_test.go (not served here)
- rag/memory_contract_test.go (not served here)
- rag/memory_delete.go (not served here)
- rag/memory_delete_postgres_test.go (not served here)
- rag/memory_delete_test.go (not served here)
- rag/memory_journal.go (not served here)
- rag/memory_postgres_test.go (not served here)
- rag/memory_test.go (not served here)
- rag/persistency.go (not served here)
- rag/persistency_mock_test.go (not served here)
- rag/persistency_test.go (not served here)
- rag/raw/cursor.go (not served here)
- rag/raw/cursor_test.go (not served here)
- rag/raw/postgres/acceptance_test.go (not served here)
- rag/raw/postgres/capabilities.go (not served here)
- rag/raw/postgres/cursors.go (not served here)
- rag/raw/postgres/explain_test.go (not served here)
- rag/raw/postgres/filters.go (not served here)
- rag/raw/postgres/lifecycle.go (not served here)
- rag/raw/postgres/lifecycle_test.go (not served here)
- rag/raw/postgres/operations_test.go (not served here)
- rag/raw/postgres/process_test.go (not served here)
- rag/raw/postgres/records.go (not served here)
- rag/raw/postgres/records_concurrency_test.go (not served here)
- rag/raw/postgres/records_test.go (not served here)
- rag/raw/postgres/registry.go (not served here)
- rag/raw/postgres/review_test.go (not served here)
- rag/raw/postgres/search.go (not served here)
- rag/raw/postgres/search_snapshot_test.go (not served here)
- rag/raw/postgres/search_test.go (not served here)
- rag/raw/postgres/service.go (not served here)
- rag/raw/postgres/service_error_test.go (not served here)
- rag/raw/store.go (not served here)
- rag/raw/store_test.go (not served here)
- rag/raw/types.go (not served here)
- rag/raw/types_test.go (not served here)
- rag/raw/validate.go (not served here)
- rag/raw/validate_test.go (not served here)
- rag/source_manager.go (not served here)
- rag/sources/config.go (not served here)
- rag/sources/git.go (not served here)
- rag/sources/router.go (not served here)
- rag/sources/router_test.go (not served here)
- rag/sources/suite_test.go (not served here)
- rag/sources/web.go (not served here)
- rag/sources/web_test.go (not served here)
- rag/suite_test.go (not served here)
- rag/types/result.go (not served here)
- raw_routes.go (not served here)
- raw_routes_test.go (not served here)
- routes.go (not served here)
- routes_test.go (not served here)
- static.go (not served here)
- static/index.html (not served here)
- static/js/collectionManager.js (not served here)
- static/localrecall_horizontal.png (not served here)
- static/logo.png (not served here)
- test/e2e/common_test.go (not served here)
- test/e2e/e2e_suite_test.go (not served here)
- test/e2e/e2e_test.go (not served here)
- test/e2e/hybrid_search_e2e_test.go (not served here)
- test/e2e/persistency_test.go (not served here)
- test/e2e/postgres_e2e_test.go (not served here)
- test/e2e/raw_legacy_owned_test.go (not served here)
- test/e2e/source_manager_test.go (not served here)
- test/integration/integration_suite_test.go (not served here)
- test/integration/postgres_integration_test.go (not served here)
- test/memory/check_contract_events.py (not served here)
- test/memory/check_events.py (not served here)
- test/memory/check_events_test.py (not served here)
- test/memory/database.sh (not served here)
- test/memory/required_tests.json (not served here)
- test/memory/verify.sh (not served here)
- test/raw/CI.md (not served here)
- test/raw/Dockerfile.postgres (not served here)
- test/raw/LOCALAI-SMOKE.md (not served here)
- test/raw/confinement.py (not served here)
- test/raw/confinement_test.py (not served here)
- test/raw/database.sh (not served here)
- test/raw/downstream-lock.json (not served here)
- test/raw/legacy.sh (not served here)
- test/raw/legacy_contract_test.go (not served here)
- test/raw/localai-smoke.sh (not served here)
- test/raw/templates/localai_consumer_test.go.txt (not served here)
- test/raw/unit.sh (not served here)
- test/raw/verify.sh (not served here)
Advantages
- Local-first: the memory stays in files or a database on your own machine (a rule-derived fact from the brain’s files, evidence: README.md)
- Open licence (MIT) (a rule-derived fact from the brain’s files)
Limitations
- Needs an API key (LOCALRECALL_API_KEY, OPENAI_API_KEY) (a rule-derived fact from the brain’s files, evidence: README.md)
- Needs a database (PostgreSQL) (a rule-derived fact from the brain’s files, evidence: README.md)
- Link-only: AutoGineer links to the files instead of serving them (a rule-derived fact from the brain’s files)
Security
Risk level: Low risk
This brain runs
This brain runs nothing: AutoGineer found no hooks, scripts, plugin code or MCP servers in its files.
- Low risk: network-instructions (Makefile:44)
- Low risk: scripts-present (test/raw/confinement.py)
- Low risk: scripts-present (test/raw/database.sh)
- Low risk: scripts-present (test/raw/legacy.sh)
- Low risk: scripts-present (test/raw/localai-smoke.sh)
- Low risk: scripts-present (test/raw/unit.sh)
Attribution and licence
- First committed by
mudler
- Publisher
- Ettore Di Giacinto (Community)
- Source
- mudler/LocalRecall · commit 09926f7
- Licence
- MIT License (A licence file holds personal contact details, so AutoGineer links to the files instead of copying them.)
- Synced
- Contributors
- mudler, localai-bot, walcz-de, karl-cardenas-coding, licaon-kter
AutoGineer is not affiliated with or endorsed by mudler.
Install from source
A licence file holds personal contact details, so AutoGineer links to the files instead of copying them. mudler/LocalRecall at 09926f7