Token导航 LogoToken导航TokenDH.com
amem (Amanasmuei) logo
数据服务未说明官方级别未说明来源级核验

amem (Amanasmuei)

MCP Server

amem是一个为AI编码工具设计的本地记忆层,能够跨会话和工具记住用户的偏好、决策和修正,实现一次告知,处处记忆。

工具数

33

提示词数

0

GitHub Stars

1

资源数

0
TypeScriptClaude记忆存储ClaudeCursorWindsurf

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

amanasmuei

提供方

amanasmuei

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

amem

The memory layer for AI coding tools.

Tell your AI once — it remembers everywhere.

🎯 5%时为97.8%⚡ ~14毫秒p50🛠 33工具🔒 100%本地
LongMemEval-S,500q完整召回流程完整内存工具包无需云

Quick Start · How It Works · Benchmarks · Tools · Dashboard · Architecture

______________________________________________________________________

💡 问题

每个AI工具都是从零开始的。每次会议。每一个工具。

- You: "Don't use 'any' in TypeScript"     → told Claude 3 times. Copilot still doesn't know.
- You: "We chose PostgreSQL over MongoDB"   → explained in Cursor. Claude has no idea.
+ With amem: tell it once, every AI tool remembers — forever.

See it in action

You (in Claude Code):  "Don't use any type in TypeScript"
  └─ amem stores this as a correction (priority 1.0, confidence 100%)

You (switch to Copilot): starts coding
  └─ Copilot already knows — amem feeds it the same correction

You (open Cursor): "What do you remember about TypeScript?"
  └─ Instantly recalls: "Don't use any type" + all related preferences

没有云。没有API密钥。一个SQLite文件。一切都在你的机器上。

______________________________________________________________________

🚀 快速开始

克劳德代码 (推荐)

/plugin marketplace add amanasmuei/amem
/plugin install amem

GitHub Copilot 命令行工具

copilot plugin marketplace add amanasmuei/amem
copilot plugin install amem

📦 Cursor / Windsurf / Any MCP Client

npm install -g @aman_asmuei/amem
amem-cli init      # Detects & configures all installed AI tools
amem-cli rules     # Generates extraction rules for proactive memory use

或者手动添加到MCP配置中:

{
  "mcpServers": {
    "amem": {
      "command": "npx",
      "args": ["-y", "@aman_asmuei/amem"]
    }
  }
}

验证它是否有效:

amem-cli stats     # Should show "0 memories" initially
💬 告诉你的AI: *“记住:始终使用严格的TypeScript,永远不要使用任何类型”* 🔄 开始a 会话: *“你还记得TypeScript吗?”* --它立刻回忆起来。

______________________________________________________________________

🧬 由...驱动 amem-core

amem 是MCP服务器。检索引擎存在于 @aman_asmuei/amem-core.

     Claude Code / Copilot / Cursor / any MCP client
                        │
                        │ MCP (stdio)
                        ▼
        ┌──────────────────────────────────┐
        │  @aman_asmuei/amem  (this pkg)   │
        │  33 Tools · 7 Resources · 2 Prompts
        │  CLI · Hooks · Dashboard         │
        └───────────────┬──────────────────┘
                        │ imports
                        ▼
        ┌──────────────────────────────────┐
        │  @aman_asmuei/amem-core          │
        │  Embeddings · HNSW · Recall      │
        │  Knowledge Graph · Reflection    │
        │  97.8% R@5 on LongMemEval-S      │
        └───────────────┬──────────────────┘
                        ▼
              ┌────────────────────┐
              │  SQLite + WAL      │
              │  ~/.amem/memory.db │
              └────────────────────┘

Why two packages?

角色安装
@aman_asmuei/amem *(这个)*MCP服务器+CLI+挂钩npm i -g @aman_asmuei/amem
@aman_asmuei/amem-core纯TS库,零MCP depsnpm i @aman_asmuei/amem-core

相同的发动机功率 amem (MCP服务器), aman-agent (CLI), aman-tg (Telegram机器人),以及任何你给内存的Node应用程序。检索改进通过 amem-core.MCP工具通过以下方式更换船只 amem。它们独立版本。

