Skip to content

Latest commit

 

History

History
725 lines (561 loc) · 43.1 KB

File metadata and controls

725 lines (561 loc) · 43.1 KB

🌐 简体中文 | 繁體中文 | English | Español | Deutsch | Français | 日本語

AIVectorMemory Logo

AIVectorMemory

Donnez une mémoire à votre assistant IA — Serveur MCP de mémoire persistante inter-sessions

PyPI Python License MCP

---

Vous utilisez encore CLAUDE.md / MEMORY.md comme mémoire ? Cette approche mémoire par fichier Markdown a des défauts fatals : le fichier grossit sans cesse, injectant tout à chaque session et consumant une quantité massive de tokens ; le contenu ne supporte que la recherche par mots-clés — chercher « timeout base de données » ne trouve pas « piège du pool de connexions MySQL » ; partager un fichier entre projets cause une contamination croisée ; il n'y a pas de suivi des tâches, la progression du développement repose uniquement sur votre mémoire ; sans parler de la troncature à 200 lignes, de la maintenance manuelle et de l'impossibilité de dédupliquer ou fusionner.

AIVectorMemory est une approche fondamentalement différente. Stockage en base vectorielle locale avec recherche sémantique pour un rappel précis (trouve les correspondances même avec des termes différents), récupération à la demande qui ne charge que les mémoires pertinentes (consommation de tokens en baisse de 50%+), isolation multi-projets automatique sans interférence, et suivi des problèmes + gestion des tâches intégrés permettant à l'IA d'automatiser entièrement votre workflow de développement. Toutes les données sont stockées de façon permanente sur votre machine — zéro dépendance cloud, rien ne se perd en changeant de session ou d'IDE.

✨ Fonctionnalités Principales

Fonctionnalité Description
🧠 Mémoire Inter-Sessions Votre IA se souvient enfin de votre projet — erreurs rencontrées, décisions prises, conventions établies, tout persiste entre les sessions
🔍 Recherche Hybride Intelligente FTS5 texte intégral + recherche sémantique vectorielle double, classement fusionné RRF + scoring composite (récence × fréquence × importance), bien plus précise que la recherche vectorielle pure
🐛 Suivi de Problèmes Issue Tracker intégré — découvrir → enquêter → corriger → archiver cycle complet. L'IA gère le cycle de vie des bugs automatiquement
📋 Gestion de Tâches Spec → découpage en tâches → sous-tâches imbriquées → synchronisation des statuts → archivage lié. L'IA pilote le workflow de développement complet
🚦 État de Session Gestion des blocages + reprise au point d'arrêt + suivi de progression, transition fluide entre sessions et compression de contexte
🪝 Hooks + Steering Injection automatique des règles de travail + hooks de garde comportementale, comportement IA cohérent garanti — plus besoin de répéter les instructions
🧬 Évolution de Mémoire Détection de contradictions remplace les connaissances obsolètes + promotion automatique court→long terme + archivage auto à 90 jours, mémoire auto-évolutive
📊 App Bureau + Tableau de Bord Web App bureau native (macOS/Windows/Linux) + tableau de bord Web, réseau vectoriel 3D pour voir les connexions de connaissances d'un coup d'œil
💰 Économie 50%+ Tokens Récupération sémantique à la demande, fini le copier-coller du contexte projet à chaque conversation
🏠 Entièrement Local Zéro dépendance cloud. Inférence locale ONNX, pas de clé API, les données ne quittent jamais votre machine
🔌 11 IDEs Couverts Cursor / Kiro / Claude Code / Windsurf / VSCode / Copilot / OpenCode / Trae / Codex / Antigravity / OpenClaw — installation et désinstallation en un clic
📁 Isolation Multi-Projets Une seule BD pour tous les projets, isolation automatique sans interférence, changement de projet transparent
🔄 Déduplication Intelligente Similarité > 0.95 fusionne automatiquement, la base de mémoires reste propre — ne devient jamais désordonnée
🌐 7 Langues 简体中文 / 繁體中文 / English / Español / Deutsch / Français / 日本語, i18n complète pour tableau de bord + règles Steering

QQ群:1085682431  |  微信:changhuibiz
共同参与项目开发加QQ群或微信交流

🏗️ 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 (Index Vectoriel)  │  │
│  │     ~/.aivectormemory/memory.db            │  │
│  └────────────────────────────────────────────┘  │
└──────────────────────────────────────────────────┘

🚀 Démarrage Rapide

Option 1 : Installation pip (Recommandé)

# Installer
pip install aivectormemory

# Mettre à jour vers la dernière version
pip install --upgrade aivectormemory

# Aller dans votre répertoire de projet, configuration IDE en un clic
cd /path/to/your/project
run install

run install vous guide interactivement pour choisir votre IDE, génère automatiquement la configuration MCP, les règles Steering et les Hooks — aucune configuration manuelle nécessaire.

