Skills Productivity Proactive Channel Message Sending

Proactive Channel Message Sending

v20260427
channel-message
This skill enables the proactive, one-way sending of messages to specific users, sessions, or channels (e.g., Feishu, Discord). It is ideal for automated notifications, task completion alerts, or status updates when a reply is not expected. Before sending, the workflow requires querying available sessions to obtain necessary target IDs.
Get Skill
215 downloads
Overview

Channel Message

When to Use

Use this skill only when the user explicitly asks you to send a message to a channel/session, or when you need to proactively push a notification (e.g., task completion, reminders, alerts). This is a one-way sendno reply is returned.

Should Use

  • The user explicitly asks to send to a specific channel/session
  • Proactively notifying the user after a task completes
  • Scheduled reminders, alerts, or status updates
  • Pushing async results back to an existing session
  • The user explicitly says "notify me when done"

Should Not Use

  • If you are simply replying in the current session, do not use qwenpaw channels send
  • You need a two-way conversation and expect an immediate reply
  • You do not know which target session to use
  • You are guessing target-user or target-session

Decision Rules

  1. Only use this when the user explicitly asks to send to a channel/session, or proactive notification is needed
  2. You must query sessions before sending
  3. Do not guess target-user or target-session
  4. If multiple sessions are found, prefer the most recently active one
  5. channel send is a one-way push — no user reply is returned

Most Common Commands

1) Query available sessions first

qwenpaw chats list --agent-id <your_agent> --channel <channel>

You can also filter by user:

qwenpaw chats list --agent-id <your_agent> --user-id <user_id>

2) Send a message

qwenpaw channels send \
  --agent-id <your_agent> \
  --channel <channel> \
  --target-user <user_id> \
  --target-session <session_id> \
  --text "..."

Minimal Workflow

1. Determine: is the user explicitly requesting a send, or is proactive notification needed?
2. qwenpaw chats list — query the target session
3. Extract user_id and session_id from the results
4. If multiple sessions exist, prefer the most recently active one
5. qwenpaw channels send — send the message
6. Done (no reply)

Key Rules

Required Parameters

qwenpaw channels send requires all of the following:

  • --agent-id
  • --channel
  • --target-user
  • --target-session
  • --text

Must Query First

Before sending, run:

qwenpaw chats list --agent-id <your_agent> --channel <channel>

Extract from the results:

  • user_id--target-user
  • session_id--target-session

If there are multiple candidate sessions, prefer the one with the most recent updated_at.

One-Way Push

qwenpaw channels send only sends — it does not wait for a reply.


Brief Examples

User explicitly asks to send to a channel

qwenpaw chats list --agent-id notify_bot --channel feishu

qwenpaw channels send \
  --agent-id notify_bot \
  --channel feishu \
  --target-user manager_id \
  --target-session manager_session \
  --text "Weekly report is ready, please review"

Task completion notification

qwenpaw chats list --agent-id task_bot --channel console

qwenpaw channels send \
  --agent-id task_bot \
  --channel console \
  --target-user alice \
  --target-session alice_console_001 \
  --text "Task completed"

Async result push-back

qwenpaw chats list --agent-id analyst_bot --user-id alice

qwenpaw channels send \
  --agent-id analyst_bot \
  --channel console \
  --target-user alice \
  --target-session alice_console_001 \
  --text "Data analysis is complete. Results saved to report.pdf"

Common Mistakes

Mistake 1: Using channel send for a normal reply

If you are replying to the user in the current session, do not use qwenpaw channels send.

Mistake 2: Sending without querying sessions first

Do not guess target-user or target-session. First run:

qwenpaw chats list --agent-id <your_agent> --channel <channel>

Mistake 3: Missing required parameters

All five are required: --agent-id, --channel, --target-user, --target-session, --text.

Mistake 4: Expecting a reply from send

There is no reply. It only pushes the message.

Mistake 5: Picking an arbitrary session when the user has multiple

Prefer the most recently active session.


Optional Commands

List all sessions

qwenpaw chats list --agent-id <your_agent>

List sessions for a specific user

qwenpaw chats list --agent-id <your_agent> --user-id <user_id>

List available channels

qwenpaw channels list --agent-id <your_agent>

Difference from Agent Chat

  • qwenpaw agents chat: sends to another agent, two-way, returns a reply
  • qwenpaw channels send: sends to a user/session/channel, one-way, no reply

Selection principle:

  • Need to collaborate with another agent → qwenpaw agents chat
  • Need to proactively push a message to a user → qwenpaw channels send

Full Parameter Reference

qwenpaw chats list

Required parameters:

  • --agent-id: Agent ID

Optional parameters:

  • --channel: filter by channel
  • --user-id: filter by user
  • --base-url: override API address

qwenpaw channels send

Required parameters (5):

  • --agent-id: sender agent ID
  • --channel: target channel (console/dingtalk/feishu/discord/imessage/qq/...)
  • --target-user: target user ID (obtained from qwenpaw chats list)
  • --target-session: target session ID (obtained from qwenpaw chats list)
  • --text: message content

Optional parameters:

  • --base-url: override API address

Help

Use -h at any time to view detailed help:

qwenpaw channels -h
qwenpaw channels send -h
qwenpaw chats -h
qwenpaw chats list -h
Info
Category Productivity
Name channel-message
Version v20260427
Size 5.94KB
Updated At 2026-04-28
Language