5时为97.8% 标题是发动机质量 amem-core (LongMemEval-S,会话级,500个问题,零API调用)-无论您是通过MCP调用它还是直接导入库,都会得到确切的结果。

______________________________________________________________________

⚙️ 运作原理

amem捕获知识 三层 --从全自动到全手动:

如何它做什么
自动生命周期挂钩捕获工具观察结果,在会话结束时自动提取纠正/决策/模式
AI驱动提取规则您的AI主动调用 memory_store 当你纠正它、做出决定或表达偏好时
手册自然语言*“记住:我们使用PostgreSQL”* 或 *“忘记Redis内存”*

内存类型

优先级类型示例
1.0修正*“不要在集成测试中嘲笑数据库”*
0.85决定*“为ACID选择Postgres而不是Mongo”*
0.7模式*“比起筑巢,更喜欢提前返回”*
0.7偏好*“使用pnpm,而不是npm”*
0.5拓扑*“Auth模块位于src/Auth/中”*
0.4事实*“API于2025年1月发布”*

修正总是先出现的——它们是人工智能的硬约束。

🔄 Memory Tiers & Temporal Validity

内存层

层级行为
核心始终在会话开始时注入(约500个令牌)。你最关键的修正。
工作会话范围,为当前任务自动显示。
档案默认值。可搜索但不能自动注入。

时间有效性

记忆不是永恒的。当事实发生变化时:

  • 旧的记忆得到 过期的 (未删除)--保留 *“三月的事是真的吗?”*
  • 矛盾是 自动检测 ��� 存储新决策会自动使旧决策过期
  • 使用查询任意时间点 memory_since

🧠 Self-Evolving Memory Loop

你的记忆不仅仅是储存 从自身结构中学习.致电 memory_reflect 以触发反射引擎:

memory_reflect → Analyzes your entire memory graph
  │
  ├─ Clusters related memories (HNSW neighbor graph)
  ├─ Detects contradictions (negation pairs, numerical, low-overlap)
  ├─ Identifies synthesis candidates
  ├─ Surfaces knowledge gaps (topics with sparse recall)
  └─ Returns a structured report with suggested actions

进化循环:

  1. 反映memory_reflect 整理你的记忆,找出模式
  2. 合成 --人工智能通过以下方式将相关集群合并为高阶原则 memory_store
  3. 链接memory_relate 将合成与源记忆联系起来(通过合成谱系跟踪)
  4. 重复 --每个周期,图形都变得更加连贯和抽象

当反思到期时(自上次运行以来>7天或>50个新记忆),系统会自动推送。

📊 What the reflection report looks like

# Memory Reflection Report
Analyzed 127 memories in 12ms
Health Score: 68/100

## Stats
- Clusters: 8 (avg size: 4.2)
- Clustered: 34 | Orphans: 93
- Contradictions: 2
- Synthesis candidates: 3
- Knowledge gaps: 4

## Contradictions Found
⚠ Opposing language detected (23d apart, 87% similar)
  A: a1b2c3d4 "Always use semicolons in JavaScript..."
  B: e5f6g7h8 "Never use semicolons in JavaScript..."
  → Expire older memory a1b2c3d4 — newer supersedes it

## Synthesis Candidates
### cluster-0 (4 patterns)
  "These 4 related memories form a cluster about 'typescript, types':
  [patterns]:
    - 'Always use strict TypeScript types'
    - 'Prefer strict null checks'
    - 'Use unknown instead of any'
    - 'Enable strictNullChecks in tsconfig'

  Synthesize into a higher-order principle..."

## Knowledge Gaps
- "kubernetes deployment" — asked 3x, avg 25% confidence
- "database migration strategy" — asked 2x, avg 0% confidence

______________________________________________________________________

📈 基准测试

召回准确性(LongMemEval)

所有号码来自 amem-core v0.5.1 --检索引擎为该MCP服务器供电。零API调用,全部本地,完全可复制。

LongMemEval-S(会话级别)——标题指标

度量分数
R@195.0%
R@397.0%
R@5🏆 97.8%
R@1099.0%

500个问题·仅限CPU·零个API调用

LongMemEval Oracle(回合级别)

