extension/skills/learned/article_publisher/SKILL.md
生成长文或图文发布稿,也支持直接基于本地 md/txt 素材写作;可自动搜索资料、生成配图,并支持多渠道发布,当前已支持微信公众号和小红书发布通道。支持按阶段(search/write/illustrate/publish)单独执行或全流程编排。
npx skillsauth add glwlg/x-bot article_publisherInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
这是长文写作与多渠道发布 skill。入口固定是 scripts/execute.py;搜索阶段内部复用 web_search,正文抓取继续走 fetch_webpage_content,不要在外部手工拆成多个 skill。
内部拆分为 4 个可组合阶段:
[search] ──research.json──► [write] ──article.json──► [illustrate] ──article_with_images.json──► [publish]
目录结构:
scripts/
├── execute.py # 编排器 + CLI 入口
├── stages/
│ ├── __init__.py # StageResult 数据类
│ ├── search.py # 搜索阶段
│ ├── write.py # 写作阶段
│ ├── illustrate.py # 配图阶段
│ └── publish.py # 发布阶段
└── utils/
├── __init__.py # ArticleData、JSON 解析、通用工具
├── wechat.py # WeChatPublisher 类
└── xiaohongshu.py # 小红书发布逻辑
python scripts/execute.py "OpenAI 最新模型发布"python scripts/execute.py "DeepSeek 新进展" --publishpython scripts/execute.py "AI 应用观察" --publish --wechat-account 主号python scripts/execute.py "AI 工作流" --publish-channel xiaohongshupython scripts/execute.py "AI 工作流" --publish --publish-channel wechat --publish-channel xiaohongshupython scripts/execute.py --source-path /abs/path/to/video_text.md "基于素材写一篇教程"python scripts/execute.py "OpenAI" --stage searchpython scripts/execute.py --stage write --source research.jsonpython scripts/execute.py --stage illustrate --source article.jsonpython scripts/execute.py --stage publish --source article_with_images.json --publish-channel wechatpython scripts/execute.py "OpenAI 最新模型发布" --raw-jsonctx.run_skill("web_search", {...});查询词应从用户指令里提炼主题,必要时附带新闻分类、时间范围和排除对象,不要把整段长指令原样塞进搜索词。source_path/source_paths 时,不进行搜索,也不抓网页;直接基于本地 md/txt 素材写作,但仍然生成配图。publish=true 且未显式指定渠道时,默认按 wechat 兼容旧行为。credential_manager 配置 wechat_official_account 的 app_id 与 app_secret;同一用户下可保存多条公众号凭据。wechat_account 时,按别名或凭据 ID 选择对应公众号;未指定时优先使用默认项,没有默认项则回退第一条公众号凭据。credential_manager 配置发布凭据。当前小红书发布直接走本地 opencli xiaohongshu publish。opencli 已安装且在 PATH 中,opencli xiaohongshu publish --help 可执行,并且 opencli doctor --sessions 显示 bridge 已连接且存在可用的小红书会话。wechat_official_account 支持统一配置 author=;文章作者优先使用可用发布账户里的这个值,否则回退到文章自身的 author。封面图默认生成无水印公众号手绘封面,正文配图默认生成无水印中文信息图。bash 让 bot 执行 CLI,优先追加 --raw-json;CLI 会用 tool_result=... 输出最终结构化结果,避免把进度文本误当成 shell 错误。--stage 参数单独执行某个阶段,中间产物通过 JSON 文件传递,支持断点续跑。仅对 prefer_news=true / same_day_only=true 的新闻类请求生效;非新闻类与本地素材写作流程保持原行为。
search 阶段必须输出结构化校验字段(news_validation),至少包含:has_enough_news(是否找到足够可写新闻)candidate_source_count(候选来源数量)suspected_same_day(是否疑似同日)recommend_reject(是否建议拒稿)reject_reasons(拒稿原因)recommend_reject=true 或新闻素材不足,必须在写作前终止全流程,直接返回:今日未发现足够支撑发布的【主题】当天新闻,不建议发文。(或同等明确表达)publish=true 且命中上述拒稿条件,必须阻止 publish,不得进入发布阶段。null,禁止为了凑图生成泛图。article_publisher 的 write 和 illustrate 阶段非常耗时(单次全流程需 2-5 分钟),且包含大量内容的结构化输出。bash,这极易导致大模型 API 超时卡死(Timeout/Hang)或受到超长上下文截断限制!spawn_subagent 工具,将每一篇文章的生成任务分配给独立的子智能体(subagent)去并发执行。例如:为 part1, part2, part3 分别派生 3 个子智能体,赋予它们相关的工具权限让他们独立去执行对应文件的 execute.py 并等待其完成。python skills/builtin/credential_manager/scripts/execute.py add wechat_official_account --data 'app_id=xxx app_secret=yyy author=炜煜'opencli xiaohongshu publish --helpopencli doctor --sessionsxiaohongshu 渠道时,会额外生成 xiaohongshu_note.txt 和 xiaohongshu_note.json 作为发布草稿附件。--output-dir 指定目录,并输出 saved_file=<绝对路径>。{DATA_DIR}/user/skills/article_publisher/articles/{topic_slug}/ 下。tools
**自选股助手**。通过内置股票服务管理当前用户的自选股,并查询实时行情。
tools
管理 RSS 订阅。
tools
简单文本提醒工具。仅用于一次性提醒;重复任务必须转给 scheduler_manager。
documentation
为新闻或热点主题生成长文,也支持直接基于本地 md/txt 素材写作;可自动搜索资料、生成配图,并支持多渠道发布,当前已支持微信公众号和小红书发布通道。