Skip to main content
Glama
Edlineas

AIVectorMemory

by Edlineas
README.md
๐ŸŒ [็ฎ€ไฝ“ไธญๆ–‡](docs/README.zh-CN.md) | [็น้ซ”ไธญๆ–‡](docs/README.zh-TW.md) | English | [Espaรฑol](docs/README.es.md) | [Deutsch](docs/README.de.md) | [Franรงais](docs/README.fr.md) | [ๆ—ฅๆœฌ่ชž](docs/README.ja.md)

<p align="center">
  <img src="docs/logo.png" alt="AIVectorMemory Logo" width="200">
</p>

<p align="center">
  <img src="docs/image.png" alt="AI Vector Memory Architecture" width="100%">
</p>
<h1 align="center">AIVectorMemory</h1>
<p align="center">
  <strong>Give your AI coding assistant a memory โ€” Cross-session persistent memory MCP Server</strong>
</p>
<p align="center">
  <a href="https://pypi.org/project/aivectormemory/"><img src="https://img.shields.io/pypi/v/aivectormemory?color=blue&label=PyPI" alt="PyPI"></a>
  <a href="https://pypi.org/project/aivectormemory/"><img src="https://img.shields.io/pypi/pyversions/aivectormemory" alt="Python"></a>
  <a href="https://github.com/Edlineas/aivectormemory/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-Apache_2.0-green" alt="License"></a>
  <a href="https://modelcontextprotocol.io"><img src="https://img.shields.io/badge/MCP-compatible-purple" alt="MCP"></a>
</p>

---

> **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 |
| ๐Ÿ” **Hybrid Smart Search** | FTS5 full-text + vector semantic dual-path search, RRF fusion ranking + composite scoring (recency ร— frequency ร— importance), far more precise than pure vector search |
| ๐Ÿ› **Issue Tracking** | Built-in Issue Tracker โ€” discover โ†’ investigate โ†’ fix โ†’ archive, full lifecycle. AI manages bugs automatically |
| ๐Ÿ“‹ **Task Management** | Spec โ†’ task breakdown โ†’ nested subtasks โ†’ status sync โ†’ linked archival. AI drives the complete dev workflow |
| ๐Ÿšฆ **Session State** | Blocking management + breakpoint resume + progress tracking, seamless handoff across sessions and context compaction |
| ๐Ÿช **Hooks + Steering** | Auto-inject workflow rules + behavior guard hooks, consistent AI behavior guaranteed โ€” no need to repeat instructions |
| ๐Ÿงฌ **Memory Evolution** | Contradiction detection auto-supersedes stale knowledge + short-term โ†’ long-term auto-promotion + 90-day auto-archive, self-evolving memory |
| ๐Ÿ“Š **Desktop App + Web Dashboard** | Native desktop app (macOS/Windows/Linux) + Web dashboard, 3D vector network reveals knowledge connections at a glance |
| ๐Ÿ’ฐ **Save 50%+ Tokens** | Stop copy-pasting project context every conversation. Semantic retrieval on demand, no more bulk injection |
| ๐Ÿ  **Fully Local** | Zero cloud dependency. ONNX local inference, no API Key, data never leaves your machine |
| ๐Ÿ”Œ **11 IDEs Covered** | Cursor / Kiro / Claude Code / Windsurf / VSCode / Copilot / OpenCode / Trae / Codex / Antigravity / OpenClaw โ€” one-click install & uninstall |
| ๐Ÿ“ **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 |

<p align="center">
  QQ็พค๏ผš1085682431 &nbsp;|&nbsp; ๅพฎไฟก๏ผšchanghuibiz<br>
  ๅ…ฑๅŒๅ‚ไธŽ้กน็›ฎๅผ€ๅ‘ๅŠ QQ็พคๆˆ–ๅพฎไฟกไบคๆต
</p>

<p align="center">
  <img src="docs/003.png" alt="Login" width="100%">
  <br>
  <em>Login</em>
</p>

<p align="center">
  <img src="docs/001.png" alt="Project Selection" width="100%">
  <br>
  <em>Project Selection</em>
</p>

<p align="center">
  <img src="docs/002.png" alt="Overview & Vector Network" width="100%">
  <br>
  <em>Overview & Vector Network</em>
</p>

## ๐Ÿ—๏ธ Architecture

```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   AI IDE                         โ”‚
โ”‚  OpenCode / Codex / Claude Code / Cursor / ...  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                       โ”‚ 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

### Option 1: pip install (Recommended)

```bash
# 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:
>   ```bash
>   brew install python
>   /opt/homebrew/bin/python3 -m pip install aivectormemory
>   ```

### Option 2: uvx (zero install)

No `pip install` needed, run directly:

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

> Requires [uv](https://docs.astral.sh/uv/getting-started/installation/) to be installed. `uvx` auto-downloads and runs the package โ€” no manual installation needed.

### Option 3: Manual configuration

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

<details>
<summary>๐Ÿ“ IDE Configuration File Locations</summary>

| 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` |
| Codex | `.codex/config.toml` |

</details>

For Codex, use project-scoped TOML instead of JSON:

```toml
[mcp_servers.aivectormemory]
command = "run"
args = ["--project-dir", "/path/to/your/project"]
```

> Codex only loads project-scoped `.codex/config.toml` after the repository is marked as a trusted project.

## ๐Ÿ› ๏ธ 9 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.

### `graph` โ€” Code knowledge graph

```
action       (string, required)  "query" / "trace" / "batch" / "add_node" / "add_edge" / "remove" / "refresh"
name         (string)            Entity name (add_node/query)
entity_type  (string)            Entity type: function/class/module/api/table/config (add_node/query)
file_path    (string)            File path, auto-converts to relative (add_node/query/refresh)
source       (string)            Source node name or ID (add_edge)
target       (string)            Target node name or ID (add_edge)
relation     (string)            Relation type: calls/imports/inherits/uses/depends_on/contains (add_edge/trace)
start        (string)            Start node name or ID (trace)
direction    (string)            Traversal direction: "up" / "down" / "both" (trace)
max_depth    (integer)           Max traversal depth, default 3 (trace)
```

Manages function call chains, data flows, and dependency relationships. Trace upstream/downstream impact before code changes.

## ๐Ÿ“Š Web Dashboard

```bash
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 / ๆ—ฅๆœฌ่ชž)

<p align="center">
  <img src="docs/20260306234753_6_1635.jpg" alt="WeChat Group" width="280">
  &nbsp;&nbsp;&nbsp;&nbsp;
  <img src="docs/8_1635.jpg" alt="QQ Group: 1085682431" width="280">
  <br>
  <em>Scan to join WeChat group &nbsp;|&nbsp; Scan to join QQ group</em>
</p>

## โšก 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` |
| Codex | `AGENTS.md` (appended) | โ€” |

<details>
<summary>๐Ÿ“‹ Steering Rules Example (auto-generated)</summary>