度量分数
R@166.2%
R@390.8%
R@594.6%
R@1097.5%

479个可评分问题·301秒运行时间·节点22

管道:当地 bge-small-en-v1.5 双编码器+ ms-marco-MiniLM-L-6-v2 交叉编码器(int8,批处理,默认打开)。看 amem核心基准 查看完整的每种类型的细分、管道演变和诚实的笔记。

为什么这对“用Rust重写”问题很重要。 上面10.3ms的重新排序数字反映了它所取代的每对实现的约30%的加速——通过约20行批处理加int8量化实现,无需本机重写。热门路径已经很有效了;剩下的胜利来自于更谨慎地使用它们。我们继续使用TypeScript。

搜索延迟

全面召回流程(v0.5.1+)

阶段p50分享
嵌入式(双编码器)3.0ms22%
检索(HNSW+多策略)0.1ms1%
重新排序(int8交叉编码器)10.3毫秒74%
总计~14ms100%

仅HNSW索引(矢量搜索)

回忆HNSW暴力加速
1000.05毫秒0.10毫秒2倍
10000.06毫秒0.50毫秒8x
50000.08毫秒2.44毫秒30倍
100000.08毫秒5.35毫秒67x

测量:平均100次搜索,384次暗嵌入,前10名结果。

在任何尺度下均低于-0.1ms --实际上为O(log n)。HNSW是一个可选的依赖项;当不可用时,使用暴力作为后备。

______________________________________________________________________

🛠️ 工具参考

核心内存(7个工具)

工具说明
memory_store用类型、标签和信心存储记忆。自动编辑私人内容,自动过期矛盾。
memory_recall语义搜索——默认情况下为紧凑模式(约10倍令牌节省)。使用 memory_detail 为了获得完整的内容。
memory_detail压缩召回后按ID检索完整内容。
memory_context加载主题的所有相关上下文,按类型组织,并使用令牌预算。
memory_extract批量保存对话中的多个记忆。
memory_forget按ID删除或查询(确认后)。
memory_inject编码开始前的曲面校正+决策+图形邻居。

Precision, History, Advanced, Admin, Reminders, and Maintenance tools (26 more)

精度和历史(5个工具)

工具说明
memory_patch使用自动快照进行手术现场级编辑。
memory_versions查看完整的编辑历史记录或还原任何版本。
memory_search通过FTS5以紧凑模式进行精确的全文搜索。
memory_since具有自然语言范围的时态查询(7d, 2w, 1h).
memory_relate在记忆之间构建一个类型化的知识图。

高级(6个工具)

工具说明
memory_multi_recall紧凑模式的多策略搜索:语义+FTS5+图+时态。
memory_tier在层之间移动内存:核心/工作/归档。
memory_expire标记为不再有效——保留为历史,排除在召回范围之外。
memory_summarize存储结构化的会话摘要,包括决策、更正和指标。
memory_history查看过去的会话摘要。
memory_reflect自我进化的反射引擎——对记忆进行聚类,检测矛盾,识别合成候选者,填补知识空白。

管理和同步(4个工具)

工具说明
memory_doctor在amem数据库上运行只读健康诊断。
memory_repair对amem数据库执行安全、有针对性的修复。
memory_config获取或设置带安全护栏的amem配置。
memory_sync在amem和其他系统之间导入或导出内存(Claude自动内存、Copilot指令)。

提醒(4个工具)

工具说明
reminder_set创建带有可选截止日期和范围的提醒。
reminder_list列出活动(或所有)提醒,可按范围筛选。
reminder_check显示过期、今天和即将到来(7天)。
reminder_complete标记为已完成(支持部分ID)。

日志和维护(7个工具)

工具说明
memory_log附加原始对话回合(无损,仅附加)。
memory_log_recall按会话、关键字或最近度搜索或回放日志。
memory_log_cleanup使用可配置的保留期修剪旧条目。
memory_stats计数、类型细分、置信度分布。
memory_export导出为Markdown或JSON格式。
memory_import从JSON进行批量导入,并自动进行数据消除。
memory_consolidate合并重复,修剪陈旧,促进频繁,腐烂闲置。

______________________________________________________________________

📖 使用指南

存储记忆

自然语言 (最简单)

