Wechat File Sender
Skill by 26048608982lp-ai
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/26048608982lp-ai/wechat-file-senderwechat-file-sender
Send files via Windows WeChat client using RPA automation. No external dependencies — pure PowerShell + Windows Automation API.
Security: filePath must be an absolute path. contactName is validated to 50 chars max, Chinese/alphanumeric/underscore/space only. No network calls, no data exfiltration.
Setup
Requirements: Windows OS with WeChat desktop client installed.
clawhub install wechat-file-sender --dir <your-skills-dir>
Usage
Command line
node scripts/send-file-to-wechat.js "<filePath>" "<contactName>"
OpenClaw trigger phrases
向wechat发送文件给[联系人]:文件路径发微信文件给[联系人]:文件路径
PowerShell Script Source (scripts/send-file.ps1)
Full source — audit it before running:
param(
[string]$filePath,
[string]$contactName
)
Add-Type -AssemblyName UIAutomationClient
Add-Type -AssemblyName UIAutomationTypes
Add-Type -AssemblyName System.Windows.Forms
Add-Type -AssemblyName PresentationCore
# Step 0: Check file exists
if (-not (Test-Path $filePath)) {
Write-Host "[ERROR] File not found"
exit 1
}
# Step 1: Find WeChat window (class Qt51514QWindowIcon)
$root = [System.Windows.Automation.AutomationElement]::RootElement
$allWindows = $root.FindAll([System.Windows.Automation.TreeScope]::Children,
(New-Object System.Windows.Automation.PropertyCondition(
[System.Windows.Automation.AutomationElement]::ControlTypeProperty,
[System.Windows.Automation.ControlType]::Window)))
$wechatWindow = $null
foreach ($w in $allWindows) {
if ($w.Current.ClassName -match 'Qt51514QWindowIcon') {
$wechatWindow = $w
break
}
}
if (-not $wechatWindow) {
Write-Host "[ERROR] WeChat not found"
exit 1
}
# Win32 API for window focus
Add-Type @"
using System;
using System.Runtime.InteropServices;
public class WinAPI {
[DllImport("user32.dll")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
[DllImport("user32.dll")]
public static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
[DllImport("user32.dll")]
public static extern bool IsIconic(IntPtr hWnd);
public const int SW_MINIMIZE = 6;
public const int SW_RESTORE = 9;
}
"@
$hwnd = [IntPtr]$wechatWindow.Current.NativeWindowHandle
if ([WinAPI]::IsIconic($hwnd)) {
[WinAPI]::ShowWindow($hwnd, [WinAPI]::SW_RESTORE)
}
[WinAPI]::SetForegroundWindow($hwnd)
Start-Sleep 1
# Step 2: Open search (Ctrl+F)
[System.Windows.Forms.SendKeys]::SendWait("^f")
Start-Sleep 1
# Step 3: Type contact name (via clipboard — SendKeys can't type Chinese)
[System.Windows.Forms.Clipboard]::Clear()
Start-Sleep 0.3
[System.Windows.Forms.Clipboard]::SetText($contactName)
Start-Sleep 0.5
[System.Windows.Forms.SendKeys]::SendWait("^v")
Start-Sleep 2
# Step 4: Select first result and enter chat
[System.Windows.Forms.SendKeys]::SendWait("{UP}")
Start-Sleep 0.5
[System.Windows.Forms.SendKeys]::SendWait("{ENTER}")
Start-Sleep 1
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-26048608982lp-ai-wechat-file-sender": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
resume-jd-match
AI-powered JD-matched resume generator with native Chinese and English support. Collects structured user profile (work history, projects, skills, education), parses target job descriptions, performs explicit match analysis before generating, then outputs print-optimized HTML resume + auto-export PDF. Core strengths: (1) JD→resume full pipeline with transparency, (2) Chinese resume native support, (3) persistent profile reuse across multiple JDs. Use when: tailoring resume for a job posting, creating resume from scratch, optimizing for ATS, building Chinese/English resume, "make me a resume", "customize resume for this job", "简历定制", "针对岗位优化简历".
resume-tailor
Generate job-specific tailored resumes from a base profile and job description. First collects structured user info (personal details, work history, side projects, education, skills, certificates), then reads a target JD to produce a polished HTML resume customized to match. Outputs print-optimized HTML that exports cleanly to PDF via browser print. Use when user wants to create/rewrite/tailor a resume for a specific job posting, optimize a resume for ATS, build a resume from scratch, or says "make me a resume" / "tailor my resume" / "customize resume for this job". Supports Chinese and English resumes.