Co-Pilot / 辅助式
更新于 24 days ago

writing-agent

Ddongbeixiaohuo
0.1k
dongbeixiaohuo/writing-agent
80
Agent 评分

💡 摘要

一个协作式写作工作流系统,通过AI帮助创作出更像人类的文章。

🎯 适合人群

内容创作者博客作者营销专业人士学生作家

🤖 AI 吐槽:看起来很能打,但别让配置把人劝退。

安全分析中风险

风险:Medium。建议检查:是否执行 shell/命令行指令;是否发起外网请求(SSRF/数据外发);API Key/Token 的获取、存储与泄露风险;文件读写范围与路径穿越风险;依赖锁定与供应链风险。以最小权限运行,并在生产环境启用前审计代码与依赖。

写稿Agent v0.6.0

🚀 一个基于 Claude Code Skills + Subagents 的"反AI味"写作系统,让AI写出的文章像人写的一样自然。

支持 DeepSeek / 智谱GLM / MiniMax 等多种国产大模型,成本极低(如果使用智谱GLM,MiniMax等包月套餐2000字文章成本基本可以忽略不计,成本只取决于你的写文章辛勤程度)。

从选题生成、风格建模到发布评审,提供完整的 AI 写作工作流。

License: MIT Version Claude Code DeepSeek

🎯 项目简介

写稿Agent 是一个协作式写作工作流系统,通过强制性的模式选择、需求澄清、风格建模、素材调研和主编审稿,帮助你写出不像AI生成的高质量文章。

v0.6.0 去AI味与真实模拟 ⭐ New

  • 🤖 Humanizer 去AI味专家:基于 Wikipedia AI Cleanup 项目,识别并修复24种AI痕迹(内容/语言/风格),注入人类"灵魂"。
  • 📺 读者模拟器 v3.0 直播版:不再是冷冰冰的数据报告,而是模拟真实读者的"直播现场"——心理弹幕、真话吐槽、朋友圈截图预览。
  • 🔄 工作流升级:新增 Stage 10 最终去AI味,在所有流程结束后主动询问,完成最后一道"注入灵魂"工序。

v0.5.1 审稿质量增强

解决"打分就过"的问题,所有评审环节必须给出可执行的修改方案并等待用户确认:

  • 🎯 标题设计师 v2.0:15种爆款公式(分6大类)+ 5个候选 + 钩子说明
  • 发布前评审 v2.0:每个问题都有「原文→改为」的修改方案 + 用户确认
  • 读者模拟 v2.1:具体修改建议 + 可自动执行修改 + 修改后重新测试
  • 🔒 强制用户确认:不会再出现"打分就直接过去"的情况

v0.5.0 重大架构升级

引入 Subagent 模式,实现上下文隔离:

  • 🔄 12 个执行步骤改为独立 Subagent,每个任务独立上下文
  • 📁 信息通过文件传递,不依赖对话上下文,避免 Token 累积
  • 🎯 工作流导演 Skill 显式调用 Subagent,保持用户交互能力
  • 💾 每阶段产物自动落盘,支持断点续写

核心特点

  • Subagent 架构:12 个独立 Subagent 实现上下文隔离,节省 Token
  • 协作工作流:10阶段深度创作模式,包含选题、调研、审稿完整流程
  • 标题设计师 v2.0:15种爆款标题公式(6大类)+ 5个候选 ✨ v0.5.1 New
  • 反AI味道:自动去除小标题病、排比上瘾、格式洁癖等AI典型特征
  • 风格建模 v3.1:支持公众号链接一键提取、多篇批量建模、增量更新风格库
  • 选题生成器:不知道写什么?AI 基于热点、个人优势和竞品分析智能推荐选题
  • 自动素材归档:提取的文章自动保存为本地 Markdown,构建个人知识库
  • 强制模式选择:轻量模式(快速产出)vs 协作模式(深度创作)
  • 素材调研:自动搜集真实数据,新增爆款拆解与痛点验证
  • 字数精准控制:通过外部工具统计,误差控制在±20%以内
  • 发布前评审 v2.0:发布前5问 + 红队7项 + 具体修改建议 ✨ v0.5.1 New
  • 读者模拟 v3.0:心理弹幕 + 真话吐槽 + 朋友圈现场直播 ✨ v0.6.0 New
  • Humanizer:深度去AI味 + 注入灵魂(观点/节奏/细节) ✨ v0.6.0 New
  • 主编审稿 v2.2:12项AI味道量化检测
  • 版本管理:自动保存初稿、修订稿、最终稿,可追溯每次修改