"Remember: we use PostgreSQL, not MongoDB"
"Store a correction: never use console.log in production"
"Note that the auth module is in src/auth/"

显式工具调用

memory_store({
  content: "Never use 'any' — define proper interfaces",
  type: "correction",
  tags: ["typescript"],
  confidence: 1.0
})

回忆往事

// Step 1: Compact index — ~50-100 tokens (default)
memory_recall({ query: "auth decisions", limit: 5 })
// -> a1b2c3d4 [decision] Auth service uses JWT tokens... (92%)
// -> e5f6g7h8 [correction] Never store tokens in localStorage... (100%)

// Step 2: Full details only for what you need
memory_detail({ ids: ["a1b2c3d4", "e5f6g7h8"] })

More search options

// Multi-strategy: semantic + FTS5 + graph + temporal
memory_multi_recall({
  query: "authentication architecture",
  limit: 10,
  weights: { semantic: 0.4, fts: 0.3, graph: 0.15, temporal: 0.15 }
})

// Exact keyword search (FTS5 syntax)
memory_search({ query: "OAuth PKCE" })
memory_search({ query: '"event sourcing"' })     // phrase match
memory_search({ query: "auth* NOT legacy" })      // boolean

管理记忆

Edit, expire, promote, link

// Surgical edit with auto-snapshot for rollback
memory_patch({ id: "a1b2c3d4", field: "content", value: "Updated text", reason: "clarified" })

// View edit history / restore
memory_versions({ memory_id: "a1b2c3d4" })

// Expire (preserve for history, exclude from recall)
memory_expire({ id: "a1b2c3d4", reason: "Migrated to GraphQL" })

// Promote to core tier (always loaded at session start)
memory_tier({ id: "a1b2c3d4", tier: "core" })

// Link related memories (graph builds itself, but you can add manual links)
memory_relate({ action: "relate", from_id: "abc", to_id: "xyz", relation_type: "supports" })

关系类型: supports, contradicts, depends_on, supersedes, related_to, caused_by, implements --或者定义你自己的。

提醒事项

Cross-session deadline tracking

reminder_set({ content: "Review PR #42", due_at: 1743033600000, scope: "global" })

reminder_check({})
// -> [OVERDUE] Review PR #42
// -> [TODAY] Deploy auth service
// -> [upcoming] Write quarterly report

reminder_complete({ id: "a1b2c3d4" })

隐私

Automatic redaction

// Private blocks stripped before storage
memory_store({
  content: "DB password is 
hunter2
, connect to prod at db.example.com",
  type: "topology", tags: ["database"]
})
// Stored: "DB password is [REDACTED], connect to prod at db.example.com"

// API keys, tokens, passwords auto-redacted by pattern matching
// Configure patterns in ~/.amem/config.json

______________________________________________________________________

⚔️ 诚实的比较:amem与graphify

Click to expand — how amem compares to graphify

图形化 当人们找到amem时,最常见的是“X怎么样?”。他们解决 根本不同的问题 并且是真正互补的。

每个工具的作用

阿门图形化
一个衬垫跨AI会话的持久内存代码库→ 知识图谱
核心问题*“我的AI从我身上学到了什么?”**“这个代码库是什么样子的?”*
输入自然语言(更正、决策、偏好)文件(代码、文档、PDF、图像、视频)
输出按相关性排序的回忆结构图+报告+交互式HTML
坚持始终--内存在会话和工具之间生存快照-- graph.json 坚持,但不会随着时间的推移而学习
当它运行时持续,每次会话按需(/graphify .)或者通过git钩子提交

技术比较

阿门图形化
运行时Types/Node(≥18)Python(≥3.10)
协议MCP服务器(33个工具,7个资源)AI技能(斜线命令)+可选MCP服务器
存储SQLite+FTS5+WAL网络X图→ JSON文件
搜索语义嵌入+FTS5+图+重排序图遍历(BFS/DFS)+节点查找
嵌入本地 bge-small-en-v1.5 (384 dim)无--使用图拓扑,而不是向量相似性
代码理解无——存储你告诉它的内容深度——25种语言的树保姆AST
多模态纯文本代码、文档、PDF、图像、视频、音频
需要LLM否(全部为本地)对于文档/图像,答案是肯定的(通过树保姆,代码是LLM免费的)
基准LongMemEval-S上的R@5为97.8%与原始文件读取相比,令牌减少了71.5倍
AI工具支持Claude Code,Copilot,Cursor,任何MCP客户端Claude Code、Codex、Copilot、Cursor、Gemini、Aider、Kiro,+10更多

