核心用法
Handoff 是一个面向团队协作的知识管理工具,主要功能分为两大模式:
临时交接文档模式(默认)
通过 /handoff <project> [options] 创建临时性、即用即弃的交接文档,存储于 $HOME/.openclaw/shared/handoff/<project>/<YYYY-MM-DD>/ 路径下。文档严格遵循 YAML 结构化头部,包含项目目标、已完成工作、当前状态、下一步行动等核心模块,可选生成配套的工作日志(_work_log.md)记录详细命令执行与文件操作历史。
永久知识更新模式(--permanent)
通过 --permanent <target_doc_path> 参数向长期维护的知识库文档(存储于 knowledge/<project>/)提出结构化补丁建议。系统会先读取目标文档分析其风格与目的,输出明确的区块级变更提案,仅在用户显式确认并附加 --apply 参数后才执行实际写入。此模式强调知识的长期可维护性,适合记录架构决策、调试流程、认知演进等。
加载历史模式(load 子命令)/handoff load <project> [--date YYYY-MM-DD] 支持快速定位历史交接文档,优先读取 INDEX.md 索引,按时间或关键词检索,返回 3-8 条内容摘要并询问更新或新建决策。
显著优点
1. 严格的写入确认机制:任何写操作前必须声明绝对路径并获取用户确认,大幅降低误操作风险
2. 双轨知识分离设计:明确区分"临时交接"与"永久知识",避免知识库污染
3. Obsidian 原生兼容:支持相对链接、YAML 前置元数据,与现有知识管理工作流无缝集成
4. 结构化日志追踪:--log 选项生成独立的命令级工作日志,便于审计与故障回溯
5. 渐进式知识固化:永久文档更新遵循"先提案、后应用"的两阶段流程,确保变更可追溯
潜在缺点与局限性
1. 仅支持两个子命令:v1 版本仅实现 default 与 load 模式,其他子命令(如 integrity、list)均会触发不支持提示
2. 路径硬编码依赖:强制要求 $HOME/.openclaw/shared/ 作为根目录,灵活性受限
3. 人工确认瓶颈:高频率更新场景下,逐条确认机制可能成为效率瓶颈
4. 无内置冲突解决:多人同时提案同一永久文档时,缺乏自动合并或冲突检测机制
5. 日期层级存储:YYYY-MM-DD 文件夹结构在跨年项目检索时可能产生碎片化
适合人群
- 远程协作的技术团队需要结构化交接开发者状态
- Obsidian 重度用户希望建立团队级知识沉淀管道
- 需要审计追踪的合规敏感项目(如金融、医疗软件开发)
- 多会话连续性要求高的复杂项目维护者
常规风险
- 路径遍历风险:若 project 参数未经净化,理论上存在目录遍历可能(虽未在文档中明确提及防护措施)
- 数据持久性误设:用户可能混淆 temporary 与 permanent 模式,导致关键知识未被固化或临时文档被误保留
- 确认疲劳导致绕过:高频使用者可能习惯性快速确认,削弱安全机制的实际效力
- 共享存储并发写入:多代理同时操作同一文件时,缺乏文件锁机制可能导致覆盖丢失