yanyan-skill
v0.1.0
Published
YanYan Say Codex skill collection installer.
Readme
yanyan_skill
yanyan_skill 是一组可复用的 Codex skills,用来把常见内容工作流沉淀成可安装、可配置、可迭代的本地助手。当前包含微信公众号排版与草稿上传助手。
当前 Skills
| Skill | 作用 |
| --- | --- |
| yanyan_wechat_upload | 将 Markdown / HTML / 粘贴正文整理成微信公众号兼容 HTML,生成本地预览,并在用户确认后创建或更新公众号图文草稿。 |
安装到 Codex
方式一:npx 安装
可以直接从 GitHub 安装:
npx github:yanyansay/yanyan_skill install yanyan_wechat_upload安装到项目内 .codex/skills/:
npx github:yanyansay/yanyan_skill install yanyan_wechat_upload --target .codex/skills查看仓库内可安装的 skills:
npx github:yanyansay/yanyan_skill list如果未来发布到 npm,命令可以简化为:
npx yanyan-skill install yanyan_wechat_upload方式二:手动复制
把某个 skill 复制到你的 Codex skills 目录:
mkdir -p ~/.codex/skills
cp -R skills/yanyan_wechat_upload ~/.codex/skills/如果你在项目内使用 Codex-local skills,也可以复制到项目的 .codex/skills/:
mkdir -p .codex/skills
cp -R skills/yanyan_wechat_upload .codex/skills/方式三:ClawHub
这个仓库已经按 skills/<skill-name>/SKILL.md 结构维护,适合后续发布到 ClawHub。
如果维护者发布到 ClawHub registry,可以使用:
clawhub publish skills/yanyan_wechat_upload发布成功后,用户才能用类似命令安装:
clawhub install yanyan_wechat_upload初始化配置
安装后,在 Codex 对话里输入这个 skill 命令:
yanyan_wechat_upload:init这不是终端命令,而是对话里的 skill 命令。Codex 会通过对话收集公众号名称、作者名、封面图策略、签名策略、强调色和 keyring service 名称,然后把非敏感配置写入用户电脑:
~/.config/yanyan_skill/yanyan_wechat_upload/config.json也可以通过环境变量指定其他配置文件位置:YANYAN_WECHAT_UPLOAD_CONFIG=/path/to/config.json。
本机配置文件里的重点配置项:
{
"ACCOUNT_NAME": "你的公众号名称",
"AUTHOR_NAME": "作者名",
"KEYRING_SERVICE": "yanyan_wechat_upload",
"COVER_MODE": "ask-each-run",
"DEFAULT_COVER_SOURCE": "RUNTIME_REQUIRED",
"SIGNATURE_MODE": "none",
"SIGNATURE_VALUE": "none",
"THEME_COLOR": "#D97706"
}skill 执行时按这个顺序读取配置:
YANYAN_WECHAT_UPLOAD_CONFIG指向的 JSON 文件~/.config/yanyan_skill/yanyan_wechat_upload/config.jsonSKILL.md里的默认配置
不要把个人配置提交到公开仓库。仓库里的 SKILL.md 只保留非敏感默认值:
ACCOUNT_NAME: "你的公众号名称"
AUTHOR_NAME: "作者名"
KEYRING_SERVICE: "yanyan_wechat_upload"
COVER_MODE: "ask-each-run"
DEFAULT_COVER_SOURCE: "RUNTIME_REQUIRED"
SIGNATURE_MODE: "none"
SIGNATURE_VALUE: "none"
THEME_COLOR: "#D97706"不要把 AppID 或 AppSecret 写进 SKILL.md 或 config.json。凭证应保存到系统安全存储。
配置 AppID / AppSecret
AppID / AppSecret 不写入 SKILL.md,也不写入 config.json。推荐放到系统安全存储。macOS 示例:
python3 -m pip install keyring
keyring set yanyan_wechat_upload app_id按提示粘贴 AppID。完成后继续运行:
keyring set yanyan_wechat_upload app_secret按提示粘贴 AppSecret。不要把 AppSecret 发到对话里,也不要写进配置文件。
同时需要在微信公众平台后台把当前公网 IP 加入 API IP 白名单。
使用方法
安装并配置后,在 Codex 中直接说:
把这篇 md 发到公众号。/path/to/article.md或者:
生成公众号草稿然后粘贴 Markdown 正文。
上传类流程会先生成本地预览,并停下来询问:
排版预览已完成,请确认是否上传到公众号草稿?只有你明确确认后,skill 才能创建或更新公众号草稿。
维护方式
- 新增 skill:放到
skills/<skill-name>/SKILL.md。 - 修改已有 skill:先改仓库版本,再复制到本地 Codex skill 目录使用。
- 不要提交密钥、token、本地临时上传文件、草稿 payload 或个人素材路径。
- 个人默认配置应写入
~/.config/yanyan_skill/.../config.json,不要提交到仓库。
安全边界
这个仓库不包含任何 AppID、AppSecret 或 access token。微信公众号上传助手只记录凭证读取方式,真实凭证必须通过 Keychain、环境变量或工具密钥管理读取。