每个人都赢了

阿梅姆在以下位置获胜:

  • 记住您的偏好、更正和决定 跨项目和工具
  • 语义回忆——从模糊查询中找到正确的记忆(97.8%R@5)
  • 时间智能——追踪真实情况 *当*,自动到期矛盾
  • 自我进化——反射引擎集群,检测矛盾,识别差距
  • 零LLM依赖-一切都在本地运行,无需API调用

图形化获胜地点:

  • 理解 代码结构 --调用图、导入、类层次结构、跨文件关系
  • 多模式摄取——插入代码、论文、屏幕截图、视频,并将它们全部绘制出来
  • 令牌效率——71.5倍压缩意味着您的AI读取结构,而不是原始文件
  • 语言支持的广度——通过树型AST实现25种编程语言
  • 广泛的AI工具支持——15个以上平台,带有专用安装命令

诚实的收获

  1. 他们不竞争。 阿梅姆记得 *你的* 知识(决策、修正、偏好)。绘制地图 *代码库的* 结构(调用图、依赖关系、架构)。不同的数据,不同的访问模式。
  1. 如果你愿意,可以两者都用。graphify . 获取项目的结构图。使用amem记住“我们选择这个架构是因为X。”图形告诉你的人工智能 *对存在*记忆告诉它 *为什么事情是这样的*.
  1. graphify的平台覆盖范围更广 (15+AI工具)。amem在工作的地方有更深入的集成(MCP协议,有33个工具、结构化资源、提示)。
  1. graphify需要非代码文件的LLM。 amem完全是本地的-没有API调用,没有超出本地嵌入模型的模型推理。
  1. 真正的选择取决于你的痛点。 如果你的人工智能总是忘记你的偏好和决定→ amem.如果你的AI不能有效地浏览你的代码库→ 图形化。如果两者都有→ 两者都用。

______________________________________________________________________

🌐 平台兼容性

功能克劳德代码GitHub Copilot命令行界面游标/Windsurf/其他
一个命令插件安装--
33个MCP工具
人工智能技能147--
自动捕捉挂钩--
会话自动摘要--
自动内存同步----
CLI设置(amem-cli init)

克劳德代码 具有最深入的集成(插件+钩子+自动内存同步)。 Copilot命令行界面 是第二位。 其他MCP客户端 通过手动配置获取完整的33工具服务器。

人工智能技能

Available skills by platform

你说什么技能克劳德代码Copilot CLI
*“记住永远不要使用任何类型”*remember
*“关于auth,你还记得什么?”*recall
*“加载此任务的上下文”*context
*“显示内存统计信息”*stats
*“运行内存医生”*doctor
*“导出我的记忆”*export
*“列出所有更正”*list
*“同步我的克劳德记忆”*sync--
*“打开内存控制面板”*dashboard--
*“安装挂钩”*hooks--

______________________________________________________________________

🔄 使用Claude Code自动内存

amem是对Claude内置自动存储器的补充,它不会取代它。

克劳德汽车存储器amem
捕捉自动、零配置键入置信度得分
存储单个markdown文件带搜索、图形、时态的SQLite
召回每次会话加载整个文件只显示相关内存
历史更新时重写过多版本、时间有效性
搜索语义+FTS5+图形+重新排序

推荐: 保持两者都启用。跑 amem-cli sync 将克劳德的记忆导入amem,以实现统一、结构化的访问。

Claude → amem sync

amem-cli sync              # Import all projects
amem-cli sync --dry-run    # Preview what would be imported
amem-cli sync --project myapp  # Import specific project
克劳德型名字型信心
feedbackcorrection1.0
projectdecision0.85
userpreference0.8
referencetopology0.7

amem → Copilot sync

将amem记忆导出到 .github/copilot-instructions.md 所以Copilot将它们视为持久上下文:

