@shawnxie666/wechat-draft-from-md
v0.1.2
Published
Create WeChat Official Account drafts from Lumina, Infinitum, Markdown URLs, or local Markdown files.
Downloads
331
Maintainers
Readme
wechat-draft-from-md
Create WeChat Official Account drafts from Lumina pages, Infinitum daily pages, Markdown URLs, or local Markdown files.
Install
npm install -g @shawnxie666/wechat-draft-from-mdOr run without installing. npx uses npm's cache, but it may still resolve package metadata; --prefer-offline reduces registry checks when the package is already cached:
npx --yes --prefer-offline --package @shawnxie666/wechat-draft-from-md wechat-draft-from-md --helpUsage
Prefer a local command when it exists:
if command -v wechat-draft-from-md >/dev/null 2>&1; then
wechat-draft-from-md create "https://infinitum.shawnxie.top/daily/2026-04-26"
elif [ -x ./node_modules/.bin/wechat-draft-from-md ]; then
./node_modules/.bin/wechat-draft-from-md create "https://infinitum.shawnxie.top/daily/2026-04-26"
else
npx --yes --prefer-offline --package @shawnxie666/wechat-draft-from-md \
wechat-draft-from-md create "https://infinitum.shawnxie.top/daily/2026-04-26"
fiDry run:
wechat-draft-from-md create "SOURCE" --dry-runExplicit cover:
wechat-draft-from-md create "SOURCE" --cover-image /path/to/cover.pngInitialize config:
wechat-draft-from-md init-configCreate a local config in the current skill directory:
wechat-draft-from-md init-config --path config.local.jsonInstall the Codex skill wrapper:
wechat-draft-from-md install-skillConfiguration
The CLI loads config in this order. Later sources override earlier sources with a deep merge:
- bundled defaults
~/.config/wechat-draft-from-md/config.json- current directory
config.json - current directory
config.local.json - file pointed to by
WECHAT_DRAFT_CONFIG - optional
--config <file> - environment variables
Example config.local.json:
{
"wechat": {
"app_id": "YOUR_APP_ID",
"app_secret": "YOUR_APP_SECRET",
"author": "作者名",
"default_thumb_media_id": "",
"need_open_comment": 0,
"only_fans_can_comment": 0
},
"formatting": {
"theme": "grace",
"primary_color": "classic-blue",
"justify": true
}
}WeChat authentication can be provided with WECHAT_ACCESS_TOKEN, WECHAT_ACCESS_TOKEN_COMMAND, or WECHAT_APP_ID plus WECHAT_APP_SECRET.
Supported environment overrides:
- Formatting:
MD_CLI_THEME,MD_CLI_FONT_FAMILY,MD_CLI_FONT_SIZE,MD_CLI_PRIMARY_COLOR,MD_CLI_HEADING_STYLE,MD_CLI_CODE_THEME,MD_CLI_LEGEND,MD_CLI_MAC_CODE_BLOCK,MD_CLI_LINE_NUMBERS,MD_CLI_CITE,MD_CLI_COUNT,MD_CLI_INDENT,MD_CLI_JUSTIFY - WeChat:
WECHAT_APP_ID,WECHAT_APP_SECRET,WECHAT_ACCESS_TOKEN,WECHAT_ACCESS_TOKEN_COMMAND,WECHAT_ACCESS_TOKEN_CACHE_FILE,WECHAT_API_BASE_URL,WECHAT_DEFAULT_THUMB_MEDIA_ID,WECHAT_DEFAULT_COVER_IMAGE,WECHAT_FOOTER_TEMPLATE,WECHAT_FOOTER_ENABLED,WECHAT_AUTHOR,WECHAT_DIGEST,WECHAT_CONTENT_SOURCE_URL,WECHAT_NEED_OPEN_COMMENT,WECHAT_ONLY_FANS_CAN_COMMENT - Extra config file:
WECHAT_DRAFT_CONFIG
Boolean environment values treat 1, true, yes, and on as true. Other values are false.
Inspect the merged config:
wechat-draft-from-md show-config