Skip to main content
Glama

Selbstlern-Speicher-Engine für Programmier-Agenten

Eine auf MCP (Model Context Protocol) basierende Selbstlern-Speicher-Engine, die Programmier-Agenten eine "Wahrnehmung-Reflexion-Konsolidierung-Anwendung"-Lernschleife in vier Ebenen bietet. Der Agent lernt aus Fehlern und wird mit jeder Nutzung besser.

Architekturübersicht

┌──────────────────────────────────────────────────────┐
│                    编程智能体                          │
│  (Claude Code / Cursor / 任何支持 MCP 的智能体)       │
└──────────┬───────────────────────┬────────────────────┘
           │ MCP Protocol          │
    ┌──────▼──────┐         ┌──────▼──────┐
    │  应用层      │         │  感知层      │
    │  检索+注入   │         │  错误捕获    │
    └──────┬──────┘         └──────┬──────┘
           │                       │
    ┌──────▼──────┐         ┌──────▼──────┐
    │  沉淀层      │         │  反思层      │
    │  技能+记忆   │◄────────│  根因分析    │
    └──────┬──────┘         └─────────────┘
           │
    ┌──────▼──────┐
    │  存储层      │
    │  SQLite+FTS5 │
    └─────────────┘

Related MCP server: Self-Learning MCP

Lernschleife in vier Ebenen

Ebene

Verantwortung

MCP-Tool

Wahrnehmungsebene Observation

Erfasst Tool-Ausführungsfehler, Testfehlschläge, Benutzerkorrekturen, Dialogsignale

record_observation, capture_conversation_signals, get_pending_observations

Reflexionsebene Reflection

Ursachenanalyse, Extraktion wiederverwendbarer Erfahrungen

get_reflection_prompt, reflect_and_save, batch_get_reflection_prompts

Konsolidierungsebene Consolidation

Destilliert Fähigkeiten, generiert SKILL.md, pflegt Erinnerungen

create_skill, get_skill_prompt, list_skills, get_skill, check_consolidation

Anwendungsebene Application

Ruft relevante Erfahrungen ab, injiziert sie in den Aufgabenkontext

get_context, search_memory, search_skill

Statistik

Zeigt Engine-Status

get_stats

Installation

# 进入项目目录(替换为你本机的实际路径)
cd memory-engine

# 安装依赖(绕过代理)
pip install --no-proxy -e .

# 或手动安装
pip install --no-proxy mcp[cli] jieba

MCP-Server konfigurieren

ZCode / Claude Code

In der MCP-Konfigurationsdatei hinzufügen:

{
  "mcpServers": {
    "memory-engine": {
      "command": "python",
      "args": ["-m", "memory_engine.server"],
      "cwd": "<项目根目录的绝对路径>"
    }
  }
}

Ersetzen Sie <absoluter Pfad zum Projektstammverzeichnis> durch den tatsächlichen Pfad, unter dem dieses Projekt auf Ihrem Rechner geklont/abgelegt ist (d. h. das Verzeichnis, das pyproject.toml enthält), z. B. D:/tools/memory-engine unter Windows oder /home/user/tools/memory-engine unter macOS/Linux.

Cursor / VS Code

Fügen Sie in .cursor/mcp.json oder in den MCP-Einstellungen von VS Code dieselbe Konfiguration hinzu.

Eigenständig ausführen (zum Debuggen)

cd memory-engine
python -m memory_engine.server

Kern-Workflow

0. Dialogsignale erfassen (Wahrnehmungsverstärkung)

Beim Vibe-Coding hinterlässt der Bediener oft explizite Signale im Dialog – Betonungsanweisungen wie "bitte beachten", "bitte merken" sowie Beschwerden, die durch wiederholte Fehler des Agenten entstehen ("schon wieder…", "wie oft habe ich gesagt…"). Diese Aussagen sind Lernmaterial mit dem höchsten Wert und sollten erfasst und in das Gedächtnis aufgenommen werden:

capture_conversation_signals(
  conversation_text="用户: 请注意,bat文件必须用ANSI编码
用户: 怎么又是编码问题,我说过多少次了",
  auto_record=true
)

Der Detektor erkennt vier Signaltypen und sortiert sie nach Priorität:

Signal

Erkennungsbeispiele

Bedeutung

complaint

"schon wieder", "immer noch falsch", "wie oft habe ich gesagt"

Beschwerde durch wiederholte Fehler, zeigt, dass frühere Lehren nicht beherzigt wurden (höchste Priorität)

emphasis

"bitte beachten", "bitte merken", "unbedingt", "auf keinen Fall"

Vom Benutzer explizit betonte Regeln

preference

"ab jetzt immer", "ich mag", "bitte standardmäßig"

Präferenzen des Benutzers bezüglich der Arbeitsweise

frustration

"fassungslos", "zu langsam", "Zeitverschwendung"

Unzufriedenheit, weist auf Effizienz-/Erlebnisprobleme hin

Die Erkennungsergebnisse werden automatisch als Beobachtungen vom Typ conversation_signal aufgezeichnet. Bei der Reflexion wird ein speziell angepasster Prompt verwendet (Rückschluss auf frühere Fehler + Destillation zu Imperativ-Regeln). Der weitere Ablauf entspricht der Fehlerreflexion.

1. Fehler aufzeichnen (Wahrnehmung)

Wenn die Tool-Ausführung fehlschlägt, ruft der Agent auf:

record_observation(
  obs_type="tool_error",
  tool_name="Bash",
  error_message="bat文件执行报错:编码错误",
  context="在Windows上创建的bat文件包含中文注释",
  tags="encoding,windows,bat"
)

