WorkNex · 自媒体全渠道内容 OS(公众号优先)
一句话完成选题、素材、写作和审稿——配图、排版与发布随时按需追加
选题 · 写作 · 编辑审稿 · 可选 AI 配图 · 18 主题排版 · 草稿箱推送 · 多平台改写 · 越用越像你
一个给 AI Agent(Claude Code / Codex / OpenClaw / WorkBuddy 等)用的自媒体内容生产系统。你说「写一篇公众号文章」,它会抓热点、评选题、搜真实素材、按你的人格风格出稿并完成编辑审稿。正文完成后,你可以直接交付,也可以再单独要求配图、排版预览或推送草稿箱。原始正文始终保留;配图会生成独立图片和带图副本。想改就按自己的意思改,再让它「学习我的修改」,下一篇会更像你。
WorkNex 以 wewrite(MIT)为代码基座,融合自有多渠道经验:channels/ 渠道抽象面向全渠道覆盖(本期实现公众号,小红书 / 朋友圈 / 口播与短视频脚本在路线图中),发布约束与降级路径收敛到渠道定义里。
"写一篇公众号文章"
→ 抓热点 → 选题评分 → 文章任务书 → 主张与来源清单
→ 安全内容增强 → 初稿(真实信息锚定 + 风格注入)
→ 编辑判断 → 必要时改稿并复审 → 交付成稿
完成后按需追加:
├─ 配封面 / 完整配图 → 图片 + 带图副本
├─ 排版预览 → 微信兼容 HTML
└─ 推到草稿箱 → 明确授权且条件满足后发布
✨ 核心特性
- 一句话完成正文:选题、素材、写作和审稿连续完成;说「交互模式」可在选题或框架处暂停确认。
- 后续动作真正独立:配图、排版、发布都能在文章完成后单独执行;排版和发布不会偷偷触发生图。
- 模块化,one step at a time:主入口 + 10 个独立 skill,只要选题说
/worknex-topic、只要封面说/worknex-visual、做营销海报说/worknex-poster,缺前置会自己补齐。 - 写出能直接用的文章:先明确读者问题、核心判断与证据边界,再写初稿;审稿不通过就直接改稿并复审,禁止编造作者经历。
- 7 套写作人格:像选主题一样选文风,从深夜老友到冷静分析师,一行配置切换。
- 越用越像你:编辑飞轮(学习你的修改)+ 范文风格库(SICO 式 few-shot)+ 阅读数据回填反哺选题。
- 18 主题排版引擎:样式全内联、微信兼容修复、暗黑模式;
learn-theme还能从任意公众号文章学习一套新主题。 - 一稿多发:小红书图文 / 抖音口播 / 朋友圈短帖 / 口播稿 / 短视频分镜脚本,内容级真改,检查编辑质量和源稿相似度,支持五旋钮(钩子/情绪/节奏/收尾/口语化)一篇一调。
- 渠道抽象:
channels/<平台>/定义内容形态、发布约束与降级路径,全渠道扩展不改 skill prompt。
✅ 适合 / ❌ 不适合
✅ 适合:公众号创作者的日常出稿(热点文/干货文/故事文/测评文)· 只想要某个环节的人(选题灵感、封面配图、质量自检、排版发布)· 想把已有文章一稿多发到小红书/抖音 · 想让 AI 逐渐学会自己文风的长期使用者。
❌ 不适合:普通网页/落地页排版(用前端 skill)· PPT/邮件/blog · 非公众号生态的 SEO · 追求组件级设计定制的纯排版需求(可以只用 worknex-publish,但更推荐专门的排版 skill)。
🚀 快速开始
git clone <本仓库地址> ~/worknex_cli
cd ~/worknex_cli && bash install.sh
install.sh 做三件事:装 worknex CLI(uv/pipx,无则回退 venv)、把 10 个 skill 链接到 ~/.claude/skills/ 与 ~/.agents/skills/(检测到 OpenClaw / Codex 时一并链接其 skills 目录)、创建 ~/.worknex/ 状态目录。
也可以让 AI 自己装。对任意 Agent 说一句:
请帮我安装 ~/worknex_cli 这个 skill(跑仓库里的 install.sh)
装好后直接开聊:
你:写一篇公众号文章 → 审过的本地成稿(默认不生图、不发布)
你:完整制作一篇公众号文章 → 成稿 + 配图 + 本地预览
你:推到公众号草稿箱 → 明确授权后才发布
你:今天写什么 → 只要选题
你:检查一下 → 生成档案 + 质量自检
你:改写成小红书 → 多平台改写
你:学习我的修改 → 编辑飞轮
你:看看有什么主题 / 换成 sspai 主题 → 主题画廊 / 重排版
你:做一个小绿书 → 图片帖(横滑轮播)
你:更新 → 升级到最新版
OpenClaw / Codex / WorkBuddy(支持 folder-per-skill,无需构建转换)
OpenClaw / Codex:install.sh 检测到 ~/.openclaw / ~/.codex 时已自动链接。手动装:
for s in ~/worknex_cli/skills/worknex*; do ln -sfn "$s" ~/.openclaw/skills/$(basename "$s"); done
# Codex 同理,目标换成 ~/.codex/skills/
各家均需 CLI 在 PATH:cd ~/worknex_cli && uv tool install .(或 pipx install .)。
配置(可选)
cp config.example.yaml ~/.worknex/config.yaml
填入微信公众号 appid/secret(推送需要)和图片 API key(生图需要)。写作不需要这些配置;排版可以直接生成本地 HTML,请求配图但没有图片服务时会输出图片提示词。配了 WORKNEX_WRITER_API_KEY 则正文可交给独立写作模型;实际费用以你使用的服务为准。
多公众号矩阵(可选)
两个及以上公众号时,在 ~/.worknex/config.yaml 启用 wechat.accounts(见 config.example.yaml 末尾示例),
worknex publish / calendar / comments / stats 全部支持 --account <键> 路由,
default_account 指定默认号。单号使用完全不受影响。
⚠️ 自动推草稿箱需要已认证公众号(2025-07 起个人主体/未认证账号无草稿 API 权限)+ 公网 IP 白名单。无权限时一切降级为「本地 HTML 预览 + 人工粘贴」,功能不缺失。
🧩 模块速查
管道的每一段都是独立 skill。每篇文章保存在 ~/.worknex/runs/<任务编号>/,进度可恢复,
多篇同时进行也不会互相覆盖。上午选完题,下午说“继续上次”就能接上。
| 你说 | 激活 | 产出 |
|---|---|---|
| 今天写什么 / 找几个选题 | worknex-topic |
10 个评分排序的选题 |
| 就这个选题写一篇 | worknex-write |
文章任务书 + 主张与来源清单 + 初稿 |
| 检查一下 / 这篇怎么样 | worknex-review |
事实核对 + 必要改稿 + 通过后生成成稿与编辑报告 |
| 给这篇配个封面 | worknex-visual |
一张封面图;不改原始正文 |
| 给这篇完整配图 | worknex-visual |
封面 + 必要内文图 + 带图副本 |
| 推到草稿箱 / 换个主题 | worknex-publish |
条件满足时生成微信草稿,否则保留本地 HTML |
| 改写成小红书 / 抖音版 | worknex-rewrite |
内容级真改的平台版本 |
| 学习我的修改 / 导入范文 | worknex-learn |
playbook 规则 / 风格库 |
| 看看文章数据 | worknex-stats |
阅读数据回填 + 选题建议 |
| 重新设置风格 | worknex-style |
style.yaml |
🏗 架构:三层解耦
设计原则一句话:prompt 负责判断,Python 负责确定性。
| 层 | 位置 | 内容 |
|---|---|---|
| Prompt | skills/(10 个自包含 skill) |
选题、事实、观点、实用性和表达判断,每个 skill 自带 references/ |
| Runtime | worknex CLI(pip 包) |
打分、转 HTML、调微信 API、生图、成本路由——确定性操作 |
| State | ~/.worknex/(WORKNEX_HOME 可覆盖) |
凭证、风格、历史、学习产物、输出文件——全部在仓库外 |
skill 目录复制到哪都能用;CLI 与 skill 独立安装升级;换机器只需带走 ~/.worknex/。
🔩 核心能力
| 能力 | 说明 | 所在 |
|---|---|---|
| 热点抓取 | 微博 + 头条 + 百度实时热搜 | worknex hotspots |
| 热点增速 | 与上次运行快照对比:排名变化 / 增速排序 / 上升期标注(新进榜、跃升 ≥10 位);标题按 raw 精确 → 规范化唯一命中两级匹配(去 emoji/话题标签/状态后缀/标点,多命中标 ambiguous 不计增速),旧快照兼容;首跑无基线只存快照如实说明 | worknex hotspots --velocity |
| 高频需求 | 搜狗微信搜索垂类近期文章,用同题密度观察内容需求,不虚构阅读量;--engine wechat-node 走外部采集器后备通道(不可用降级回搜狗并提示) |
worknex search-articles |
| SEO 评分 | 百度 + 360 搜索量化评分 | worknex seo |
| 选题生成 | 10 选题 × 3 维度评分 + 历史去重 | worknex-topic |
| 素材采集 | WebSearch 核对数据/引述/案例,并为每篇文章保存来源账本 | worknex-write / worknex sources |
| 框架生成 | 7 套写作骨架(痛点/故事/清单/对比/热点解读/纯观点/复盘) | worknex-write |
| 文章任务书 | 写前明确目标读者、问题、交付、核心判断、反方和边界 | worknex-write |
| 主张与证据 | 区分事实、推断、意见与用户经历,逐项关联来源 | worknex-write / worknex sources |
| 内容增强 | 按框架补足可支持的新角度、行动条件、真实细节或决策标准 | worknex-write |
| 编辑成稿 | 准确、观点、有用、合声、好读五项判断;不通过就直接改稿并复审 | worknex-review / worknex content-eval |
| 风险提示 | 11 项机械检查,定位套话、碎句、重复节奏等;不判断作者身份 | worknex score |
| SEO 优化 | 标题策略 / 摘要 / 关键词 / 标签 | worknex-review |
| 视觉 AI | 按任务设置生成封面/必要配图,生成前检查数量和预估费用 | worknex image-gen |
| 海报封面 | 营销文案→信息层级/钩子/BASE-E2 提示词(worknex-poster skill 规划)→单张海报/社媒封面成图;内置 21 个编号风格 × 10 个营销版式,worknex poster gallery 本地离线浏览(可选加载本地 benchmark 样张,无样张时标注结构示意),可复制参数/查看 Recipe;--candidates 3 零费用输出稳健转化/品牌叙事/强抓眼三条可解释配方,--palette 可覆盖风格默认配色;--style/--layout 仍支持 auto 与 random,平台比例与费用闸确定性处理;--reference 参考图垫图/带图迭代;worknex poster-compose 把核对过的中文文案/Logo/照片确定性叠加到海报背景(零费用本地合成) |
worknex-poster / worknex poster / worknex poster-compose |
| 排版发布 | 18+ 主题 + 微信兼容修复 + 暗黑模式 | worknex preview/publish |
| 多平台改写 | 一稿 → 小红书/抖音,内容级真改 + 原创度门 | worknex-rewrite |
| 效果复盘 | 四通道回填阅读数据反哺选题:API(默认,48001 无权限时提示第二通道)/ 后台网页 bsk(--channel web,未登录引导扫码、改版失败回执不编数)/ 手工导出导入(--import,容错表头,xlsx 先转 csv)/ 跨平台创作中心读取(--channel read [--platform x],bsk 按渠道 stats_read recipe 读数据页 → 快照,校准前 fail-closed);--advice 三级归因复盘建议(打开率→完读率→互动涨粉,阈值常量);--all 跨平台数据聚合(~/.worknex/stats-platforms/ 手工文件与 read 快照混读) |
worknex stats |
| 内容日历 | 本地发布计划 + 草稿箱 + 已发布聚合视图 | worknex calendar |
| 留言管理 | 拉评论/精选/官方回复(Agent 起草、你确认) | worknex comments |
| 选题池 | 灵感随手入库、评分、发酵跟踪 | worknex idea |
| GEO 优化 | 被 AI 搜索引用的检查项(问答式标题/可引用金句) | worknex-review |
| GEO 量化评分 | AI 搜索可引用性 0-100 分:问答式标题/开头直答/实体明确/金句密度/FAQ 块/数据口径六项(对齐 worknex-review 的 geo-rules 六检查项)+ 低分项确定性修改建议;--emit-faq 抽 FAQ markdown 块,<60 退出码 1 |
worknex geo-score |
| AI 引用追踪 | bsk 向豆包/Kimi/DeepSeek 提问并检测登记文章是否被引用,记录引用账本;bsk 缺失降级退出码 3 | worknex geo-track |
| 范文风格库 | 从文章提取结构与节奏;第三方内容不提供观点和个人经历 | worknex exemplar |
| 风格飞轮 | 单次修改只参考,重复出现或明确确认后才成为同范围稳定规则 | worknex learn-edits |
| 排版学习 | 从任意公众号文章 URL 提取排版主题 | worknex learn-theme |
| 文章采集 | 从公众号 URL 提取正文为 Markdown,可导入范文库 | worknex fetch-article |
| 素材采集 | 真实工作过程 → 素材系统:截图/终端图/飞书写入全部登记 Asset(哈希/来源/脱敏状态),写云端需确认,写入回执可校验(需 bsk) | worknex collect |
| 多渠道发布 | 终稿一键发 9 平台:公众号(API 草稿箱)+ 小红书/知乎/今日头条/掘金/CSDN(浏览器配方)+ 抖音/视频号/快手(视频);失败隔离,--dry-run 先看计划;发布前自动跑模板化快检(风险 ≥40 要求显式 --yes,--skip-doctor 可跳过) |
worknex publish-all |
| 渠道管理 | 渠道清单、登录态活体探测(--check)、人工扫码登录引导 |
worknex channels |
| 模板化体检 | 跨篇同质化检测:开头/骨架/口头禅/收尾/节奏/标题六维度统计 + 风险分,对策微信「非真人自动化创作」条款;高危判定(退出码 1)要求样本 ≥5 篇且 ≥2 个维度触发,小样本封顶警告档 | worknex doctor-content |
| 爆款拆解 | 公开文章 → 六项确定性拆解:标题模式 / 开头钩子 / 段落节奏 / 收尾方式 / 句首高频词 / 连接词频次;正文质量门拒收过短/验证页样本,--save 入范文库(同 URL 幂等跳过),采集失败如实报不伪装正文 |
worknex deconstruct |
✍️ 写作人格
像选排版主题一样选写作风格。在 ~/.worknex/style.yaml 里一行配置:
writing_persona: "midnight-friend"
| 人格 | 适合 | 风格特点 |
|---|---|---|
midnight-friend |
个人号/自媒体 | 口语化、保留自我质疑;无个人材料时不用虚构故事开场 |
warm-editor |
生活/文化/情感 | 温暖叙事、故事嵌套数据、柔和情绪弧 |
industry-observer |
行业媒体/分析 | 中性分析、数据先行、稳中带刺 |
sharp-journalist |
新闻/评论 | 犀利简洁、数据驱动、强观点 |
cold-analyst |
财经/投研 | 冷静克制、逻辑链条、风险意识强 |
humor-storyteller |
泛科技娱乐/热点辣评 | 包袱密集、荒诞解构、笑完有余味 |
tech-coder |
技术教程/开发者社区 | 代码先行、注释式行文、版本敏感 |
每个人格定义语气、数据呈现和节奏偏好,但不能覆盖事实和个人材料边界。只有用户在当前任务
明确提供的经历才能写成作者亲历。详见 skills/worknex-write/personas/;自定义人格放
~/.worknex/personas/。
📝 内容质量
WorkNex 的目标是写出准确、有观点、对读者有用的文章。核心机制:
- 先定义再写:任务书明确目标读者、真正问题、核心判断、新增价值、反方和适用边界
- 主张对证据:事实、推断、意见和用户经历分别记录;无法支持的具体主张不进入初稿
- 安全增强:热点文找有证据的新角度,干货文补行动条件,故事文只用真实材料,对比文给决策条件
- 编辑门槛:按准确、观点、有用、合声、好读判断;未通过就直接修改并复审,只有通过才生成成稿
- 谨慎学习:范文只校准结构与节奏;单次人工修改不自动升级为所有文章的硬规则
- 场景库:热点解读/痛点干货/故事案例/对比测评/复盘经验五个写作场景,各带钩子路线与语气规范
- 去 AI 味:score 检测项对应定点改写手法(句长交错/段落粉碎/情感微扰),只动表达不动事实
每篇任务保留 brief.yaml、claims.yaml、draft.md、article.md 和
review-report.json,方便追溯“为什么这样写”和初稿到成稿改了多少。完整标准见
docs/content-quality-rubric.md。
🎨 排版引擎
worknex gallery # 浏览器内预览所有主题(并排对比 + 一键复制)
worknex themes # 列出主题名称
| 类别 | 主题 |
|---|---|
| 通用 | professional-clean(默认)、minimal、newspaper |
| 科技 | tech-modern、bytedance、github |
| 文艺 | warm-editorial、sspai、ink、elegant-rose |
| 商务 | bold-navy、minimal-gold、bold-green |
| 风格 | bauhaus、focus-red、midnight |
| 专属 | impeccable、lobster-notes |
所有主题均支持微信暗黑模式。全部 18 个主题:装好后 worknex gallery 在浏览器里并排对比 + 一键复制。worknex learn-theme <url> 学到的新主题存在 ~/.worknex/themes/,加载时优先于内置主题。
另有四个排版细节自动处理:产物合规校验(worknex validate,preview/publish 自动跑,拦截会被微信过滤的写法)、粘贴加固(preview 产物自动做 <span leaf> 包裹,复制进编辑器不掉样式;API 发布路径无需)、GIF 角标(动图自动加右上角标签)、H2 章节编号(主题 YAML 设 section_numbering: true 启用)。
微信兼容性自动修复(converter 内置兜底)
| 问题 | 自动修复 |
|---|---|
| 外链被屏蔽 | 转为上标编号脚注 + 文末参考链接 |
| 中英混排无间距 | CJK-Latin 自动加空格 |
| 加粗标点渲染异常 | 标点移到 </strong> 外 |
| 原生列表不稳定 | <ul>/<ol> 转样式化 <section> |
| 暗黑模式颜色反转 | 注入 data-darkmode-* 属性 |
<style> 被剥离 |
所有 CSS 内联注入 |
容器语法(Markdown 里直接写的富组件)
:::dialogue
你好,请问这个功能怎么用?
> 很简单,直接在 Markdown 里写就行。
:::
:::timeline
**2024 Q1** 立项启动
**2024 Q3** MVP 上线
:::
:::callout tip
提示框,支持 tip / warning / info / danger。
:::
:::quote
好的排版不是让读者注意到设计,而是让读者忘记设计。
:::
另有 :::pullquote(金句居中)、:::label / :::label pill(小标签标题:竖条/药丸)、:::steps(编号步骤卡)、:::highlight(琥珀高亮框)、:::summary(青色总结框)。
🔧 CLI 独立使用
worknex CLI 不依赖任何 Agent,可以单独当排版/发布/评分工具用:
worknex preview article.md --theme sspai # Markdown → 微信 HTML 预览
worknex publish article.md --cover cover.png --title "标题" # 推送草稿箱
worknex image-post p1.jpg p2.jpg -t "周末探店" # 小绿书/图片帖(横滑轮播)
worknex score article.md --verbose # 写作质量评分(11 项检测)
worknex doctor-content --runs 10 --json # 跨篇模板化体检(缺省扫最近 runs 成稿;高危判定=样本≥5且≥2维度触发,退出码 1;小样本封顶警告)
worknex content-eval --draft draft.md --final article.md --assessment assessment.yaml --json # 编辑结果
worknex hotspots --limit 20 # 抓热点
worknex hotspots --velocity # 热点增速:与上次快照对比,标注上升期(标题规范化匹配,首跑只存基线)
worknex search-articles "AI编程" -n 15 -t 2 # 搜公众号文章(-t 时间过滤,-r 解析直链)
worknex search-articles "AI编程" --engine wechat-node # 外部采集器通道(本机不可用降级回搜狗并提示)
worknex deconstruct <url> --save # 爆款结构拆解(六项确定性),--save 入范文库(同 URL 幂等跳过)
worknex geo-score article.md --json # AI 搜索可引用性评分(<60 退出码 1)
worknex geo-score --emit-faq article.md # 抽取 FAQ markdown 块(粘贴进文尾)
worknex geo-track --register article.md # 登记本号文章标题供引用检测
worknex geo-track "问题" --engine doubao # AI 引擎引用追踪(需 bsk,缺失退出码 3)
worknex seo --json "AI大模型" "科技股" # SEO 分析
worknex stats # API 拉阅读数据回填 history(48001 无权限时提示第二通道)
worknex stats --import 后台导出.csv # 通道 B:后台导出表格导入(容错表头;xlsx 先转 csv)
worknex stats --channel web # 通道 A:bsk 开公众号后台读数据(未登录引导扫码,无 bsk 退出码 3)
worknex stats --channel read # 通道 D:bsk 逐平台读创作中心 → 快照(recipe 校准前 fail-closed)
worknex stats --channel read --platform xiaohongshu # 同上,只跑指定平台
worknex stats --advice --json # 三级归因复盘:打开率→完读率→互动涨粉(阈值常量可解释)
worknex stats --all --json # 跨平台数据聚合表(~/.worknex/stats-platforms/ 手工文件与 read 快照混读)
worknex exemplar article.md / --list # 范文风格库
worknex fetch-article <url> -o out.md # 公众号文章 → Markdown
worknex learn-theme <url> --name my-style # 学排版主题
worknex validate article.html # 微信兼容性校验
worknex collect shoot --url <url> --out shot.png # 网页截图(可 --scroll-to 定位)
worknex collect term --script term.json --out t.png # 终端风格视觉图
worknex collect feishu-write --url <wiki> --file 素材.md --dry-run # 只看写入计划
worknex collect feishu-write --url <wiki> --file 素材.md --yes --check 关键词1,关键词2 # 写入+校验(幂等短码防重复)
worknex publish-all --file 终稿.md --title "标题" --platforms wechat,xhs,zhihu,toutiao,juejin,csdn \
--images cover.png,shot1.png --yes # 多平台发布编排,9 渠道可选(--dry-run 先看计划;发布前自动模板化快检,风险 ≥40 要求显式 --yes,--skip-doctor 跳过)
worknex channels list # 渠道清单:驱动/形态/真机验证状态
worknex channels status --check # 各平台登录态活体探测(bsk 开窗)
worknex channels login douyin # 弹窗人工登录(扫码),成功后验证发布页
worknex diagnose # 环境 + 配置自检
worknex run start/list/resume/show/finish/permission # 独立文章任务、恢复与发布授权
worknex sources add/list # 保存和查看事实来源
worknex calendar # 内容日历:本地计划+草稿箱+已发布聚合
worknex calendar add --title "选题" --date 2026-09-10 # 添加发布计划
worknex comments <msg_id> # 留言管理:拉评论/精选/回复/删除
worknex idea add "灵感" --score 80 # 选题池:灵感入库/评分/跟踪
worknex poster --prompt-file prompt.md --platform xhs --slug 招生 --prompt-only --json # 海报零成本核对(比例/尺寸/费用,不生成)
worknex poster gallery # 本地离线浏览海报风格/版式,复制参数与查看 Recipe
worknex poster --prompt-file brief.md --platform xhs --candidates 3 --json # 零费用输出三种方向配方
python3 scripts/generate_poster_gallery_samples.py --benchmark knowledge # 只预检费用,不生图
python3 scripts/generate_poster_gallery_samples.py --benchmark knowledge --max-total-cost <上限> --yes # 预算内生成本地图鉴样张
worknex poster --prompt-file prompt.md --platform xhs --slug 招生 --max-cost 0.2 # 出单张海报/社媒封面(规划由 worknex-poster skill 完成)
worknex poster --prompt-file prompt.md --reference good基准.png --max-cost 0.2 # 垫图/带图迭代:参考图 + 调整指令 → 新图(images/edits)
worknex poster-compose --background bg.png --spec compose.json --output final.png # 两步法合成:中文文案/Logo 确定性叠加(零费用)
worknex home # 查看状态目录
🔄 工作流程
Step 1 环境检查 + 加载风格(不存在则 Onboard) ← 主入口 worknex
↓
Step 2 热点 + 高频需求 → 历史去重 + 搜索需求 → 选题 ← worknex-topic
↓
Step 3 文章任务书 → 主张与来源 → 安全内容增强 ┐
↓ ├ worknex-write
Step 4 用户风格与有效学习规则 → 初稿 ┘
↓
Step 5 编辑判断 → 必要时改稿并复审 → 成稿与编辑报告 ← worknex-review
↓
Step 6 封存原始正文 → 写入历史 ← 主入口 worknex
正文完成后,可独立执行:
├─ 配封面 / 完整配图 ← worknex-visual
├─ 微信排版与本地预览 ← worknex-publish
└─ 明确授权后推送草稿箱 ← worknex-publish
默认连续完成正文,但“写一篇”只交付本地成稿。“完整制作”是正文、配图和本地预览三个独立
动作的组合快捷方式;“推到草稿箱”才授予发布权限,而且不会自动生图。已完成文章可以继续
配图、排版或发布,原始正文不被覆盖。每篇文章使用独立任务目录并可恢复(契约见
skills/worknex/references/pipeline-state.md)。
📁 目录结构
worknex_cli/
├── skills/ # Prompt 层:11 个自包含 skill(复制即用)
│ ├── worknex/ # 主入口:内容流程编排 + 配图/海报/排版/发布可选路由
│ ├── worknex-style/ # 风格设置 / Onboard(onboard.md、style-template.md、style.example.yaml)
│ ├── worknex-topic/ # 选题(topic-selection.md)
│ ├── worknex-write/ # 任务书 + 主张证据 + 安全增强 + 初稿(personas/ 7 人格…)
│ ├── worknex-review/ # 事实核对 + 改稿复审 + 标题摘要 + 编辑报告
│ ├── worknex-visual/ # 封面 + 必要配图(数量与费用上限)
│ ├── worknex-poster/ # 营销海报/社媒封面:层级/钩子/BASE-E2 提示词 + 出图编排
│ ├── worknex-publish/ # 排版 + 发布 + 主题画廊 + 小绿书(wechat-constraints.md)
│ ├── worknex-learn/ # 学习修改 / 导入范文 / 学排版(learn-edits.md)
│ ├── worknex-stats/ # 文章数据复盘(effect-review.md)
│ └── worknex-rewrite/ # 一源多平台改写(multiplatform-rewrite.md + platforms/ 平台定义)
│
├── channels/ # 渠道抽象:每平台一个目录(channel.yaml + constraints.md)
│ └── wechat/ # 本期实现:公众号的内容形态、发布约束与降级路径
│
├── src/worknex/ # Runtime 层:`worknex` CLI(pip 包)
│ ├── cli.py # 子命令调度器
│ ├── paths.py # 状态目录解析($WORKNEX_HOME → ~/.worknex)
│ ├── commands/ # run / sources / diagnose / score / content-eval / hotspots / search-articles / deconstruct / seo / stats / learn-* / exemplar / fetch-article / llm-write / similarity / build-playbook / collect / poster
│ └── toolkit/ # converter / theme / publisher / wechat_api / image_gen + 18 个内置主题
│
├── pyproject.toml # CLI 打包定义
├── config.example.yaml # API 配置模板
├── scripts/ # 仅开发工具(context_budget 预算门 / gen_star_history 图表)
└── tests/ # 排版、任务流程、skill/README 契约与上下文预算测试
State 层(全部在 ~/.worknex/,不在仓库):config.yaml、style.yaml、history.yaml、playbook.md、current_run、runs/、exemplars/、corpus/、lessons/、output/、themes/、personas/。
🗺 渠道路线图
9 渠道已内置于 worknex publish-all(渠道抽象 src/worknex/channels/,
真机校准档案见 src/worknex/channels/README.md):
| 渠道 | 通道 | 状态 |
|---|---|---|
| 公众号 | 官方 API 草稿箱 | ✅ 全流程闭环 |
| 小红书 | 浏览器配方 | ✅ 真机验证 |
| 知乎 / 今日头条 / 掘金 / CSDN | 浏览器配方 | ✅ 真机验证(2026-09-11) |
| 抖音(图文) | 浏览器配方 | ✅ 真机验证(2026-09-11) |
| 视频号(图文) | 浏览器配方 | ✅ 真机验证(2026-09-11,wujie shadow 模式) |
| 快手 | 浏览器配方 | 待登录后校准 |
浏览器路径均为 prepare/assisted 模式:脚本完成导航/上传/填充,发布按钮
留给人工点击(平台风控红线)。渠道登录态管理用 worknex channels
(status --check 活体探测 / login 弹窗扫码)。
后续按需扩展:百家号、微博等,按 channels/ 抽象接入,skill prompt 不改。
⬆️ 升级
对 Agent 说「更新」,或手动:
cd ~/worknex_cli && git pull && bash install.sh
🤝 致谢与贡献
本项目基于 imraywang/wewrite(MIT)改造扩展,感谢原项目的优秀设计。Issue / PR 欢迎。跑 python3 -m pytest tests/ -q 与 python3 scripts/context_budget.py --budget-tokens 15500 保持绿灯(CI 同款检查)。
📄 License
MIT(继承自 wewrite,见 LICENSE)
Metadata
Release files for worknex 0.0.13
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| worknex-0.0.13.tar.gz | 335.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| worknex-0.0.13-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 623.0 kB
Release files / worknex-0.0.13.tar.gz
| Download URL | worknex-0.0.13.tar.gz |
|---|---|
| Size | 335.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1d111b3665e2b220e97ec200573157dfca2eeb48cd6a256a5862ee6861268998
|
|
BLAKE2b-256 checksum How to use checksums |
90d4c5c5ebe97138d0a81aa2a29d2c9d081cd3c8f5be5befb3ae9ae99add1072
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|
Release files / worknex-0.0.13-py3-none-any.whl
| Download URL | worknex-0.0.13-py3-none-any.whl |
|---|---|
| Size | 287.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a723206acd9c7bbf459d987d00b7d16a22072f5c7929dda476db132bef15c233
|
|
BLAKE2b-256 checksum How to use checksums |
62b52d98bb7b45628083cd899c1a56b4ffe504af34522f41c7a3e1181a1487c3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|