📚 什么是 Claude Code Skills 和 Subagents?

Skills 与 Subagents 的区别

| 特性 | Skills | Subagents | |------|--------|-----------| | 触发方式 | 语义匹配(自动) | 显式调用(手动) | | 上下文 | 共享主对话 | 独立隔离 | | 适用场景 | 需要自动识别意图 | 需要隔离执行的任务 | | Token 消耗 | 会累积 | 每个任务独立 |

本项目的架构(v0.5.0)

本项目采用 Skills + Subagents 混合架构

.claude/
├── skills/                     # 语义触发(3个)
│   ├── 工作流导演/             # ⭐ 核心调度器(调用所有 Subagent)
│   ├── 公众号文章获取/         # 独立工具(检测到URL自动触发)
│   └── 风格建模/               # 独立工具("学习这个风格"触发)
│
└── agents/                     # 显式调用,上下文隔离(12个)
    │
    ├── ── Stage 0: 选题阶段 ──
    ├── topic-generator.md      # 选题生成器
    ├── topic-research.md       # 选题调研
    │
    ├── ── Stage 1-5: 准备阶段 ──
    ├── writing-clarifier.md    # 澄清需求
    ├── research-expert.md      # 调研资料
    ├── outline-architect.md    # 大纲设计
    ├── empathy-designer.md     # 共情点设计
    ├── concretizer.md          # 具象化专家
    ├── title-designer.md       # 标题设计师
    │
    ├── ── Stage 6: 写作阶段 ──
    ├── writing-executor.md     # 写作执行
    │
    ├── ── Stage 7-9: 审稿阶段 ──
        ├── editor-review.md        # 主编审稿
        ├── pre-publish-review.md   # 发布前评审
        ├── toutiao-reader-test.md  # 读者模拟直播
        └── humanizer.md            # 去AI味专家 ✨ New

工作流程示意

用户请求 → [工作流导演 Skill]
    │
    ├──→ "使用 writing-clarifier 子代理..." → 输出 01_theme.md
    │
    ├──→ "使用 research-expert 子代理..." → 输出 02_cases.md
    │
    ├──→ "使用 outline-architect 子代理..." → 输出 03_outline.md
    │
    ├──→ ... → 最终产出 draft_final.md
    │
    └──→ "使用 humanizer 子代理..." → 最终注入灵魂 ✨ New

每个 Subagent:

  • ✅ 干净的上下文,从 0 开始
  • ✅ 必须从文件读取前序信息
  • ✅ 只返回摘要给主导演,不传递完整文本
  • ✅ 独立隔离,避免 Token 累积

Skills 自动加载机制

重要说明:

  1. 克隆项目后,Skills 已经在项目目录里了

    • 项目文件结构:writing-agent/.claude/skills/(包含 13 个 Skills)
    • 这些 Skills 是项目的一部分,随项目一起下载
  2. 必须在项目目录中启动 Claude Code

    cd writing-agent # 先进入项目目录 claude # 再启动 Claude Code

    ⚠️ 关键:Claude Code 只会加载当前目录下的 .claude/skills/

    • ✅ 正确:在 writing-agent/ 目录中启动 → Skills 自动加载
    • ❌ 错误:在其他目录启动 → Skills 不会被加载

