mcpField
C
canghe-post-to-wechat

canghe-post-to-wechat

github.com/freestyleflyマーケティング・グロース470494 回インストール20 週間前に更新
リポジトリ

canghe-post-to-wechat について

canghe-post-to-wechatは、WeChat Official Accountに画像付き投稿や記事を公開するコンテンツ制作者向けスキルです。APIまたはブラウザーでの公開に対応し、設定やメタデータの処理手順も扱います。

主な機能

  1. 01複数画像付きの投稿を公開
  2. 02APIまたはブラウザーで記事を公開
  3. 03Markdown、HTML、プレーンテキストを処理
  4. 04テーマ、著者、コメント設定を指定
  5. 05環境と公開権限を確認

活用シーン

  1. 01複数画像付きの短い投稿を公開
  2. 02Markdown記事を変換して公開
  3. 03APIとブラウザーの公開方法を選択

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/freestylefly/canghe-skills --skill canghe-post-to-wechat

インストール後、Claude Code で/canghe-post-to-wechatを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
article-posting.md
image-text-posting.md
references/config/
first-time-setup.md
scripts/
cdp.ts
check-permissions.ts
copy-to-clipboard.ts
md-to-wechat.ts
paste-from-clipboard.ts
wechat-agent-browser.ts
wechat-api.ts
wechat-article.ts
wechat-browser.ts
scripts/md/
LICENSE
render.ts
scripts/md/extensions/
alert.ts
footnotes.ts
index.ts
infographic.ts
katex.ts
markup.ts
plantuml.ts
ruby.ts
slider.ts
toc.ts
scripts/md/themes/
base.css
default.css
grace.css
simple.css
scripts/md/utils/
languages.ts

詳細

WeChat公式アカウントへの投稿

言語

ユーザーの言語に合わせる:ユーザーが使う言語と同じ言語で応答してください。ユーザーが中国語で書いた場合は中国語で、英語で書いた場合は英語で応答してください。

スクリプトディレクトリ

エージェントの実行:この SKILL.md のディレクトリを SKILL_DIR として特定し、${SKILL_DIR}/scripts/<name>.ts を使用してください。

スクリプト用途
scripts/wechat-browser.ts画像付き投稿(图文)
scripts/wechat-article.tsブラウザー経由の記事投稿(文章)
scripts/wechat-api.tsAPI経由の記事投稿(文章)
scripts/check-permissions.ts環境と権限の確認

設定(EXTEND.md)

Bash を使って、優先順位に従い EXTEND.md が存在するか確認してください。

# Check project-level first
test -f .canghe-skills/canghe-post-to-wechat/EXTEND.md && echo "project"

# Then user-level (cross-platform: $HOME works on macOS/Linux/WSL)
test -f "$HOME/.canghe-skills/canghe-post-to-wechat/EXTEND.md" && echo "user"

┌────────────────────────────────────────────────────────┬───────────────────┐ │ パス │ 場所 │ ├────────────────────────────────────────────────────────┼───────────────────┤ │ .canghe-skills/canghe-post-to-wechat/EXTEND.md │ プロジェクトディレクトリ │ ├────────────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.canghe-skills/canghe-post-to-wechat/EXTEND.md │ ユーザーホーム │ └────────────────────────────────────────────────────────┴───────────────────┘

┌───────────┬───────────────────────────────────────────────────────────────────────────┐ │ 結果 │ 対応 │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ 見つかった場合 │ 読み込み、解析し、設定を適用 │ ├───────────────────────────────────────────────────────────────────────────┤ │ 見つからない場合 │ 初回セットアップを実行(references/config/first-time-setup.md)→ 保存 → 続行 │ └───────────┴───────────────────────────────────────────────────────────────────────────┘

EXTEND.md で設定できる項目:デフォルトのテーマ | デフォルトの公開方法(api/browser) | デフォルトの著者 | デフォルトのコメント許可スイッチ | デフォルトのフォロワー限定コメントスイッチ | Chrome プロファイルのパス

初回セットアップ:references/config/first-time-setup.md

最低限サポートされるキー(大文字と小文字を区別せず、1/0 または true/false を受け付けます):

