CtrlK
BlogDocsLog inGet started
Tessl Logo

weixin-mp

通过 Limb 体系操作微信公众号:发布文章、上传图片、管理草稿。 Use when: 需要发布内容到微信公众号、查看草稿、检查公众号连接状态。 Not for: 其他平台的发布、纯文本聊天、非公众号相关操作。 Output: 微信公众号操作结果(发布ID、草稿列表、图片URL等)。

79

Quality

100%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

微信公众号发文

通过 Limb 体系三步调用操作微信公众号:

  1. limb_list_available — 发现在线节点
  2. limb_list_tools — 查询工具 schema
  3. limb_invoke_tool — 调用具体工具

使用前检查

先调用 limb_list_available({ capability: "content_publish" }) 确认 weixin-mp 节点在线。 如果节点不在线或不存在,提示用户在 设置 → 插件集成 中启用并配置微信公众号插件。

接口发现

limb_list_available() 返回当前在线节点的 capability、command 和 authLevel;这是可调用命令白名单。 调用 limb_list_tools({ nodeId: "weixin-mp" }) 获取每个工具的参数 schema。 详细参数以本 skill 的"核心能力"说明为准。当前列表中没有的命令不要猜测调用;如果缺少预期命令,提示用户重新启用或同步微信公众号插件。

核心能力

  • 检查连接limb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.check_status" }) 确认公众号是否配置并可连接。

  • Markdown 转 HTMLlimb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.convert_markdown", params: { markdown } }) 将 Markdown 转为微信兼容内联样式 HTML,写入系统临时目录并返回 { filePath }。发文前必须调用。支持 markdownFilePath 替代 markdown 读取本地文件(必须在系统临时目录下,上限 2 MB)。

  • 上传正文图片limb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.upload_image", params: { fileLocation } }) 上传图片到微信 CDN,返回可在文章正文中使用的 { url }fileLocation 支持 HTTP/HTTPS URL 或 OS 临时目录下的本地路径(如 /tmp/photo.png)。本地文件必须在系统临时目录下,其他路径会被拒绝。格式:jpg/png/gif/bmp,上限 10 MB。

  • 上传封面素材limb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.upload_material", params: { fileLocation } }) 上传永久图片素材,返回 { mediaId, url }。用作封面图的 thumbMediaId。同 upload_image,本地路径限系统临时目录,上限 10 MB。

  • 创建草稿limb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.create_draft", params: { title, content, thumbMediaId, author?, digest? } }) 创建草稿箱文章。content 须是微信 HTML(先调 convert_markdown),thumbMediaId 是封面 media_id(先调 upload_material)。支持 contentFilePath 替代 content 传入大段内容(必须在系统临时目录下,上限 2 MB)。

  • 更新草稿limb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.update_draft", params: { mediaId, title?, content?, thumbMediaId?, author?, digest? } }) 更新草稿箱文章,仅传需要修改的字段。支持 contentFilePath 替代 content(同上,限系统临时目录)。

  • 删除草稿limb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.delete_draft", params: { mediaId } }) 删除草稿箱中的指定草稿。

  • 发布草稿limb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.submit_publish", params: { mediaId } }) 将草稿发布。mediaIdcreate_draft 返回的 media_id

  • 查看草稿limb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.list_drafts", params: { offset?, count? } }) 列出草稿箱中的文章及其 media_id。

  • 发布状态limb_invoke_tool({ nodeId: "weixin-mp", command: "weixin_mp.publish_status", params: { publishId } }) 查询发布任务的处理状态和文章链接。

  • 素材管理list_materialget_material_countdelete_material 管理永久素材。

  • 已发布文章list_articlesdelete_article 管理已发布文章。

发文流程(编排示例)

发布一篇 Markdown 文章的标准步骤:

  1. convert_markdown — Markdown → 微信 HTML(返回 filePath)
  2. 正文中的外部图片 → 逐个 upload_image → 替换为微信 CDN URL
  3. upload_material — 上传封面图 → 得到 thumbMediaId
  4. create_draft — 创建草稿(传入 contentFilePath + thumbMediaId)
  5. 可选:submit_publish — 发布草稿

常见错误

  • 忘记先调 convert_markdown 就直接传 Markdown 给 create_draft
  • 文章正文中使用外部图片链接(必须先 upload_image 到微信 CDN)
  • 混淆草稿 media_id 和发布 publishId
  • 使用旧工具名 limb_invoke(已更名为 limb_invoke_tool,需配合 limb_list_tools 查 schema)

限制

  • 微信 HTML 不支持外部 CSS/JS,所有样式内联处理
  • access_token 2h 过期,系统自动刷新,无需手动管理
  • 本地文件限制:所有本地文件路径(fileLocationmarkdownFilePathcontentFilePath)必须在 OS 系统临时目录下(如 /tmp/)。文本文件上限 2 MB,图片文件上限 10 MB。需要上传工作区文件时,先复制到临时目录再传入路径
Repository
zts212653/clowder-ai
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.