# Feishu Message

> Feishu message reading. Activate when user mentions reading messages, chat history, message lookup, or finding previous messages.

- Skill: `m1heng/feishu-message` (Agent Skill)
- Install (CLI): `npx skillmds add m1heng/feishu-message`
- Raw SKILL.md: https://api.skillmd.com/api/skills/m1heng/feishu-message/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: m1heng (https://skillmd.com/u/m1heng)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/m1heng/feishu-message

---


# Feishu Message Tool

Single tool `feishu_message` for reading Feishu messages — get a single message by ID or list recent messages in a chat.

## Actions

### Get Single Message

```json
{
  "action": "get",
  "message_id": "om_xxx"
}
```

Returns:

```json
{
  "ok": true,
  "action": "get",
  "found": true,
  "message_id": "om_xxx",
  "msg_type": "text",
  "content": "Hello world",
  "sender_id": "ou_xxx",
  "sender_type": "user",
  "chat_id": "oc_xxx",
  "create_time": "1710000000000",
  "update_time": "1710000000000",
  "mentions": []
}
```

### List Recent Messages

List recent messages in a chat (DM or group), newest first by default.
Omit `chat_id` to use the current conversation's chat:

```json
{
  "action": "list"
}
```

With custom page size, sort order, and time range:

```json
{
  "action": "list",
  "chat_id": "oc_xxx",
  "page_size": 20,
  "sort_type": "ByCreateTimeAsc",
  "start_time": "1710000000",
  "end_time": "1710086400"
}
```

Returns:

```json
{
  "ok": true,
  "action": "list",
  "chat_id": "oc_xxx",
  "total": 10,
  "messages": [
    {
      "message_id": "om_xxx",
      "msg_type": "text",
      "content_preview": "Hello world",
      "sender_id": "ou_xxx",
      "sender_type": "user",
      "create_time": "1710000000000",
      "chat_id": "oc_xxx"
    }
  ]
}
```

## Parameters

| Parameter | Required | Description |
|-----------|----------|-------------|
| `action` | Yes | `get` or `list` |
| `message_id` | get: Yes | Feishu message ID (e.g., `om_xxx`) |
| `chat_id` | list: Optional | Chat ID (e.g., `oc_xxx`). Omit to use current chat. |
| `page_size` | list: Optional | Number of messages (default: 10, max: 50) |
| `sort_type` | list: Optional | `ByCreateTimeDesc` (default) or `ByCreateTimeAsc` |
| `start_time` | list: Optional | Unix timestamp in seconds (e.g., `"1710000000"`). No lower bound if omitted. |
| `end_time` | list: Optional | Unix timestamp in seconds (e.g., `"1710086400"`). No upper bound if omitted. |

## Configuration

```yaml
channels:
  feishu:
    tools:
      message: true  # default: true
```

## Permissions

- `im:message` or `im:message:readonly` — read single/DM messages
- `im:message.group_at_msg:readonly` — read all messages in group chats (not just @bot messages)