キーデフォルトマッピング
default_author空CLI/frontmatter に指定がない場合の author のフォールバック
need_open_comment1draft/add リクエストの articles[].need_open_comment
only_fans_can_comment0draft/add リクエストの articles[].only_fans_can_comment

EXTEND.md の推奨例:

default_theme: default
default_publish_method: api
default_author: 苍何
need_open_comment: 1
only_fans_can_comment: 0
chrome_profile_path: /path/to/chrome/profile

値の優先順位:

  1. CLI 引数
  2. Frontmatter
  3. EXTEND.md
  4. スキルのデフォルト

事前チェック(任意)

初回使用前に、環境チェックの実行を提案してください。ユーザーは希望すればスキップできます。

npx -y bun ${SKILL_DIR}/scripts/check-permissions.ts

チェック項目:Chrome、プロファイルの分離、Bun、アクセシビリティ、クリップボード、貼り付けのキーストローク、API 認証情報、Chrome の競合。

いずれかのチェックに失敗した場合は、項目ごとに修正方法を案内してください:

チェック修正方法
ChromeChrome をインストールするか、WECHAT_BROWSER_CHROME_PATH 環境変数を設定してください
プロファイルディレクトリ~/.local/share/wechat-browser-profile に書き込み権限があることを確認してください
Bun ランタイムcurl -fsSL https://bun.sh/install | bash
アクセシビリティ(macOS)システム設定 → プライバシーとセキュリティ → アクセシビリティ → ターミナルアプリを有効にする
クリップボードのコピーSwift/AppKit が利用可能であることを確認してください(macOS Xcode CLI ツール:xcode-select --install)
貼り付けのキーストローク(macOS)上記のアクセシビリティの修正方法と同じです
貼り付けのキーストローク(Linux)xdotool(X11)または ydotool(Wayland)をインストールしてください
API 認証情報ステップ5のガイド付きセットアップに従うか、.canghe-skills/.env に手動で設定してください

画像付き投稿(图文)

複数の画像を含む短い投稿(最大9枚)の場合:

npx -y bun ${SKILL_DIR}/scripts/wechat-browser.ts --markdown article.md --images ./images/
npx -y bun ${SKILL_DIR}/scripts/wechat-browser.ts --title "标题" --content "内容" --image img.png --submit

詳細はreferences/image-text-posting.mdをご覧ください。

記事投稿ワークフロー(文章)

このチェックリストをコピーし、完了した項目にチェックを付けてください。

Publishing Progress:
- [ ] Step 0: Load preferences (EXTEND.md)
- [ ] Step 1: Determine input type
- [ ] Step 2: Check markdown-to-html skill
- [ ] Step 3: Convert to HTML
- [ ] Step 4: Validate metadata (title, summary, cover)
- [ ] Step 5: Select method and configure credentials
- [ ] Step 6: Publish to WeChat
- [ ] Step 7: Report completion
ステップ 0:設定を読み込む

EXTEND.md の設定を確認して読み込みます(上記の「設定」セクションを参照)。

重要:見つからない場合は、ほかの手順や質問に進む前に、初回セットアップを完了してください。

後続の手順で使用する以下のデフォルト値を解決して保存します。

  • default_author
  • need_open_comment(デフォルト 1)
  • only_fans_can_comment(デフォルト 0)
ステップ 1:入力の種類を判定する
入力の種類判定方法アクション
HTML ファイルパスが .html で終わり、ファイルが存在するステップ 4 に進む
Markdown ファイルパスが .md で終わり、ファイルが存在するステップ 2 に進む
プレーンテキストファイルパスではない、またはファイルが存在しないMarkdown に保存し、ステップ 2 に進む

プレーンテキストの処理:

  1. 内容からスラッグを生成します(意味のある最初の 2~4 語をハイフン区切りの小文字で表記)
  2. ディレクトリを作成してファイルを保存します。
mkdir -p "$(pwd)/post-to-wechat/$(date +%Y-%m-%d)"
# Save content to: post-to-wechat/yyyy-MM-dd/[slug].md
  1. Markdown ファイルとして処理を続けます。

スラッグの例:

  • 「Understanding AI Models」→ understanding-ai-models
  • 「人工智能的未来」→ ai-future(スラッグは英語に翻訳)
