FPMS — Focal Point Memory System
Your AI forgets everything between conversations. FPMS fixes that.
Not just memory — attention management. FPMS tracks your projects, detects stuck tasks, and loads the right context at the right time.
What You Get
- - Cross-conversation memory — Start Monday, continue Wednesday, review Friday
- Structured work tracking — Projects → Tasks → Subtasks with status lifecycle
- Proactive alerts — "Task X has been blocked for 3 days"
- Smart context loading — Only loads what fits your token budget
- GitHub sync — Issues auto-sync as FPMS nodes
How It's Different From Other Memory Tools
| Mem0/Zep | FPMS |
|---|
| Remembers conversations | Yes | Yes (via prompt rules) |
| Tracks tasks & projects |
No |
Yes |
| Alerts you about stuck work | No |
Yes (heartbeat) |
| Manages token budget | No |
Yes (L0/L1/L2) |
| Parent-child task hierarchy | No |
Yes |
| GitHub integration | No |
Yes |
Other tools remember what was said. FPMS manages what needs to be done.
Setup
1. Install
CODEBLOCK0
2. Add MCP server to openclaw.yaml
CODEBLOCK1
3. Restart OpenClaw
That's it. 18 tools are now available in your conversations.
Use Cases
Project tracking
CODEBLOCK2
Decision memory
CODEBLOCK3
Risk detection
CODEBLOCK4
Available Tools (18)
| Tool | What it does |
|---|
| INLINECODE0 | Load memory context (call at conversation start) |
| INLINECODE1 |
Scan for risks: blocked, stale, at-risk tasks |
|
create_node | Create a project/task/goal |
|
update_status | Change status (inbox/active/waiting/done/dropped) |
|
append_log | Record decisions, progress, links |
|
get_context_bundle | Get token-budgeted context payload |
|
search_nodes | Find tasks by status, parent, source |
|
get_node | Get full details of a work item |
|
shift_focus | Switch AI attention to a specific task |
|
expand_context | See parent, children, dependencies |
|
update_field | Update title, summary, deadline, etc. |
|
attach_node /
detach_node | Move tasks in hierarchy |
|
add_dependency /
remove_dependency | Manage task dependencies |
|
unarchive | Restore completed/dropped tasks |
|
set_persistent | Protect tasks from auto-archive |
|
get_assembly_trace | Debug context assembly |
Automatic Memory Rules
Follow these rules in EVERY conversation:
- 1. Conversation start → Call
bootstrap to load memory - User mentions a task/project/goal → INLINECODE19
- User makes a decision →
append_log to the relevant node - Task progresses → INLINECODE21
- Before conversation ends →
append_log key takeaways - Every ~10 min →
heartbeat to check for risks
Requirements
- - Python 3.10+
- No external services — runs 100% locally on SQLite
Links
FPMS — 焦点记忆系统
你的AI会在对话之间遗忘一切。FPMS解决了这个问题。
不仅仅是记忆——更是注意力管理。 FPMS追踪你的项目,检测卡住的任务,并在正确的时间加载正确的上下文。
你将获得
- - 跨对话记忆 — 周一启动,周三继续,周五回顾
- 结构化工作追踪 — 项目 → 任务 → 子任务,附带状态生命周期
- 主动提醒 — 任务X已被阻塞3天
- 智能上下文加载 — 仅加载符合你token预算的内容
- GitHub同步 — Issue自动同步为FPMS节点
与其他记忆工具的区别
| Mem0/Zep | FPMS |
|---|
| 记住对话内容 | 是 | 是(通过提示规则) |
| 追踪任务与项目 |
否 |
是 |
| 提醒卡住的工作 | 否 |
是(心跳检测) |
| 管理Token预算 | 否 |
是(L0/L1/L2) |
| 父子任务层级 | 否 |
是 |
| GitHub集成 | 否 |
是 |
其他工具记住说过的话。FPMS管理需要完成的事。
设置
1. 安装
bash
pip install focalpoint
2. 将MCP服务器添加到openclaw.yaml
yaml
mcp_servers:
fpms:
command: focalpoint
3. 重启OpenClaw
就这样。你的对话中现在有18个工具可用。
使用场景
项目追踪
你:为产品发布创建一个项目,包含3个任务
(第二天)
你:发布进度如何?
AI:3个任务:1个完成,1个进行中,1个被阻塞。被阻塞的任务
正在等待设计评审——已经2天了。
决策记忆
你:我们决定使用Stripe进行支付
(两周后)
你:为什么我们选择了Stripe?
AI:你在3月15日做出的决定——更好的API和更低的国际费用。
风险检测
AI自动运行心跳检测并发现:
- 部署任务被阻塞4天
- 文档更新已过时——一周无活动
- Bug修复存在风险——截止日期是明天
可用工具(18个)
| 工具 | 功能 |
|---|
| bootstrap | 加载记忆上下文(在对话开始时调用) |
| heartbeat |
扫描风险:被阻塞、过时、存在风险的任务 |
| create_node | 创建项目/任务/目标 |
| update_status | 更改状态(待办/进行中/等待中/已完成/已放弃) |
| append_log | 记录决策、进度、链接 |
| get
contextbundle | 获取Token预算内的上下文负载 |
| search_nodes | 按状态、父节点、来源查找任务 |
| get_node | 获取工作项的完整详情 |
| shift_focus | 将AI注意力切换到特定任务 |
| expand_context | 查看父节点、子节点、依赖关系 |
| update_field | 更新标题、摘要、截止日期等 |
| attach
node / detachnode | 在层级中移动任务 |
| add
dependency / removedependency | 管理任务依赖关系 |
| unarchive | 恢复已完成/已放弃的任务 |
| set_persistent | 保护任务不被自动归档 |
| get
assemblytrace | 调试上下文组装过程 |
自动记忆规则
在每次对话中遵循以下规则:
- 1. 对话开始 → 调用 bootstrap 加载记忆
- 用户提到任务/项目/目标 → 调用 createnode
- 用户做出决策 → 调用 appendlog 记录到相关节点
- 任务有进展 → 调用 updatestatus
- 对话结束前 → 调用 appendlog 记录关键要点
- 每约10分钟 → 调用 heartbeat 检查风险
系统要求
- - Python 3.10+
- 无需外部服务——100%本地运行于SQLite
链接