# Channel Message

当需要主动向用户、会话或频道单向发送消息时，使用本 skill。通常仅在用户明确要求向某个 channel / 会话发送消息，或需要主动通知时使用。先用 qwenpaw...

- Repository: https://github.com/agentscope-ai/QwenPaw (37135 stars)
- Category: Engineering
- License: Apache-2.0
- Last updated: 2026-10-30
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add agentscope-ai/QwenPaw --skill channel_message -g -a claude-code -y`
Codex: `npx skills add agentscope-ai/QwenPaw --skill channel_message -g -a codex -y`
Cursor: `npx skills add agentscope-ai/QwenPaw --skill channel_message -g -a cursor -y`
Gemini CLI: `npx skills add agentscope-ai/QwenPaw --skill channel_message -g -a gemini-cli -y`

## Description

当需要主动向用户、会话或频道单向发送消息时，使用本 skill。通常仅在用户明确要求向某个 channel / 会话发送消息，或需要主动通知时使用。先用 qwenpaw chats list 查询 session，再用 qwenpaw channels send 推送消息。

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# 频道消息推送

## 什么时候用

通常只有在**用户明确要求向某个 channel / 会话发送消息**，或你需要**主动推送通知**（如任务完成、提醒、告警）时，使用本 skill。  
这是**单向发送**，**不会返回回复**。

### 应该使用
- 用户明确要求发往某个 channel / 会话
- 任务完成后主动通知用户
- 定时提醒、告警、状态更新
- 将异步结果推送回某个已有会话
- 用户明确要求"处理完后通知我"

### 不应使用
- 如果只是当前会话中的正常回复，**不要使用 `qwenpaw channels send`**
- 需要和用户进行双向对话并立即等待回复
- 还不知道目标 session 是哪个
- 想当然猜测 `target-user` 或 `target-session`

## 决策规则

1. **通常只有在用户明确要求发往某个 channel / 会话，或需要主动通知时才使用**
2. **发送前必须先查 session**
3. **不要猜 `target-user` 和 `target-session`**
4. **如果查到多个 session，优先使用最近活跃的**
5. **`channel send` 是单向推送，不会返回用户回复**

---

## 最常用命令

### 1) 先查询可用 sessions

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

也可以按用户筛选：

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

### 2) 发送消息

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

---

## 最小工作流

```
1. 判断：是否为用户明确要求发送，或是否需要主动通知
2. qwenpaw chats list 查询目标 session
3. 从结果中获取 user_id 和 session_id
4. 若有多个 session，优先选最近活跃的
5. qwenpaw channels send 发送消息
6. 结束（无回复）
```

---

## 关键规则

### 必填参数

`qwenpaw channels send` 必须同时提供：
- `--agent-id`
- `--channel`
- `--target-user`
- `--target-session`
- `--text`

### 必须先查询

发送前先执行：

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

从结果中获取：
- `user_id` → `--target-user`
- `session_id` → `--target-session`

如果有多个候选 session，优先选择 `updated_at` 最近的会话。

### 单向推送

`qwenpaw channels send` 只负责发送，不等待回复。

---

## 简短示例

### 用户明确要求发往某个 channel

```bash
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 "周报已生成，请查收"
```

### 任务完成通知

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

The rest: https://github.com/agentscope-ai/QwenPaw/blob/HEAD/src/qwenpaw/agents/skills/channel_message-zh/SKILL.md
