stock-data-skill
OpenClaw Skill for stock data analysis
Fetch and parse Feishu merged/forwarded messages (合并转发消息). Activate when a Feishu message shows "Merged and Forwarded Message" with no readable content, or when you need to retrieve sub-messages from a merge_forward message type.
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-merged-msgExaminez 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.
Feishu's merge_forward messages appear as "Merged and Forwarded Message" with no content in the bot API. Use the Feishu REST API to retrieve the actual sub-messages.
"Merged and Forwarded Message"
msg_type is merge_forward
The Feishu GET /open-apis/im/v1/messages/{message_id} endpoint returns the parent message plus all sub-messages in data.items[]. Sub-messages have upper_message_id pointing to the parent.
Get the message_id of the merged message (from inbound context or replied message metadata).
Run the fetch script:
bash <skill_dir>/scripts/fetch_merged_msg.sh <message_id> <app_id> <app_secret>
app_id / app_secret: from OpenClaw config at .channels.feishu in openclaw.json
python3 -c "import json; d=json.load(open('/root/.openclaw/openclaw.json')); c=d['channels']['feishu']; print(c.get('appId',''), c.get('appSecret',''))"
Parse the JSON response:
data.items[0] is the parent (merge_forward) messagedata.items[1:] are the sub-messages in chronological orderbody.content with the actual text/post contentmentions[] maps @_user_N placeholders to real namessender.id identifies who sent each sub-messageSummarize the conversation thread for the user.
im:message:readonly scope on the Feishu app.image_key references; they cannot be directly displayed but can be described from context.chat_id); the original chat context may differ from the current group.Ces informations proviennent de l’analyse indexée et peuvent être anciennes. Vérifiez les fichiers actuels.
# Feishu Merged Message Fetcher
Feishu's merge_forward messages appear as "Merged and Forwarded Message" with no content in the bot API. Use the Feishu REST API to retrieve the actual sub-messages.
## When to Use
- Message body contains only `"Merged and Forwarded Message"`
- `msg_type` is `merge_forward`
- User asks about a forwarded/合并转发 message you can't read
## How It Works
The Feishu `GET /open-apis/im/v1/messages/{message_id}` endpoint returns the parent message plus all sub-messages in `data.items[]`. Sub-messages have `upper_message_id` pointing to the parent.
## Steps
1. Get the `message_id` of the merged message (from inbound context or replied message metadata).
2. Run the fetch script:
```bash
bash <skill_dir>/scripts/fetch_merged_msg.sh <message_id> <app_id> <app_secret>
```
- `app_id` / `app_secret`: from OpenClaw config at `.channels.feishu` in `openclaw.json`
- If credentials are not readily available, extract them:
```bash
python3 -c "import json; d=json.load(open('/root/.openclaw/openclaw.json')); c=d['channels']['feishu']; print(c.get('appId',''), c.get('appSecret',''))"
```
3. Parse the JSON response:
- `data.items[0]` is the parent (merge_forward) message
- `data.items[1:]` are the sub-messages in chronological order
- Each sub-message has `body.content` with the actual text/post content
- `mentions[]` maps `@_user_N` placeholders to real names
- `sender.id` identifies who sent each sub-message
4. Summarize the conversation thread for the user.
## Notes
- The API requires `im:message:readonly` scope on the Feishu app.
- Images inside sub-messages show as `image_key` references; they cannot be directly displayed but can be described from context.
- Sub-messages may come from different chats (check `chat_id`); the original chat context may differ from the current group.OpenClaw Skill for stock data analysis
Search and hire real humans for tasks — photography, delivery, research, and more
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...
Reusable skill templates for OpenClaw AI agents. Templates for API integration, data processing, web scraping, CLI tools, and file processing.