用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/Birdywen/genspark-agent --skill wechat-cli命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | wechat-cli |
| description | 微信桌面版命令行控制工具,通过 macOS Accessibility API 读取聊天列表、消息内容,搜索联系人,发送消息 |
通过 macOS Accessibility API 控制微信桌面版(需要老版本微信,持 UI 元素识别)。
/Users/yay/workspace/wechat-cli/wechat可通过 ~/.local/bin/wechat` 访问(已加入 PATH)。
| 命令 | 说明 | 示例 |
|---|---|---|
wechat list | 列出所有聊天 | wechat list |
wechat unread | 只显示未读聊天 | wechat unread |
wechat search <name> | 按名字搜索聊天(模糊匹配) | wechat search 涛涛 |
wechat open <name> | 打开某人的聊天窗口 | wechat open 涛涛 |
wechat read [name] | 读取聊天记录(不传 name 读当前聊天) | wechat read 涛涛 |
wechat send <name> <msg> | 给某人发消息 | wechat send 涛涛 "你好" |
1. 涛涛 [1 unread]
哈哈,到家就好
21:26
标记说明:[N unread] 未读数,[muted] 已静音,[pinned] 已置顶
--- Apr 23, 2024 22:31 ---
>> Me: 没啊
<< 涛涛: 祝贺祝贺
>> 表示自己发送,<< 表示对方发送,--- 为时间分隔线。
路径:Window > SplitGroup > ScrollArea > Table > Row > Cell > (inner AXRow).name
聊天信息编码在 inner AXRow 的 name 属性中,格式:
名字,最后消息,时间,N unread message(s)[,Mute Notifications][,Sticky on Top]
路径:Window > SplitGroup > SplitGroup(右侧面板) > ScrollArea(第1个) > Table(Messages) > Row > Cell > (inner element).name
消息格式:NameSaid:内容 或 MeSaid:内容,时间戳为独立行。
三步操作(必须分开执行):
osascript 设置输入框 focused = trueosascript 设置输入框 value = 消息文本osascript set frontmost + key code 36(回车发送)关键点:key code 36 之前必须 set frontmost,否则不生效。
使用 AXUIElementSetAttributeValue(row, "AXSelected", true) 选中聊天行。
注意:click 和 AXPressAction 对微信无效,必须用 set selected。
# 禁用 Sparkle 自动更新
defaults write com.tencent.xinWeChat SUAutomaticallyUpdate -bool false
defaults write com.tencent.xinWeChat SUEnableAutomaticChecks -bool false
defaults write com.tencent.xinWeChat SUScheduledCheckInterval -int 0
# 移除 Sparkle 更新程序的可执行权限
SPARKLE="/Applications/WeChat.app/Contents/Frameworks/Sparkle.framework"
chmod -x "$SPARKLE/Versions/B/Autoupdate"
chmod -x "$SPARKLE/Versions/B/Updater.app/Contents/MacOS/Updater"
[Photo] [Video]