amem-cli sync --to copilot              # Export to current project
amem-cli sync --to copilot --dry-run    # Preview without writing
amem-cli sync --to copilot --project /path/to/repo

这将生成按优先级分组的结构化标记:

  1. 更正 (必须遵守)——硬约束
  2. 决策 --建筑选择
  3. 偏好 --用户偏好
  4. 模式 --编码惯例
  5. 上下文 --拓扑+事实

amem部分被包裹在 `` marks--保留文件中现有的非amem内容。

跨工具同步: Claude会话中做出的决定会自动通知Copilot:

Claude Code → amem sync → amem DB → amem sync --to copilot → copilot-instructions.md

______________________________________________________________________

📊 仪表板和知识图谱

amem-cli dashboard              # Opens at localhost:3333
amem-cli dashboard --port=8080  # Custom port

功能齐全的网络仪表板,包括:

  • 🔍 内存浏览器 --搜索、按类型/层/源过滤、内联操作(升级、降级、过期)
  • 🕸️ 交互式知识图谱 --缩放、平移、单击以通过邻域突出显示、细节面板、搜索、定向边进行聚焦
  • 📈 分析 --置信度分布、类型细分、会话时间线
  • 提醒事项 --查看和管理跨会话任务
  • 📋 副驾驶预览 --看看会出口到什么 copilot-instructions.md

______________________________________________________________________

💻 CLI参考

# Setup
amem-cli init                          # Auto-configure AI tools
amem-cli rules                         # Generate extraction rules
amem-cli hooks                         # Install hooks for Claude Code
amem-cli hooks --target copilot        # Install hooks for GitHub Copilot CLI
amem-cli hooks --uninstall             # Remove hooks
amem-cli sync                          # Import Claude auto-memory → amem
amem-cli sync --to copilot             # Export amem → copilot-instructions.md
amem-cli doctor                        # Health diagnostics
amem-cli repair                        # Repair corrupted database from backups

# Dashboard
amem-cli dashboard                     # Web dashboard (localhost:3333)

# Memory operations
amem-cli recall "authentication"       # Semantic search
amem-cli stats                         # Statistics
amem-cli list --type correction        # List by type
amem-cli export --file memories.md     # Export to file
amem-cli forget abc12345               # Delete by short ID
amem-cli reset --confirm               # Wipe all data

______________________________________________________________________

🏗 建筑

                        Your AI Tool
           Claude Code / Copilot CLI / any MCP client
                    │                │
                    │ MCP (stdio)    │ Lifecycle Hooks
                    ▼                ▼
          ┌─────────────────────────────────┐
          │   @aman_asmuei/amem             │  ← this package
          │                                 │
          │  33 Tools · 7 Resources · 2 Prompts
          │  Slash commands · CLI · Hooks   │
          │  Config: ~/.amem/config.json    │
          └────────────────┬────────────────┘
                           │ imports
                           ▼
          ┌─────────────────────────────────┐
          │   @aman_asmuei/amem-core        │  ← the engine
          │                                 │
          │  Multi-Strategy Retrieval       │
          │  [HNSW] + [FTS5] + [Graph] + [Temporal]
          │       + query expansion         │
          │       + cross-encoder reranker   │
          │                                 │
          │  Self-Evolving Reflection       │
          │  [Clustering] + [Contradictions]│
          │  + [Synthesis] + [Gap Detection]│
          │                                 │
          │  Embeddings: bge-small-en-v1.5  │
          │  Reranker: ms-marco-MiniLM int8 │
          │  97.8% R@5 on LongMemEval-S     │
          └────────────────┬────────────────┘
                           │
                           ▼
          ┌─────────────────────────────────┐
          │   SQLite + WAL + FTS5           │
          │   ~/.amem/memory.db             │
          │                                 │
          │   memories       (tiered)       │
          │   conversation_log (raw)        │
          │   memory_versions (history)     │
          │   memory_relations (graph)      │
          │   synthesis_lineage             │
          │   knowledge_gaps                │
          │   session_summaries             │
          │   reminders                     │
          └─────────────────────────────────┘

