Skip to main content
Glama

๐ŸŒ ็ฎ€ไฝ“ไธญๆ–‡ | ็น้ซ”ไธญๆ–‡ | English | Espaรฑol | Deutsch | Franรงais | ๆ—ฅๆœฌ่ชž


Still using CLAUDE.md / MEMORY.md as memory? This Markdown-file memory approach has fatal flaws: the file keeps growing, injecting everything into every session and burning massive tokens; content only supports keyword matching โ€” search "database timeout" and you won't find "MySQL connection pool pitfall"; sharing one file across projects causes cross-contamination; there's no task tracking, so dev progress lives entirely in your head; not to mention the 200-line truncation, manual maintenance, and inability to deduplicate or merge.

AIVectorMemory is a fundamentally different approach. Local vector database storage with semantic search for precise recall (matches even when wording differs), on-demand retrieval that loads only relevant memories (token usage drops 50%+), automatic multi-project isolation with zero interference, and built-in issue tracking + task management that lets AI fully automate your dev workflow. All data is permanently stored on your machine โ€” zero cloud dependency, never lost when switching sessions or IDEs.

โœจ Core Features

Feature

Description

๐Ÿง  Cross-Session Memory

Your AI finally remembers your project โ€” pitfalls, decisions, conventions all persist across sessions

๐Ÿ” Semantic Search

No need to recall exact wording โ€” search "database timeout" and find "MySQL connection pool issue"

๐Ÿ’ฐ Save 50%+ Tokens

Stop copy-pasting project context every conversation. Semantic retrieval on demand, no more bulk injection

๐Ÿ”— Task-Driven Dev

Issue tracking โ†’ task breakdown โ†’ status sync โ†’ linked archival. AI manages the full dev workflow

๐Ÿ“Š Desktop App + Web Dashboard

Native desktop app (macOS/Windows/Linux) + Web dashboard, visual management for memories and tasks, 3D vector network reveals knowledge connections at a glance

๐Ÿ  Fully Local

Zero cloud dependency. ONNX local inference, no API Key, data never leaves your machine

๐Ÿ”Œ All IDEs

Cursor / Kiro / Claude Code / Windsurf / VSCode / OpenCode / Trae โ€” one-click install, works out of the box

๐Ÿ“ Multi-Project Isolation

One DB for all projects, auto-isolated with zero interference, seamless project switching

๐Ÿ”„ Smart Dedup

Similarity > 0.95 auto-merges updates, keeping your memory store clean โ€” never gets messy over time

๐ŸŒ 7 Languages

็ฎ€ไฝ“ไธญๆ–‡ / ็น้ซ”ไธญๆ–‡ / English / Espaรฑol / Deutsch / Franรงais / ๆ—ฅๆœฌ่ชž, full-stack i18n for dashboard + Steering rules

๐Ÿ—๏ธ Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   AI IDE                         โ”‚
โ”‚  OpenCode / Claude Code / Cursor / Kiro / ...   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                       โ”‚ MCP Protocol (stdio)
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚              AIVectorMemory Server               โ”‚
โ”‚                                                  โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚ remember โ”‚ โ”‚  recall   โ”‚ โ”‚   auto_save      โ”‚ โ”‚
โ”‚  โ”‚ forget   โ”‚ โ”‚  task     โ”‚ โ”‚   status/track   โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚       โ”‚            โ”‚               โ”‚             โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚         Embedding Engine (ONNX)            โ”‚  โ”‚
โ”‚  โ”‚      intfloat/multilingual-e5-small        โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ”‚                       โ”‚                          โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚     SQLite + sqlite-vec (Vector Index)     โ”‚  โ”‚
โ”‚  โ”‚     ~/.aivectormemory/memory.db            โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿš€ Quick Start

# Install
pip install aivectormemory

# Upgrade to latest version
pip install --upgrade aivectormemory

# Navigate to your project directory, one-click IDE setup
cd /path/to/your/project
run install

run install interactively guides you to select your IDE, auto-generating MCP config, Steering rules, and Hooks โ€” no manual setup needed.

macOS users note:

  • If you get externally-managed-environment error, add --break-system-packages

  • If you get enable_load_extension error, your Python doesn't support SQLite extension loading (macOS built-in Python and python.org installers don't support it). Use Homebrew Python instead:

    brew install python
    /opt/homebrew/bin/python3 -m pip install aivectormemory

Option 2: uvx (zero install)

No pip install needed, run directly:

cd /path/to/your/project
uvx aivectormemory install

Requires uv to be installed. uvx auto-downloads and runs the package โ€” no manual installation needed.

Option 3: Manual configuration

{
  "mcpServers": {
    "aivectormemory": {
      "command": "run",
      "args": ["--project-dir", "/path/to/your/project"]
    }
  }
}

IDE

Config Path

Kiro

.kiro/settings/mcp.json

Cursor

.cursor/mcp.json

Claude Code

.mcp.json

Windsurf

.windsurf/mcp.json

VSCode

.vscode/mcp.json

Trae

.trae/mcp.json

OpenCode

opencode.json

๐Ÿ› ๏ธ 8 MCP Tools

remember โ€” Store a memory

content (string, required)   Memory content in Markdown format
tags    (string[], required)  Tags, e.g. ["pitfall", "python"]
scope   (string)              "project" (default) / "user" (cross-project)

Similarity > 0.95 auto-updates existing memory, no duplicates.

recall โ€” Semantic search

query   (string)     Semantic search keywords
tags    (string[])   Exact tag filter
scope   (string)     "project" / "user" / "all"
top_k   (integer)    Number of results, default 5

Vector similarity matching โ€” finds related memories even with different wording.

forget โ€” Delete memories

memory_id  (string)     Single ID
memory_ids (string[])   Batch IDs

status โ€” Session state

state (object, optional)   Omit to read, pass to update
  is_blocked, block_reason, current_task,
  next_step, progress[], recent_changes[], pending[]

Maintains work progress across sessions, auto-restores context in new sessions.

track โ€” Issue tracking

action   (string)   "create" / "update" / "archive" / "list"
title    (string)   Issue title
issue_id (integer)  Issue ID
status   (string)   "pending" / "in_progress" / "completed"
content  (string)   Investigation content

task โ€” Task management

action     (string, required)  "batch_create" / "update" / "list" / "delete" / "archive"
feature_id (string)            Linked feature identifier (required for list)
tasks      (array)             Task list (batch_create, supports subtasks)
task_id    (integer)           Task ID (update)
status     (string)            "pending" / "in_progress" / "completed" / "skipped"

Links to spec docs via feature_id. Update auto-syncs tasks.md checkboxes and linked issue status.

readme โ€” README generation

action   (string)    "generate" (default) / "diff" (compare differences)
lang     (string)    Language: en / zh-TW / ja / de / fr / es
sections (string[])  Specify sections: header / tools / deps

Auto-generates README content from TOOL_DEFINITIONS / pyproject.toml, multi-language support.

auto_save โ€” Auto save preferences

preferences  (string[])  User-expressed technical preferences (fixed scope=user, cross-project)
extra_tags   (string[])  Additional tags

Auto-extracts and stores user preferences at end of each conversation, smart dedup.

๐Ÿ“Š Web Dashboard

run web --port 9080
run web --port 9080 --quiet          # Suppress request logs
run web --port 9080 --quiet --daemon  # Run in background (macOS/Linux)

Visit http://localhost:9080 in your browser. Default username admin, password admin123 (can be changed in settings after first login).

  • Multi-project switching, memory browse/search/edit/delete/export/import

  • Semantic search (vector similarity matching)

  • One-click project data deletion

  • Session status, issue tracking

  • Tag management (rename, merge, batch delete)

  • Token authentication protection

  • 3D vector memory network visualization

  • ๐ŸŒ Multi-language support (็ฎ€ไฝ“ไธญๆ–‡ / ็น้ซ”ไธญๆ–‡ / English / Espaรฑol / Deutsch / Franรงais / ๆ—ฅๆœฌ่ชž)

โšก Pairing with Steering Rules

AIVectorMemory is the storage layer. Use Steering rules to tell AI when and how to call these tools.

Running run install auto-generates Steering rules and Hooks config โ€” no manual setup needed.

IDE

Steering Location

Hooks

Kiro

.kiro/steering/aivectormemory.md

.kiro/hooks/*.hook

Cursor

.cursor/rules/aivectormemory.md

.cursor/hooks.json

Claude Code

CLAUDE.md (appended)

.claude/settings.json

Windsurf

.windsurf/rules/aivectormemory.md

.windsurf/hooks.json

VSCode

.github/copilot-instructions.md (appended)

.claude/settings.json

Trae

.trae/rules/aivectormemory.md

โ€”

OpenCode

AGENTS.md (appended)

.opencode/plugins/*.js

# AIVectorMemory - Workflow Rules

## 1. New Session Startup (execute in order)

1. `recall` (tags: ["project-knowledge"], scope: "project", top_k: 100) load project knowledge
2. `recall` (tags: ["preference"], scope: "user", top_k: 20) load user preferences
3. `status` (no state param) read session state
4. Blocked โ†’ report and wait; Not blocked โ†’ enter processing flow

## 2. Message Processing Flow

- Step A: `status` read state, wait if blocked
- Step B: Classify message type (chat/correction/preference/code issue)
- Step C: `track create` record issue
- Step D: Investigate (`recall` pitfalls + read code + find root cause)
- Step E: Present plan to user, set blocked awaiting confirmation
- Step F: Modify code (`recall` pitfalls before changes)
- Step G: Run tests to verify
- Step H: Set blocked awaiting user verification
- Step I: User confirms โ†’ `track archive` + clear block

## 3. Blocking Rules

Must `status({ is_blocked: true })` when proposing plans or awaiting verification.
Only clear after explicit user confirmation. Never self-clear.

## 4-9. Issue Tracking / Code Checks / Spec Task Mgmt / Memory Quality / Tool Reference / Dev Standards

(Full rules auto-generated by `run install`)

Auto-save on session end removed. Dev workflow check (.kiro/hooks/dev-workflow-check.kiro.hook):

{
  "enabled": true,
  "name": "Dev Workflow Check",
  "version": "1",
  "when": { "type": "promptSubmit" },
  "then": {
    "type": "askAgent",
    "prompt": "Core principles: verify before acting, no blind testing, only mark done after tests pass"
  }
}

๐Ÿ‡จ๐Ÿ‡ณ Users in China

The embedding model (~200MB) is auto-downloaded on first run. If slow:

export HF_ENDPOINT=https://hf-mirror.com

Or add env to MCP config:

{
  "env": { "HF_ENDPOINT": "https://hf-mirror.com" }
}

๐Ÿ“ฆ Tech Stack

Component

Technology

Runtime

Python >= 3.10

Vector DB

SQLite + sqlite-vec

Embedding

ONNX Runtime + intfloat/multilingual-e5-small

Tokenizer

HuggingFace Tokenizers

Protocol

Model Context Protocol (MCP)

Web

Native HTTPServer + Vanilla JS

๐Ÿ“‹ Changelog

v1.0.8

  • ๐Ÿ”ง Fix PyPI package size anomaly (sdist from 32MB down to 230KB), excluded accidentally packaged dev files

v1.0.6

New: Native Desktop App

  • ๐Ÿ–ฅ๏ธ Native desktop client supporting macOS (ARM64), Windows (x64), Linux (x64)

  • ๐Ÿ–ฅ๏ธ Desktop app shares the same database as Web dashboard, fully feature-equivalent

  • ๐Ÿ–ฅ๏ธ Dark/light theme switching, Glass frosted visual style

  • ๐Ÿ–ฅ๏ธ Login auth, project selection, stats overview, memory management, issue tracking, task management, tag management, settings, data maintenance โ€” full feature coverage

  • ๐Ÿ“ฆ Auto-published installers via GitHub Releases, download and use

New: CI/CD Auto Build

  • ๐Ÿ”„ GitHub Actions auto-builds desktop installers for all 3 platforms

  • ๐Ÿ”„ Push a tag to trigger the full compile, package, and release pipeline

Fixes

  • ๐Ÿ› Windows platform compatibility fixes

  • ๐Ÿ› sqlite-vec extension download URL fix

v1.0.5

Optimization: Token Usage Reduction

  • โšก Steering rules changed from per-message dynamic injection to static loading, reducing repeated token consumption

  • โšก Greatest impact for Claude Code users โ€” ~2K fewer tokens per message

v1.0.4

New: Full-Stack i18n (7 Languages)

  • ๐ŸŒ Web dashboard + desktop UI fully supports 7 languages: ็ฎ€ไฝ“ไธญๆ–‡ / ็น้ซ”ไธญๆ–‡ / English / Espaรฑol / Deutsch / Franรงais / ๆ—ฅๆœฌ่ชž

  • ๐ŸŒ One-click language switch in settings page, takes effect immediately

  • ๐ŸŒ MCP tool responses follow language setting, AI replies automatically use the corresponding language

  • ๐ŸŒ Switching language auto-regenerates steering rules for all installed projects

New: Web Dashboard Settings Page

  • โš™๏ธ Language switch, theme settings, system info display

  • โš™๏ธ Database health check, repair, backup and other maintenance tools

v1.0.3

Optimization: Memory Search

  • ๐Ÿ” recall search supports OR/AND tag matching modes, fixing missed results with multi-tag searches

  • ๐Ÿ” Semantic search + tag filter defaults to OR matching (broader), tags-only browsing keeps AND matching (more precise)

See CHANGELOG-archive.md

๐ŸŒ HTTP API

้™คไบ† MCP ๅ่ฎฎ๏ผŒ่ฟ˜ๆไพ›ไบ† HTTP API ๆŽฅๅฃ๏ผŒไพฟไบŽๅคšไธช Agent ็›ดๆŽฅ่ฐƒ็”จใ€‚

ๅฏๅŠจ HTTP ๆœๅŠกๅ™จ

# ้œ€่ฆ Node.js ็Žฏๅขƒ
cd scripts
node aivectormemory-http-server.js

ๆœๅŠกๅ™จ้ป˜่ฎค็ซฏๅฃ๏ผš9081

API ็ซฏ็‚น

็ซฏ็‚น

ๆ–นๆณ•

ๅŠŸ่ƒฝ

/health

GET

ๅฅๅบทๆฃ€ๆŸฅ

/remember

POST

ๅญ˜ๅ…ฅ่ฎฐๅฟ†

/recall

POST

่ฏญไน‰ๆœ็ดข

/forget

POST

ๅˆ ้™ค่ฎฐๅฟ†

/status

POST

ไผš่ฏ็Šถๆ€

/track

POST

้—ฎ้ข˜่ทŸ่ธช

/task

POST

ไปปๅŠก็ฎก็†

/readme

POST

README ็”Ÿๆˆ

/auto_save

POST

่‡ชๅŠจไฟๅญ˜ๅๅฅฝ

ไฝฟ็”จ็คบไพ‹

# ๅฅๅบทๆฃ€ๆŸฅ
curl http://localhost:9081/health

# ๅญ˜ๅ…ฅ่ฎฐๅฟ†
curl -X POST http://localhost:9081/remember \
  -H "Content-Type: application/json" \
  -d '{"content": "่ฎฐไฝ่ฟ™ไธช้กน็›ฎไฝฟ็”จ Python 3.11", "tags": ["python", "config"]}'

# ่ฏญไน‰ๆœ็ดข
curl -X POST http://localhost:9081/recall \
  -H "Content-Type: application/json" \
  -d '{"query": "Python ็‰ˆๆœฌ", "top_k": 5}'

# ๅˆ ้™ค่ฎฐๅฟ†
curl -X POST http://localhost:9081/forget \
  -H "Content-Type: application/json" \
  -d '{"memory_id": "xxx"}'

# ไผš่ฏ็Šถๆ€
curl -X POST http://localhost:9081/status \
  -H "Content-Type: application/json" \
  -d '{"state": {"current_task": "ๅผ€ๅ‘ๆ–ฐๅŠŸ่ƒฝ"}}'

# ้—ฎ้ข˜่ทŸ่ธช
curl -X POST http://localhost:9081/track \
  -H "Content-Type: application/json" \
  -d '{"action": "create", "title": "ไฟฎๅค Bug", "content": "xxx"}'

# ไปปๅŠก็ฎก็†
curl -X POST http://localhost:9081/task \
  -H "Content-Type: application/json" \
  -d '{"action": "batch_create", "feature_id": "feature-001", "tasks": [{"title": "ไปปๅŠก1"}]}'

# README ็”Ÿๆˆ
curl -X POST http://localhost:9081/readme \
  -H "Content-Type: application/json" \
  -d '{"lang": "zh-CN"}'

# ่‡ชๅŠจไฟๅญ˜ๅๅฅฝ
curl -X POST http://localhost:9081/auto_save \
  -H "Content-Type: application/json" \
  -d '{"preferences": ["ๅ–œๆฌข็”จ Python", "ๅ–œๆฌข็”จ TypeScript"]}'

License

Apache-2.0