整理已完成项目为可搜索的档案,并备份会话记录
备选案文1: ClawhHub CLI(建议). 备选案文2: 从 GitHub.
功能概述
备选案文1: ClawhHub CLI(建议). 备选案文2: 从 GitHub.是一项面向实际任务的技能,主要用于Archive Project Skill. 组织完成的项目,形成一个完整的长期可搜索的档案.;Data 隐私: 存档数据(会话).。
核心要点
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
使用与执行
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
结果检查与注意事项
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
安装
选项 1:Clawhub CLI(推荐)
openclaw skills install archive-project # 或 clawhub install archive-project
选项 2:从 GitHub 安装
# 克隆仓库 git clone https://github.com/KaigeGao1110/ArchiveProject.git ~/.openclaw/skills/archive-project # 或直接下载 curl -L https://github.com/KaigeGao1110/ArchiveProject/archive/refs/heads/main.zip -o /tmp/archive-project.zip unzip /tmp/archive-project.zip -d ~/.openclaw/skills/ mv ~/.openclaw/skills/ArchiveProject-main ~/.openclaw/skills/archive-project
Archive Project 技能
将已完成的项目整理为一个完整、长期可检索的归档。
数据隐私:归档数据(会话记录、项目文件)绝不会离开内部 workspace,除非你显式批准发布步骤。在任何归档操作前,sanitize 脚本会自动执行。
触发条件
仅当 你说“archive this” 或 “can we archive this” 时才会触发归档。这是唯一的触发方式——你始终掌握项目何时完成的最终决定权。
触发 2:斜杠命令
输入 //archive 后接你的项目名称,即可激活 Archive 技能。
示例:“//archive cureforge-hr-assessment”
但在以下场景中,我将 提示但不执行 归档:
- 刚完成一次交付动作(例如已发送邮件、已生成演示链接、所有子代理任务已完成、代码已提交)
- 你启动了一个新项目,或说出“next task” / “different topic”
我 不会提示 归档的情况包括:
- 项目仍在积极开发中
- 当前任务属于持续性运维操作
- 正在等待外部反馈(静默时间 ≥ 48 小时)
归档流程
步骤 1:创建项目归档目录
workspace/projects// ARCHIVE.md session_transcript.jsonl subagent_sessions/ deliverables/ decisions.md
步骤 2:收集会话记录
子代理会话(重要——必须收集):
# 存储会话记录的目录(可通过 SESSION_TRANSCRIPT_PATH 配置)
# 默认路径:~/.openclaw/agents/main/sessions/(所有用户的通用路径)
# 覆盖方式:设置 SESSION_TRANSCRIPT_PATH 为自定义路径(例如 EFS 挂载点)
SESSION_DIR="${SESSION_TRANSCRIPT_PATH:-$HOME/.openclaw/agents/main/sessions/}"
# 使用显式的会话密钥(来自会话标签或传入参数)定位主会话记录
# 利用会话密钥/标签匹配精确的记录文件
SESSION_KEY="${1:-}" # 通过参数传入会话密钥,或从上下文中提取
if [ -n "$SESSION_KEY" ]; then
MAIN_SESSION_PATH=$(grep -l "$SESSION_KEY" "${SESSION_DIR}"*.jsonl 2>/dev/null | head -1)
fi
# 回退方案:若未提供密钥或未找到匹配项,则使用最新的一条会话记录
if [ -z "$MAIN_SESSION_PATH" ] || [ ! -f "$MAIN_SESSION_PATH" ]; then
MAIN_SESSION_PATH=$(ls -t "${SESSION_DIR}"*.jsonl 2>/dev/null | head -1)
fi
# 创建项目归档目录
mkdir -p workspace/projects//subagent_sessions/
# 复制主会话记录
cp "$MAIN_SESSION_PATH" "workspace/projects//session_transcript.jsonl"
子代理子会话记录:
# 子代理会话 ID 列在主会话 JSONL 文件中
# 查找会话元数据中的 "childSessions" 数组
# 将每个子会话记录复制到 subagent_sessions/ 目录下
# 命名模式:{SESSION_DIR}/{child-id}.jsonl
步骤 3:清洗会话记录(关键——归档前必须执行)
归档前需移除:
- API 密钥、令牌及认证凭据
- 个人联系方式(邮箱、电话号码)
- 内部基础设施信息(主机名、IP 地址)
- 任何敏感环境变量
使用清洗脚本:
python3 scripts/sanitize_transcript.py workspace/projects//session_transcript.jsonl -o workspace/projects/ /session_transcript_sanitized.jsonl
该脚本将脱敏以下内容:
- API 密钥(GitHub tokens、OpenAI keys、AWS credentials 等)
- 邮箱地址
- 电话号码
- IP 地址(IPv4 和 IPv6)
- 内部主机名和 AWS EC2 DNS 名称
- 通用密钥及高熵令牌
验证后再继续:
# 运行内置测试以确认脱敏功能正常 python3 scripts/sanitize_transcript.py --test # 手动抽样检查(查找是否仍有残留的敏感数据) grep -iE '(token|key|password|email|phone|@|192.168|10.)' workspace/projects//session_transcript_sanitized.jsonl || echo "未发现敏感数据"
验证通过后,用清洗后的版本替换原始文件:
mv workspace/projects//session_transcript_sanitized.jsonl workspace/projects/ /session_transcript.jsonl
步骤 4:编写 ARCHIVE.md
请使用下方模板。务必填写决策依据——这对后续复盘最具价值。
步骤 5:更新 MEMORY.md
在 MEMORY.md 中添加一行摘要:项目名称 + 状态 + 链接。
步骤 6:删除 EFS 会话文件(需用户批准)
在从 EFS 删除任何会话文件前,必须向用户确认:
“我可以删除该项目的 EFS 会话文件吗?它们已在归档中完成备份。”
仅在用户明确批准后才可执行删除操作。 绝不可未经询问自动删除。
若获批准:
# 从 EFS 删除主会话记录
rm -f "${SESSION_DIR}$(basename "$MAIN_SESSION_PATH")"
# 从 EFS 删除所有子代理子会话记录
for CHILD_ID in ; do
rm -f "${SESSION_DIR}${CHILD_ID}.jsonl"
done
若未获批准,则保留 EFS 中的会话文件不变。
步骤 7:Git 提交(仅限内部 workspace)
cd workspace git add projects// git commit -m "Archive: "
保持项目数据私有。 归档数据仅供内部参考使用。
ARCHIVE.md 模板
#— 项目归档 _Created: | Owner: | Status: _ --- ## 一句话摘要 <1–2 句话:说明该项目的作用、面向对象及其核心价值> --- ## 项目背景 ### 客户 <姓名 + 联系方式 — 归档后仅记录未来参考所需的必要信息> ### 原始资料 | 文件 | 内容 | |------|------| | | | | | | --- ## 交付成果 ### 代码 / 产品 | 路径 | 描述 | |------|------| | | | ### 报告 / 文档 | 文件 | 描述 | |------|------| | | | ### 演示 / 链接 | 链接 | 描述 | |------|------| | | | --- ## 时间线 | 日期 | 事件 | |------|------| | YYYY-MM-DD | | | YYYY-MM-DD | | --- ## 关键决策 ### N. <决策标题> **选项:** A vs B(选择 A) **依据:** <为何做出该选择> **结果:** <实际发生情况> --- ## 待办事项 | 事项 | 描述 | 优先级 | |------|------|--------| | - |
| High/Med/Low | --- ## 经验总结 ### N. <经验标题> <学到了什么,下次应如何改进> --- ## Git 提交记录(内部) | 阶段 | 提交哈希 | 描述 | |------|----------|------| | 初始 | | | | 交付 | | | --- ## 重建指南 ```bash
--- ## decisions.md 模板 ```markdown # 关键决策 —## 决策 N - 日期: - 问题: - 可选方案: - A: <描述> - B: <描述> - 决策:<所选方案> - 依据:<原因>
清洗脚本参考
scripts/sanitize_transcript.py 脚本提供确定性、可审计的会话记录敏感数据脱敏能力。
脱敏内容
| 类别 | 示例 | 替换为 |
|---|---|---|
| GitHub tokens | ghp_xxx, github_pat_xxx |
[REDACTED-GITHUB-TOKEN] |
| OpenAI keys | sk-xxx, sk-proj-xxx |
[REDACTED-OPENAI-KEY] |
| Anthropic keys | sk-ant-xxx |
[REDACTED-ANTHROPIC-KEY] |
| AWS credentials | AKIAxxx, aws_access_key_id=xxx |
[REDACTED] |
| 邮箱地址 | user@example.com |
[REDACTED-EMAIL] |
| 电话号码 | +1 555-123-4567 |
[REDACTED-PHONE] |
| IPv4 地址 | 192.168.1.1, 10.0.0.1 |
[REDACTED-IP] |
| IPv6 地址 | 2001:db8::1 |
[REDACTED-IPV6] |
| 内部主机名 | ip-10-0-1-43.local |
[REDACTED-HOSTNAME] |
| AWS EC2 DNS | ec2-xxx.amazonaws.com |
[REDACTED-AWS-HOST] |
| 通用密钥 | 高熵 base64/hex 字符串 | [REDACTED-SECRET] |
使用方法
# 基础用法 — 输出至标准输出 python3 scripts/sanitize_transcript.py input.jsonl > sanitized.jsonl # 显式指定输出文件 python3 scripts/sanitize_transcript.py input.jsonl -o sanitized.jsonl # 从标准输入读取 cat input.jsonl | python3 scripts/sanitize_transcript.py > sanitized.jsonl # 运行内置测试 python3 scripts/sanitize_transcript.py --test
特性
- 确定性:相同输入始终产生完全一致的输出
- 非破坏性:原始文件永不被修改
- 结构保持:JSON/JSONL 结构完整保留;仅对字符串值进行脱敏
- 可测试:内置测试模式可验证脱敏规则有效性
热门AI工具
相关专题
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.8万人学习
共6课时 | 54.7万人学习
最新文章