ステップ 2:Markdown から HTML への変換スキルを確認する

次の場合はスキップ:入力が .html ファイル

スキルの検出:

# Check if canghe-markdown-to-html exists
test -f skills/canghe-markdown-to-html/SKILL.md && echo "found"
結果アクション
見つかったSKILL.md を読み込み、ステップ 3 に進む
複数のスキルが見つかったAskUserQuestion で選択する
見つからないインストール方法を提示する

見つからない場合:

No markdown-to-html skill found.

Suggested installation:
https://github.com/JimLiu/canghe-skills/blob/main/skills/canghe-markdown-to-html/SKILL.md

Options:
A) Cancel - install the skill first
B) Continue - provide HTML file manually
ステップ 3:Markdown を HTML に変換する

次の場合はスキップ:入力が .html ファイル

  1. テーマの設定を確認します(EXTEND.md または CLI で指定されていない場合)。
テーマ説明
defaultクラシックテーマ — 伝統的なレイアウト、中央揃えで下線付きの見出し、白文字で色付き背景の 2 番目の見出し
graceエレガントなテーマ — 文字の影、角丸カード、洗練された引用ブロック
simpleシンプルなテーマ — モダンでミニマルなスタイル、非対称の角丸、すっきりとした余白
  1. 変換を実行します(検出したスキルを使用)。
npx -y bun ${MD_TO_HTML_SKILL_DIR}/scripts/main.ts <markdown_file> --theme <theme>
  1. JSON 出力を解析して、htmlPath、title、author、summary、contentImages を取得します。
ステップ 4:メタデータを検証する

ステップ 3 で抽出したメタデータ(HTML を直接入力した場合は HTML の meta タグ)を確認します。

フィールド値がない場合
タイトル「タイトルを入力してください。Enter キーを押すと、内容から自動生成します」と確認する
要約「要約を入力してください。Enter キーを押すと自動生成します(SEO に推奨)」と確認する
著者次の優先順位でフォールバックします:CLI --author → frontmatter author → EXTEND.md default_author

自動生成のロジック:

  • タイトル:最初の H1/H2 見出し、または最初の文
  • 要約:最初の段落を 120 文字に切り詰める

カバー画像の確認(article_type=news の場合は必須):

  1. CLI --cover が指定されていれば使用します。
  2. それ以外の場合は frontmatter(coverImage、featureImage、cover、image)を使用します。
  3. それ以外の場合は記事ディレクトリのデフォルトパス imgs/cover.png を確認します。
  4. それ以外の場合は、本文内で最初に使われている画像を使用します。
  5. それでも見つからない場合は、公開を停止してカバー画像を求めます。
ステップ 5:公開方法を選択して設定する

公開方法を確認します(EXTEND.md または CLI で指定されていない場合)。

方法速度必要なもの
api(推奨)高速API 認証情報
browser低速Chrome、ログインセッション

API を選択した場合 — 認証情報を確認する:

# Check project-level
test -f .canghe-skills/.env && grep -q "WECHAT_APP_ID" .canghe-skills/.env && echo "project"

# Check user-level
test -f "$HOME/.canghe-skills/.env" && grep -q "WECHAT_APP_ID" "$HOME/.canghe-skills/.env" && echo "user"

認証情報がない場合 — 設定方法を案内する:

WeChat API credentials not found.

To obtain credentials:
1. Visit https://mp.weixin.qq.com
2. Go to: 开发 → 基本配置
3. Copy AppID and AppSecret

Where to save?
A) Project-level: .canghe-skills/.env (this project only)
B) User-level: ~/.canghe-skills/.env (all projects)

保存先を選択した後、値を入力するよう求め、.env に書き込みます。

WECHAT_APP_ID=<user_input>
WECHAT_APP_SECRET=<user_input>
ステップ 6:WeChat に公開する

API 方式:

npx -y bun ${SKILL_DIR}/scripts/wechat-api.ts <html_file> [--title <title>] [--summary <summary>] [--author <author>] [--cover <cover_path>]

