ProactiveAgent
About
Cross-tool proactive memory + suggestions for Claude Code, Kimi Code, Cline, Cursor. Teach once, use everywhere.
Details
- Author
- conradlu2740
- Categories
- AI, Other
Jump to
Setup
Install ProactiveAgent in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/conradlu2740/ProactiveAgent
Follow the installation instructions in the repository README, then restart your MCP client.
教一次,处处用。让 Claude Code / Kimi Code / Cline / Cursor / Proma 共享同一份「主动记忆」——它不仅记住你教过的一切,更会在合适的时机主动开口提醒你。一个 MCP 挂载,所有 agent 立即拥有主动能力。
和其他「只会记」的记忆工具不同:ProactiveAgent 会记,也会在想该提醒你的时刻主动开口——纠正、跟进、自动化、待办、技能,五类主动建议。
所有内容均为 2026-08-05 真实运行输出,不是演示动画:Claude Code 写入记忆 → Kimi Code 直接召回(100% 命中);行为纠正 / 周期需求 → 主动建议命中并接受。
👉 打开交互式演示页:在线演示(GitHub Pages)(浏览器直接打开即可)
⚠️ GitHub 的blob页面只是代码查看器、不会执行 HTML 脚本,请使用上方 Pages 链接查看交互演示。
你在 Claude Code 里教会它的偏好,Kimi Code、Cline 里自动生效——因为记忆存在~/.proma-proactive/,所有 agent 通过同一个 MCP server 读写同一份记忆。
告别「每个工具都要重新教一遍」:教一次 TypeScript 偏好,所有 agent 都记得。
- 你纠正了 agent → 建议把规则写进长期记忆(防重犯)
- 你重复做同一件事 → 建议自动化 / 沉淀为流程
- 闲聊、拒绝、打扰时段 →安静(这就是能力)
- 克制是有参数的:每日通知上限 6 条、冷却 15 分钟、DND 时段不打扰(建议保留不吞)、画像里说过「不想被打扰」自动降频——防疲劳,也防「记仇」
proactive-mcp daemon --install一键常驻(launchd/systemd 自启):即使你没有打开任何 agent,它也会巡检待处理建议并通过桌面通知主动开口(macOS 通知中心 / Windows 托盘 / Linux notify-send);点击通知直达主动中心面板,一键接受即落地任务。
proactive-mcp ump-export导出为标准 Universal Memory Protocol 文件,官方 UMP SDK 可加载、可 recall——记忆是你的资产,想迁移到任何 UMP 生态随时可以带走。
- 自动提取的记忆默认pending(待确认),你确认才进入召回——阻断恶意/错误内容注入
- LLM 配置同源原则:apiKey 决定信任源,绝不跨源混搭,防 key 劫持
- 一条记忆/一条纠正,你都能查看、确认、拒绝、删除
标准 MCP 协议(stdio),零代码改动挂载到任何支持 MCP 的 agent。已在Claude Code、Kimi Code、Proma 三个完全不同的宿主真实验证(8/12:Kimi 另提供一条命令插件安装);Smithery 已上架:npx -y smithery mcp add 1797650355/proactive-agent。
# 一条命令版(免安装,直接从 npm 拉取,适合快速体验) npx -y @proactive-agent/mcp init # 或安装后使用(本地 bin) npm install @proactive-agent/mcp npx proactive-mcp init
只需 node >= 18。init会生成指向你本地安装的.mcp.json,零额外依赖。
# Claude Code claude mcp add proactive-agent -- npx -y @proactive-agent/mcp
/plugins install https://github.com/ConradLu2740/ProactiveAgent/releases/latest/download/kimi-plugin.zip /reload
装完普通kimi会话即自动获得主动记忆(无需--agent);另可kimi --agent proactive启用激进模式。详见Kimi Code 使用指南。
git clone https://github.com/ConradLu2740/ProactiveAgent.git && cd ProactiveAgent npm install npm run start:mcp
⚠️npm run start:mcp启动后终端会保持运行——这是 MCP server 的正常阻塞状态(等待 agent 连接),不是卡死;请保持运行,并打开你的 agent 连接它。
# 免安装 / 已安装均可 npx -y @proactive-agent/mcp --today # 打开 http://127.0.0.1:8737/today —— 建议、场景、画像、统计一目了然
主动中心面板:待处理建议 + 热点场景 + 记忆统计 + 用户画像(15s 自动刷新)
- 打开 Claude Code(或你用的 agent;Kimi 用户可init --kimi)启动会话
- 输入:以后提交代码前必须先写单元测试→ 应收到“把这条规则写入长期记忆?”建议(suggest_now)
- 再输入:我偏好用 TypeScript 和 Bun,然后问:我之前的偏好是什么?→ 能召回刚才的记忆 = 记忆已跨工具生效
# ~/.proma-proactive/.env(或项目 .env,建议 chmod 600) MEMORY_LLM_API_KEY=sk-xxx MEMORY_LLM_BASE_URL=https://api.deepseek.com/v1 MEMORY_LLM_MODEL=deepseek-chat
仓库仅实测 Claude Code / Kimi Code / Proma;Cursor / Cline / Codex 项以官方文档为准。
- memory://today— 今日建议 + 热点场景
- memory://stats、memory://persona
- Prompts:daily_review(每日复盘)、onboarding(冷启动引导)
- 记忆维护(0.8.0,对齐 Proma v0.17.0 记忆治理):memory_stats展示「今日 X 条动态 · 距上次更新 N 天」;记忆超过 3 天未更新时返回复查邀请(清理过时记忆、确认待确认项、必要时重整画像);persona_get在画像超载(>45 行 / >6 章节)时提示精简重整;onboarding_guide提供「先建画像 → 再补证据」两阶段引导。
- /today Web 面板:本地主动中心(15s 自动刷新),任何宿主都能开浏览器看;POST /api/evaluate支持宿主把最近消息推过来触发会话中评估;建议卡片支持「接受 / 忽略」一键反馈(ActionCard 闭环,接受即落地本地任务)
- 守护进程(0.5.0 主动出口):proactive-mcp daemon常驻后台,巡检待处理建议并通过桌面通知主动开口(macOS 通知中心 / Windows 托盘气泡 / Linux notify-send);点击通知打开主动中心面板;--install一键配置登录自启(launchd / systemd);--status/--stop管理;doctor包含 daemon 健康检查与今日疲劳状态(已通知/上限)。巡检间隔PROACTIVE_DAEMON_INTERVAL_MIN(默认 60 分钟),每次最多通知 1 条、同条不重复打扰、DND 时段不打扰且不吞建议(克制信条)。
- 通知疲劳控制(0.8.0):每日通知上限(默认 6 条/天,PROACTIVE_DAEMON_DAILY_LIMIT覆盖,跨天自动重置)+冷却窗口(默认 15 分钟,PROACTIVE_DAEMON_COOLDOWN_MIN覆盖)+画像驱动打扰系数——画像含「不要打扰/静默」等规则时上限减半、冷却翻倍(尊重用户「不想被打扰」的表达);达上限/冷却时建议保留不吞,次日继续
- 跨工具感知网(0.6.0):统一事件协议——各工具 hooks 把会话/消息/commit 事件归一化写入~/.proma-proactive/events/(仅当前用户可读写),daemon 巡检时读取最近事件构造 messages 做真定时评估(完成 0.5 P0-1 遗留);Claude Code / Kimi Code hooks 已内联写事件,Cursor 官方支持加载 Claude Code hooks 自动接入,Codex/Cline 可用dist/hooks/event-capture.js通用入口接入;init打印跨工具接入指引;第三方接入指南见docs/developers/adapter-guide.md
- UMP 互操作(0.7.0 L0):proactive-mcp ump-export导出记忆为 Universal Memory Protocol 文件(.ump/memory.ump.json),ump-import从 UMP 文件导入(默认待确认防投毒)——任何 UMP 客户端可读写 ProactiveAgent 记忆;兼容评估见 .context 文档,L2 MCP store 桥接待生态成熟
- Claude Code hooks(三层):
- SessionStart(today-push):会话开始推送待处理建议 + 热点场景
- UserPromptSubmit(user-prompt):会话中实时评估——你说"以后都用 pnpm",立即收到纠正建议;弱信号自动沉默
- Stop(session-end):会话结束沉淀记忆 + 评估建议
⚠️非交互模式限制:hooks 仅在 Claude Code交互式 TUI 会话中触发;claude -p脚本/CI 模式不触发 hooks。脚本场景请用claude -p --allowedTools "mcp__proactive-agent__"显式授权 MCP 工具后,让模型直接调用suggest_now/memory_capture(注意:--permission-mode acceptEdits不会授予 MCP 工具权限,必须显式--allowedTools)。
⚠️前置条件:Kimi Code 需要先完成登录或配置 API key(kimi首次运行/login,或按config.toml配置[providers.<name>]+api_key)。未配置时kimi -p会报No model configured。诊断:kimi doctor/kimi provider list。Kimi hooks 配置是 TOML(不是 JSON),写在~/.kimi-code/config.toml:
[[hooks]] event = "UserPromptSubmit" command = "node <mcp 安装路径>/dist/hooks/kimi-user-prompt.js" timeout = 10
字段只允许event/matcher/command/timeout;UserPromptSubmit用户发消息时触发,hook stdout 附加到上下文,模型看到<notification>后主动转述。
今天:在 Claude Code 里说"我偏好用 TypeScript" 明天:打开 Kimi Code 写代码,它自动 recall 到你的偏好,直接按你的习惯来
你说:"以后提交前先写单元测试" → suggest_now 识别为 correction 建议 → 你点"接受":规则写入记忆 + 回流用户画像 → 以后所有 agent 都遵守这条规则
你在 Claude Code 里输入:"以后提交前先跑测试" → UserPromptSubmit hook 实时评估(evaluateNow, session_mid) → 建议注入当前会话:"记住这个纠正?接受:suggest_accept" → 接受后规则写入记忆,所有宿主下次遵守
你说:"每天下午5点帮我检查发布状态" → 时间解析器识别周期 → cron: 0 17 → 建议预填真实 cron,接受后直接建好定时任务
proactive-mcp daemon --install # 安装登录自启(macOS/Linux) → 每隔 60 分钟巡检待处理建议 → 有值得开口的建议时,桌面通知弹出来(点击打开主动中心) → 在面板点「接受」→ automation/todo 建议直接落地为本地任务 → 该沉默时沉默:无新建议 / DND 时段(建议保留不吞) / 同条建议不重复打扰
flowchart LR A[Claude Code] -->|MCP stdio| S[proactive-mcp] B[Kimi Code] -->|MCP stdio| S C[Cline / Cursor] -->|MCP stdio| S D[Proma 应用] -->|dogfooding| E[proactive-core] S --> E[proactive-core 引擎] E --> F[(~/.proma-proactive 记忆)]
- @proactive-agent/core:headless 引擎(记忆 + 建议),零运行时依赖,可被任意宿主消费
- @proactive-agent/mcp:MCP Server 包装层(tools/resources/prompts + 面板 + hooks)
L1 Atom 结构化记忆条目(LLM 提取 + 去重 + 优先级) L2 Scene 场景块(近期主题聚合,主动性时机信号) L3 Persona 用户画像 markdown(稳定偏好,带来源溯源) Correction 行为纠正候选(需确认后生效)
Q:支持哪些 agent?A:任何支持 MCP 的 agent:Claude Code、Kimi Code、Cline、Cursor、Windsurf、VS Code 等。Proma 原生(dogfooding)。
Q:记忆存在哪?A:默认~/.proma-proactive/,可用PROACTIVE_DATA_DIR覆盖。纯本地文件(JSONL/markdown),可随时备份/迁移。
Q:需要 API key 吗?A:核心功能(memory_capture/memory_recall/suggest_等)不需要,纯本地开箱即用;仅memory_extract的 LLM 提取可选。详见快速开始「LLM 需求速查表」。
Q:和其他记忆方案有什么区别?A:多数方案是"单工具的被动记忆"。ProactiveAgent 是跨工具共享 + 主动建议——教一次处处用,且只在合适的时机主动开口。
Q:会把我的对话发给外部吗?A:只有memory_extract的 LLM 模式会把当前对话片段发给你自己配置的 LLM(默认 DeepSeek 兼容接口);规则模式零外发。显式 capture/recall 纯本地。
Q:记忆量大后性能会变慢吗?A:0.5.4 起memory_recall使用倒排索引(term → atoms,缓存 + 自动失效 + fail-open),只扫描含查询词的候选集,替代全量扫描——个人/中小项目无感知,上万条记忆也能保持低延迟。同时建议定期用proactive-mcp stats观察记忆规模,并用proactive-mcp archive做 TTL 归档治理。
- 守护进程 + 桌面通知主动出口(0.5.0:常驻评估 + 三端通知 + 通知点击打开面板 + launchd/systemd 自启 + ActionCard 闭环按钮)
- 跨工具感知网(0.6.0:统一事件协议 + 事件落盘 + Claude/Kimi 内联写事件 + Cursor 官方兼容 + event-capture 通用入口 + daemon 真定时评估)
- UMP 互操作 L0(0.7.0:ump-export/ump-import + 兼容评估文档 + adapter 接入指南与模板)
- 通知疲劳控制(0.8.0:每日上限 + 冷却窗口 + 画像驱动打扰系数 + doctor 疲劳状态)
- 生态分发收尾(0.7.1:Smithery 描述更新 + mcp.so 手动提交 + UMP L2 桥接评估)
- 通知内反馈回流增强(0.8.1:通知点击统计 → ROI 回流)
- 通知疲劳控制与个性化(0.8.x:频控 + 画像驱动打扰 + 通知内反馈回流)
- 事件按项目隔离评估(0.6.1:daemon 按 pk 分组 + core projectHint 路由生效)
- 核心引擎(记忆 + 建议 + 场景 + 画像)
- MCP Server + 面板 + hooks
- Proma / Claude Code / Kimi Code 真实验证
- npm 发布(@proactive-agent/core + @proactive-agent/mcp)
- 按项目记忆(0.3.0:项目隔离 + 显式全局共享 + 迁移 + 逃生开关)
- 主动推送闭环(0.5.0:evaluateNow 统一入口 + 会话中 UserPromptSubmit hooks + Today push 端点)
- Kimi 主动转述(0.5.0:<notification>XML 通知范式,模型主动向用户开口)
- Action Executor(0.5.2:接受即执行——内置本地任务队列默认执行器,suggest_accept真实创建定时任务/待办;宿主注入真实执行器时自动覆盖)
- SessionStart 记忆注入(0.5.2:today-push 自动注入画像摘要 + 高优先级记忆)
- 建议 ROI 指标(0.5.0:漏斗 + 类型接受率 + 自动降预算)
- 时间/周期解析(0.5.0:中英文时间表达 → cron/dueAt 预填)
- 英文信号(0.5.0:correction/automation/followup/todo 英文模式)
- Kimi turn.steer 空闲自启新 turn(需 Kimi agent 内部 API,待上游开放)
- 指标面板:建议接受率 / 打扰率(0.5.0:suggestionRoiStats漏斗 + 类型接受率 + 自动降预算,Today 面板 ROI 区展示)
- embedding 本地化(0.1.x:local node-llama-cpp + embeddinggemma / api 双模式,默认 off fail-open)
- 多语言 README(0.5.3:README.en.md + 中英文切换)
- 记忆索引化(0.5.4:倒排索引 + 缓存失效 + fail-open,支撑上万条)
- 自动归档 / TTL 记忆管理(0.5.4:按类型 TTL + env 覆盖 + archive CLI)
欢迎 PR / Issue!开发环境:Node 22 + TypeScript + Vitest + esbuild。npm install && npm test && npm run build
Atlaso is a memory layer for AI tools — connect once and it automatically recalls the context that matters across Claude Code, Cursor, Codex, and every AI tool you use.
Privacy-first local memory vault every AI shares over MCP. Markdown + SQLite on your machine; Claude, ChatGPT, Cursor, and any MCP client read and write it live. No cloud, no account, no telemetry.
Cross-vendor AI memory over MCP. One semantic memory store, readable and writeable from every MCP client — Claude, ChatGPT, Cursor, Windsurf, Zed, Kimi.
Generate random word pairs for the Imposter party game directly via Claude or Cursor. Let AI host your next social deduction game!
Shared company context and governed tools for ChatGPT, Claude, Codex and other MCP clients.
You decide what Claude remembers about you. LocalKeep is a personal timeline you curate—titled, dated, editable banks on your machine—then Claude looks them up via MCP instead of inventing uneditable cloud memory.
Persistent AI memory shared across Claude, ChatGPT, coding agents, and compatible MCP clients.
Persistent project context for AI coding agents: captures decisions, rationale, and rejected paths so agents stay consistent across Claude, Cursor, Codex, and any MCP enabled platform.
Private persistent memory for Claude, ChatGPT & Gemini via MCP — semantic search, zero-code setup.
Turn LinkedIn saved posts into a queryable knowledge base you can search, chat with, and connect to Claude or ChatGPT through MCP.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




