360 Secure SkillHub
360 安全技能中心
当前公开展示的是 Instagram Reel Extractor。本作品已批准的版本仍可按原地址安装和更新。

Instagram Reels Monitor

该 Skill 依赖已打开的 Instagram Direct 收件箱标签页和 OpenClaw 浏览器中继,通过 browser 工具检查未读私信、点开会话、提取含 /reel/ 或 /p/ 的链接及发送者用户 ID,并按 userid,reel_link 格式追加到 instagram_reels.csv。

thejas775
thejas775
热度 34.34
最近更新 2026-05-11 17:44:14
分类:自动化依赖:联网浏览搜索 / 读写文件应用场景:自动化脚本 / 工作流 / 数据处理

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add instagram-reels-monitor
Metadata
name
instagram-reels-monitor
description
Monitor Instagram DMs for reels. Use when you need to check Instagram DMs for new unread messages containing reels, click them, extract the reel link, and append to an instagram_reels.csv file.

Instagram Reels Monitor

This skill monitors an already open Instagram Direct Messages tab for new messages containing reels and saves them to a CSV file.

Requirements

  • An active browser session with a tab open to https://www.instagram.com/direct/inbox/.
  • The user must have the OpenClaw browser relay attached to that tab.

Workflow

  1. Use the browser tool with action: tabs and profile: chrome to find the targetId for the Instagram Messages tab.
  2. Use the browser tool with action: act, kind: evaluate to run a script that checks for new, unread messages in the DM list.
  3. If an unread message is found, click the conversation to open it.
  4. Once the conversation is open, use browser action: act, kind: evaluate to extract the href of any link containing /reel/ or /p/ (if it's a video/reel).
  5. Extract the Instagram user ID of the sender.
  6. Append the data to instagram_reels.csv in the format userid,reel_link.
  7. Return to the main inbox view (if necessary) to check for more messages.

Example Scripts

Extract Reel Links from an Open Conversation

() => {
    const links = Array.from(document.querySelectorAll('a'));
    return links.filter(a => a.href.includes('/reel/')).map(a => a.href);
}

List DM Conversations

() => {
    const buttons = Array.from(document.querySelectorAll('div[role="button"]'));
    return buttons.map(b => b.innerText.replace(/\n/g, ' '));
}