Memorizer
Memory serverOfficial Petabridge project
Created by Dario Griffo
Published in petabridge/memorizer. Publisher page
221 GitHub stars
What it is
Vector-search powered agent memory MCP server
AutoGineer overview, from the brain’s own files
Memorizer is a dedicated memory service designed to give AI agents persistent, long-term storage capabilities. It functions as an MCP server, allowing agents to store, retrieve, and semantically search through structured memories. Built on .NET and PostgreSQL with the pgvector extension, it supports advanced features like versioning, audit trails, relationship mapping for knowledge graphs, and workspace-based organization. It includes a web-based UI for manual management and provides a robust framework for agents to proactively manage their own knowledge base, ensuring that insights and context are preserved across sessions.
How it works
Memory model: Hybrid
AutoGineer overview, from the brain’s own files
Memorizer runs as a service that connects to an AI agent via the Model Context Protocol. It stores data in a PostgreSQL database, utilizing vector embeddings for semantic similarity searches. The system organizes information into workspaces and projects, supports metadata tagging, and tracks version history for all memory entries. Agents interact with the service through a set of defined tools for CRUD operations, metadata updates, and relationship creation, enabling the construction of an interconnected knowledge graph.
| Folder | Role | Files |
|---|---|---|
| .github | agent-config | 4 |
| docs | docs | 37 |
| scripts | scripts | 3 |
| src | source-code | 195 |
| .config | folder | 1 |
The agent writes
- Directory.Packages.props evidence: CLAUDE.md
- AGENT.md evidence: README.md
Requirements
Databases: PostgreSQL
Works with: Claude Code, OpenCode, Devin (ex-Windsurf)
Set it up
- 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/petabridge/memorizer/blob/d3e90fa8d6b50254d65a3ffa3acc35e0204c5c90/README.md#-quick-start-public-image
Created by Dario Griffo. Published in petabridge/memorizer. Licence: MIT License.
Usage
AutoGineer overview, from the brain’s own files
- Connects to AI agents via the Model Context Protocol (MCP) to provide persistent memory.
- Enables semantic search to retrieve relevant context based on task descriptions.
- Supports proactive memory management where agents store, update, and relate information autonomously.
- Provides a web interface for human users to manage, audit, and organize memory entries.
- Facilitates knowledge graph construction by creating explicit relationships between memory nodes.
- “Search for previous instructions on how to configure the build pipeline.”
- The agent queries the memory server using semantic similarity to find relevant 'how-to' notes and returns the specific configuration steps.
- “Store this new insight about the project architecture as a reference.”
- The agent saves the markdown content to the memory server with appropriate tags and metadata for future retrieval.
- “Link this new task to the related project requirements memory.”
- The agent creates a relationship edge between the new memory ID and the existing requirements memory ID.
Documentation by Dario Griffo
Memorizer
Image: Docker Pulls Image: GitHub License Image: GitHub Actions Workflow Status Image: GitHub Release
Memorizer is a .NET-based service that allows AI agents to store, retrieve, and search through memories using vector embeddings. It leverages PostgreSQL with the pgvector extension to provide efficient similarity search capabilities.
Image: Memorizer - Memory List
Key features:
Workspaces & Projects - Organize memories into hierarchical workspaces and projects with status tracking
Store structured memories with vector embeddings
Retrieve memories by ID
Semantic search through memories using vector similarity
Filter search results using tags
Edit memory content with automatic versioning and change tracking
Update memory metadata (title, type, tags, confidence) independently
Revert memories to previous versions with full audit trail
Create relationships between memories to form knowledge graphs
Web UI for manually adding, editing, deleting, viewing memories, and managing versions
Provider Settings - Configure embedding and LLM providers through the UI (Ollama, OpenAI, and compatible APIs)
MCP (Model Context Protocol) integration for easy use with AI agents
Light & Dark theme support
Image: Memorizer - Workspace Detail
Technologies
.NET 10.0
PostgreSQL with pgvector extension
Model Context Protocol (MCP)
ASP.NET Core
Akka.NET for background jobs, such as re-embedding memories if you change algorithms
Npgsql for PostgreSQL connectivity
📖 Documentation
Installation with Docker
🐳 Quick Start (Public Image)
The easiest way to get started is using the pre-built Docker image and our docker-compose.yml file:
docker-compose up -dThis will:
Download and run the latest
petabridge/memorizerimage from Docker HubStart PostgreSQL with pgvector (port 5432)
Start PgAdmin (port 5050)
Start Ollama (port 11434)
Start Memorizer API (port 5000)
View the Memorizer Web UI on http://localhost:5000.
🚀 Local Development Builds
If you want to build and run from source:
Prerequisites
Docker and Docker Compose
.NET 10.0 SDK
1. Build and Publish Local Container
# From solution root directory
# Build and publish the .NET container
dotnet publish -c Release /t:PublishContainerThis creates a container image named memorizer:latest.
2. Start Infrastructure and Application
docker-compose -f docker-compose.local.yml up -dThis starts the same services but uses your locally built image.
Upgrading to Memorizer 2.0
NOTE
The upgrade from Memorizer 1.x to 2.0 is designed to work automatically. All schema migrations run on startup and have been thoroughly tested. Your existing memories will be preserved and continue to work as expected.
CAUTION
We recommend backing up your database before upgrading, as a standard best practice. Memorizer 2.0 runs automatic schema migrations on startup that alter tables and add new columns. While we've tested these migrations extensively, having a backup ensures you can recover in the unlikely event that something goes wrong.
Backup Instructions
NOTE
The container names below (e.g.,memorizer-postgres) are based on the defaultdocker-compose.yml. If you've customized your Docker Compose file, adjust the container name accordingly.
Before pulling the new Memorizer 2.0 image, create a PostgreSQL dump of your existing database:
# Create a full database backup
docker exec postgmem-postgres pg_dump -U postgres postgmem > memorizer-backup-$(date +%Y%m%d).sql
# Or use pg_dump with compression
docker exec postgmem-postgres pg_dump -U postgres -Fc postgmem > memorizer-backup-$(date +%Y%m%d).dumpTo restore from a backup if needed:
# Restore from SQL dump
docker exec -i postgmem-postgres psql -U postgres postgmem < memorizer-backup-20250207.sql
# Or restore from compressed dump
docker exec -i postgmem-postgres pg_restore -U postgres -d postgmem memorizer-backup-20250207.dumpUpdating
# make sure you have created a backup before starting here
git pull
docker-compose down
docker-compose pull memorizer
docker-compose up -dBreaking Changes in 2.0
MCP endpoint moved from
/to/mcp. Update your MCP client configurations fromhttp://localhost:5000tohttp://localhost:5000/mcp.Web UI moved from
/uito/. The Web UI is now at the root path.New database tables: Workspaces, projects, provider settings, data migrations, and archetype tracking are added automatically on first startup.
Existing memories are preserved: All your V1 memories will continue to work. They will appear as "Unfiled" until you organize them into workspaces and projects.
After Upgrading
TIP
Once the upgrade is complete, ask your AI agent to suggest workspaces and projects to organize your existing memories into. Memorizer 2.0's workspace and project system helps you keep memories structured and easy to find - and your agent can analyze your existing memories to recommend a good organizational scheme.
🔌 MCP Configuration Example
To use Memorizer with any MCP-compatible client, add the following to your configuration (e.g., mcp.json):
{
"memorizer": {
"url": "http://localhost:5000/mcp"
}
}This uses the modern Streamable HTTP transport (MCP spec 2025-03-26+). Note that the MCP endpoint is at /mcp (changed from / in 2.0).
🖥️ Web UI
Memorizer includes a web-based user interface for managing memories through your browser.
Access the Web UI
Once the application is running (via docker-compose up -d), you can access the Web UI at:
Features
Memory Management: Create, view, edit, and delete memories with full CRUD operations
Version Control: View version history, compare versions with visual diffs, and revert to previous versions
Search & Filter: Search memories using semantic similarity and filter by tags
Statistics Dashboard: View memory counts, tag distributions, and system statistics
MCP Configuration: Get the MCP configuration JSON for connecting clients at
/mcp-config
The Web UI provides a user-friendly interface for all Memorizer functionality, making it easy to manage your AI agent's memory without needing to use the MCP tools directly.
🧠 Example System Prompt for LLMs
IMPORTANT
⚡ Pro Tip: Add this system prompt to yourAGENT.md, Cursor Rules files, or any AI agent configuration! This will dramatically improve how often and effectively your LLM uses the Memorizer service for persistent memory management.
You have access to a long-term memory system via the Model Context Protocol (MCP) at the endpoint
memorizer. Use the following tools:Storage & Retrieval:
store: Store a new memory. Parameters:type,text(markdown),source,title,tags,confidence,relatedTo(optional, memory ID),relationshipType(optional).
searchMemories: Search for similar memories using semantic similarity. Parameters:query,limit,minSimilarity,filterTags.
get: Retrieve a memory by ID. Parameters:id,includeVersionHistory,versionNumber.
getMany: Retrieve multiple memories by their IDs. Parameter:ids(list of IDs).
delete: Delete a memory by ID. Parameter:id.Editing & Updates:
edit: Edit memory content using find-and-replace (ideal for checking off to-do items, updating sections). Parameters:id,old_text,new_text,replace_all.
updateMetadata: Update memory metadata (title, type, tags, confidence) without changing content. Parameters:id,title,type,tags,confidence.Relationships & Versioning:
createRelationship: Create a relationship between two memories. Parameters:fromId,toId,type(e.g., 'example-of', 'explains', 'related-to').
revertToVersion: Revert a memory to a previous version. Parameters:id,versionNumber,changedBy.All edits and updates are automatically versioned, allowing you to track changes and revert if needed. Use these tools to remember, recall, edit, relate, and manage information as needed to assist the user.
License
MIT
💖 Attribution
Made with ❤️ by Petabridge
Originally forked from Dario Griffo's postg-mem server
docs/embedding-models.md
Supported Embedding Models
This document provides guidance on choosing and configuring embedding models for Memorizer.
What Are Embedding Models?
Embedding models convert text into dense numerical vectors (embeddings) that capture semantic meaning. These vectors enable similarity search - finding memories that are conceptually related to a query, not just keyword matches.
Memorizer uses these embeddings for:
Semantic search: Find memories by meaning, not just exact text
Metadata search: Search by title, tags, and type combined
Similarity ranking: Order results by relevance
Supported Providers
Memorizer works with any embedding API that follows the Ollama embedding format:
POST /api/embed
{
"model": "model-name",
"input": "text to embed",
"truncate": true
}Input longer than the model's context window is truncated to fit rather than
rejected, so long memories still get an embedding; only the first part of the text
(256 tokens for all-minilm) contributes to it. If long memories matter for search,
choose a model with a larger context window.
Ollama (Recommended for Local)
Ollama provides an easy way to run embedding models locally:
# Install Ollama
curl -fsSL https://ollama.ai/install.sh | sh
# Pull an embedding model
ollama pull all-minilm
# Verify it's working
curl http://localhost:11434/api/embed -d '{
"model": "all-minilm",
"input": "test"
}'Other Compatible Providers
LocalAI: Self-hosted, OpenAI-compatible API
LM Studio: Desktop app with API server mode
vLLM: High-performance inference server
Popular Embedding Models
Quick Reference Table
| Model | Dimensions | Size | Speed | Quality | Best For |
|---|---|---|---|---|---|
all-minilm | 384 | 23MB | Fast | Good | General use, limited resources |
all-minilm:33m-l12-v2-fp16 | 384 | 66MB | Fast | Good | Better precision than base |
nomic-embed-text | 768 | 274MB | Medium | Better | Balanced quality/speed |
mxbai-embed-large | 1024 | 670MB | Slow | Best | Maximum quality |
bge-base-en-v1.5 | 768 | 438MB | Medium | Better | English text |
bge-large-en-v1.5 | 1024 | 1.3GB | Slow | Best | English text, high quality |
bge-m3 | 1024 | 1.2GB | Slow | Best | Multilingual |
snowflake-arctic-embed | 1024 | 1.1GB | Slow | Best | Retrieval tasks |
qwen3-embedding:0.6b | 1024 | 639MB | Fast | Better | Lightweight multilingual |
qwen3-embedding:4b | 2560 | 2.5GB | Medium | Best | High quality multilingual |
qwen3-embedding:8b | 4096 | 4.7GB | Slow | State-of-art | Maximum quality, code retrieval |
Detailed Model Information
all-minilm (Recommended Default)
ollama pull all-minilmDimensions: 384
Context: 256 tokens
Strengths: Very fast, low memory, good general performance
Weaknesses: Smaller context window, lower quality on complex queries
Use when: Running on limited hardware, need fast responses, memories are short
nomic-embed-text
ollama pull nomic-embed-textDimensions: 768
Context: 8192 tokens
Strengths: Long context, good quality, reasonable speed
Weaknesses: Larger than minilm, requires more memory
Use when: Memories contain longer documents, need better semantic understanding
mxbai-embed-large
ollama pull mxbai-embed-largeDimensions: 1024
Context: 512 tokens
Strengths: High quality embeddings, good for retrieval
Weaknesses: Slower, requires more storage for embeddings
Use when: Quality is priority, have adequate compute resources
bge-large-en-v1.5
ollama pull bge-large-en-v1.5Dimensions: 1024
Context: 512 tokens
Strengths: Excellent quality for English, well-benchmarked
Weaknesses: English-only, large model size
Use when: English content only, maximum retrieval quality needed
bge-m3
ollama pull bge-m3Dimensions: 1024
Context: 8192 tokens
Strengths: Multilingual (100+ languages), long context
Weaknesses: Slower, large model
Use when: Multilingual content, long documents
Qwen3 Embedding Series (State-of-the-Art)
The Qwen3 Embedding series offers state-of-the-art performance, ranking #1 on the MTEB multilingual leaderboard (score 70.58 as of June 2025).
# Lightweight option
ollama pull qwen3-embedding:0.6b
# Balanced option
ollama pull qwen3-embedding:4b
# Maximum quality
ollama pull qwen3-embedding:8bqwen3-embedding:0.6b
Dimensions: Up to 1024 (configurable 32-1024)
Context: 32K tokens
Size: 639MB
Use when: Need multilingual support with limited resources
qwen3-embedding:4b
Dimensions: Up to 2560 (configurable 32-2560)
Context: 40K tokens
Size: 2.5GB
Use when: Balanced quality and resource usage
qwen3-embedding:8b
Dimensions: Up to 4096 (configurable 32-4096)
Context: 40K tokens
Size: 4.7GB
Use when: Maximum quality, code retrieval, complex semantic search
Key strengths of Qwen3 Embedding:
100+ language support including programming languages
Exceptional code retrieval performance
Very long context windows (32K-40K tokens)
Configurable output dimensions
State-of-the-art benchmark scores
Configuration
Configure your embedding model in appsettings.json:
{
"Embeddings": {
"ApiUrl": "http://localhost:11434",
"Model": "all-minilm",
"Timeout": "00:01:00"
}
}Configuration Options
| Setting | Description | Default |
|---|---|---|
ApiUrl | URL of the embedding API | http://localhost:11434 |
Model | Model name to use | Required |
Timeout | Request timeout | 00:01:00 |
Environment Variables
You can also configure via environment variables:
export Embeddings__ApiUrl=http://localhost:11434
export Embeddings__Model=nomic-embed-text
export Embeddings__Timeout=00:02:00Changing Models
Same Dimension Models
If you switch to a model with the same dimensions (e.g., all-minilm to another 384D model), no migration is needed. Just update the config and restart.
Different Dimension Models
If the new model has different dimensions, you must run a migration:
Update
Embeddings:Modelin configurationRestart Memorizer - you'll see a warning banner
Navigate to Tools > Dimension Migration
Click Start Dimension Migration
Wait for all embeddings to regenerate
See Embedding Migration for detailed migration instructions.
Migration Time Estimates
Migration time depends on:
Number of memories
Embedding model speed
Hardware resources
Rough estimates for 1,000 memories:
| Model | Approximate Time |
|---|---|
all-minilm | ~2-5 minutes |
nomic-embed-text | ~5-10 minutes |
mxbai-embed-large | ~10-20 minutes |
Choosing a Model
Decision Flowchart
Start
│
▼
Do you have GPU acceleration?
│
├─ No ──► all-minilm (384D) or qwen3-embedding:0.6b (1024D)
│
▼ Yes
│
Is state-of-the-art quality critical?
│
├─ Yes ──► qwen3-embedding:8b (4096D)
│
▼ No
│
Is multilingual support needed?
│
├─ Yes ──► qwen3-embedding:4b (2560D) or bge-m3 (1024D)
│
▼ No
│
Are your documents long (>500 words)?
│
├─ Yes ──► nomic-embed-text (768D)
│
▼ No
│
Is code retrieval important?
│
├─ Yes ──► qwen3-embedding:4b (2560D)
│
▼ No
│
nomic-embed-text (768D)Recommendations by Use Case
| Use Case | Recommended Model | Why |
|---|---|---|
| Personal notes | all-minilm | Fast, works on any hardware |
| Code snippets | qwen3-embedding:4b | Excellent code retrieval, programming language support |
| Documentation | nomic-embed-text | Long context support, good balance |
| Research papers | bge-large-en-v1.5 | High quality retrieval for English |
| Multilingual content | qwen3-embedding:4b | 100+ languages, state-of-the-art quality |
| Maximum accuracy | qwen3-embedding:8b | #1 on MTEB leaderboard |
| Limited resources | qwen3-embedding:0.6b | Good quality at small size |
Storage Considerations
Higher dimension models require more database storage:
| Dimensions | Storage per Memory | 10,000 Memories |
|---|---|---|
| 384 | ~1.5 KB | ~15 MB |
| 768 | ~3 KB | ~30 MB |
| 1024 | ~4 KB | ~40 MB |
| 2560 | ~10 KB | ~100 MB |
| 4096 | ~16 KB | ~160 MB |
Note: These are estimates for the embedding vectors only. Actual storage includes text content, metadata embeddings, and indexes.
Performance Tuning
For Faster Embedding Generation
Use GPU acceleration if available
Choose a smaller model (
all-minilm)Increase timeout for batch operations
Run Ollama with
OLLAMA_NUM_PARALLEL=4for concurrent requests
For Better Search Quality
Use a larger model (
mxbai-embed-large,bge-large)Ensure model context covers your typical memory length
Use descriptive titles and tags (they're embedded separately)
Troubleshooting
"Model not found"
# List available models
ollama list
# Pull the model you need
ollama pull model-name"Embedding API timeout"
Increase the timeout in configuration:
{
"Embeddings": {
"Timeout": "00:05:00"
}
}"Dimension mismatch detected"
You've changed to a model with different output dimensions. See Embedding Migration.
Slow embedding generation
Check if Ollama is using GPU:
ollama psTry a smaller model
Ensure adequate system memory
External Resources
MTEB Leaderboard - Embedding model benchmarks
Sentence Transformers - Model documentation
pgvector - Vector storage in PostgreSQL
260 files · 244 not served here
- .config/dotnet-tools.json (not served here)
- .gitattributes (not served here)
- .github/dependabot.yml (not served here)
- .github/workflows/mutation.yml (not served here)
- .github/workflows/pr_validation.yml (not served here)
- .github/workflows/publish_containers.yml (not served here)
- .gitignore (not served here)
- AGENT.md
- ATTRIBUTION.md
- CLAUDE.md
- DEVELOPMENT.md
- Directory.Build.props (not served here)
- Directory.Packages.props (not served here)
- LICENSE
- Memorizer.slnx (not served here)
- NuGet.Config (not served here)
- README.md
- RELEASE_NOTES.md
- akkalogo.png (not served here)
- build.ps1 (not served here)
- coverlet.runsettings (not served here)
- docker-compose.dev.yml (not served here)
- docker-compose.local.yml (not served here)
- docker-compose.yml (not served here)
- docs/FEATURES.md
- docs/adr/2025-01-27-preserve-original-memories-during-chunking.md (not served here)
- docs/adr/2025-05-21-plain-text-memory-column.md (not served here)
- docs/adr/2025-05-22-always-return-relationship-type.md (not served here)
- docs/adr/2025-05-23-asynchronous-memory-chunking-with-actors.md (not served here)
- docs/adr/2025-05-23-chunking-integration-test-design.md (not served here)
- docs/adr/2025-05-23-fix-infinite-recursion-connection-leak.md (not served here)
- docs/adr/2025-05-23-memory-search-ranking.md (not served here)
- docs/adr/2025-05-23-migration-from-ollama-to-ollama-sharp.md (not served here)
- docs/adr/2025-11-28-memory-similarity-discovery.md (not served here)
- docs/adr/2026-02-14-hybrid-search-rrf.md (not served here)
- docs/adr/POC_DUAL_EMBEDDINGS.md (not served here)
- docs/adr/README.md (not served here)
- docs/agent-resilient-tool-surface-plan.md
- docs/commands.md
- docs/configuration.md
- docs/embedding-migration.md
- docs/embedding-models.md
- docs/images/create-memory-dark.png (not served here)
- docs/images/create-memory-light.png (not served here)
- docs/images/mcp-config-dark.png (not served here)
- docs/images/mcp-config-light.png (not served here)
- docs/images/memory-list-dark.png (not served here)
- docs/images/memory-list-light.png (not served here)
- docs/images/memory-view-dark.png (not served here)
- docs/images/memory-view-light.png (not served here)
- docs/images/project-detail-dark.png (not served here)
- docs/images/project-detail-light.png (not served here)
- docs/images/provider-settings-dark.png (not served here)
- docs/images/provider-settings-light.png (not served here)
- docs/images/workspace-detail-dark.png (not served here)
- docs/images/workspace-detail-light.png (not served here)
- docs/images/workspaces-dark.png (not served here)
- docs/images/workspaces-light.png (not served here)
- docs/local-development.md
- docs/schema-migrations.md
- docs/security.md
- global.json (not served here)
- scripts/bumpVersion.ps1 (not served here)
- scripts/getReleaseNotes.ps1 (not served here)
- scripts/poc-test-data-fixed.ps1 (not served here)
- src/Memorizer.IntegrationTests/ArchivedMemoryTests.cs (not served here)
- src/Memorizer.IntegrationTests/Controllers/SearchEvalControllerTests.cs (not served here)
- src/Memorizer.IntegrationTests/CorsConfigurationTests.cs (not served here)
- src/Memorizer.IntegrationTests/DimensionMigrationIntegrationTests.cs (not served here)
- src/Memorizer.IntegrationTests/DimensionMigrationTestFixture.cs (not served here)
- src/Memorizer.IntegrationTests/EmbeddingApiClientIntegrationTests.cs (not served here)
- src/Memorizer.IntegrationTests/EmbeddingDimensionServiceTests.cs (not served here)
- src/Memorizer.IntegrationTests/EmbeddingRegenerationActorTests.cs (not served here)
- src/Memorizer.IntegrationTests/Fakes/FakeEmbeddingDimensionService.cs (not served here)
- src/Memorizer.IntegrationTests/Fakes/FakeEmbeddingService.cs (not served here)
- src/Memorizer.IntegrationTests/IntegrationTestFixture.cs (not served here)
- src/Memorizer.IntegrationTests/Logging/XUnitLogger.cs (not served here)
- src/Memorizer.IntegrationTests/Logging/XUnitLoggerProvider.cs (not served here)
- src/Memorizer.IntegrationTests/Mcp/McpServerTests.cs (not served here)
- src/Memorizer.IntegrationTests/Mcp/McpTestClient.cs (not served here)
- src/Memorizer.IntegrationTests/McpToolsProjectScopingTests.cs (not served here)
- src/Memorizer.IntegrationTests/Memorizer.IntegrationTests.csproj (not served here)
- src/Memorizer.IntegrationTests/MemoryStatsServiceTests.cs (not served here)
- src/Memorizer.IntegrationTests/MemoryToolsIntegrationTests.cs (not served here)
- src/Memorizer.IntegrationTests/MemoryVersioningTests.cs (not served here)
- src/Memorizer.IntegrationTests/MetadataEmbeddingStorageTests.cs (not served here)
- src/Memorizer.IntegrationTests/MoveOperationsIntegrationTests.cs (not served here)
- src/Memorizer.IntegrationTests/NestedProjectTests.cs (not served here)
- src/Memorizer.IntegrationTests/PostgresContainerTests.cs (not served here)
- src/Memorizer.IntegrationTests/ProgressJobManagerTests.cs (not served here)
- src/Memorizer.IntegrationTests/ProviderSettingsSyncTests.cs (not served here)
- src/Memorizer.IntegrationTests/TestEnvironmentInitializer.cs (not served here)
- src/Memorizer.IntegrationTests/TitleGenerationActorTests.cs (not served here)
- src/Memorizer.IntegrationTests/WebUIIntegrationTests.cs (not served here)
- src/Memorizer.IntegrationTests/WorkspaceProjectMigrationIntegrationTests.cs (not served here)
- src/Memorizer.IntegrationTests/WorkspaceProjectSearchTests.cs (not served here)
- src/Memorizer.IntegrationTests/WorkspaceSlugLookupTests.cs (not served here)
- src/Memorizer.UnitTests/CanonicalUrlServiceTests.cs (not served here)
- src/Memorizer.UnitTests/Controllers/SearchEvalControllerTests.cs (not served here)
- src/Memorizer.UnitTests/EmbeddingApiClientTests.cs (not served here)
- src/Memorizer.UnitTests/EmbeddingServiceTests.cs (not served here)
- src/Memorizer.UnitTests/EntityIdTests.cs (not served here)
- src/Memorizer.UnitTests/Memorizer.UnitTests.csproj (not served here)
- src/Memorizer.UnitTests/ProviderConfigSanitizerTests.cs (not served here)
- src/Memorizer.UnitTests/README.stryker.md (not served here)
- src/Memorizer.UnitTests/SearchQualityMetricsTests.cs (not served here)
- src/Memorizer.UnitTests/Tools/FakeCanonicalUrlService.cs (not served here)
- src/Memorizer.UnitTests/Tools/FakeWorkspaceStorage.cs (not served here)
- src/Memorizer.UnitTests/Tools/McpToolParameterValidationTests.cs (not served here)
- src/Memorizer.UnitTests/Tools/MemoryToolsCanonicalUrlTests.cs (not served here)
- src/Memorizer.UnitTests/Tools/ToolArgumentGuardTests.cs (not served here)
- src/Memorizer.UnitTests/Tools/ToolErrorMessagesTests.cs (not served here)
- src/Memorizer.UnitTests/Tools/WorkspaceToolsCanonicalUrlTests.cs (not served here)
- src/Memorizer.UnitTests/Tools/WorkspaceToolsSlugTests.cs (not served here)
- src/Memorizer.UnitTests/ValueTypeTests.cs (not served here)
- src/Memorizer.UnitTests/WorkspaceProjectTests.cs (not served here)
- src/Memorizer.UnitTests/stryker-config.json (not served here)
- src/Memorizer/Actors/DimensionMigrationActor.cs (not served here)
- src/Memorizer/Actors/DimensionMigrationMessages.cs (not served here)
- src/Memorizer/Actors/EmbeddingRegenerationActor.cs (not served here)
- src/Memorizer/Actors/EmbeddingRegenerationMessages.cs (not served here)
- src/Memorizer/Actors/ProgressStream.cs (not served here)
- src/Memorizer/Actors/ProgressStreamMessages.cs (not served here)
- src/Memorizer/Actors/TitleGenerationActor.cs (not served here)
- src/Memorizer/Actors/TitleGenerationMessages.cs (not served here)
- src/Memorizer/Actors/VersionPurgeActor.cs (not served here)
- src/Memorizer/Actors/VersionPurgeMessages.cs (not served here)
- src/Memorizer/Controllers/ConfigurationController.cs (not served here)
- src/Memorizer/Controllers/HomeController.cs (not served here)
- src/Memorizer/Controllers/MemoryController.cs (not served here)
- src/Memorizer/Controllers/ProjectController.cs (not served here)
- src/Memorizer/Controllers/SearchEvalController.cs (not served here)
- src/Memorizer/Controllers/SearchEvalGateAttribute.cs (not served here)
- src/Memorizer/Controllers/SettingsController.cs (not served here)
- src/Memorizer/Controllers/ToolsController.cs (not served here)
- src/Memorizer/Controllers/WorkspaceController.cs (not served here)
- src/Memorizer/Extensions/McpToolValidationExtensions.cs (not served here)
- src/Memorizer/Extensions/ServiceCollectionExtensions.cs (not served here)
- src/Memorizer/Memorizer.csproj (not served here)
- src/Memorizer/Models/DimensionMigrationRecord.cs (not served here)
- src/Memorizer/Models/DimensionValidationResult.cs (not served here)
- src/Memorizer/Models/EmbeddingConfigRecord.cs (not served here)
- src/Memorizer/Models/EmbeddingRequest.cs (not served here)
- src/Memorizer/Models/EmbeddingResponse.cs (not served here)
- src/Memorizer/Models/EntityIds.cs (not served here)
- src/Memorizer/Models/Enums/ArchetypeEnum.cs (not served here)
- src/Memorizer/Models/Enums/MemoryTypeEnum.cs (not served here)
- src/Memorizer/Models/Enums/OwnerTypeEnum.cs (not served here)
- src/Memorizer/Models/Enums/ProjectStatusEnum.cs (not served here)
- src/Memorizer/Models/Enums/ProviderNameEnum.cs (not served here)
- src/Memorizer/Models/Enums/ProviderTypeEnum.cs (not served here)
- src/Memorizer/Models/Enums/RelationshipTypeEnum.cs (not served here)
- src/Memorizer/Models/Memory.cs (not served here)
- src/Memorizer/Models/MemoryEvent.cs (not served here)
- src/Memorizer/Models/MemoryOwner.cs (not served here)
- src/Memorizer/Models/MemoryRelationship.cs (not served here)
- src/Memorizer/Models/MemoryVersion.cs (not served here)
- src/Memorizer/Models/OpenAIEmbeddingRequest.cs (not served here)
- src/Memorizer/Models/ProviderSettings.cs (not served here)
- src/Memorizer/Models/RelationshipType.cs (not served here)
- src/Memorizer/Models/SearchEvaluation.cs (not served here)
- src/Memorizer/Models/SimilarMemory.cs (not served here)
- src/Memorizer/Models/ValueTypes/UnitInterval.cs (not served here)
- src/Memorizer/Models/ValueTypes/VersionNumber.cs (not served here)
- src/Memorizer/Models/VersionStats.cs (not served here)
- src/Memorizer/Models/Workspace.cs (not served here)
- src/Memorizer/Program.cs (not served here)
- src/Memorizer/Prompts/MemorizerPrompts.cs (not served here)
- src/Memorizer/Properties/launchSettings.json (not served here)
- src/Memorizer/Resources/MemorizerResources.cs (not served here)
- src/Memorizer/Routes.cs (not served here)
- src/Memorizer/SearchEval/evaluation_queries.json (not served here)
- src/Memorizer/SearchEval/synthetic_corpus.json (not served here)
- src/Memorizer/SeedData/seed-data.json (not served here)
- src/Memorizer/Services/CanonicalUrlService.cs (not served here)
- src/Memorizer/Services/DiffService.cs (not served here)
- src/Memorizer/Services/DimensionMismatchState.cs (not served here)
- src/Memorizer/Services/EmbeddingApiClient.cs (not served here)
- src/Memorizer/Services/EmbeddingDimensionService.cs (not served here)
- src/Memorizer/Services/EmbeddingService.cs (not served here)
- src/Memorizer/Services/ICanonicalUrlService.cs (not served here)
- src/Memorizer/Services/IEmbeddingDimensionService.cs (not served here)
- src/Memorizer/Services/InitializationService.cs (not served here)
- src/Memorizer/Services/Memory.cs (not served here)
- src/Memorizer/Services/MemoryStatsService.cs (not served here)
- src/Memorizer/Services/ProviderConfigSanitizer.cs (not served here)
- src/Memorizer/Services/Providers/IMemorizerAgentProvider.cs (not served here)
- src/Memorizer/Services/Providers/OllamaMemorizerAgentProvider.cs (not served here)
- src/Memorizer/Services/SchemaMigrator.cs (not served here)
- src/Memorizer/Services/SearchQualityMetrics.cs (not served here)
- src/Memorizer/Services/SeedDataService.cs (not served here)
- src/Memorizer/Settings/CorsSettings.cs (not served here)
- src/Memorizer/Settings/EmbeddingSettings.cs (not served here)
- src/Memorizer/Settings/LlmSettings.cs (not served here)
- src/Memorizer/Settings/SearchSettings.cs (not served here)
- src/Memorizer/Settings/ServerSettings.cs (not served here)
- src/Memorizer/Settings/SimilaritySettings.cs (not served here)
- src/Memorizer/Settings/VersioningSettings.cs (not served here)
- src/Memorizer/Telemetry/AssemblyVersionDetector.cs (not served here)
- src/Memorizer/Telemetry/TelemetryConfig.cs (not served here)
- src/Memorizer/Tools/MemoryTools.cs (not served here)
- src/Memorizer/Tools/ToolArgumentGuard.cs (not served here)
- src/Memorizer/Tools/ToolErrorMessages.cs (not served here)
- src/Memorizer/Tools/WorkspaceTools.cs (not served here)
- src/Memorizer/Views/Home/CompareVersions.cshtml (not served here)
- src/Memorizer/Views/Home/Config.cshtml (not served here)
- src/Memorizer/Views/Home/Create.cshtml (not served here)
- src/Memorizer/Views/Home/Edit.cshtml (not served here)
- src/Memorizer/Views/Home/Index.cshtml (not served here)
- src/Memorizer/Views/Home/McpConfig.cshtml (not served here)
- src/Memorizer/Views/Home/ProjectDetail.cshtml (not served here)
- src/Memorizer/Views/Home/Stats.cshtml (not served here)
- src/Memorizer/Views/Home/View.cshtml (not served here)
- src/Memorizer/Views/Home/ViewVersion.cshtml (not served here)
- src/Memorizer/Views/Home/WorkspaceDetail.cshtml (not served here)
- src/Memorizer/Views/Home/Workspaces.cshtml (not served here)
- src/Memorizer/Views/Settings/Providers.cshtml (not served here)
- src/Memorizer/Views/Shared/_DimensionMismatchWarning.cshtml (not served here)
- src/Memorizer/Views/Shared/_Layout.cshtml (not served here)
- src/Memorizer/Views/Shared/_WorkspaceTree.cshtml (not served here)
- src/Memorizer/Views/Tools/DimensionMigration.cshtml (not served here)
- src/Memorizer/Views/Tools/EmbeddingRegeneration.cshtml (not served here)
- src/Memorizer/Views/Tools/Index.cshtml (not served here)
- src/Memorizer/Views/Tools/TitleGeneration.cshtml (not served here)
- src/Memorizer/Views/Tools/VersionPurge.cshtml (not served here)
- src/Memorizer/Views/_ViewImports.cshtml (not served here)
- src/Memorizer/Views/_ViewStart.cshtml (not served here)
- src/Memorizer/appsettings.example.json (not served here)
- src/Memorizer/appsettings.json (not served here)
- src/Memorizer/migrations/001_init.sql (not served here)
- src/Memorizer/migrations/003_add_memory_relationships.sql (not served here)
- src/Memorizer/migrations/004_add_title_to_memories.sql (not served here)
- src/Memorizer/migrations/005_add_text_column.sql (not served here)
- src/Memorizer/migrations/006_add_metadata_embedding.sql (not served here)
- src/Memorizer/migrations/007_metadata_embedding_migration.sql (not served here)
- src/Memorizer/migrations/008_add_memory_versioning.sql (not served here)
- src/Memorizer/migrations/009_add_embedding_dimension_tracking.sql (not served here)
- src/Memorizer/migrations/010_add_relationship_score.sql (not served here)
- src/Memorizer/migrations/011_add_provider_settings.sql (not served here)
- src/Memorizer/migrations/012_add_workspaces.sql (not served here)
- src/Memorizer/migrations/013_add_projects.sql (not served here)
- src/Memorizer/migrations/014_extend_memories.sql (not served here)
- src/Memorizer/migrations/015_add_project_delete_trigger.sql (not served here)
- src/Memorizer/migrations/016_add_archived_support.sql (not served here)
- src/Memorizer/migrations/017_add_system_archetype.sql (not served here)
- src/Memorizer/migrations/018_add_data_migrations_tracking.sql (not served here)
- src/Memorizer/migrations/019_add_system_memories_workspace.sql (not served here)
- src/Memorizer/migrations/020_add_full_text_search.sql (not served here)
- src/Memorizer/migrations/021_add_tags_gin_index.sql (not served here)
- src/Memorizer/migrations/022_strip_provider_apikey.sql (not served here)
- src/Memorizer/wwwroot/css/markdown-content.css (not served here)
- src/Memorizer/wwwroot/css/site.css (not served here)
- src/Memorizer/wwwroot/css/theme-variables.css (not served here)
- src/Memorizer/wwwroot/css/tools.css (not served here)
- src/Memorizer/wwwroot/css/workspace-tree.css (not served here)
- src/Memorizer/wwwroot/js/memory-utils.js (not served here)
- src/Memorizer/wwwroot/js/mermaid-integration.js (not served here)
- src/Memorizer/wwwroot/js/progress-stream.js (not served here)
- src/Memorizer/wwwroot/js/theme-switcher.js (not served here)
- src/Memorizer/wwwroot/js/workspace-tree.js (not served here)
Advantages
- Provides persistent, long-term memory that survives agent session resets. evidence: README.md
- Supports semantic search through vector embeddings, allowing for context-aware retrieval. evidence: README.md
- Includes full versioning and audit trails for all memory modifications. evidence: README.md
- Allows for the creation of knowledge graphs by linking related memories. evidence: README.md
Limitations
- Requires external infrastructure including PostgreSQL with pgvector and an embedding provider. evidence: README.md
- Requires manual configuration of MCP clients to point to the correct endpoint. evidence: README.md
- Upgrades may require database backups and potential schema migrations. evidence: README.md
Security
Risk level: No risk found
This brain runs
This brain runs nothing: AutoGineer found no hooks, scripts, plugin code or MCP servers in its files.
Attribution and licence
- Created by
- Dario Griffo
- Publisher
- Petabridge (Official Petabridge project)
- Source
- petabridge/memorizer · commit d3e90fa
- Licence
- MIT License (files served here)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Dario Griffo or Petabridge.
Install from source
244 of its files are not served here, so there is no ZIP. petabridge/memorizer at d3e90fa