Utilisateurs macOS attention :

  • En cas d'erreur externally-managed-environment, ajoutez --break-system-packages
  • En cas d'erreur enable_load_extension, votre Python ne supporte pas le chargement d'extensions SQLite (le Python intégré de macOS et les installateurs python.org ne le supportent pas). Utilisez Homebrew Python :
    brew install python
    /opt/homebrew/bin/python3 -m pip install aivectormemory

Option 2 : uvx (sans installation)

Pas besoin de pip install, exécutez directement :

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

uv doit être installé. uvx télécharge et exécute automatiquement le paquet.

Option 3 : Configuration manuelle

{
  "mcpServers": {
    "aivectormemory": {
      "command": "run",
      "args": ["--project-dir", "/path/to/your/project"]
    }
  }
}
📍 Emplacements des fichiers de configuration par IDE
IDE Chemin de configuration
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

Pour Codex, utilisez une configuration TOML au niveau du projet au lieu de JSON :

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

Codex ne charge le .codex/config.toml du projet qu'après avoir marqué le dépôt comme trusted project.

🛠️ 9 Outils MCP

remember — Stocker une mémoire

content (string, requis)   Contenu au format Markdown
tags    (string[], requis)  Étiquettes, ex. ["erreur", "python"]
scope   (string)            "project" (par défaut) / "user" (inter-projets)

Similarité > 0.95 met à jour automatiquement la mémoire existante, sans doublons.

recall — Recherche sémantique

query   (string)     Mots-clés de recherche sémantique
tags    (string[])   Filtre exact par étiquettes
scope   (string)     "project" / "user" / "all"
top_k   (integer)    Nombre de résultats, par défaut 5

Correspondance par similarité vectorielle — trouve des mémoires liées même avec des mots différents.

forget — Supprimer des mémoires

memory_id  (string)     ID unique
memory_ids (string[])   IDs en lot

status — État de session

state (object, optionnel)   Omettre pour lire, passer pour mettre à jour
  is_blocked, block_reason, current_task,
  next_step, progress[], recent_changes[], pending[]

Maintient la progression du travail entre les sessions, restaure automatiquement le contexte.

track — Suivi des problèmes

action   (string)   "create" / "update" / "archive" / "list"
title    (string)   Titre du problème
issue_id (integer)  ID du problème
status   (string)   "pending" / "in_progress" / "completed"
content  (string)   Contenu d'investigation

task — Gestion des tâches

action     (string, requis)  "batch_create" / "update" / "list" / "delete" / "archive"
feature_id (string)          Identifiant de fonctionnalité associée (requis pour list)
tasks      (array)           Liste de tâches (batch_create, sous-tâches supportées)
task_id    (integer)         ID de tâche (update)
status     (string)          "pending" / "in_progress" / "completed" / "skipped"

Lié aux documents spec via feature_id. Update synchronise automatiquement les checkboxes tasks.md et le statut des problèmes associés.

readme — Génération de README

action   (string)    "generate" (par défaut) / "diff" (comparer les différences)
lang     (string)    Langue : en / zh-TW / ja / de / fr / es
sections (string[])  Sections spécifiques : header / tools / deps

Génère automatiquement le contenu README depuis TOOL_DEFINITIONS / pyproject.toml, support multilingue.

auto_save — Sauvegarde automatique des préférences

preferences  (string[])  Préférences techniques exprimées par l'utilisateur (scope=user fixe, inter-projets)
extra_tags   (string[])  Étiquettes supplémentaires

Extrait et stocke automatiquement les préférences utilisateur à la fin de chaque conversation, déduplication intelligente.

graph — Graphe de connaissances du code

action       (string, requis)  "query" / "trace" / "batch" / "add_node" / "add_edge" / "remove" / "refresh"
name         (string)          Nom de l'entité (add_node/query)
entity_type  (string)          Type d'entité : function/class/module/api/table/config (add_node/query)
file_path    (string)          Chemin du fichier, conversion automatique en chemin relatif (add_node/query/refresh)
source       (string)          Nom ou ID du nœud source (add_edge)
target       (string)          Nom ou ID du nœud cible (add_edge)
relation     (string)          Type de relation : calls/imports/inherits/uses/depends_on/contains (add_edge/trace)
start        (string)          Nom ou ID du nœud de départ (trace)
direction    (string)          Direction de traversée : "up" / "down" / "both" (trace)
max_depth    (integer)         Profondeur maximale de traversée, par défaut 3 (trace)

Gère les chaînes d'appels de fonctions, les flux de données et les relations de dépendance. Trace en amont/aval avant les modifications de code pour évaluer la portée de l'impact.

📊 Tableau de Bord Web

run web --port 9080
run web --port 9080 --quiet          # Supprimer les logs de requêtes
run web --port 9080 --quiet --daemon  # Exécuter en arrière-plan (macOS/Linux)

Visitez http://localhost:9080 dans votre navigateur. Nom d'utilisateur par défaut admin, mot de passe admin123 (modifiable dans les paramètres après la première connexion).

  • Basculement entre projets, parcourir/rechercher/modifier/supprimer/exporter/importer les mémoires
  • Recherche sémantique (correspondance par similarité vectorielle)
  • Suppression des données de projet en un clic
  • État de session, suivi des problèmes
  • Gestion des étiquettes (renommer, fusionner, suppression par lots)
  • Protection par authentification Token
  • Visualisation 3D du réseau vectoriel de mémoires
  • 🌐 Support multilingue (简体中文 / 繁體中文 / English / Español / Deutsch / Français / 日本語)