draft/add のペイロード規則:

  • エンドポイント POST https://api.weixin.qq.com/cgi-bin/draft/add?access_token=ACCESS_TOKEN を使用します。
  • article_type:news(デフォルト)または newspic
  • news の場合は thumb_media_id を含めます(カバー画像が必須です)。
  • 常に以下の値を解決して送信します。
    • need_open_comment(デフォルト 1)
    • only_fans_can_comment(デフォルト 0)
  • author の解決順序:CLI --author → frontmatter author → EXTEND.md default_author

スクリプトのパラメーターで 2 つのコメントフィールドを指定できない場合でも、最終的な API リクエスト本文に解決済みの値が含まれるようにしてください。

ブラウザー方式:

npx -y bun ${SKILL_DIR}/scripts/wechat-article.ts --html <html_file>
ステップ 7:完了レポート

API 方式の場合は、下書き管理リンクを含めます:

WeChat Publishing Complete!

Input: [type] - [path]
Method: API
Theme: [theme name]

Article:
• Title: [title]
• Summary: [summary]
• Images: [N] inline images
• Comments: [open/closed], [fans-only/all users]

Result:
✓ Draft saved to WeChat Official Account
• media_id: [media_id]

Next Steps:
→ Manage drafts: https://mp.weixin.qq.com (登录后进入「内容管理」→「草稿箱」)

Files created:
[• post-to-wechat/yyyy-MM-dd/slug.md (if plain text)]
[• slug.html (converted)]

ブラウザー方式の場合:

WeChat Publishing Complete!

Input: [type] - [path]
Method: Browser
Theme: [theme name]

Article:
• Title: [title]
• Summary: [summary]
• Images: [N] inline images

Result:
✓ Draft saved to WeChat Official Account

Files created:
[• post-to-wechat/yyyy-MM-dd/slug.md (if plain text)]
[• slug.html (converted)]

詳細リファレンス

トピックリファレンス
画像・テキストのパラメーター、自動圧縮references/image-text-posting.md
記事のテーマ、画像の処理references/article-posting.md

機能比較

機能画像・テキスト記事(API)記事(ブラウザー)
プレーンテキスト入力✗✓✓
HTML 入力✗✓✓
Markdown 入力タイトル/本文✓(スキル経由)✓(スキル経由)
複数の画像✓(最大 9 枚)✓(インライン)✓(インライン)
テーマ✗✓✓
メタデータの自動生成✗✓✓
デフォルトのカバー画像フォールバック(imgs/cover.png)✗✓✗
コメント制御(need_open_comment、only_fans_can_comment)✗✓✗
Chrome が必要✓✗✓
API 認証情報が必要✗✓✗
速度中速高速低速

前提条件

API 方式の場合:

  • WeChat 公式アカウントの API 認証情報
  • ステップ 5 のガイド付きセットアップ、または .canghe-skills/.env への手動設定

ブラウザー方式の場合:

  • Google Chrome
  • 初回実行時:WeChat 公式アカウントにログインします(セッションは保持されます)

Markdown 変換の場合:

  • Markdown から HTML への変換スキル(例:canghe-markdown-to-html)
  • インストールされていない場合、ワークフローでインストールが提案されます

設定ファイルの場所(優先順位順):

  1. 環境変数
  2. <cwd>/.canghe-skills/.env
  3. ~/.canghe-skills/.env

トラブルシューティング

問題解決策
Markdown から HTML への変換スキルがない提案された URL から canghe-markdown-to-html をインストールします
API 認証情報がないステップ 5 のガイド付きセットアップに従います
アクセストークンのエラーAPI 認証情報が有効で、期限切れでないことを確認します
ログインしていない(ブラウザー)初回実行時にブラウザーが開きます。QR コードをスキャンしてログインします
Chrome が見つからないWECHAT_BROWSER_CHROME_PATH 環境変数を設定します
タイトル/要約がない自動生成を使用するか、手動で指定します
カバー画像がないfrontmatter にカバー画像を追加するか、記事ディレクトリに imgs/cover.png を配置します
コメントのデフォルト設定が誤っているEXTEND.md のキー need_open_comment と only_fans_can_comment を確認します
貼り付けに失敗するシステムのクリップボード権限を確認します

拡張機能のサポート

EXTEND.md によるカスタム設定に対応しています。パスとサポートされるオプションについては、Preferences セクションを参照してください。

コメント