amem MCP服务器是一个精简的包装器 周围 amem-core.检索引擎、嵌入、知识图、反射——都存在于 amem-core 版本独立。MCP接线有问题吗?重新发布 amem.召回改进?重新发布 amem-core.无联轴器。

排名公式

score = relevance x 0.45 + recency x 0.2 + confidence x 0.2 + importance x 0.15
因素它是如何工作的
相关性HNSW指数的余弦相似性;查询扩展关键字回退
近期性指数衰减(0.995^hours)
自信反复确认强化(0-1)
重要性基于类型:更正 1.0 …事实 0.4

加性评分确保没有单一的低因素会影响排名。

______________________________________________________________________

⚙️ 配置

Environment variables

变量默认值描述
AMEM_DIR~/.amem存储目录
AMEM_DB~/.amem/memory.db数据库路径
AMEM_PROJECT*(自动从git)*项目范围覆盖

Config file (~/.amem/config.json)

使用默认值自动创建:

{
  "retrieval": {
    "semanticWeight": 0.4,
    "ftsWeight": 0.3,
    "graphWeight": 0.15,
    "temporalWeight": 0.15,
    "rerankerEnabled": true
  },
  "privacy": {
    "enablePrivateTags": true,
    "redactPatterns": ["..."]
  },
  "tiers": {
    "coreMaxTokens": 500,
    "workingMaxTokens": 2000
  },
  "hooks": {
    "enabled": true,
    "captureToolUse": true,
    "captureSessionEnd": true
  }
}

📋 Version history

v0.23.0——交互式知识图谱仪表板

具有缩放/平移功能的全宽图形浏览器,单击以聚焦邻域突出显示,具有关系导航的详细信息面板,搜索和过滤,定向边,强制定向布局。管理工具(医生、维修、配置、同步)。18个套件中的255个测试。

v0.19.0——自进化记忆回路

基于HNSW聚类的反射引擎、三层矛盾检测(否定+数值+低重叠)、具有谱系跟踪的合成候选、知识差距检测、效用评分、自动触发微调 memory_inject.新建数据库表: synthesis_lineage, knowledge_gaps, reflection_meta迁移v5。

v0.18.0——渐进式披露和规模

HNSW矢量索引(10k时速度快67倍)、调用/搜索的紧凑模式默认值、DB修复CLI、并发访问安全、启发式对话提取器、会话结束自动提取。

v0.13.0——世界级召回

bge-small-en-v1.5嵌入、加性评分、查询扩展、自相关知识图、图感知注入、amem-doctor、CI基准测试。

v0.9.x——时间智能

时间有效性、自动过期矛盾、多策略检索、跨编码器重新排序、内存层、隐私标签、生命周期挂钩、会话摘要、仪表板、配置系统。

v0.7.0至v0.8.0

导入/导出、置信度衰减、嵌入缓存、多进程安全、自动配置CLI、仪表板。

v0.1.0--v0.5.x

核心存储/召回、本地嵌入、SQLite+WAL、整合、项目范围界定、提醒、对话日志、知识图、FTS5、渐进式披露。

______________________________________________________________________

🧰 技术栈

技术
协议MCP SDK ^1.25
语言TypeScript 5.6+,严格模式
数据库SQLite+WAL+FTS5
嵌入拥抱脸bge-small-en-v1.5(本地,80MB)+HNSW矢量索引
重新排序ms-marco-MiniLM-L-6-v2(默认开启,int8,批处理,本地)
验证Zod 3.25+ .strict() 模式
测试Vitest——19个套件中的281个测试+回忆基准
CI/CDGitHub操作,npm发布

______________________________________________________________________

🤝 贡献

git clone https://github.com/amanasmuei/amem.git
cd amem && npm install
npm run build   # zero TS errors
npm test        # 281 tests pass

PR在合并之前必须通过CI。请参阅 问题 对于开放任务。

______________________________________________________________________

Built with ❤️ in 🇲🇾 Malaysia by Aman Asmuei

MIT License · Star ⭐ if amem saves your AI from amnesia

目录标签

目录标签

TypeScriptClaude记忆存储AI编码辅助本地部署本地化处理跨工具同步知识图谱

支持客户端

ClaudeCursorWindsurf

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

33

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP