Token导航 LogoToken导航TokenDH.com
AgentKits Memory logo
数据服务stdio官方级别未说明来源级核验

AgentKits Memory

MCP Server

@aitytech/agentkits-memory

AgentKits Memory是为AI编码助手设计的本地持久化内存系统,通过SQLite数据库自动捕获和存储会话上下文、决策模式和错误解决方案,实现跨会话记忆功能。

工具数

9

提示词数

0

GitHub Stars

61

资源数

0
AI代理本地存储TypeScriptClaude多平台支持ClaudeCursorWindsurfCline

安装说明

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

作者 / 组织

aitytech

提供方

aitytech

最后核验

2026/5/17 20:22

运行时

Node.js

快速接入

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

命令预览

npx @aitytech/agentkits-memory web

详细介绍

AgentKits Memory

by AityTech

Persistent Memory System for AI Coding Assistants

Your AI assistant forgets everything between sessions. AgentKits Memory fixes that.

Decisions, patterns, errors, and context — all persisted locally via MCP.

Website • Docs • Quick Start • How It Works • Platforms • CLI • Web Viewer

English · 简体中文 · 日本語 · 한국어 · Español · Deutsch · Français · Português · Tiếng Việt · Русский · العربية

______________________________________________________________________

特性

特点优点
100%本地所有数据都保留在您的机器上。没有云,没有API密钥,没有帐户
快速燃烧原生SQLite(better-splite3)=即时查询,零延迟
零配置开箱即用。无需设置数据库
多平台Claude Code、Cursor、Windsurf、Cline、OpenCode——一个设置命令
MCP服务器9个工具:保存、搜索、时间线、详细信息、召回、列表、更新、删除、状态
自动捕获钩子自动捕获会话上下文、工具使用、摘要
人工智能丰富背景工作人员通过人工智能生成的摘要丰富观察结果
向量搜索sqlite-vec语义相似性与多语言嵌入(100多种语言)
网络观众浏览器用户界面,用于查看、搜索、添加、编辑、删除记忆
三层搜索渐进式披露节省了约87%的代币,而获取一切
生命周期管理自动压缩、存档和清理旧会话
导出/导入以JSON格式备份和恢复内存

______________________________________________________________________

运作原理

Session 1: "Use JWT for auth"          Session 2: "Add login endpoint"
┌──────────────────────────┐          ┌──────────────────────────┐
│  You code with AI...     │          │  AI already knows:       │
│  AI makes decisions      │          │  ✓ JWT auth decision     │
│  AI encounters errors    │   ───►   │  ✓ Error solutions       │
│  AI learns patterns      │  saved   │  ✓ Code patterns         │
│                          │          │  ✓ Session context        │
└──────────────────────────┘          └──────────────────────────┘
         │                                      ▲
         ▼                                      │
    .claude/memory/memory.db  ──────────────────┘
    (SQLite, 100% local)
  1. 设置一次npx @aitytech/agentkits-memory 配置您的平台
  2. 自动捕获 --Hooks在您工作时记录决策、工具使用和摘要
  3. 上下文注入 --下一节课从往届课的相关历史开始
  4. 后台处理 --工作人员用人工智能丰富观察结果,生成嵌入,压缩旧数据
  5. 随时搜索 --AI使用MCP工具(memory_searchmemory_details)查找过去的上下文

所有数据都保留在 .claude/memory/memory.db 在你的机器上。没有云。不需要API密钥。

______________________________________________________________________

重要的设计决策

大多数内存工具将数据分散在markdown文件中,需要Python运行时,或者将代码发送到外部API。AgentKits Memory做出了根本不同的选择:

设计选择为什么重要
单一SQLite数据库一个文件(memory.db)包含一切——记忆、会话、观察、嵌入。无需同步分散的文件,无合并冲突,无孤立数据。备份=复制一个文件
原生Node.js,零Python在Node运行的任何地方运行。没有conda,没有pip,没有virtualenv。与您的MCP服务器使用相同的语言 npx 命令,完成
代币高效三层搜索首先搜索索引(~50个标记/结果),然后是时间线上下文,然后是完整的细节。只取你需要的东西。其他工具将整个内存文件转储到上下文中,在不相关的内容上燃烧令牌
通过钩子自动捕捉决策、模式和错误会在发生时记录下来,而不是在你记得保存它们之后。会话上下文注入在下次会话启动时自动发生
本地嵌入,无API调用矢量搜索使用本地ONNX模型(多语言e5-small)。语义搜索离线运行,无需任何成本,支持100多种语言
后台工作人员AI富集、嵌入生成和压缩异步运行。您的编码流程从未被阻塞
从第一天起就支持多平台一个 --platform=all flag同时配置Claude Code、Cursor、Windsurf、Cline和OpenCode。相同的内存数据库,不同的编辑器
结构化观测数据通过类型分类(读/写/执行/搜索)、文件跟踪、意图检测和AI生成的叙述来捕获工具使用情况,而不是原始文本转储
无工艺泄漏后台工作程序在5分钟后自动终止,使用基于PID的锁文件进行过时锁清理,并优雅地处理SIGTERM/SIGINT。没有僵尸进程,没有孤立的工人
无内存泄漏钩子作为短时间进程运行(而不是长时间运行的守护进程)。数据库连接在关闭时关闭。嵌入子流程具有有界重生(最多2个)、挂起请求超时以及所有计时器和队列的优雅清理

______________________________________________________________________

网络观众

通过现代网络界面查看和管理您的记忆。

npx @aitytech/agentkits-memory web

然后打开 http://localhost:1905 在您的浏览器中。

会话列表

使用时间线视图和活动详细信息浏览所有会话。

Session List

内存列表

通过搜索和命名空间过滤浏览所有存储的内存。

Memory List

添加内存

使用键、名称空间、类型、内容和标签创建新的内存。

Add Memory

内存详情

使用编辑和删除选项查看完整内存详细信息。

Memory Detail

管理嵌入

生成和管理语义搜索的向量嵌入。

Manage Embeddings

______________________________________________________________________

快速开始

选项1:克劳德代码插件市场(建议用于克劳德代码)

只需一个命令即可作为插件安装——无需手动配置:

/plugin marketplace add aitytech/agentkits-memory
/plugin install agentkits-memory@agentkits-memory

这将自动安装钩子、MCP服务器和内存工作流技能。安装后重新启动Claude Code。

选项2:自动设置(所有平台)

npx @aitytech/agentkits-memory

此自动检测您的平台并配置所有内容:MCP服务器、钩子(Claude Code/OpenCode)、规则文件(Cursor/Windsurf/Cline),并下载嵌入模型。

针对特定平台:

npx @aitytech/agentkits-memory --platform=cursor
npx @aitytech/agentkits-memory --platform=windsurf,cline
npx @aitytech/agentkits-memory --platform=all

选项3:手动MCP配置

如果您更喜欢手动设置,请在MCP配置中添加:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["-y", "@aitytech/agentkits-memory", "server"]
    }
  }
}

配置文件位置:

  • 克劳德代码: .claude/settings.json (嵌入 mcpServers 按键)
  • 光标: .cursor/mcp.json
  • 帆板运动: .windsurf/mcp.json
  • Cline/OpenCode: .mcp.json (项目根)

3.MCP工具

配置后,您的AI助手可以使用这些工具:

工具说明
memory_status检查内存系统状态(先调用!)
memory_save保存决策、模式、错误或上下文
memory_search\[步骤1\] 搜索索引——轻量级ID+标题(~50个标记/结果)
memory_timeline\[步骤2\] 获取内存周围的时间上下文
memory_details\[步骤3\] 获取特定ID的完整内容
memory_recall快速主题概述——分组总结
memory_list列出最近的回忆
memory_update更新现有内存内容或标签
memory_delete删除过时的记忆

______________________________________________________________________

渐进式披露(代币高效搜索)

AgentKits内存使用 三层搜索模式 与预先获取完整内容相比,这节省了约70%的令牌。

运作原理

┌─────────────────────────────────────────────────────────────┐
│  Step 1: memory_search                                      │
│  Returns: IDs, titles, tags, scores (~50 tokens/item)       │
│  → Review index, pick relevant memories                     │
└─────────────────────────────────────────────────────────────┘
                             ↓
┌─────────────────────────────────────────────────────────────┐
│  Step 2: memory_timeline (optional)                         │
│  Returns: Context ±30 minutes around memory                 │
│  → Understand what happened before/after                    │
└─────────────────────────────────────────────────────────────┘
                             ↓
┌─────────────────────────────────────────────────────────────┐
│  Step 3: memory_details                                     │
│  Returns: Full content for selected IDs only                │
│  → Fetch only what you actually need                        │
└─────────────────────────────────────────────────────────────┘

工作流示例

// Step 1: Search - get lightweight index
memory_search({ query: "authentication" })
// → Returns: [{ id: "abc", title: "JWT pattern...", score: 85% }]

// Step 2: (Optional) See temporal context
memory_timeline({ anchor: "abc" })
// → Returns: What happened before/after this memory

// Step 3: Get full content only for what you need
memory_details({ ids: ["abc"] })
// → Returns: Full content for selected memory

代币节省

方法使用的代币
老的 获取所有内容~500个令牌×10个结果=5000个令牌
渐进式披露50×10+500×2=1500个代币
储蓄减少70%

______________________________________________________________________

CLI命令

# One-command setup (auto-detects platform)
npx @aitytech/agentkits-memory
npx @aitytech/agentkits-memory setup --platform=cursor   # specific platform
npx @aitytech/agentkits-memory setup --platform=all      # all platforms
npx @aitytech/agentkits-memory setup --force             # re-install/update

# Start MCP server
npx @aitytech/agentkits-memory server

# Web viewer (port 1905)
npx @aitytech/agentkits-memory web

# Terminal viewer
npx @aitytech/agentkits-memory viewer
npx @aitytech/agentkits-memory viewer --stats
npx @aitytech/agentkits-memory viewer --json

# Save from CLI
npx @aitytech/agentkits-memory save "Use JWT with refresh tokens" --category pattern --tags auth,security

# Settings
npx @aitytech/agentkits-memory hook settings .
npx @aitytech/agentkits-memory hook settings . --reset
npx @aitytech/agentkits-memory hook settings . aiProvider.provider=openai aiProvider.apiKey=sk-...

# Export / Import
npx @aitytech/agentkits-memory hook export . my-project ./backup.json
npx @aitytech/agentkits-memory hook import . ./backup.json

# Lifecycle management
npx @aitytech/agentkits-memory hook lifecycle . --compress-days=7 --archive-days=30
npx @aitytech/agentkits-memory hook lifecycle-stats .

______________________________________________________________________

程序化使用

import { ProjectMemoryService } from '@aitytech/agentkits-memory';

const memory = new ProjectMemoryService({
  baseDir: '.claude/memory',
  dbFilename: 'memory.db',
});
await memory.initialize();

// Store a memory
await memory.storeEntry({
  key: 'auth-pattern',
  content: 'Use JWT with refresh tokens for authentication',
  namespace: 'patterns',
  tags: ['auth', 'security'],
});

// Query memories
const results = await memory.query({
  type: 'hybrid',
  namespace: 'patterns',
  content: 'authentication',
  limit: 10,
});

// Get by key
const entry = await memory.getByKey('patterns', 'auth-pattern');

______________________________________________________________________

自动捕捉挂钩

Hooks会自动捕获您的AI编码会话(仅限Claude Code和OpenCode):

钩子触发器动作
context会话开始注入前一个会话上下文+内存状态
session-init用户提示初始化/恢复会话,记录提示
observation工具使用后通过意图检测捕获工具使用情况
summarize会话结束生成结构化会话摘要
user-message会话开始向用户显示内存状态(stderr)

设置挂钩:

npx @aitytech/agentkits-memory

自动捕获的内容:

  • 带路径的文件读/写
  • 代码更改为结构化差异(之前→ 之后)
  • 开发人员意图(错误修复、功能、重构、调查等)
  • 会议总结,包括决定、错误和下一步行动
  • 会话内的多提示跟踪

______________________________________________________________________

多平台支持

平台MCP挂钩规则文件设置
克劳德代码.claude/settings.json✅ 完整CLAUDE.md(技能)--platform=claude-code
光标.cursor/mcp.json.cursorrules--platform=cursor
帆板运动.windsurf/mcp.json.windsurfrules--platform=windsurf
克莱恩.mcp.json.clinerules--platform=cline
OpenCode.mcp.json✅ 已满----platform=opencode
  • MCP服务器 适用于所有平台(通过MCP协议的内存工具)
  • 钩子 在Claude Code和OpenCode上提供自动捕获
  • 规则文件 教Cursor/Windsurf/Cline记忆工作流程
  • 内存数据 始终存储在 .claude/memory/ (单一事实来源)

______________________________________________________________________

背景工作者

每次会话后,后台工作人员都会处理排队的任务:

工人任务描述
embed-session嵌入生成用于语义搜索的向量嵌入
enrich-sessionAI丰富用AI生成的总结、事实、概念丰富观察结果
compress-session压缩压缩旧观测值(10:1-25:1)并生成会话摘要(20:1-100:1)

工作进程在会话结束后自动运行。每位工人:

  • 每次运行最多可处理200个项目
  • 使用锁文件防止并发执行
  • 5分钟后自动终止(防止僵尸)
  • 最多检索3次失败的任务

______________________________________________________________________

AI提供者配置

AI富集使用可插拔的提供者。默认值为 claude-cli (不需要API密钥)。

提供者类型默认型号备注
Claude CLIclaude-clihaiku用途 claude --print,不需要API密钥
OpenAIopenaigpt-4o-mini任何OpenAI模型
谷歌双子座geminigemini-2.0-flash谷歌AI工作室密钥
开放路由openai任意baseUrlhttps://openrouter.ai/api/v1
GLM( 日语)openai任意baseUrlhttps://open.bigmodel.cn/api/paas/v4
奥拉玛openai任意baseUrlhttp://localhost:11434/v1

选项1:环境变量

# OpenAI
export AGENTKITS_AI_PROVIDER=openai
export AGENTKITS_AI_API_KEY=sk-...

# Google Gemini
export AGENTKITS_AI_PROVIDER=gemini
export AGENTKITS_AI_API_KEY=AIza...

# OpenRouter (uses OpenAI-compatible format)
export AGENTKITS_AI_PROVIDER=openai
export AGENTKITS_AI_API_KEY=sk-or-...
export AGENTKITS_AI_BASE_URL=https://openrouter.ai/api/v1
export AGENTKITS_AI_MODEL=anthropic/claude-3.5-haiku

# Local Ollama (no API key needed)
export AGENTKITS_AI_PROVIDER=openai
export AGENTKITS_AI_BASE_URL=http://localhost:11434/v1
export AGENTKITS_AI_MODEL=llama3.2

# Disable AI enrichment entirely
export AGENTKITS_AI_ENRICHMENT=false

选项2:持久设置

# Saved to .claude/memory/settings.json — persists across sessions
npx @aitytech/agentkits-memory hook settings . aiProvider.provider=openai aiProvider.apiKey=sk-...
npx @aitytech/agentkits-memory hook settings . aiProvider.provider=gemini aiProvider.apiKey=AIza...
npx @aitytech/agentkits-memory hook settings . aiProvider.baseUrl=https://openrouter.ai/api/v1

# View current settings
npx @aitytech/agentkits-memory hook settings .

# Reset to defaults
npx @aitytech/agentkits-memory hook settings . --reset
优先: 环境变量覆盖settings.json。Settings.json会覆盖默认值。

______________________________________________________________________

生命周期管理

管理内存随时间的增长:

# Compress observations older than 7 days, archive sessions older than 30 days
npx @aitytech/agentkits-memory hook lifecycle . --compress-days=7 --archive-days=30

# Also auto-delete archived sessions older than 90 days
npx @aitytech/agentkits-memory hook lifecycle . --compress-days=7 --archive-days=30 --delete --delete-days=90

# View lifecycle statistics
npx @aitytech/agentkits-memory hook lifecycle-stats .
阶段发生了什么
压缩AI压缩观察结果,生成会话摘要
档案将旧会话标记为已存档(从上下文中排除)
删除删除已存档的会话(选择加入,需要 --delete)

______________________________________________________________________

出口/进口

备份和恢复您的项目记忆:

# Export all sessions for a project
npx @aitytech/agentkits-memory hook export . my-project ./backup.json

# Import from backup (deduplicates automatically)
npx @aitytech/agentkits-memory hook import . ./backup.json

导出格式包括会话、观察、提示和摘要。

______________________________________________________________________

内存类别

类别用例
decision架构决策、技术栈选择、权衡
pattern编码惯例、项目模式、重复方法
errorBug修复、错误解决方案、调试见解
context项目背景、团队惯例、环境设置
observation自动捕获会话观察结果

______________________________________________________________________

存储

记忆存储在 .claude/memory/ 在您的项目目录中。

.claude/memory/
├── memory.db          # SQLite database (all data)
├── memory.db-wal      # Write-ahead log (temp)
├── settings.json      # Persistent settings (AI provider, context config)
└── embeddings-cache/  # Cached vector embeddings

______________________________________________________________________

CJK语言支持

AgentKits内存具有 自动CJK支持 用于中文、日文和韩文文本搜索。

零配置

better-sqlite3 如果已安装(默认),CJK搜索将自动工作:

import { ProjectMemoryService } from '@aitytech/agentkits-memory';

const memory = new ProjectMemoryService('.claude/memory');
await memory.initialize();

// Store CJK content
await memory.storeEntry({
  key: 'auth-pattern',
  content: '認証機能の実装パターン - JWT with refresh tokens',
  namespace: 'patterns',
});

// Search in Japanese, Chinese, or Korean - it just works!
const results = await memory.query({
  type: 'hybrid',
  content: '認証機能',
});

运作原理

  • 原生SQLite:用途 better-sqlite3 为了获得最佳性能
  • 三角图标记器:带有三元组的FTS5为CJK匹配创建3个字符序列
  • 智能回退:短CJK查询(\

______________________________________________________________________

许可证

麻省理工学院

______________________________________________________________________

Give your AI assistant memory that persists.

AgentKits Memory by AityTech

Star this repo if it helps your AI remember.

目录标签

目录标签

AI代理本地存储TypeScriptClaude多平台支持AI辅助开发本地部署会话记忆SQLite数据库向量搜索

支持客户端

ClaudeCursorWindsurfCline

接入字段

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

stdio

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

api-key

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

local-only

来源包(packageName,安装包名)

@aitytech/agentkits-memory

工具数量(toolCount,工具数)

9

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdioapi-keylocal-only

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

安装前确认

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

来源信息

继续浏览同类 MCP