让你的 writing style skill 越用越准。
text
AI 写初稿 → 人类改到满意 → 对比两版 → 提取规则 → 更新 skill
↑ ↓
└──────── 下次写作自动应用新规则 ←──────────────┘
只有两个数据点:
中间过程不记录。Google Doc 来回改了 10 轮?无所谓,只比较首尾。
在你的 writing style skill 目录下创建 self-improving.yaml:
yaml
# ~/your-skill/self-improving.yaml
target_skill: ~/path/to/your-writing-style/SKILL.md
log_dir: ~/clawd/memory/skill-runs/your-skill-name/
proposal_dir: ~/clawd/memory/skill-proposals/your-skill-name/
backup_dir: ~/clawd/memory/skill-backups/your-skill-name/
或者用环境变量 / 命令行参数覆盖(见下文)。
bash
python3 ~/clawd/skills/self-improving-skill/scripts/observe.py record-original <file> \
--skill ~/path/to/your-writing-style/
或直接传文本:
bash
python3 observe.py record-original --text "AI 生成的内容..."
输出:
text
✅ 记录原稿: a3f8c2e1
📝 字数: 1234
记住这个 hash( a3f8c2e1),后面配对用。
bash
python3 observe.py record-final <file> --match a3f8c2e1
如果人类没改直接用了? 也 record-final,脚本自动检测内容一致 → 标记为无修改(正反馈)。
bash
# 手动提取
python3 ~/clawd/skills/self-improving-skill/scripts/improve.py extract --days 7
# 或自动模式(适合 cron):提取 + 自动应用 P0 规则
python3 improve.py auto
bash
python3 improve.py show # 查看所有提案
python3 improve.py apply <id> # 应用某个提案
python3 improve.py rollback # 回滚上次应用
在你的 contentgen / writing skill 中加入:
markdown
## 写完内容后必须做的事
1. 写完初稿 → `observe.py record-original <file>`
2. 人类确认最终版 → `observe.py record-final <file> --match <hash>`
bash
# 每晚自动提取 + 应用 P0 规则
# schedule: 0 23 * * * (每晚 11pm)
python3 ~/clawd/skills/self-improving-skill/scripts/improve.py auto \
--skill ~/path/to/your-writing-style/
OpenClaw 用户可以用内置 cron:
text
cron add --name "skill-daily-extract" --schedule "0 23 * * *" --tz "America/New_York" \
--payload "运行 improve.py auto 自动提取写作风格改进"
text
~/clawd/memory/
├── skill-runs/your-skill/
│ └── YYYY-MM-DD.jsonl # 每日观察日志
│ ├── {type: "original", content_hash, content, context}
│ └── {type: "final", content_hash, original_content, final_content, no_change}
│
├── skill-proposals/your-skill/
│ └── YYYYMMDD-HHMMSS.md # 改进提案(P0/P1/P2 分级)
│
└── skill-backups/your-skill/
└── SKILL-YYYYMMDD-HHMMSS.md # apply 前自动备份
数据价值AI 原稿 2000 字 → final 1800 字(删了废话)⭐⭐⭐ 高AI 原稿 → final 完全不变(直接用)⭐⭐ 正反馈AI 原稿 500 字 → final 2000 字(大幅扩写)⭐ 低(扩写靠 prompt 不靠 style)AI 原稿 → final 只改了一个错别字⭐ 低(不是风格问题)
skill-backups/improve.py rollback命令功能record-original <file>记录 AI 原稿record-original --text "..."直接传文本record-final <file> --match <hash>记录最终版pending查看待配对原稿stats总体统计
命令功能extract提取改进建议(默认今天)extract --days 7最近 7 天auto自动提取 + 应用 P0(cron 用)show查看所有提案apply <id>应用指定提案rollback回滚上次应用
这个 framework 不限于写作风格,任何 "AI 生成 → 人类修改" 的循环都适用:
核心不变: 记录 original + final,自动 diff 提取规则。
bash
# 方式 1: 直接复制到 skills 目录
cp -r self-improving-skill ~/.claude/skills/
# 方式 2: 项目级 skill
cp -r self-improving-skill ./your-project/.claude/skills/
数据自动存储在 ~/.claude/memory/skill-runs/ 下。
bash
# 方式 1: ClawHub 安装
npx clawhub@latest install self-improving-skill
# 方式 2: 手动复制
cp -r self-improving-skill ~/clawd/skills/
数据自动存储在 ~/clawd/memory/skill-runs/ 下。
improve.py extract/auto 需要一个 LLM CLI 来分析 diff。自动检测:
CLI安装说明claudeClaude Code 自带优先使用llm``pip install llmSimon Willison 的通用 CLI自定义IMPROVE_LLM_CMD=...任意接受 stdin 的命令
observe.py 不依赖任何 LLM,纯 Python,零依赖。
bash
# 环境变量
export SKILL_BASE_DIR=~/my-custom-path/memory
# 或命令行参数
python3 observe.py stats --log-dir ~/my-path/skill-runs/my-skill/