OpenByline 是一套在 Claude Code 里运行的、以作者为中心的多智能体中文写作系统:把你的个人知识库、写作画像、真实经历喂进一条"编辑部"流水线,目标是写得像你本人。核心约束是防伪造、写得像你、人在回路;方法论是可选工具箱,写得像你优先(见 CLAUDE.md §五)。核心信条:人类是主编,AI 是执行者;AI 交付的永远是"初稿(Draft)"。
名字取自 byline——文章顶端那行"作者:某某"。这套系统折腾到底,就为一件事:AI 写出来的字,配得上署你的名。
- CLAUDE.md —— 主编宪法:信条与元规则 / 标准流水线 / 编排模式 / 质量门 G1–G6 / 交接规范。每个会话自动加载,只留骨架,细则全部下沉到 skill。
.claude/agents/—— 1 个编排器 + 15 个专家 subagent(共 16),各自独立上下文、各管一段,按 artifact 文件交接。.claude/skills/—— 13 个可复用 skill:写作方法论(品控/结构/标题/风格/来源核验/交接)+ 并行编排三件套(ultracode-orchestration / judge-panel / completeness-critic)+ 呈现与生图(头图/小红书卡片)+ 选题与沉淀(topic-radar 选题雷达 / daily-note-sink 日记沉淀)。workspace/—— 运行时产物交接区(所有跨 agent 信息只在这里落盘);.claude/workflows/write-pipeline.js是 ultracode 模式下一键启动的并行写作 DAG。
| Agent | 职责 | 模型 |
|---|---|---|
zhubian-orchestrator |
主编·总编排:唯一对话、调度、守门、组织返工 | opus |
topic-strategist |
选题策略:一句话价值 / 切入角度 | opus |
voice-profiler |
风格画像采集:"写得像你" | opus |
researcher |
调研取材:带来源的结构化调研报告 | opus |
story-curator |
案例与故事:增强"人味"与共鸣 | sonnet |
knowledge-manager |
知识管家:接入个人知识库作"个人知识源" | sonnet |
outline-architect |
结构架构:开宗明义 / 单层逻辑 / 递进 | opus |
drafter |
初稿写作(主写)/ 局部速写 / 体裁改写 | opus |
fact-checker |
事实核查:反幻觉、反编造来源 | opus |
logic-reviewer |
逻辑审查:论证链、谬误 | opus |
line-editor |
表述润色 | sonnet |
style-aligner |
风格对齐:像不像作者本人(0-100) | opus |
headline-writer |
标题:多候选 + judge panel 择优 | opus |
punchline-writer |
金句 / 钩子 | opus |
final-qc |
终审质检(覆盖率核验 + 品控清单) | opus |
layout-designer |
排版呈现:适配平台版式,只动版式不改字 | sonnet |
0 画像 → 1 选题 🚦拍板 → 2 取材 ∥(researcher/story/knowledge) → 3 结构 → 4 初稿
→ 🚦4.5 私货采集(真实第一人称断点)→ 5 三道审查 ∥(fact/logic/style) → 6 润色+点睛 ∥
→ 6.5 回填标题金句 → 7 终审 → final.md 🚦最终定稿 → 8 排版(可选)
- 轻量模式(日常随笔/短文,多数情况):
画像 → drafter 直接写 → style-aligner + fact-checker 两道审查 → 你过目,只产 draft + final 两个文件。开写时主编弹窗问:轻量还是全流程、分段还是整稿、体裁档位(详见 CLAUDE.md §二)。 - @单专家旁路:只想用某一个专家时直接 @ 它("只用 fact-checker 核这段"),跳过全链路。
两条执行路径:主程序当主编 → Workflow({name:'write-pipeline'}) 一键启动并行 DAG;zhubian-orchestrator subagent 当主编 → 一条消息发多个 Task 并发。取材/审查/点睛三处 fan-out,终审做 completeness 覆盖率核验,三处人类 gate 分段返回等确认。并发安全靠 fragment-then-merge(每分支独立文件、主编单点合并),零竞态、不依赖任何实验旗标。详见 skill: ultracode-orchestration。
-
打开项目:用 Claude Code 打开本仓库目录。磁盘上的 subagent 需重启会话才会加载;用
/agents确认 16 个角色被识别。 -
建画像(首次):把你的 3-5 篇代表作(或等量口述/日记等真实语料)放进
workspace/或粘贴给主编,说"用 voice-profiler 建立我的写作画像",它会参照workspace/voice-profile.template.md生成你的workspace/voice-profile.md。不同体裁各建一份(如voice-profile.公众号.md)。 -
发起写作:直接对主编说,例如:
帮我写一篇面向独立开发者的公众号,讲"为什么单人创业要尽早做 AI 工作流",2000 字。
主编会先弹窗问模式与体裁档位,然后按流水线调度专家,在每个人类 gate 找你拍板。
-
看产物:每个选题的全部产物在
workspace/内容输出/<日期>-<主题slug>/下(互不覆盖);作者画像在workspace/根。你始终是主编——final.md是初稿,由你最终定稿。
- 核心机制(去 AI 味 / 反幻觉 / 写得像作者):4.5 真实第一人称采集断点(防伪造"我")、style-aligner 分级把关(🔴 红线一票否决、🟡 句式交作者定)、fact-checker loop-until-dry、final-qc 覆盖率核验。判据是"是不是 AI 味 / 是不是编造",不机械限制句式。
- 隐私边界(开源必读):真实作者画像
workspace/voice-profile.md、个人知识库、author-input-real.md等个人语料永不入库——.gitignore已对workspace/整体忽略 + 隐私文件名防御性兜底,仓库只发布voice-profile.template.md脱敏模板。fork 后请在私有环境填真实画像,切勿git add -f推到公开仓库。 - 先跑最小闭环再扩角色:可先只用 主编 + voice-profiler + drafter + fact-checker + final-qc 跑通一篇,再逐步加入其余专家。
- 事实门是硬门:fact-checker 的
[Critical]是终审强阻断;宁标[待核]让你来定,绝不编造来源。 - 模型分配:opus 给需判断力的角色,sonnet 给执行型;要压成本可用
CLAUDE_CODE_SUBAGENT_MODEL统一降档测试。 - 数据源可扩展:
researcher默认接公网搜索;高质量本地资料库可接成 MCP / 检索工具,或作personal-knowledge个人知识源补充。
.
├── CLAUDE.md # 主编宪法(骨架+指针)
├── README.md # 本文件
├── .claude/
│ ├── agents/ # 16 个 subagent
│ ├── workflows/write-pipeline.js # 并行写作 DAG
│ └── skills/ # 13 个 skill(各自独立成目录)
└── workspace/ # 运行时产物交接区(含个人隐私,整体被 .gitignore 忽略)
├── voice-profile.template.md # 画像模板(仓库唯一随开源发布的画像文件)
├── voice-profile.md # 你的真实画像(被忽略,不入库)
├── 个人知识库/ # 个人画像 + 观点库 + 每日记录 + 个人IP图(含隐私)
├── 选题雷达/ # 按 <日期-类型>.md 存
└── 内容输出/<日期>-<主题slug>/ # 每篇一个目录:全部 artifact + 头图 + 卡片
echo "agents: $(ls .claude/agents/*.md | wc -l) 个"
echo "skills: $(ls -d .claude/skills/*/ | wc -l) 个"
for f in .claude/agents/*.md; do grep -q '^name:' "$f" || echo "⚠ 缺 name: $f"; done也可在 Claude Code 里用 /agents 目检角色是否都被识别。
本项目(方法论、agent / skill prompt、文档)以 MIT License 发布——可自由 fork、修改、复用。workspace/ 下的个人语料不在发布范围(已被 .gitignore 忽略)。
本项目的内容质量方法论借鉴自得到「写作专家团」编辑部实践与《得到品控手册》;金线、缝合、赋能、对象感、策展等概念在 .claude/skills/quality-manual/REFERENCE.md 里逐条标注了原始出处。在此致谢。