```markdown
# 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`)
```

</details>

<details>
<summary>๐Ÿ”— Hooks Config Example (Kiro only, auto-generated)</summary>

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

```json
{
  "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"
  }
}
```

</details>

## ๐Ÿ‡จ๐Ÿ‡ณ Users in China

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

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

Or add env to MCP config:

```json
{
  "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

### v2.4.5

**Patch: Hard Constraints Against Opus 4.7 Default Tendencies**

- ๐Ÿšซ ยง1 added **No Clarification-Style Follow-ups**: forbid re-asking "phased or one-shot / full or partial / should I do X / do A first or B first" for imperative commands; under ambiguity, execute the most complete scope
- ๐Ÿšซ ยง1 added **No Defensive Reporting**: forbid wording like "kept per instruction / marked pending / non-critical path / unnecessary sub-tests / for later iteration" as excuse for unexecuted items
- ๐Ÿ“‹ ยง1 added **Report Format**: forbid Phase A/B/C/D list + "Final Status" + "Not Done (Kept Per Instruction)" three-section format; when user says "do all", no "Not Done/Kept" section allowed
- ๐ŸŽฏ Root cause: counteract Opus 4.7's default "defensive reporting", "clarification follow-ups", and "structured checklist" tendencies compared to 4.6
- ๐Ÿ”„ 7-language rule files (STEERING_CONTENT + DEV_WORKFLOW_PROMPT) fully synced with CLAUDE.md v2.4.5 updates

### v2.4.4

**Patch: Full A-I Message Processing Flow Alignment**

- ๐Ÿงฉ CLAUDE.md ยง4 message processing B routes fully expanded: all 4 branches (casual/correction/preference/other) unified to terminate at I(user confirm & archive), eliminating incomplete "stop at F" flows
- โš™๏ธ inject-workflow-rules.sh message type judgment section fully aligned with ยง4 B: 4 routes with consistent granularity
- ๐Ÿ”ง Fixed 3 conflicts: route granularity inconsistency (2 vs 4 routes) / B and E responsibility mixing ("solution+block" misplaced) / G/H/I flow missing
- ๐Ÿ“ Unified violation clause: "Proceeding to C/D/E/F steps without outputting judgment result = violation"
- ๐Ÿ”„ 7-language rule files (STEERING_CONTENT + DEV_WORKFLOW_PROMPT) fully synced with CLAUDE.md v2.4.4 updates

### v2.4.3

**Patch: Rule Enforcement & Graph Visualization**
- ๐Ÿง  ยง4.B: Two-step mandatory structure (understand message โ†’ determine type), skipping = violation
- ๐Ÿ“‹ ยง8: Review + block embedded in each Spec step, skipping = violation
- ๐Ÿงฌ DEV_WORKFLOW_PROMPT: Added graph trace/batch/add_node rules for investigation and code modification
- ๐Ÿ“Š Graph dashboard: Dynamic force layout scaling, edge labels hidden by default (hover to show), node label collision detection
- ๐Ÿ”ง Removed redundant "frequent violation reminders" section from DEV_WORKFLOW_PROMPT
- ๐Ÿ“ Unified ยง1 IDENTITY & TONE across all 7 languages (no translation)

### v2.4.1

**Patch: i18n Rules Sync**
- ๐Ÿ”„ Synced all 7 language rule files (STEERING_CONTENT + DEV_WORKFLOW_PROMPT) with CLAUDE.md v2.4.0 updates
- ๐Ÿงฌ Added `graph` tool references to all steering rules (trace/batch/add_node/add_edge/remove)
- โœ๏ธ Updated authority role from "Lead Architect" to "Project Owner" across all languages
- ๐Ÿ“ Added 3 new violation rules and 2 new forbidden items to all languages

### v2.4.0

**New: Code Knowledge Graph**
- ๐Ÿงฌ `graph` tool โ€” manage function call chains, data flows, and dependency relationships as a structured knowledge graph
- ๐Ÿ” `trace` action โ€” traverse upstream/downstream call chains from any entity, assess impact scope before code changes
- ๐Ÿ“Š Web dashboard graph visualization page โ€” browse nodes, edges, and call relationships in the knowledge graph
- ๐Ÿ—ƒ๏ธ DB migration v15 โ€” new `graph_nodes` and `graph_edges` tables for graph storage
- ๐ŸŒ All 7 language README files updated in sync

### v2.3.1

**Enhancement: Rule System Overhaul + OpenClaw Support**
- ๐Ÿง  Fixed 5 missing memory system calls in AI rules: recall pitfalls before investigation (Step D), before dangerous ops (ยง7), before Spec writing (ยง8), before subtask execution (ยง8), and remember pitfalls after fix (Step I)
- ๐Ÿฆž Added OpenClaw IDE support โ€” now 11 IDEs total (MCP config merges into ~/.openclaw/openclaw.json, steering appends to AGENTS.md)
- ๐ŸŽญ Playwright self-test rules strengthened โ€” added ToolSearch deferred tools loading requirement, banned `open` command workaround
- ๐Ÿ”ง Merged v2.2.0โ€“v2.2.6 features: hooks system (bash_guard + stop_guard + check_track), scoring engine improvements, recall optimizations, web dashboard bulk delete, desktop memory delete modal
- โš ๏ธ DEV_WORKFLOW_PROMPT: added 2 new violation reminders (recall before code change, remember after fix)
- ๐ŸŒ All 7 language rule files updated in sync

### v2.1.1

**Enhancement: AI Rule System Upgrade**
- ๐Ÿ“‹ CLAUDE.md completion: added Identity & Tone (ยง1), 7 Core Principles (ยง3), message type judgment examples, expanded IDE safety and self-test sections
- โš ๏ธ Hook added Common Violations Reminder: โŒ negative examples reinforcing the 4 most frequently missed rules (self-test, recall, track create, IDE safety)
- ๐ŸŒ All 7 language rule files updated in sync (zh-CN/zh-TW/en/ja/es/de/fr)
- ๐Ÿ”ข CLAUDE.md sections renumbered to ยง1โ€“ยง11, cross-references updated accordingly

### v2.1.0

**New: Smart Memory Engine + Uninstall**
- ๐Ÿง  FTS5 full-text search with Chinese tokenization (jieba) โ€” keyword search now actually works for CJK content
- ๐Ÿ”€ Hybrid retrieval: vector + FTS5 dual-path with RRF (Reciprocal Rank Fusion) merging
- ๐Ÿ“Š Composite scoring: results ranked by similarity ร— 0.5 + recency ร— 0.3 + frequency ร— 0.2, weighted by importance
- โšก Conflict detection: similar memories (0.85โ€“0.95) auto-superseded, old facts fade automatically
- ๐Ÿ“ฆ Memory tiers: frequently accessed memories auto-promote to long_term and get searched first
- ๐Ÿ—‘๏ธ Auto-archive: stale short_term memories (90 days inactive + low importance) cleaned up automatically
- ๐Ÿ”— Relation expansion: tag overlap โ‰ฅ 2 builds related links, 1-hop expansion surfaces connected memories
- ๐Ÿ“ Auto-summary: long memories (>500 chars) get summaries, brief mode returns summaries to save tokens
- ๐Ÿงน Code cleanup: removed 15 dead code items, refactored 7 duplicate patterns into shared utilities
- โŒ `run uninstall` โ€” cleanly removes all IDE configurations (MCP, steering, hooks, permissions) while preserving memory data

### v2.0.9

**Enhancement: Security & Rule Optimization**
- ๐Ÿ”’ Fixed SQL injection, command injection, and path traversal vulnerabilities
- ๐Ÿ›ก๏ธ Added transaction protection for data integrity (archive, insert, update operations)
- ๐Ÿง  Unified similarity formula across all search paths
- ๐Ÿ“ Compressed AI workflow rules by 38% (219โ†’136 lines) with zero process removal
- ๐Ÿงน v12 migration cleans up legacy garbage memories automatically
- ๐ŸŒ All 7 languages synchronized

### v2.0.8

**New: Playwright Browser Testing Built-in**
- ๐ŸŽญ `run install` now automatically configures Playwright browser testing โ€” AI can open a real browser to verify frontend changes instead of guessing
- ๐ŸŽญ Uses a dedicated test browser (Chrome for Testing) that won't interfere with your personal browser tabs
- ๐Ÿ”‘ Simplified permission setup โ€” no more manual permission popups for common tools
- ๐Ÿ“ Updated AI rules across all 7 languages to enforce proper browser testing behavior

### v2.0.7

**Enhancement: More IDE Support**
- ๐Ÿ–ฅ๏ธ Added support for Antigravity and GitHub Copilot IDEs
- ๐Ÿ”‘ `run install` now auto-configures tool permissions, reducing manual setup
- ๐Ÿ“ Streamlined AI self-testing rules

### v2.0.6

**Enhancement: Faster Startup**
- โšก Optimized memory loading on session start โ€” loads faster with less context usage
- ๐Ÿ”‘ Auto-configures Claude Code permissions during installation
- ๐ŸŒ All 7 languages synchronized

### v2.0.5

**Enhancement: Simpler Rules**
- ๐Ÿ“ AI workflow rules restructured for clarity and reduced token usage
- ๐Ÿ’พ AI now automatically saves your preferences at the end of each session
- ๐ŸŒ All 7 languages synchronized

### v2.0.4

**Fix: Tool Reliability**
- ๐Ÿ”ง Comprehensive audit and fix of all MCP tool parameters โ€” improved reliability across all IDEs

### v2.0.3

**Enhancement: Better Search & Safety**
- ๐Ÿ” Memory search now combines semantic and keyword matching for more accurate recall
- ๐Ÿ›ก๏ธ Added cross-project protection โ€” AI won't accidentally modify files in other projects

### v2.0.2

**Enhancement: Rule Generalization & Desktop Version Fix**
- ๐Ÿ“ Added "recall before asking user" rule โ€” AI must query memory system before asking user for project information (server address, passwords, deploy config, etc.)
- ๐Ÿ“ Generalized pre-operation check rule โ€” removed specific examples to apply to all operation scenarios
- ๐Ÿ–ฅ๏ธ Fixed desktop app settings page showing hardcoded version "1.0.0" instead of actual app version
- ๐ŸŒ All 7 language i18n steering rules and workflow prompts synchronized

### v2.0.1

**Fix: Hook Cross-Project Compatibility**
- ๐Ÿ”ง `check_track.sh` now derives project path from script location instead of `$(pwd)`, fixing track detection failure when Claude Code runs hooks from non-root working directory
- ๐Ÿ”ง `compact-recovery.sh` now uses relative path derivation instead of hardcoded absolute paths, ensuring correct behavior when installed to any project
- ๐Ÿ”ง Removed redundant CLAUDE.md re-injection from compact-recovery (already auto-loaded by Claude Code)
- ๐Ÿ”ง `install.py` template synchronized with all hook fixes
- ๐ŸŒ All 7 language i18n compact-recovery hints updated

### v2.0

**Performance: ONNX INT8 Quantization**
- โšก Embedding model auto-quantized from FP32 to INT8 on first load, model file from 448MB down to 113MB
- โšก MCP Server memory usage reduced from ~1.6GB to ~768MB (50%+ reduction)
- โšก Quantization is transparent to users โ€” automatic on first use, cached for subsequent loads, falls back to FP32 on failure

**New: Remember Password**
- ๐Ÿ” Login page on both desktop and web dashboard now has a "Remember password" checkbox
- ๐Ÿ” When checked, credentials are saved to localStorage and auto-filled on next login; when unchecked, saved credentials are cleared
- ๐Ÿ” Checkbox is hidden in registration mode

**Enhancement: Steering Rules**
- ๐Ÿ“ IDENTITY & TONE section strengthened with more specific constraints (no pleasantries, no translating user messages, etc.)
- ๐Ÿ“ Self-testing requirements now distinguish between backend-only, MCP Server, and frontend-visible changes (Playwright required for frontend)
- ๐Ÿ“ Development rules now mandate self-testing after completing development
- ๐Ÿ“ All 7 language versions synchronized

### v1.0.11

- ๐Ÿ› Desktop app version comparison switched to semantic versioning, fixing false upgrade prompts when local version is higher
- ๐Ÿ› Health check page field names aligned with backend, fixing consistency status always showing Mismatch
- ๐Ÿ”ง check_track.sh hook adds Python fallback, resolving silent hook failure when system sqlite3 is unavailable (#4)

### v1.0.10

- ๐Ÿ–ฅ๏ธ Desktop app one-click install + upgrade detection
- ๐Ÿ–ฅ๏ธ Auto-detect Python and aivectormemory installation status on startup
- ๐Ÿ–ฅ๏ธ Show one-click install button when not installed, check PyPI and desktop new versions when installed
- ๐Ÿ› Installation detection switched to importlib.metadata.version() for accurate package version

### 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)

<details>
<summary>๐Ÿ“‹ v0.2.x and earlier changelog</summary>

See [CHANGELOG-archive.md](docs/CHANGELOG-archive.md)

</details>

## License

Apache-2.0

TDQS

B3.4/5.0

Scored across 9 tools

Disambiguation5/5

Each tool has a clear, distinct purpose: memory storage/retrieval/deletion, code knowledge graph, README generation, session status, task management, and issue tracking. No two tools overlap significantly in functionality.

Naming Consistency4/5

All tool names use lowercase with underscores where needed, but they mix verb forms (forget, recall, remember) and noun forms (graph, readme, status, task, track). While consistent in style, the pattern is not strictly verb_noun, causing minor inconsistency.

Tool Count5/5

9 tools is well-scoped for a memory/vector database server that also handles code knowledge, tasks, issues, and session status. Each tool earns its place without redundancy.

Completeness4/5

The tool set covers core CRUD operations for memories, tasks, issues, and graph management. Minor gaps exist, such as lacking a bulk memory recall or listing all memories, but the overall surface is sufficient for the domain.

Maintenance

ActivityInactive
ResponsivenessUnresponsive