Communitygithub.com

413162826/kevinsu-skills

WeChat Official Account Draft API Skills: Verwendung ausschließlich offizieller APIs, ohne Browser oder RPA

Was ist kevinsu-skills?

Dieses Skill bietet eine automatisierte Lösung zur Erstellung und Überprüfung von Bildnachrichten-Entwürfen (Drafts) für WeChat Official Accounts, basierend ausschließlich auf den offiziellen `api.weixin.qq.com`-Schnittstellen. Es startet keinen Browser, ruft keine Veröffentlichungs-, Massenversand- oder Lösch-APIs auf und bietet keine RPA-Fallback-Lösung. Die Konfiguration und Ausführung erfolgen vollständig über PowerShell 7.2+ unter Windows, wobei das AppSecret mittels DPAPI verschlüsselt und lokal gespeichert wird. Vor der Erstellung eines Entwurfs führt das Skill eine umfassende Validierung des Bildmaterials durch, lädt dann jede Bilddatei einzeln über die `material/add_material`-Schnittstelle hoch und erstellt anschließend den `newspic`-Entwurf. Nach der Erstellung wird der Entwurf über die `draft/get`-Schnittstelle zurückgelesen und auf Korrektheit von Konto, Titel, Inhalt, Bildreihenfolge und Kommentareinstellungen geprüft. Das Skill implementiert Idempotenz durch exklusive Verzeichnissperren und Prüfpunkte, um doppelte Erstellungen zu vermeiden, und behandelt Netzwerk- oder Prozessunterbrechungen sicher, indem es bei fehlgeschlagenen Vorgängen stoppt und eine manuelle Überprüfung erfordert. Bei IP-Whitelist-Fehlern (40164) gibt es klare Anweisungen zur Fehlerbehebung an den Benutzer.

Funktioniert mit~Claude Code✓Codex CLI~Cursor
npx skills add 413162826/kevinsu-skills

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

WeChat Official Account Bild-API

Verwendet ausschließlich die offiziellen Schnittstellen von api.weixin.qq.com zum Erstellen und Überprüfen von Bildnachrichten-Entwürfen. Es wird kein Browser gestartet, keine Veröffentlichungs-, Massenversand- oder Lösch-APIs aufgerufen und es wird kein RPA-Fallback bereitgestellt.

Umgebung

Erfordert Windows und PowerShell 7.2+. Das AppSecret wird mit DPAPI des aktuellen Windows-Benutzers verschlüsselt und standardmäßig unter $env:CODEX_HOME\secrets gespeichert; wenn CODEX_HOME nicht gesetzt ist, wird $env:USERPROFILE\.codex\secrets verwendet. Netzwerkanfragen werden innerhalb des PowerShell-Prozesses durchgeführt, das Access-Token wird nicht an externe Befehle übergeben.

Eingabe und Offline-Validierung

Lesen Sie vor der Ausführung vollständig references/package-contract.md. Das Materialverzeichnis muss image-post.json und 1–20 Bilder enthalten; account muss explizit ausgefüllt sein, und die Kommentarfelder dürfen nicht fehlen.

Lokalisieren Sie zuerst das Skill, dann führen Sie die Offline-Validierung durch:

$codexHome = if ($env:CODEX_HOME) { $env:CODEX_HOME } else { Join-Path $env:USERPROFILE '.codex' }
$skill = Join-Path $codexHome 'skills\wechat-image-api'
& (Join-Path $skill 'scripts\Test-WeChatImagePackage.ps1') -InputFolder 'D:\Bildmaterialverzeichnis'

Wenn ein vollständiges Beispiel benötigt wird, generieren und validieren Sie es in einem neuen Verzeichnis, das noch keine Beispieldateien enthält:

& (Join-Path $skill 'scripts\New-WeChatImagePackageExample.ps1') -OutputFolder 'D:\Bildbeispiel'

Erstmalige Konfiguration

Beide WeChat-API-Skills können dieselben DPAPI-Anmeldeinformationen gemeinsam nutzen. Wenn keine Anmeldeinformationen vorhanden sind, darf der Benutzer das AppSecret nicht im Chat einfügen; führen Sie stattdessen die interaktive Konfiguration lokal aus:

& (Join-Path $skill 'scripts\Set-WeChatOfficialAccountCredential.ps1')
& (Join-Path $skill 'scripts\Test-WeChatOfficialAccountApi.ps1')

Der zweite Befehl überprüft AppID, AppSecret, Entwurfsberechtigungen und IP-Whitelist. Das account im Materialpaket muss exakt mit dem bei der Konfiguration gespeicherten Namen des Official Accounts übereinstimmen.

Wenn WeChat 40164 invalid ip zurückgibt, stoppen Sie sofort, teilen Sie dem Benutzer die öffentliche IP-Adresse aus der Fehlermeldung mit und erinnern Sie ihn daran, diese IP unter „Einstellungen & Entwicklung → Entwicklungsschnittstellenverwaltung → IP-Whitelist“ hinzuzufügen. Wiederholen Sie nach Bestätigung des Benutzers nur dieselbe offizielle API; es ist untersagt, auf Browser, RPA, Cookie-Profile oder andere Veröffentlichungskanäle auszuweichen.

Erstellen und Überprüfen eines Entwurfs

Führen Sie die folgenden Schritte nur aus, wenn der Benutzer ausdrücklich das Schreiben eines Entwurfs anfordert:

& (Join-Path $skill 'scripts\Publish-WeChatImageDraft.ps1') -InputFolder 'D:\Bildmaterialverzeichnis'

Das Skript lädt jedes Bild nacheinander über material/add_material hoch, erstellt dann mit draft/add einen newspic-Entwurf; das erste Bild wird von WeChat als Titelbild verwendet. Abschließend wird der Entwurf mit draft/get zurückgelesen und auf Konto, Titel, Inhalt, Bildreihenfolge, Kommentareinstellungen und media_id überprüft.

Idempotenz und Ausnahmegrenzen

  • Jedes Materialverzeichnis verwendet eine exklusive Sperre; dasselbe Verzeichnis kann nicht gleichzeitig ausgeführt werden.
  • Prüfpunkte werden nur nach dem bestätigten Empfang von media_id fortgeschrieben; wenn bereits eine Entwurfs-ID aufgezeichnet wurde, wird bei wiederholter Ausführung nur der Entwurf zurückgelesen und überprüft, nicht erneut erstellt.
  • Wenn die Netzwerk- oder Prozessunterbrechung während des Bild-Uploads oder der draft/add-Phase auftritt, kann das Ergebnis unbestimmt sein. Die nachfolgende Ausführung muss gestoppt werden; automatische Wiederholungen sind verboten. Überprüfen Sie zuerst manuell die Materialbibliothek oder den Entwurfsordner und verwenden Sie dann ein neues Verzeichnis, um fortzufahren.
  • Wenn sich der Material-Fingerabdruck ändert, aber ein alter Prüfpunkt existiert, wird gestoppt, ohne den Status stillschweigend zu löschen.
  • Status und Quittungen verwenden atomare Ersetzungen von temporären Dateien im selben Verzeichnis, um hinterlassene JSON-Bruchstücke zu vermeiden.
  • Nur wenn draft/get alle Felder bestanden zurückliest, wird gemeldet: „Entwurf erstellt und überprüft“; es darf nicht gemeldet werden, dass er „veröffentlicht“ wurde.
  • Die Quittung wird in wechat-image-api-receipt.json geschrieben. Bei Fehlschlag einer offiziellen API wird der Fehler sofort gemeldet; dieses Skill hat keinen Browser-/RPA-Fallback.

Verwandte Skills