Skip to content
Agent Orchestration
Skill

/goodqunbot

AI-powered WeChat message assistant. Retrieve recent messages from contacts/groups and send messages directly through AI chat. Windows 10/11 only. Requires WeChat PC client logged in.

From plugin
goodable
19510 skills3 hooks

Claude Code

$ npx -y skills add imgoodbai/goodable --skill goodqunbot --agent claude-code

SKILL.md

goodqunbot.SKILL.md
name: goodqunbot
displayName: 微信消息助手
description: AI-powered WeChat message assistant. Retrieve recent messages from contacts/groups and send messages directly through AI chat. Windows 10/11 only. Requires WeChat PC client logged in.

微信消息助手 (WeChat Message Assistant)

This skill enables AI to interact with WeChat directly through AI chat, providing two core capabilities: retrieving recent messages and sending messages to contacts or groups.

Platform Requirements

  • **OS**: Windows 10/11 only
  • **WeChat**: WeChat PC client must be installed, running, and logged in
  • **Python**: Python 3.11+ (automatically handled by Goodable)

Core Capabilities

1. Retrieve Recent Messages

Fetch the last 10-15 messages from any WeChat contact or group chat.

**What you can ask:**

Get the last 15 messages from "张三"
Show me recent messages from "Product Team" group
Retrieve messages from "李四", last 10 only

**What AI will do:**

  • Opens the specified chat in WeChat
  • Retrieves the requested number of messages (default: 15, max: 100)
  • Returns messages with timestamp, sender, and content
  • Formats as structured JSON for easy parsing

2. Send Messages

Send a text message to any WeChat contact or group chat.

**What you can ask:**

Send "Meeting at 3pm" to "张三"
Message "Product Team" group: "Release notes updated"
Tell "李四": "Please review the document"

**What AI will do:**

  • Opens the specified chat in WeChat
  • Sends the message content
  • Confirms successful delivery

How to Use

Prerequisites

Before using this skill, ensure:

1. WeChat PC client is running 2. You are logged into your WeChat account 3. The contact/group name you specify exists in your WeChat

Example Usage

**Scenario 1: Check messages from a colleague**

User: "帮我看一下张三最近给我发了什么消息"
AI: [Runs get_messages.py script]
AI: "张三最近的5条消息:
1. [2024-01-28 10:30] 张三: 会议资料已发送
2. [2024-01-28 11:00] 张三: 请查收
..."

**Scenario 2: Send a message**

User: "给产品群发个消息:今天下午3点开会"
AI: [Runs send_message.py script]
AI: "消息已成功发送到产品群"

Instructions for AI

When the user requests WeChat message operations:

1. Retrieve Messages

Run the get_messages.py script:

python scripts/get_messages.py "<Contact/Group Name>" [count]

**Parameters:**

  • `Contact/Group Name`: Exact name as shown in WeChat (required)
  • `count`: Number of recent messages to retrieve (optional, default: 15, max: 100)

**Output Format:** The script returns JSON with message details:

[
  {
    "time": "2024-01-28 10:30:45",
    "sender": "张三",
    "content": "会议资料已发送",
    "type": "text"
  }
]

**IMPORTANT - Output Formatting for User:** After successfully retrieving messages, you MUST format them in a clean, readable way. DO NOT show raw JSON to the user.

**For 5 or fewer messages** - Use a numbered list:

📨 **张三** 的最近消息:

1. [2024-01-28 10:30] 张三: 会议资料已发送
2. [2024-01-28 11:00] 张三: 请查收
3. [2024-01-28 14:30] 你: 好的,已收到

**Tips:**

  • Always include contact/group name in the header
  • Keep timestamps concise (remove date if same day)
  • Group consecutive messages from same sender when appropriate
  • Highlight important information if user asks for summary

**Error Handling:**

  • If WeChat is not running: "WeChat PC client is not running or not logged in"
  • If contact not found: "Contact or group 'xxx' not found"
  • Parse the error and provide user-friendly explanation in Chinese

2. Send Messages

Run the send_message.py script:

python scripts/send_message.py "<Contact/Group Name>" "<Message Content>"

**Parameters:**

  • `Contact/Group Name`: Exact name as shown in WeChat (required)
  • `Message Content`: Text message to send (required, cannot be empty)

**Output:**

  • Success: "Message sent successfully to 'xxx'"
  • Failure: Error message with details

**Important Notes:**

  • Always enclose contact names and message content in quotes
  • Contact names must match exactly as shown in WeChat
  • For group chats, use the full group name
  • Only text messages are supported (no images/files/emojis)

3. Best Practices

**Name Matching:**

  • Ask user to confirm the exact contact/group name if unsure
  • Suggest checking WeChat contact list for correct spelling
  • Chinese names are case-sensitive and must match exactly

**Error Recovery:**

  • If "WeChat not found" error: Ask user to start WeChat and log in
  • If "Contact not found" error: Ask user to verify the name
  • If script fails: Check if Python environment is properly set up

**User Experience:**

  • Summarize retrieved messages in a readable format
  • Confirm before sending messages if content seems important
  • Provide context about what happened after each operation

Technical Details

Script Locations

skills/goodqunbot/
├── SKILL.md                    # This file
├── scripts/
│   ├── get_messages.py         # Retrieve messages
│   └── send_message.py         # Send messages
└── wxauto_lib/                 # WeChat automation library (pyc bytecode)

Implementation

Both scripts use the wxauto library (RPA-based WeChat automation):

**get_messages.py:**

  • Initializes WeChat instance
  • Opens specified chat with `wx.ChatWith(who)`
  • Retrieves all messages with `wx.GetAllMessage(savepic=False, savefile=False)`
  • Returns recent N messages as JSON

**send_message.py:**

  • Initializes WeChat instance
  • Sends message with `wx.SendMsg(msg=message, who=who, clear=True)`
  • Returns success/failure status

Limitations

1. **Platform**: Windows only (wxauto uses Windows API) 2. **Message Types**: Text only (no images, files, or rich media) 3. **Rate Limits**: May be subject to WeChat's anti-spam mechanisms 4. **Accuracy**: Contact name must match exactly (case-sensitive) 5. **State Dependency**: Requires WeChat PC client to be running and logged in

Troubleshooting

| Issue | Solution | |-------|----------| | "WeChat window not found" | Start WeChat PC client and log in | | "Contact not found" | Verify exact contact/group name in WeChat | | Scri

Read more
@imgoodbai
Ships withgoodable

Goodable is a local-first Desktop AI Workspace (Desktop Agent Runtime) powered by Claude Agent SDK, combining OS/file control, browser automation, and coding into composable Skills (tool + app modes) to build, run, and publish real AI apps.

Stars on GitHub

Momentum

stars in total
195
Star history of imgoodbai/goodable on GitHub, a chart by star-history.com

Other skills on goodable.

More skills from other plugins.

Questions about goodqunbot.

Which coding agents can use goodqunbot?
goodqunbot installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.