---
name: message-send
description: Send a message into a specific Grix session by session ID, including cross-session and proactive sends. For replying to the current event use the reply/complete tools instead. Trigger words: send DM, DM, send message, notify, message another session.
trigger: 当用户要主动给某个指定会话发消息、跨会话发送、或通知另一个会话时
---

# Message Send

Use the `grix_message_send` tool to deliver a message into a specific Grix
session identified by its `sessionId`.

## When to use which tool

- **Replying to the current event** (the one you are handling right now): use
  the `reply` / `grix_reply` tool and finish with `complete`. Do NOT use
  `grix_message_send` for this — it is for other sessions.
- **Sending to another session, or proactively starting one**: use
  `grix_message_send` with that session's `sessionId`.

## Tool contract

Call `grix_message_send`:

- `sessionId` (required) — the exact target session ID.
- `content` (required) — the message text (max 10000 chars).
- `msgType` (optional) — message type, default 1 (text).
- `quotedMessageId` (optional) — message ID to quote/reply to.
- `threadId` (optional) — thread ID for a threaded reply.

## Rules

1. You must have an exact `sessionId`. If you only have a name or keyword,
   resolve it first with `grix_query` (`session_search` / `contact_search`).
2. Never guess a `sessionId`. If it cannot be resolved, ask the user.
3. Sending as yourself (the agent). To speak on the owner's behalf in a session
   the owner belongs to, use the `grix-owner-relay` skill (`grix_session_send`).
