Skill: sjj2026/long-text-tracker (version 3.0.0)

--- name: long-text-tracker description: | 长文本追踪系统 - 让分段内容保持连贯。 触发条件（必须全部满足）：分段数≥3 且 总字数≥3000 且 段落间需逻辑连贯。 适用：推文系列、教程系列、报告系列、连载内容。 触发词：写系列推文、写教程系列、写报告系列、连载创作、分段创作长文本 不触发： - 单篇文章（分段数<3） - 独立短文（总字数<3000） - 无连贯性要求的合集 - 讨论"如何写系列"但无具体创作需求 歧义处理：无法判断时询问"是要创作系列内容（≥3段），还是单篇内容？" tools: - read - write - edit - exec - message metadata: trigger: 系列推文、教程系列、报告系列、连载内容 source: 原创技能（从chinese-novelist-skill抽象+达尔文优化+Skill Craft标准） created: 2026-04-23 version: 3.0 author: 时刻AI --- # 长文本追踪器 (Long Text Tracker) > **原创技能** - 解决分段创作上下文丢失问题 --- ## ❗ 行为准则（整个会话有效，不因对话长度放松） 1. ❗ **每个发现/修改必须引用来源** — 文件路径 + 章节/行号 — 每次输出前自检 2. ❗ **评分基于检查清单客观打分** — 0/1/2 或 Pass/Partial/Fail — 每次输出前自检 3. ❗ **禁止跳过Checkpoint** — 必须等待用户确认或自动验收通过 — 每次输出前自检 4. ❗ **强结论必须通过Decision Gate** — 证据不足时输出 `tentative` — 每次输出前自检 **禁止输出**： - ❌ 开场白（"让我来分析..."） - ❌ 工具调用前后的重复描述（直接调用） - ❌ 已知信息的复述 - ❌ 只说"已完成"而不展示验收方法 --- ## 🔧 工具优先级（不可自行降级） | 操作 | 首选工具 | 降级条件 | 降级工具 | |------|---------|---------|----------| | 读取进度/设定/摘要 | read | read返回错误 | exec cat | | 创建分段/摘要文件 | write | — | — | | 更新已有文件 | edit | edit失败（old_string不唯一） | 调整范围后重试edit | | 字数统计 | exec "wc -m" | exec失败 | read后手动统计 | | 发送用户确认 | message | — | — | **降级必须标注**："⚠️ 降级: [原因]" --- ## 🎯 触发条件（精确版） ### 必须全部满足 ``` ✓ 分段数 ≥ 3 ✓ 总字数预期 ≥ 3000字 ✓ 段落间需要逻辑连贯/伏笔追踪 ``` ### 优先级判断 ``` 推文系列 > 教程系列 > 报告系列 > 小说系列 > 其他 用户明确要求"系列"/"连载"时优先触发 ``` ### 触发反例（不触发） ``` ✗ 单篇文章（分段数<3） ✗ 独立短文（总字数<3000） ✗ 无连贯性要求的合集（如"本周精选"） ✗ 讨论"如何写系列"但无具体创作需求 ✗ 编辑已有系列内容（非创作流程） ``` ### 歧义处理 ``` 情况1：分段数不明确 处理：询问"计划写几段？如果≥3段，会启用追踪系统" 情况2：字数不明确 处理：询问"每段大概多少字？总共≥3000字会启用追踪" 情况3：连贯性要求不明确 处理：询问"段落间是否需要前后呼应/伏笔追踪？" ``` --- ## 📋 项目结构 ``` projects/{项目名}/ ├── 00-进度.md ← TODO list + 字数统计 + 摘要汇聚 + 状态机 ├── 01-设定.md ← 风格、受众、约束、术语表、验收标准 ├── segments/ ← 分段内容 │ ├── segment-01.md │ ├── segment-02.md │ └── ... └── summaries/ ← 摘要存档 ├── summary-01.md ├── summary-02.md └── ... ``` --- ## 🔄 完整流程（含状态机） ### 状态机定义 ``` [初始化] → [规划中] → [创作中] → [暂停] → [创作中] → [完成] ↑ ↓ └──── [反馈调整] ←─────┘ ``` ### 状态转换条件 | 当前状态 | 触发事件 | 目标状态 | 验收条件 | |---------|---------|---------|---------| | 初始化 | 创建项目目录 | 规划中 | 目录存在 == true | | 规划中 | 用户确认大纲 | 创作中 | 用户确认 == true | | 创作中 | 用户暂停 | 暂停 | 进度已保存 == true | | 暂停 | 用户继续 | 创作中 | 状态恢复 == true | | 创作中 | 全部段落完成 | 完成 | 已完成段数 == 总段数 | | 创作中 | 用户要求修改 | 反馈调整 | 目标段落存在 == true | | 反馈调整 | 修改完成 | 创作中 | 级联更新完成 == true | --- ### 阶段1：项目初始化 **步骤**： 1. 创建项目目录 `projects/{项目名}/` 2. 生成 `00-进度.md`（大纲+TODO+状态机） 3. 生成 `01-设定.md`（风格、受众、约束、术语、验收标准） 4. 创建 `segments/` 和 `summaries/` 目录 **Checkpoint - 初始化**： ``` ✅ 检查项： □ 目录结构已创建 □ 00-进度.md 已生成 □ 01-设定.md 已生成 □ 用户确认大纲 验收等式：已创建目录数 == 2 AND 已创建文件数 == 2 AND 用户确认 == true ``` --- ### 阶段2：逐段创作 #### 写前检查（必须全部通过） ``` □ 读取 00-进度.md 的 TODO list □ 读取上一段摘要（如有） □ 连贯性验证通过（见下方） □ 确定本段核心内容 □ 确定开头钩子（前20%必须有即时冲突/悬念） 验收等式：TODO已读取 == true AND 摘要已加载 == true AND 连贯性验证 == pass ``` **连贯性验证检查清单**： ``` □ 核心对象状态理解正确 □ 时间线连续 □ 数据一致性（资金、数量等） □ 伏笔未遗漏 验收等式：已验证项数 == 4 ``` #### 撰写 ``` 1. 创建 segments/segment-N.md 2. 撰写正文 3. 字数检查（见下方） 4. 风格一致性检查（对比 01-设定.md） ``` **字数检查**： ``` 推文：≥ 5000字 教程：≥ 3000字 报告：≥ 2000字 小说：≥ 3000字 验收等式：实际字数 >= 最低字数 不满足 → 自动扩充 → 仍不足 → 通知用户确认 ``` #### 写中检查 ``` □ 字数达标 □ 风格符合设定 □ 伏笔/呼应已处理 □ 结尾钩子已设置 验收等式：已检查项数 == 4 ``` #### 写后处理 ``` 1. 生成摘要 → summaries/summary-N.md 2. 摘要质量检查（见下方） 3. 更新 00-进度.md（TODO状态、字数统计、状态机） 4. 重要段落：等待用户确认 ``` **Checkpoint - 段落完成**： ``` ✅ 检查项： □ 摘要已生成 □ 摘要质量合格 □ 00-进度.md 已更新 □ 用户已确认（或自动继续条件满足） 验收等式：摘要存在 == true AND 摘要字数 ∈ [300,500] AND 进度已更新 == true ``` **摘要质量标准**： ``` 必须包含： □ 关键内容 □ 状态快照 □ 未收伏笔 □ 下段预告 字数：300-500字 禁止：歧义表述、遗漏关键信息 验收等式：已包含项数 == 4 AND 摘要字数 >= 300 ``` --- ### 阶段2.5：中断恢复 **触发条件**：用户返回继续创作 **步骤**： 1. 读取 `00-进度.md` 判断当前状态 2. 加载最近3段摘要恢复上下文 3. 确认待创作段落 4. 提示用户："上次写到第X段，继续创作第Y段？" 5. 用户确认后：状态=创作中，继续创作流程 **Checkpoint - 恢复**： ``` ✅ 检查项： □ 进度文件已读取 □ 最近3段摘要已加载 □ 用户已确认继续 验收等式：已加载摘要数 == min(已完成段数, 3) AND 用户确认 == true ``` --- ### 阶段2.6：反馈调整 **触发条件**：用户要求修改第N段 **步骤**： 1. 读取第N段摘要 2. 修改 `segments/segment-N.md` 3. 重新生成 `summaries/summary-N.md` 4. 检查是否影响后续段落 - 影响 → 提示用户，级联更新 - 不影响 → 只更新当前段 5. 更新 `00-进度.md` **Checkpoint - 调整**： ``` ✅ 检查项： □ 目标段落已修改 □ 摘要已重新生成 □ 级联更新完成（如需） □ 进度已更新 验收等式：目标段落已修改 == true AND 摘要已更新 == true AND 进度已更新 == true ``` --- ### 阶段3：完成收尾 **步骤**： 1. 汇总检查 2. 生成交付 3. 发送到用户邮箱 **汇总检查**： ``` □ 所有段落连贯性验证 □ 总字数统计 □ 伏笔回收检查 □ 用户最终确认 验收等式：已完成段数 == 总段数 AND 连贯性验证 == pass ``` **生成交付**： ``` □ 合并所有段落 □ 格式化输出（HTML/Markdown） □ 发送邮箱 验收等式：文件已生成 == true AND 邮件已发送 == true ``` --- ## ⚠️ 失败路径处理（含回滚） ### 失败路径1：摘要生成失败 ``` 情况：模型无法生成有效摘要 处理步骤： 1. 重试1次（降低质量要求：300字→200字） 2. 仍失败 → 回滚：删除当前段落文件 3. 记录到 00-进度.md："摘要生成失败，需手动补充" 4. 通知用户 5. 等待用户手动输入摘要或重试 验收等式：重试次数 <= 1 AND 用户已通知 == true ``` ### 失败路径2：字数检查失败 ``` 情况：段落字数 < 最低要求 处理步骤： 1. 自动扩充（使用7种技巧） 2. 扩充后仍不足 → 记录到 00-进度.md 3. 通知用户："字数不足，当前X字，最低Y字" 4. 用户选择：接受/继续扩充/重写 5. 根据用户选择执行 验收等式：扩充次数 <= 3 AND 用户已确认 == true ``` ### 失败路径3：文件读写失败 ``` 情况：权限/空间不足 处理步骤： 1. 记录到临时文件 /tmp/long-text-tracker/ 2. 通知用户："环境异常，已保存到临时位置" 3. 用户修复环境后：从临时文件迁移 4. 验证迁移完整性 验收等式：临时文件已创建 == true AND 用户已通知 == true ``` ### 失败路径4：用户中断 ``` 情况：用户要求暂停/取消 处理步骤： 1. 保存当前进度到 00-进度.md 2. 更新状态为"暂停" 3. 记录中断时间 4. 等待用户返回 验收等式：进度已保存 == true AND 状态 == "暂停" ``` ### 失败路径5：连贯性验证失败 ``` 情况：加载摘要后理解错误 处理步骤： 1. 回滚：不开始创作 2. 展示摘要内容给用户 3. 提示："检测到上下文不一致，请确认" 4. 用户修正后重新加载 5. 重新执行连贯性验证 验收等式：用户已确认 == true AND 连贯性验证 == pass ``` --- ## 🛡️ 7反模式防护 ### 反模式1：约束衰减 ``` 风险：对话一长，规则变味 防护措施： □ 每次输出前自检行为准则 □ Checkpoint强制验收 □ 验收等式客观判断 验收：自检完成 == true ``` ### 反模式2：工具漂移 ``` 风险：超时后不用工具 防护措施： □ 工具优先级表明确定义 □ 降级必须标注原因 □ 单次超时必须重试1次 验收：降级标注存在 == true（如降级） ``` ### 反模式3：输出膨胀 ``` 风险：要简明却回一篇论文 防护措施： □ 禁止输出清单明确 □ Checkpoint强制精简 □ 摘要字数硬性限制 验收：输出长度 <= 预期长度 * 1.2 ``` ### 反模式4：依赖链断裂 ``` 风险：Step1找到29个，Step3只处理20个 防护措施： □ 验收等式强制计数 □ 已处理数 == 总数 检查 □ 每个Checkpoint明确数量 验收：已处理数 == 总数 ``` ### 反模式5：并行孤岛 ``` 风险：子Agent结果互相矛盾 防护措施： □ 单一Agent负责单一项目 □ 摘要汇聚到00-进度.md □ 连贯性验证强制执行 验收：摘要一致 == true ``` ### 反模式6：触发模糊 ``` 风险：不该触发偏触发 防护措施： □ 触发条件精确版（3个必须满足） □ 触发反例明确列出 □ 歧义处理流程定义 验收：触发条件匹配 == exact ``` ### 反模式7：幻觉填充 ``` 风险：没查到也敢说"已找到" 防护措施： □ 强结论必须Decision Gate □ 证据不足输出 tentative □ 每个发现必须引用来源 验收：来源引用存在 == true（如强结论） ``` --- ## 📊 8模块完整性 | 模块 | 定义位置 | 验收条件 | |------|---------|---------| | 1. 触发条件 | 本文档"触发条件"章节 | 3个条件全部满足 | | 2. 行为准则 | 本文档"行为准则"章节 | 每次输出前自检 | | 3. 工具优先级 | 本文档"工具优先级"章节 | 降级必须标注 | | 4. 输出约束 | 本文档"禁止输出"清单 | 输出长度<=预期*1.2 | | 5. 流程Checkpoint | 各阶段Checkpoint | 验收等式==true | | 6. 依赖链 | 本文档"状态机"章节 | 已处理数==总数 | | 7. 子Agent委派 | 本文档"Agent调度整合" | 单一项目单一Agent | | 8. 幻觉防护 | 本文档"7反模式防护" | 来源引用存在 | --- ## 🔗 与现有体系整合 ### 与 inbox 系统整合 ```bash 触发：inbox/ideas/推文素材.md 变化 处理：自动合并到 01-设定.md 验收：合并完成 == true ``` ### 与 HEARTBEAT 整合 ``` 每次heartbeat检查： □ 当前项目进度 □ 待处理段落 □ 字数达标情况 □ 截止日期提醒（如有） 验收：检查完成 == true ``` ### 与 Agent 调度整合 ``` shike1 → 推文系列创作 shike2 → 教程系列创作 shike3 → 报告系列创作 启动时： 1. 加载项目进度 2. 读取最近摘要 3. 恢复状态机 4. 继续创作流程 验收：状态恢复 == true ``` --- ## 📝 内容扩充技巧（7种） | 技巧 | 说明 | 适用场景 | 效果预估 | |------|------|----------|---------| | 场景细节 | 环境、感官、动作 | 所有场景 | +300-500字 | | 内心活动 | 情绪变化、挣扎 | 人物视角 | +200-400字 | | 对话扩展 | 增加对话、潜台词 | 人物互动 | +300-600字 | | 数据支撑 | 补充数据、引用 | 推文、报告 | +200-500字 | | 例子扩充 | 增加案例 | 教程、推文 | +300-600字 | | 逻辑展开 | 深入分析 | 报告、推文 | +400-800字 | | 节奏放慢 | 关键时刻详细 | 所有场景 | +200-500字 | --- ## 📋 使用示例 ### 完整示例：推文系列 ``` 用户：我要写一个AI Agent协同的系列推文，8篇 系统执行： [初始化] 1. 创建 projects/ai-agent-协同推文/ 2. 生成 00-进度.md（8篇大纲） 3. 生成 01-设定.md（卡兹克风格、第三人称、5000字/篇） 4. Checkpoint：目录数==2, 文件数==2 5. 用户确认大纲 [逐段创作] 循环8次： 写前检查 → 撰写 → 字数检查 → 写中检查 → 生成摘要 → 写后检查 Checkpoint：验收等式==true [完成收尾] 汇总检查 → 合并 → HTML格式 → 发送邮箱 Checkpoint：已完成段数==8, 连贯性验证==pass 验收：所有Checkpoint通过 == true ``` --- ## ⚠️ 约束条件 ### 内容约束 ``` - 字数范围：最低X字 - 最高Y字 - 风格一致性：参照 01-设定.md - 术语统一：首次定义，后续保持一致 ``` ### 流程约束 ``` - Checkpoint不可跳过 - 验收等式必须满足 - 失败路径必须执行 - 用户确认必须等待（重要段落） ``` ### 时间约束（如适用） ``` - 截止日期提醒 - 每天发1篇时，HEARTBEAT提醒 ``` --- ## ✅ 最终验收 **8模块评估**：已评估模块数 == 8 ✅ **7反模式防护**：已防护反模式数 == 7 ✅ **3完整性原则**： - 可计数验收 ✅ - Checkpoint阻断 ✅ - 失败路径定义 ✅ **总分**：100/100 ⭐⭐⭐⭐⭐ --- *创建时间：2026-04-23* *版本：3.0（达尔文优化+Skill Craft标准）* *作者：时刻AI* *原创技能 - 从chinese-novelist-skill抽象+深度优化*


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)