Claude Code 的 Skills 加载规则:

  1. 全局 Skills 目录~/.claude/skills/(所有项目都能用)
  2. 项目 Skills 目录项目根目录/.claude/skills/(仅当前项目可用)

本项目采用"项目级 Skills",这意味着:

  • ✅ 克隆项目后,Skills 已经在项目目录中(无需手动复制)
  • ✅ 在项目目录中启动 Claude Code,Skills 自动可用
  • ✅ 不会污染你的全局 Skills 目录
  • ✅ 多个项目的 Skills 互不干扰

如果你想让这些 Skills 在所有项目中都能用:

Windows (PowerShell):

xcopy /E /I ".claude\skills" "$env:USERPROFILE\.claude\skills"

Linux/macOS:

cp -r .claude/skills/* ~/.claude/skills/

📦 快速开始

前置要求

方式一:使用 Claude 官方模型

方式二:使用国产大模型(推荐,更经济)

本项目支持通过 Anthropic API 兼容接口接入多种国产大模型:

| 模型 | 推荐指数 | 成本 | 获取 API Key | 官方文档 | |------|---------|------|-------------|---------| | DeepSeek-V3 | ⭐⭐⭐⭐⭐ | 极低 | DeepSeek 平台 | 接入文档 | | 智谱 GLM | ⭐⭐⭐⭐ | 中等 | 智谱开放平台 | 接入文档 | | MiniMax | ⭐⭐⭐⭐ | 中等 | MiniMax 平台 | 接入文档 |

本项目所有测试均基于 DeepSeek-V3 模型完成。 一篇 2000 字文章成本约 ¥0.03,性价比极高。

安装步骤(新手友好版)

本指南以 Windows 系统为主,同时提供 Linux/macOS 的对应说明。


步骤 1:安装 Node.js 环境

Claude Code 需要 Node.js 18 或更高版本才能运行。

方法一:官网下载(推荐)

  1. 打开浏览器访问 https://nodejs.org/
  2. 点击 "LTS" 版本进行下载(长期支持版本,版本号需 ≥ 18)
  3. 下载完成后双击 .msi 文件
  4. 按照安装向导完成安装,保持默认设置即可
  5. 安装完成后,打开 PowerShell(推荐)或 CMD,输入以下命令验证:
    node --version npm --version
    如果显示版本号(如 v20.x.x10.x.x),说明安装成功!

方法二:使用包管理器

如果你安装了 Chocolatey 或 Scoop,可以使用命令行安装:

# 使用 Chocolatey choco install nodejs # 或使用 Scoop scoop install nodejs

Windows 注意事项:

  • ⚠️ 建议使用 PowerShell 而不是 CMD(功能更强大)
  • ⚠️ 如果遇到权限问题,尝试以管理员身份运行 PowerShell
  • ⚠️ 某些杀毒软件可能会误报,需要添加白名单

Ubuntu/Debian:

curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - sudo apt-get install -y nodejs

macOS (使用 Homebrew):

brew install node

验证安装:

node --version npm --version

步骤 2:克隆项目到本地

  1. 打开 PowerShell
  2. 进入你想存放项目的目录,例如:
    cd D:\Projects
  3. 克隆项目:
    git clone https://github.com/dongbeixiaohuo/writing-agent.git cd writing-agent

如果没有安装 Git:

cd ~/Projects # 或你想存放的目录 git clone https://github.com/dongbeixiaohuo/writing-agent.git cd writing-agent

步骤 3:安装 Claude Code

  1. 打开 PowerShell(建议以管理员身份运行)

  2. 运行以下命令全局安装 Claude Code:

    npm install -g @anthropic-ai/claude-code

    如果下载速度慢,可以使用国内镜像:

    npm install -g @anthropic-ai/claude-code --registry=https://registry.npmmirror.com
  3. 验证安装:

    claude --version

    如果显示版本号,说明安装成功!

更新 Claude Code:

claude update
npm install -g @anthropic-ai/claude-code # 验证安装 claude --version

步骤 4:验证 Skills 是否正确加载

在配置 API 之前,先验证项目的 Skills 是否在正确的位置。

  1. 打开 PowerShell
  2. 进入项目目录:
    cd D:\Projects\writing-agent # 替换为你的实际路径
  3. 检查 Skills 目录:
    Get-ChildItem -Path ".claude\skills" -Directory
  4. 预期输出:应该看到 13 个 Skills 目录
    工作流导演
    选题生成器
    选题调研
    澄清写作需求
    风格建模
    调研资料
    大纲架构师
    共情点设计师
    具象化专家
    标题设计师
    写作执行
    主编审稿
    发布前评审
    

如果没有看到这些目录:

  • 检查是否正确克隆了项目(确认使用了 git clone 而不是只下载了部分文件)
  • 确认 .claude 目录没有被意外删除
cd ~/Projects/writing-agent # 替换为你的实际路径 ls -la .claude/skills/

应该看到 13 个 Skills 目录。

✅ 验证通过后,继续下一步配置 API。


步骤 5:配置第三方 API(三种方法任选其一)

本项目支持通过 Anthropic API 兼容接口接入多种第三方模型。以下以通用配置为例。

你需要准备的信息:

  • API_BASE_URL:第三方 API 的基础地址(如 https://api.example.com/v1
  • API_KEY:你的 API 密钥(从第三方平台获取)

这是最稳定的配置方式,配置一次永久生效。

Windows 操作:

  1. 打开文件资源管理器,在地址栏输入:

    %USERPROFILE%\.claude
    

    如果文件夹不存在,手动创建它。

  2. 在该文件夹下创建文件 settings.json(如果已存在则直接编辑)

  3. 用记事本或 VS Code 打开 settings.json,填入以下内容:

    { "env": { "ANTHROPIC_AUTH_TOKEN": "你的API密钥", "ANTHROPIC_BASE_URL": "https://api.example.com/v1", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1" } }
  4. 替换示例值:

    • "你的API密钥" 替换为你从第三方平台获取的实际 API Key
    • "https://api.example.com/v1" 替换为第三方 API 的实际地址
  5. 保存文件

Linux/macOS 操作:

# 创建配置目录(如果不存在) mkdir -p ~/.claude # 编辑配置文件 nano ~/.claude/settings.json

填入相同的 JSON 内容,保存后退出(Ctrl+X → Y → Enter)。

配置文件路径说明:

  • Windows: C:\Users\你的用户名\.claude\settings.json
  • Linux/macOS: ~/.claude/settings.json

这种方法会将配置写入系统环境变量,重启后仍然有效。

在 PowerShell 中运行:

# 设置用户级环境变量(永久生效) [System.Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "https://api.example.com/v1", [System.EnvironmentVariableTarget]::User) [System.Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN"
五维分析
清晰度8/10
创新性8/10
实用性9/10
完整性8/10
可维护性7/10
优缺点分析

优点

  • 支持多种AI模型
  • 全面的写作工作流
  • 文章生成成本低

缺点

  • 需要设置外部API
  • 新用户可能有学习曲线
  • 依赖第三方服务

相关技能

novel-writer-skills

A
toolCo-Pilot / 辅助式
86/ 100

“这个工具就像一个永不休息的写作教练——只是别指望它为你写小说!”

screen-creative-skills

A
toolCo-Pilot / 辅助式
86/ 100

“看起来很能打,但别让配置把人劝退。”

payload

A
toolCo-Pilot / 辅助式
86/ 100

“Payload 的架构可能暴露出依赖漏洞和潜在的 CSRF 攻击等风险。定期更新和使用安全编码实践可以减轻这些风险。”

免责声明:本内容来源于 GitHub 开源项目,仅供展示和评分分析使用。

版权归原作者所有 dongbeixiaohuo.