2. Reflexionsanalyse (Reflexion)

Analyse-Prompt abrufen:

get_reflection_prompt(obs_id="abc123")

Der Agent analysiert die Ursache anhand des zurückgegebenen Prompts und speichert dann das Ergebnis:

reflect_and_save(
  obs_id="abc123",
  root_cause="Windows的cmd.exe默认使用系统ANSI编码,UTF-8编码的bat文件会导致中文注释被解析错误",
  category="encoding",
  lesson="在Windows上创建bat文件时,文件必须使用ANSI/GBK编码,而非UTF-8",
  solution="将bat文件保存为ANSI编码,或使用chcp 65001切换代码页",
  tags="encoding,windows,bat,cmd",
  generalizable=true
)

3. Fähigkeiten destillieren (Konsolidierung)

Nach ausreichend gesammelter Erfahrung prüfen, ob eine Fähigkeit destilliert werden kann:

check_consolidation()

Fähigkeit erstellen:

create_skill(
  name="windows-bat-encoding",
  description="Windows bat文件中文编码问题的处理方法",
  trigger_conditions="创建或编辑.bat文件\n在Windows上运行脚本失败且涉及中文",
  steps="将文件保存为ANSI编码\n或使用chcp 65001 + UTF-8 BOM",
  caveats="chcp 65001仅在当前cmd会话有效\n某些旧版Windows不支持UTF-8 BOM",
  category="encoding"
)

4. Abruf und Anwendung (Anwendung)

Vor Beginn einer neuen Aufgabe relevante Erfahrungen abrufen:

get_context(task_description="需要创建一个Windows批处理脚本来部署应用")

Gibt einen Kontext mit relevanten Fähigkeiten und Fällen zurück, der direkt in den Prompt injiziert wird.

Gedächtnisschichten

Typ

Beschreibung

Beispiel

Episodisches Gedächtnis Episodic

Konkrete "Geschichten", vollständiger Verlauf einer Reparatur

"2024-01-15 Kodierungsproblem der bat-Datei in Projekt XX behoben"

Semantisches Gedächtnis Semantic

Abstrahierte Regeln und Lehren

"bat-Dateien unter Windows sollten ANSI-Kodierung verwenden"

Fähigkeit Skill

Standardisierte, ausführbare Handlungsanleitung

SKILL.md-Datei

Datenspeicherung

  • SQLite-Datenbank (data/memories.db): Strukturierte Speicherung, unterstützt FTS5-Volltextsuche

  • JSONL-Protokoll (data/observations.jsonl): Anhängeprotokoll der Rohbeobachtungen

  • Markdown-Dateien (data/skills/): Generierte Fähigkeitsdokumente, menschenlesbar, versionierbar

Projektstruktur

memory-engine/
├── 开发思路.md              # 设计文档
├── README.md                # 本文件
├── pyproject.toml           # Python 项目配置
├── requirements.txt         # 依赖列表
├── config/
│   └── settings.json        # 引擎配置
├── src/memory_engine/
│   ├── __init__.py
│   ├── server.py            # MCP 服务器入口(15个工具)
│   ├── models/
│   │   └── schemas.py       # 数据模型
│   ├── observation/
│   │   ├── collector.py     # 感知层:错误收集器
│   │   └── signal_detector.py # 感知层:对话信号检测器
│   ├── reflection/
│   │   └── analyzer.py      # 反思层:根因分析器
│   ├── consolidation/
│   │   ├── memory_store.py  # 存储层:SQLite + FTS5
│   │   └── skill_generator.py # 沉淀层:技能生成器
│   └── application/
│       └── retriever.py     # 应用层:记忆检索器
├── data/
│   ├── memories.db          # SQLite 数据库(运行后生成)
│   ├── observations.jsonl   # 观察日志(运行后生成)
│   └── skills/              # 技能 Markdown(运行后生成)
└── tests/
    └── test_engine.py       # 测试

Fehlerkategorien

encoding | build_error | runtime_error | test_failure | dependency | configuration | platform_specific | performance | security | best_practice | api_usage | preference | communication | other

Designphilosophie

  • Keine Abhängigkeit von externen LLMs: Reflexion und Fähigkeitsdestillation werden vom Aufrufer (dem Agenten selbst) durchgeführt; die Engine liefert nur das Framework und die Speicherung

  • MCP-nativ: Läuft als Standard-MCP-Server; jeder MCP-fähige Agent kann direkt angebunden werden

  • Mensch-Maschine-Kollaboration: Alle Erinnerungen und Fähigkeiten werden in menschenlesbaren Formaten (Markdown, JSON) gespeichert, was Prüfung und Wartung erleichtert

  • Inkrementelles Lernen: Von einzelnen Fehlern → episodischem Gedächtnis → semantischem Gedächtnis → Fähigkeiten, schrittweise Abstraktion und Destillation

Install Server
A
license - permissive license
B
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Helps AI coding agents remember what they learn across sessions by storing and retrieving atomic learnings, enabling persistent memory for AI tools.
    11
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to learn from their work by recording tasks, extracting patterns, detecting mistakes, and proactively surfacing insights, all using the agent's own model through a cooperative intelligence pattern.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides coding agents with durable, cross-session lessons-learned memory, enforcing that success or failure verdicts can only come from human approval, human correction, or objective metrics—never from the agent itself.
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.

  • Persistent memory for AI agents — verbatim conversations, searchable by meaning.

  • Shared debugging memory for AI coding agents

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/top777/memory-engine'

If you have feedback or need assistance with the MCP directory API, please join our Discord server