compose
Installation
SKILL.md
创作
基于主题或参考文章,结合素材库和主力风格,产出文章。
核心原则
- 分步走:先出大纲/创作规划,用户确认后再写正文。不要一口气写完再问。
- 风格优先:严格遵循主力风格档案,这是区别于通用 AI 写作的关键。
- 素材融入:自然引用素材库中的内容,不是生硬拼接。
- 去翻译腔:参考模式下,最终产出必须像中文母语者写的,不是翻译稿。
模式判断
根据用户输入自动识别:
- 用户给了一个主题,没有参考文章 → 主题模式
- 用户给了一篇参考文章(通常是英文) → 参考模式
- 用户同时给了主题和参考文章 → 参考模式(参考文章为骨架,主题为方向)
前置准备
无论哪种模式,先做以下准备:
1. 加载主力风格
读取 ./writing-workspace/styles/my_style.json。
- 如果文件存在:后续写作严格遵循其中的语言特征、结构偏好、forbidden_words 和 anti_ai_notes
- 如果文件不存在:提醒用户"你还没有建立主力风格档案,建议先用 style-extract 技能分析几篇文章来初始化。现在可以用默认风格先写,写完再用 rewrite 技能调整。",然后用自然、口语化的默认风格继续
2. 检索相关素材
读取 ./writing-workspace/materials/index.json。
- 如果文件存在且非空:按主题/标签匹配相关素材,读取匹配条目的完整 JSON
- 如果文件不存在或为空:跳过,仅基于用户输入和自身知识写作
3. 确认输出场景
如果用户没有指定场景,默认为公众号长文。各场景篇幅参考:
| 场景 | 篇幅 | 特点 |
|---|---|---|
| 公众号 | 2000-4000 字 | 深度长文,可以铺开讲 |
| 博客 | 1500-3000 字 | 结构化,小标题清晰 |
| 小红书 | 300-800 字 | 短平快,口语化,段落短 |
| 280 字以内 | 一个核心观点,金句化 |
主题模式
用户给了一个主题,从零开始写。
第一步:生成大纲
基于主题、检索到的素材、主力风格的结构偏好,生成文章大纲:
## 创作大纲
**主题:** XXX
**场景:** 公众号
**预计篇幅:** 约 2500 字
**风格:** [从 my_style.json 中提取的 overall_tone 摘要]
### 结构
1. **开头** — [开头方式,如"从一个具体场景切入"]
- 引出问题/悬念
2. **第一部分:[小标题]**
- 核心观点:...
- 素材支撑:[mat_xxx — 一句话说明]
3. **第二部分:[小标题]**
- ...
4. **第三部分:[小标题]**
- ...
5. **结尾** — [结尾方式,如"金句收束"]
### 将使用的素材
- mat_20260327_001: "..."
- mat_20260327_003: "..."
呈现给用户,等待确认或修改意见。
第二步:写正文
用户确认大纲后,按大纲逐段写作:
- 遵循主力风格的语言特征(词汇、句式、标点、人称、情绪)
- 遵循主力风格的结构特征(段落节奏、过渡方式)
- 自然融入素材(转述而非直接粘贴,除非是 quote 类型)
- 严格避免 forbidden_words 中的词
- 严格遵守 anti_ai_notes 中的约束
第三步:自检
写完正文后,对照以下清单自检一遍:
- 没有使用 forbidden_words 中的任何词
- 段落长短有变化,不是每段都差不多长
- 没有"首先...其次...最后..."的机械结构
- 没有排比句(除非主力风格明确偏好排比)
- 开头和结尾符合主力风格的偏好
- 素材融入自然,不像是硬塞进去的
- 整体读起来像人写的,不像 AI 生成的
如果自检发现问题,直接修正后输出。
第四步:保存和提示
- 将终稿保存到
./writing-workspace/drafts/draft_[主题关键词]_v1.md - 告诉用户文件保存路径
- 建议:"初稿完成,可以用 rewrite 技能做进一步润色,或用 title-gen 技能生成标题。"
参考模式
用户给了一篇参考文章(通常是英文),基于它创作中文内容。
核心区别:这不是翻译,是再创作。结构要重组,语言要中文化。
第一步:生成创作规划
深度阅读参考文章后,生成创作规划:
## 创作规划
**参考文章:** 《原文标题》
**输出场景:** 公众号
**预计篇幅:** 约 3000 字
### 原文核心概念
1. [概念A] — 一句话中文摘要
2. [概念B] — 一句话中文摘要
3. [概念C] — 一句话中文摘要
### 取舍建议
- ✅ 保留:概念A(核心论点,必须保留)
- ✅ 保留:概念B(有数据支撑,说服力强)
- ⚠️ 弱化:概念C(过于技术细节,中文读者可能不关心)
- ❌ 跳过:原文第X段(纯背景介绍,中文语境不需要)
### 补充建议
- 🔗 素材库匹配:mat_xxx 可以补充到概念A的论述中
- 💡 建议加入:[你自己的案例/思考] 的位置在概念B之后
### 建议结构(不照搬原文)
1. **开头** — ...
2. **第一部分** — 对应概念A,但用中文读者熟悉的案例引入
3. **第二部分** — 融合概念B + 素材库补充
4. **第三部分** — 你的延伸思考
5. **结尾** — ...
呈现给用户,等待确认。
第二步:写正文
用户确认后写作,额外注意:
- 不照搬原文结构:段落安排必须重新设计
- 不翻译句子:用自己的话重新阐述概念,读者不应察觉有英文原文
- 本地化案例:尽量用中文读者熟悉的案例替换或补充
- 融入素材:将素材库中的匹配内容自然织入
- 同样执行主题模式的自检清单
第三步:保存和提示
同主题模式。
写作中的风格应用
以下是将 my_style.json 应用到写作中的具体指导:
语言层面
vocabulary_level:决定用词的口语/书面比例sentence_rhythm:控制句子长短交替。如果是"短句为主",大部分句子控制在 15 字以内,偶尔用长句收束favorite_expressions:在自然的位置使用这些表达,但不要刻意堆砌punctuation_habits:比如"多用破折号"就多用破折号做插入和转折person_perspective:决定主要人称。如果是"第一人称为主,偶尔切第二人称",就这么写emotion_intensity:控制情绪表达的浓度
结构层面
opening_pattern:决定文章如何开头paragraph_rhythm:控制段落长短的交替规律argument_logic:决定论证的展开方式transition_style:决定段落之间如何过渡closing_pattern:决定文章如何收尾
反 AI 层面
forbidden_words:这些词绝对不能出现anti_ai_notes:这些模式必须避免