Rechercher

PythonReactSEOPDF
OpenClaw

feishu-message

Fetch Feishu message content by message_id, with optional thread context. Activate when: needing to read the content of a specific Feishu message by its message_id, needing thread context around a message, or encountering "[Interactive Card]" placeholder text. Handles all msg_types: text, post, interactive (fallback only), image, merge_forward.

deadblue220 installations selon la source☆ 0 Étoiles du dépôt

Installation

Suivez les instructions du dépôt pour votre agent. Consultez les fichiers et dépendances avant l’installation.

SkillHub CLI

skillhub install deadblue22/feishu-msg-reader

Examinez la source et la compatibilité, puis suivez les étapes d’installation.

Donnez le lien à votre agent et demandez-lui d’examiner instructions et dépendances avant d’expliquer les étapes.

Voir la source ↗Guides

Instructions

Feishu Message Fetcher

Fetch any Feishu message content by message_id using the IM API, with optional thread context.

Known Limitation

Interactive cards (msg_type: interactive): The Feishu GET message API (/im/v1/messages/{id}) only returns fallback/degraded text in body.content, not the full card JSON. This is a Feishu platform limitation — there is no API to retrieve the rendered card structure after sending.

Workaround: Use --thread to fetch the entire thread context. The interactive card is usually a reply to a text/post message that contains the actual content. Reading the thread gives you the full picture.

Usage

# Fetch a single message
python3 scripts/fetch_message.py <message_id>

# Fetch with thread context (root message + all replies in thread)
python3 scripts/fetch_message.py <message_id> --thread

# Raw API response
python3 scripts/fetch_message.py <message_id> --raw

Auth

Automatic — reads appId/appSecret from ~/.openclaw/openclaw.json. Alternatively set FEISHU_APP_ID + FEISHU_APP_SECRET env vars, or pass --token <tenant_access_token>.

Output

JSON with: message_id, msg_type, sender_id, sender_type, chat_id, create_time, root_id, parent_id, content (parsed).

With --thread: adds thread array (all messages in the same thread, sorted chronologically) and thread_count.

Typical Workflow

When you encounter [Interactive Card] in a replied-to message:

  1. Get the message_id from inbound metadata (has_reply_context, parent message info)
  2. Run fetch_message.py <parent_message_id> --thread
  3. The thread context will contain the text/post messages with actual content
  4. Use that content to fulfill the user's request

Informations sur la source

Source
github
Repository
openclaw/skills
Path
skills/deadblue22/feishu-msg-reader
Version
—
Commit
e4ca3a33d105476ddb0e96ee1cacf74cdc6e9395
Source de classification
rules
Statut
active
Visibilité
public

Ces informations proviennent de l’analyse indexée et peuvent être anciennes. Vérifiez les fichiers actuels.

Contenu extrait

SKILL.md
# Feishu Message Fetcher

Fetch any Feishu message content by `message_id` using the IM API, with optional thread context.

## Known Limitation

**Interactive cards** (`msg_type: interactive`): The Feishu GET message API (`/im/v1/messages/{id}`) only returns **fallback/degraded text** in `body.content`, not the full card JSON. This is a Feishu platform limitation — there is no API to retrieve the rendered card structure after sending.

**Workaround**: Use `--thread` to fetch the entire thread context. The interactive card is usually a reply to a text/post message that contains the actual content. Reading the thread gives you the full picture.

## Usage

```bash
# Fetch a single message
python3 scripts/fetch_message.py <message_id>

# Fetch with thread context (root message + all replies in thread)
python3 scripts/fetch_message.py <message_id> --thread

# Raw API response
python3 scripts/fetch_message.py <message_id> --raw
```

## Auth

Automatic — reads `appId`/`appSecret` from `~/.openclaw/openclaw.json`. Alternatively set `FEISHU_APP_ID` + `FEISHU_APP_SECRET` env vars, or pass `--token <tenant_access_token>`.

## Output

JSON with: `message_id`, `msg_type`, `sender_id`, `sender_type`, `chat_id`, `create_time`, `root_id`, `parent_id`, `content` (parsed).

With `--thread`: adds `thread` array (all messages in the same thread, sorted chronologically) and `thread_count`.

## Typical Workflow

When you encounter `[Interactive Card]` in a replied-to message:

1. Get the message_id from inbound metadata (`has_reply_context`, parent message info)
2. Run `fetch_message.py <parent_message_id> --thread`
3. The thread context will contain the text/post messages with actual content
4. Use that content to fulfill the user's request

Skills associés

OpenClaw

geo-optimization

capt-marbles

Generative Engine Optimization (GEO) for AI search visibility. Optimize content to appear in ChatGPT, Perplexity, Claude, and Google AI Overviews. Use when optimizing websites, pages, or content for LLM discove...

OpenClaw

139mail

chang-tong

139邮箱邮件收发 Skill - 支持 IMAP/SMTP 协议,兼容139/QQ/163/Gmail等主流邮箱 功能: 1. 发送邮件(SMTP) 2. 接收邮件(IMAP) 3. 查看收件箱列表 4. 查看未读邮件 当用户提到 "发邮件"、"收邮件"、"查看邮件"、"邮箱"...