Connexion
Connexion

Sélection de Projet
Sélection de Projet

Aperçu & Visualisation du Réseau Vectoriel
Aperçu & Visualisation du Réseau Vectoriel

Groupe WeChat      Groupe QQ : 1085682431
Rejoindre le groupe WeChat  |  Rejoindre le groupe QQ

⚡ Combinaison avec les Règles Steering

AIVectorMemory est la couche de stockage. Utilisez les règles Steering pour indiquer à l'IA quand et comment appeler ces outils.

L'exécution de run install génère automatiquement les règles Steering et la configuration des Hooks — aucune configuration manuelle nécessaire.

IDE Emplacement Steering Hooks
Kiro .kiro/steering/aivectormemory.md .kiro/hooks/*.hook
Cursor .cursor/rules/aivectormemory.md .cursor/hooks.json
Claude Code CLAUDE.md (ajouté) .claude/settings.json
Windsurf .windsurf/rules/aivectormemory.md .windsurf/hooks.json
VSCode .github/copilot-instructions.md (ajouté) .claude/settings.json
Trae .trae/rules/aivectormemory.md
OpenCode AGENTS.md (ajouté) .opencode/plugins/*.js
Codex AGENTS.md (ajouté)
📋 Exemple de Règles Steering (généré automatiquement)
# AIVectorMemory - Règles de Workflow

## 1. Démarrage de Nouvelle Session (exécuter dans l'ordre)

1. `recall` (tags: ["connaissance-projet"], scope: "project", top_k: 100) charger les connaissances du projet
2. `recall` (tags: ["preference"], scope: "user", top_k: 20) charger les préférences utilisateur
3. `status` (sans paramètre state) lire l'état de la session
4. Bloqué → signaler et attendre ; Non bloqué → entrer dans le flux de traitement

## 2. Flux de Traitement des Messages

- Étape A : `status` lire l'état, attendre si bloqué
- Étape B : Classifier le type de message (discussion/correction/préférence/problème de code)
- Étape C : `track create` enregistrer le problème
- Étape D : Investiguer (`recall` chercher les erreurs + examiner le code + trouver la cause racine)
- Étape E : Présenter le plan à l'utilisateur, bloquer en attente de confirmation
- Étape F : Modifier le code (`recall` vérifier les erreurs avant modification)
- Étape G : Exécuter les tests pour vérifier
- Étape H : Bloquer en attente de vérification utilisateur
- Étape I : Utilisateur confirme → `track archive` + débloquer

## 3. Règles de Blocage

Doit `status({ is_blocked: true })` lors de propositions de plans ou d'attente de vérification.
Débloquer uniquement après confirmation explicite de l'utilisateur. Jamais d'auto-déblocage.

## 4-9. Suivi des Problèmes / Vérification du Code / Gestion Spec/Tâches / Qualité Mémoire / Référence Outils / Standards de Développement

(Règles complètes générées automatiquement par `run install`)
🔗 Exemple de Configuration Hooks (Kiro uniquement, généré automatiquement)

Sauvegarde automatique en fin de session supprimée. Vérification du workflow de développement (.kiro/hooks/dev-workflow-check.kiro.hook) :

{
  "enabled": true,
  "name": "Vérification du Workflow de Développement",
  "version": "1",
  "when": { "type": "promptSubmit" },
  "then": {
    "type": "askAgent",
    "prompt": "Principes : vérifier avant d'agir, pas de tests à l'aveugle, ne marquer comme terminé qu'après réussite des tests"
  }
}

🇨🇳 Utilisateurs en Chine

Le modèle d'Embedding (~200Mo) est téléchargé automatiquement au premier lancement. Si c'est lent :

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

Ou ajouter env dans la configuration MCP :

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

📦 Stack Technique

Composant Technologie
Runtime Python >= 3.10
BD Vectorielle SQLite + sqlite-vec
Embedding ONNX Runtime + intfloat/multilingual-e5-small
Tokenizer HuggingFace Tokenizers
Protocole Model Context Protocol (MCP)
Web HTTPServer natif + Vanilla JS

📋 Journal des Modifications

v2.4.5

Correctif : Contraintes strictes contre les tendances par défaut d'Opus 4.7

  • 🚫 §1 ajout Interdiction des questions de clarification : interdit de redemander « par étapes ou en une fois / complet ou partiel / dois-je faire X / faire A ou B d'abord » pour les commandes impératives ; en cas d'ambiguïté, exécuter la portée la plus complète
  • 🚫 §1 ajout Interdiction des rapports défensifs : interdit d'utiliser « conservé selon instruction / marqué pending / chemin non critique / sous-tests non nécessaires / itération ultérieure » comme excuse pour les éléments non exécutés
  • 📋 §1 ajout Format de rapport : interdit format en trois sections Phase A/B/C/D + « État final » + « Non fait (Conservé selon instruction) » ; quand l'utilisateur dit « tout faire », aucune section « Non fait/Conservé » autorisée
  • 🎯 Cause racine : contrer les tendances par défaut « rapport défensif », « questions de clarification » et « liste structurée » d'Opus 4.7 par rapport à 4.6
  • 🔄 Fichiers de règles 7 langues (STEERING_CONTENT + DEV_WORKFLOW_PROMPT) entièrement synchronisés avec les mises à jour CLAUDE.md v2.4.5

v2.4.4

Correctif : Alignement complet du flux de traitement A-I

  • 🧩 CLAUDE.md §4 flux de traitement partie B routes entièrement développées : les 4 branches (informelle/correction/préférence/autre) unifiées pour se terminer à I(confirmation utilisateur et archivage), éliminant les flux incomplets « s'arrêter à F »
  • ⚙️ Section jugement du type de message de inject-workflow-rules.sh entièrement alignée avec §4 B : 4 routes à granularité cohérente
  • 🔧 3 conflits corrigés : granularité incohérente (2 vs 4 routes) / confusion B/E (« solution+blocage » mal placé) / flux G/H/I manquant
  • 📝 Clause de violation unifiée : « Passer aux étapes C/D/E/F sans afficher le résultat du jugement = violation »
  • 🔄 Fichiers de règles 7 langues (STEERING_CONTENT + DEV_WORKFLOW_PROMPT) entièrement synchronisés avec les mises à jour CLAUDE.md v2.4.4

v2.4.3

Correctif : Renforcement des règles & Visualisation du graphe

  • 🧠 §4.B : Structure obligatoire en deux étapes (comprendre le message → déterminer le type), sauter = violation
  • 📋 §8 : Révision + blocage intégrés à chaque étape Spec, sauter = violation
  • 🧬 DEV_WORKFLOW_PROMPT : Ajout des règles graph trace/batch/add_node pour l'investigation et la modification du code
  • 📊 Tableau de bord du graphe : Mise à l'échelle dynamique du layout de force, étiquettes des arêtes masquées par défaut (survol pour afficher), détection de collision des étiquettes de nœuds
  • 🔧 Suppression de la section redondante « Rappels de violations fréquentes » du DEV_WORKFLOW_PROMPT
  • 📝 Unification du §1 Identité & Ton dans les 7 langues (pas de traduction)

v2.4.1

Correctif : Synchronisation des règles i18n

  • 🔄 Synchronisation des 7 fichiers de règles linguistiques (STEERING_CONTENT + DEV_WORKFLOW_PROMPT) avec les mises à jour de CLAUDE.md v2.4.0
  • 🧬 Ajout des références à l'outil graph dans toutes les règles steering (trace/batch/add_node/add_edge/remove)
  • ✏️ Mise à jour du rôle d'autorité de « architecte principal » à « responsable du projet » dans toutes les langues
  • 📝 Ajout de 3 nouvelles règles de violation + 2 nouveaux éléments interdits dans toutes les langues

v2.4.0

Nouveau : Graphe de Connaissances du Code

  • 🧬 Outil graph — Gère les chaînes d'appels, les flux de données et les dépendances sous forme de graphe de connaissances structuré
  • 🔍 Action trace — Parcourt les chaînes d'appels en amont/aval depuis n'importe quelle entité, évalue la portée de l'impact avant les modifications
  • 📊 Page de visualisation du graphe dans le Tableau de Bord Web — Exploration des nœuds, arêtes et relations d'appels
  • 🗃️ Migration DB v15 — Nouvelles tables graph_nodes et graph_edges pour le stockage du graphe
  • 🌐 Les 7 READMEs multilingues mis à jour en synchronisation

v2.3.1

Amélioration : Refonte complète des règles + Support OpenClaw

  • 🧠 Correction de 5 appels manquants au système de mémoire dans les règles IA : recall pièges avant investigation (Étape D), avant opérations dangereuses (§7), avant rédaction Spec (§8), avant exécution sous-tâche (§8), remember pièges après correction (Étape I)
  • 🦞 Support OpenClaw IDE ajouté — 11 IDE au total (configuration MCP fusionnée dans ~/.openclaw/openclaw.json, règles ajoutées à AGENTS.md)
  • 🎭 Règles d'auto-test Playwright renforcées — exigence de chargement ToolSearch deferred tools ajoutée, contournement par commande open interdit
  • 🔧 Fonctionnalités v2.2.0–v2.2.6 fusionnées : système Hooks (bash_guard + stop_guard + check_track), améliorations du moteur de scoring, optimisations recall, suppression en masse du tableau de bord web, modal de suppression mémoire bureau
  • ⚠️ DEV_WORKFLOW_PROMPT : 2 nouveaux rappels de violation (vérifier pièges avant modification de code, enregistrer après correction)
  • 🌐 7 fichiers de règles linguistiques synchronisés

v2.1.1

Amélioration : Mise à niveau du système de règles IA

  • 📋 CLAUDE.md complété : ajout Identité et Ton (§1), 7 Principes Fondamentaux (§3), exemples de jugement de type de message, sections sécurité IDE et auto-test étendues
  • ⚠️ Hook avec Rappel des Violations Fréquentes : exemples ❌ négatifs renforçant les 4 règles les plus fréquemment oubliées (auto-test, recall, track create, sécurité IDE)
  • 🌐 Les 7 fichiers de règles linguistiques mis à jour en synchronisation (zh-CN/zh-TW/en/ja/es/de/fr)
  • 🔢 Sections de CLAUDE.md renumérotées en §1–§11, références croisées mises à jour

v2.1.0

Nouveau : Moteur de Mémoire Intelligent + Désinstallation

  • 🧠 Recherche plein texte FTS5 avec tokenisation chinoise (jieba) — la recherche par mots-clés fonctionne désormais correctement pour le contenu CJK
  • 🔀 Recherche hybride : vecteur + FTS5 double voie avec fusion RRF (Reciprocal Rank Fusion)
  • 📊 Score composite : similarité×0,5 + récence×0,3 + fréquence×0,2, pondéré par l'importance
  • ⚡ Détection de conflits : les mémoires similaires (0,85–0,95) sont automatiquement marquées comme remplacées, les anciens faits s'estompent
  • 📦 Niveaux de mémoire : les mémoires fréquemment consultées sont automatiquement promues en long_term et recherchées en priorité
  • 🗑️ Auto-archivage : les mémoires à court terme expirées (90 jours d'inactivité + faible importance) sont nettoyées automatiquement
  • 🔗 Expansion des relations : chevauchement de tags ≥ 2 crée des liens associés, expansion à 1 saut pour découvrir les mémoires connexes
  • 📝 Auto-résumé : les mémoires longues (>500 caractères) reçoivent des résumés, le mode brief renvoie les résumés pour économiser des tokens
  • 🧹 Nettoyage du code : 15 éléments de code mort supprimés, 7 motifs dupliqués refactorisés en utilitaires partagés
  • run uninstall — supprime proprement toutes les configurations IDE (MCP, steering, hooks, permissions) en préservant les données de mémoire

v2.0.9

Amélioration : Sécurité et Optimisation des Règles

  • 🔒 Correction des vulnérabilités d'injection SQL, d'injection de commandes et de traversée de répertoires
  • 🛡️ Protection transactionnelle ajoutée pour l'intégrité des données (opérations d'archivage, insertion, mise à jour)
  • 🧠 Formule de similarité unifiée sur tous les chemins de recherche
  • 📏 Règles de flux de travail AI compressées de 38% (219→136 lignes) sans suppression de processus
  • 🧹 Migration v12 nettoie automatiquement les mémoires obsolètes
  • 🌐 Les 7 langues synchronisées

v2.0.8

Nouveau : Tests Navigateur Playwright Intégrés

  • 🎭 run install configure maintenant automatiquement les tests navigateur Playwright — l'IA peut ouvrir un vrai navigateur pour vérifier les changements frontend
  • 🎭 Utilise un navigateur de test dédié (Chrome for Testing) qui n'interfère pas avec vos onglets personnels
  • 🔑 Configuration des permissions simplifiée — plus de popups de permissions pour les outils courants
  • 📏 Règles IA mises à jour dans les 7 langues pour imposer le bon comportement de test navigateur

v2.0.7

Amélioration : Plus de Support IDEs

  • 🖥️ Support ajouté pour Antigravity et GitHub Copilot IDEs
  • 🔑 run install configure automatiquement les permissions des outils
  • 📏 Règles d'auto-test IA simplifiées

v2.0.6

Amélioration : Démarrage Plus Rapide

  • ⚡ Chargement mémoire optimisé au démarrage de session — démarrage plus rapide avec moins d'utilisation de contexte
  • 🔑 Configuration automatique des permissions Claude Code lors de l'installation
  • 🌐 7 langues synchronisées

v2.0.5

Amélioration : Règles Simplifiées

  • 📏 Règles de workflow IA restructurées pour plus de clarté et réduction de l'utilisation de tokens
  • 💾 L'IA sauvegarde maintenant automatiquement vos préférences à la fin de chaque session
  • 🌐 7 langues synchronisées

v2.0.4

Correction : Fiabilité des Outils

  • 🔧 Audit et correction complets de tous les paramètres des outils MCP

v2.0.3

Amélioration : Meilleure Recherche & Sécurité

  • 🔍 La recherche mémoire combine maintenant correspondance sémantique et par mots-clés pour plus de précision
  • 🛡️ Protection contre les opérations inter-projets ajoutée

v2.0.2

Amélioration : Généralisation des Règles & Correction Version Bureau

  • 📏 Nouvelle règle « recall avant de demander à l'utilisateur » — l'IA doit interroger le système de mémoire avant de demander des informations projet à l'utilisateur (adresse serveur, mots de passe, configuration de déploiement, etc.)
  • 📏 Règle de vérification pré-opération généralisée — exemples spécifiques supprimés pour s'appliquer à tous les scénarios
  • 🖥️ Correction de la page de paramètres du bureau affichant la version "1.0.0" codée en dur au lieu de la version réelle
  • 🌐 Règles de direction et prompts de flux de travail synchronisés dans les 7 langues

v2.0.1

Correction : Compatibilité des Hooks entre projets

  • 🔧 check_track.sh dérive désormais le chemin du projet depuis l'emplacement du script au lieu de $(pwd), corrigeant l'échec de détection de track quand Claude Code exécute les hooks depuis un autre répertoire
  • 🔧 compact-recovery.sh utilise désormais la dérivation de chemin relatif au lieu de chemins absolus codés en dur
  • 🔧 Suppression de la réinjection redondante de CLAUDE.md dans compact-recovery (déjà chargé automatiquement)
  • 🔧 Modèle install.py synchronisé avec toutes les corrections de hooks
  • 🌐 Textes d'indication compact-recovery mis à jour dans les 7 langues

v2.0

Performance : Quantification ONNX INT8

  • ⚡ Le modèle d'embedding est automatiquement quantifié de FP32 à INT8 au premier chargement, fichier modèle de 448Mo à 113Mo
  • ⚡ Utilisation mémoire du MCP Server réduite de ~1,6Go à ~768Mo (réduction de plus de 50%)
  • ⚡ La quantification est transparente pour l'utilisateur — automatique à la première utilisation, mise en cache pour les chargements suivants, retour au FP32 en cas d'échec

Nouveau : Se souvenir du mot de passe

  • 🔐 La page de connexion du client de bureau et du tableau de bord web dispose désormais d'une case "Se souvenir du mot de passe"
  • 🔐 Lorsque cochée, les identifiants sont sauvegardés dans localStorage et remplis automatiquement à la prochaine connexion ; lorsque décochée, les identifiants sauvegardés sont supprimés
  • 🔐 La case est masquée en mode inscription

Renforcement : Règles Steering

  • 📝 Section IDENTITY & TONE renforcée avec des contraintes plus spécifiques (pas de formules de politesse, pas de traduction des messages utilisateur, etc.)
  • 📝 Les exigences d'auto-test distinguent désormais entre backend pur, MCP Server et changements visibles en frontend (Playwright requis pour le frontend)
  • 📝 Les règles de développement exigent désormais l'auto-test après la fin du développement
  • 📝 Les 7 versions linguistiques synchronisées

v1.0.11

  • 🐛 Comparaison de version du client de bureau passée au versionnage sémantique, correction des fausses alertes de mise à jour quand la version locale est supérieure
  • 🐛 Noms des champs de la page de vérification de santé alignés avec le backend, correction du statut de cohérence affichant toujours Mismatch
  • 🔧 Hook check_track.sh avec fallback Python ajouté, résolution de l'échec silencieux du hook sans sqlite3 système (#4)

v1.0.10

  • 🖥️ Installation en un clic du client de bureau + détection de mise à jour
  • 🖥️ Détection automatique de l'état d'installation de Python et aivectormemory au démarrage
  • 🖥️ Bouton d'installation en un clic si non installé, détection des nouvelles versions PyPI et bureau si installé
  • 🐛 Détection d'installation passée à importlib.metadata.version() pour une version de paquet précise

v1.0.3

Optimisation de la recherche recall

  • 🔍 recall ajoute le paramètre tags_mode : any (correspondance OR) / all (correspondance AND)
  • 🔍 query + tags utilise OR par défaut (tout tag correspondant entre dans les candidats), résolvant les résultats manqués avec plusieurs tags
  • 🔍 tags seul conserve AND (navigation précise par catégorie), rétrocompatible
  • 📝 Règles de Steering mises à jour avec directives de recherche

v0.2.8

Tableau de Bord Web

  • 📋 Modal de détail des problèmes archivés : clic sur une carte archivée affiche les détails en lecture seule (tous les champs structurés : investigation/cause racine/solution/résultat de test/fichiers modifiés), bouton rouge de suppression en bas pour suppression permanente

Renforcement des Règles Steering

  • 📝 track create exige désormais le champ content obligatoire (décrire les symptômes et le contexte du problème), interdit d'envoyer uniquement le titre
  • 📝 track update post-investigation exige les champs investigation et root_cause
  • 📝 track update post-correction exige les champs solution, files_changed et test_result
  • 📝 Section 4 ajoute la sous-section "Normes de Remplissage des Champs" avec les champs obligatoires par étape
  • 📝 Section 5 étendue de "Vérification de Modification de Code" à "Vérification Pré-Opération", ajout de la règle recall des enregistrements d'erreurs avant démarrage du tableau de bord/publication PyPI/redémarrage de service
  • 📝 install.py STEERING_CONTENT synchronisé avec toutes les modifications

Optimisation des Outils

  • 🔧 Description du champ content de l'outil track changée de "contenu d'investigation" à "description du problème (obligatoire lors du create)"

v0.2.7

Extraction automatique de mots-clés

  • 🔑 remember/auto_save extraient automatiquement les mots-clés du contenu pour compléter les tags — l'IA n'a plus besoin de transmettre manuellement des tags complets
  • 🔑 Utilise la segmentation chinoise jieba + extraction par regex anglaise, extraction précise de mots-clés pour les contenus mixtes chinois-anglais
  • 🔑 Nouvelle dépendance jieba>=0.42

v0.2.6

Restructuration des règles Steering

  • 📝 Document de règles Steering réécrit de l'ancienne structure à 3 sections vers 9 sections (Démarrage de session / Flux de traitement / Règles de blocage / Suivi des problèmes / Revue de code / Gestion des tâches Spec / Qualité de mémoire / Référence des outils / Standards de développement)
  • 📝 Modèle STEERING_CONTENT de install.py synchronisé, les nouveaux projets obtiennent les règles mises à jour à l'installation
  • 📝 Tags passés de listes fixes à extraction dynamique (mots-clés extraits du contenu), améliorant la précision de recherche de mémoire

Corrections de bugs

  • 🐛 Outil readme handle_readme() manquait **_, causant l'erreur MCP unexpected keyword argument 'engine'
  • 🐛 Correction de la pagination de recherche de mémoire du tableau de bord web (filtrage complet avant pagination avec requête de recherche, corrigeant les résultats incomplets)

Mises à jour de documentation

  • 📖 Nombre d'outils README 7→8, diagramme d'architecture digesttask, descriptions d'outils task/readme ajoutées
  • 📖 Paramètres auto_save mis à jour de decisions[]/modifications[]/pitfalls[]/todos[] vers preferences[]/extra_tags[]
  • 📖 Exemple de règles Steering mis à jour du format 3 sections vers le résumé de structure 9 sections
  • 📖 Mises à jour synchronisées sur 6 versions linguistiques

v0.2.5

Mode de développement piloté par les tâches

  • 🔗 Le suivi des problèmes (track) et la gestion des tâches (task) sont reliés par feature_id en un flux complet : découverte du problème → création de tâche → exécution → synchronisation automatique des statuts → archivage lié
  • 🔄 task update synchronise automatiquement le statut du problème associé lors de la mise à jour (tout terminé→completed, en cours→in_progress)
  • 📦 track archive archive automatiquement les tâches associées (liaison lors de l'archivage du dernier problème actif)
  • 📦 Nouvelle action archive pour l'outil task, déplace toutes les tâches du groupe fonctionnel dans la table d'archives tasks_archive
  • 📊 Les cartes de problèmes affichent la progression des tâches associées (ex. 5/10), la page des tâches supporte le filtrage par archives

Nouveaux outils

  • 🆕 Outil task — gestion des tâches (batch_create/update/list/delete/archive), sous-tâches arborescentes, lié aux documents spec via feature_id
  • 🆕 Outil readme — génération automatique du contenu README depuis TOOL_DEFINITIONS/pyproject.toml, multilingue et comparaison de différences

Améliorations des outils

  • 🔧 track : nouvelle action delete, 9 champs structurés (description/investigation/root_cause/solution/test_result/notes/files_changed/feature_id/parent_id), list par issue_id pour élément unique
  • 🔧 recall : nouveau paramètre source (manual/auto_save) et mode brief (retourne uniquement content+tags, économise le contexte)
  • 🔧 auto_save : marque les mémoires avec source="auto_save", distingue les mémoires manuelles des sauvegardes automatiques

Refactorisation par séparation des tables de connaissances

  • 🗃️ project_memories + user_memories en tables indépendantes, élimine les requêtes mixtes scope/filter_dir, amélioration des performances
  • 📊 DB Schema v4→v6 : issues ajoutent 9 champs structurés + tables tasks/tasks_archive + champ memories.source

Tableau de bord Web

  • 📊 Page d'accueil avec carte d'état de blocage (rouge bloqué/vert normal), clic pour accéder à la page d'état de session
  • 📊 Nouvelle page de gestion des tâches (groupes fonctionnels pliables, filtrage par statut, recherche, CRUD)
  • 📊 Navigation latérale optimisée (état de session, problèmes, tâches remontés en position centrale)
  • 📊 Liste des mémoires avec filtrage source et filtre d'exclusion exclude_tags

Stabilité et normes

  • 🛡️ Boucle principale du serveur avec capture globale des exceptions, les erreurs de message unique ne font plus planter le serveur
  • 🛡️ Couche Protocol avec saut de lignes vides et tolérance aux erreurs de parsing JSON
  • 🕐 Horodatages changés d'UTC au fuseau horaire local
  • 🧹 Nettoyage du code redondant (méthodes non appelées, imports redondants, fichiers de sauvegarde)
  • 📝 Modèle Steering avec section workflow Spec et gestion des tâches, règles de continuation context transfer

v0.2.4

  • 🔇 Prompt du hook Stop changé en instruction directe, éliminant les réponses dupliquées de Claude Code
  • 🛡️ Règles Steering auto_save avec protection court-circuit, ignore les autres règles en fin de session
  • 🐛 Correction d'idempotence de _copy_check_track_script (retourner l'état de changement pour éviter les faux "synchronisé")
  • 🐛 Correction d'incompatibilité row.get() dans issue_repo delete avec sqlite3.Row (utiliser row.keys())
  • 🐛 Correction du défilement de la page de sélection de projets du tableau de bord Web (impossible de défiler avec beaucoup de projets)
  • 🐛 Correction de pollution CSS du tableau de bord Web (strReplace remplacement global a corrompu 6 sélecteurs de style)
  • 🔄 Tous les dialogues confirm() du tableau de bord Web remplacés par modal showConfirm personnalisé (supprimer mémoire/issue/tag/projet)
  • 🔄 Opérations de suppression du tableau de bord Web avec gestion des réponses d'erreur API (toast au lieu d'alert)
  • 🧹 .gitignore ajoute la règle d'ignorance du répertoire legacy .devmemory/
  • 🧪 Nettoyage automatique des résidus de projets temporaires pytest en DB (conftest.py session fixture)

v0.2.3

  • 🛡️ Hook PreToolUse : vérification obligatoire du track issue avant Edit/Write, rejet si aucun issue actif (Claude Code / Kiro / OpenCode)
  • 🔌 Plugin OpenCode mis à niveau au format SDK @opencode-ai/plugin (hook tool.execute.before)
  • 🔧 run install déploie automatiquement check_track.sh avec injection dynamique du chemin
  • 🐛 Correction de l'incompatibilité row.get() avec sqlite3.Row dans issue_repo archive/delete
  • 🐛 Correction de la condition de concurrence session_id : lecture de la dernière valeur depuis la DB avant incrémentation
  • 🐛 Validation du format date de track (YYYY-MM-DD) + validation du type issue_id
  • 🐛 Renforcement de l'analyse des requêtes Web API (validation Content-Length + limite 10MB + gestion des erreurs JSON)
  • 🐛 Correction de la logique scope du filtre de tags (filter_dir is not None au lieu de vérification falsy)
  • 🐛 Validation de la longueur des octets struct.unpack pour l'export des données vectorielles
  • 🐛 Migration versionnée du schéma (table schema_version + migration incrémentielle v1/v2/v3)
  • 🐛 Correction de la synchronisation du numéro de version __init__.py

v0.2.2

  • 🔇 Tableau de bord Web : paramètre --quiet pour supprimer les logs de requêtes
  • 🔄 Tableau de bord Web : paramètre --daemon pour exécution en arrière-plan (macOS/Linux)
  • 🔧 Correction de la génération de configuration MCP dans run install (sys.executable + champs complets)
  • 📋 Suivi des problèmes CRUD et archivage (Tableau de bord Web ajout/édition/archivage/suppression + association mémoires)
  • 👆 Clic n'importe où sur la ligne pour ouvrir le modal d'édition (mémoires/problèmes/tags)
  • 🔒 Règles de blocage appliquées lors des continuations de session/transferts de contexte (reconfirmation requise)

v0.2.1

  • ➕ Ajouter des projets depuis le tableau de bord Web (navigateur de répertoires + saisie manuelle)
  • 🏷️ Correction de la contamination des tags entre projets (opérations limitées au projet actuel + mémoires globales)
  • 📐 Troncature par points de suspension dans la pagination des modales + largeur 80%
  • 🔌 OpenCode install génère automatiquement le plugin auto_save (événement session.idle)
  • 🔗 Claude Code / Cursor / Windsurf install génère automatiquement la configuration Hooks (sauvegarde automatique en fin de session)
  • 🎯 Améliorations UX du tableau de bord Web (retour Toast, guides d'état vide, barre d'export/import)
  • 🔧 Clic sur les cartes de statistiques (clic sur les compteurs mémoire/problèmes pour voir les détails)
  • 🏷️ Page de gestion des tags distingue les sources projet/global (marqueurs 📁/🌐)
  • 🏷️ Le nombre de tags des cartes projet inclut désormais les tags des mémoires globales

v0.2.0

  • 🔐 Authentification par Token du tableau de bord Web
  • ⚡ Cache de vecteurs Embedding, pas de calcul redondant pour un contenu identique
  • 🔍 recall supporte la recherche combinée query + tags
  • 🗑️ forget supporte la suppression par lots (paramètre memory_ids)
  • 📤 Export/import de mémoires (format JSON)
  • 🔎 Recherche sémantique dans le tableau de bord Web
  • 🗂️ Bouton de suppression de projet dans le tableau de bord Web
  • 📊 Optimisation des performances du tableau de bord Web (élimination des analyses complètes de table)
  • 🧠 Compression intelligente de digest
  • 💾 Persistance de session_id
  • 📏 Protection de limite de longueur de content
  • 🏷️ Référence dynamique de version (plus codée en dur)

v0.1.x

  • Version initiale : 7 outils MCP, tableau de bord Web, visualisation 3D vectorielle, support multilingue

License

Apache-2.0