技能详情(站内镜像,无评论)
许可证:MIT-0
MIT-0 ·免费使用、修改和重新分发。无需归因。
版本:v1.0.0
统计:⭐ 2 · 671 · 2 current installs · 2 all-time installs
⭐ 2
安装量(当前) 2
🛡 VirusTotal :可疑 · OpenClaw :良性
Package:antoinedc/instagram-reels
安全扫描(ClawHub)
- VirusTotal :可疑
- OpenClaw :良性
OpenClaw 评估
The skill's requirements and runtime instructions align with its stated purpose (downloading public reels, extracting audio, and calling Groq Whisper to transcribe); nothing requested is disproportionate to that goal.
目的
Name/description match the declared binaries and env var. yt-dlp, ffmpeg, python3, and curl are required for downloading, extracting, and converting audio; GROQ_API_KEY is needed to call the Groq transcription API. No unrelated credentials or binaries are requested.
说明范围
Instructions stay focused on downloading public media, extracting audio, and calling the Groq transcription endpoint. One notable scope-sensitive point: the doc advises exporting browser cookies and using a 'Get cookies.txt' extension for private reels — that legitimately enables access to private content but also involves handling session cookies (sensitive tokens). The instructions write temporary files to /tmp and call out cleaning them up;…
安装机制
This is instruction-only (no install spec). The setup suggests installing yt-dlp via pip and ffmpeg via package managers — standard for this workflow. No downloads from arbitrary URLs or archive extraction steps are present.
证书
Only GROQ_API_KEY is declared and used; that is appropriate for the transcription API. The SKILL.md does not reference additional environment variables beyond the declared key.
持久
Skill is instruction-only, not always-included, and requests no persistent system-level privileges. It does not modify other skills' configs or require permanent presence.
综合结论
This skill appears coherent and does what it says: download public reels (or private ones if you supply cookies), convert audio, and call Groq's transcription API. Before installing/use: 1) Only export and provide browser cookies if you understand the privacy risk — cookies contain session tokens and can grant account access; prefer using public reels when possible. 2) Keep your GROQ_API_KEY secret (set as an env var, rotate if leaked) and con…
安装(复制给龙虾 AI)
将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。
请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「Instagram Reels」。简介:Download Instagram Reels, transcribe audio, and extract captions. Share a reel …。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/antoinedc/instagram-reels/SKILL.md
(来源:yingzhi8.cn 技能库)
SKILL.md
---
name: instagram-reels
version: "1.0.0"
description: Download Instagram Reels, transcribe audio, and extract captions. Share a reel URL and get back a full transcript with the original description.
metadata:
openclaw:
requires:
env:
- GROQ_API_KEY
bins:
- curl
- yt-dlp
- ffmpeg
- python3
primaryEnv: GROQ_API_KEY
homepage: https://groq.com
---
# Instagram Reels Skill
Download Instagram Reels, transcribe the audio, and extract the caption/description.
## Setup
1. Install required tools:
```bash
pip install yt-dlp
apt install ffmpeg # or: brew install ffmpeg
```
2. Get a free Groq API key at [https://console.groq.com](https://console.groq.com)
3. Set your environment variable:
```bash
export GROQ_API_KEY="your-groq-api-key"
```
## Usage
Process a reel in three steps: extract metadata, download audio, transcribe.
### Step 1: Extract metadata and audio URL
```bash
yt-dlp --write-info-json --skip-download -o "/tmp/reel" "REEL_URL"
```
This writes `/tmp/reel.info.json` with the caption, uploader, CDN URLs, and other metadata. No login required for public reels.
### Step 2: Download audio and convert to mp3
Extract the audio CDN URL from metadata and download it directly:
```bash
AUDIO_URL=$(python3 -c "
import json
d = json.load(open('/tmp/reel.info.json'))
for f in d.get('formats', []):
if f.get('ext') == 'm4a':
print(f['url'])
break
")
curl -sL "$AUDIO_URL" -o /tmp/reel-audio.m4a
ffmpeg -y -i /tmp/reel-audio.m4a -acodec libmp3lame -q:a 4 /tmp/reel-audio.mp3
```
### Step 3: Transcribe with Groq Whisper
```bash
curl -s https://api.groq.com/openai/v1/audio/transcriptions
-H "Authorization: Bearer $GROQ_API_KEY"
-F "file=@/tmp/reel-audio.mp3"
-F "model=whisper-large-v3-turbo"
-F "response_format=verbose_json"
```
Returns JSON with `text` (full transcript) and `segments` (with timestamps). Language is auto-detected.
### Extract caption from metadata
```bash
python3 -c "
import json
d = json.load(open('/tmp/reel.info.json'))
print('Caption:', d.get('description', 'No caption'))
print('Author:', d.get('uploader', 'Unknown'))
print('Duration:', round(d.get('duration', 0)), 'seconds')
"
```
## Notes
- Metadata extraction works on public reels without authentication
- For private reels, pass cookies: `yt-dlp --cookies /path/to/cookies.txt --write-info-json --skip-download -o "/tmp/reel" "REEL_URL"`
- Export cookies with a browser extension like "Get cookies.txt LOCALLY"
- Groq Whisper is free (rate-limited) and returns results in ~1-2 seconds
- Max audio length: 25 minutes per request
- Clean up temp files after: `rm -f /tmp/reel.info.json /tmp/reel-audio.*`
- Also works with TikTok, YouTube Shorts, and other platforms supported by yt-dlp
## Examples
```bash
# Full transcription pipeline
yt-dlp --write-info-json --skip-download -o "/tmp/reel" "https://www.instagram.com/reel/ABC123/" &&
AUDIO_URL=$(python3 -c "import json; [print(f['url']) for f in json.load(open('/tmp/reel.info.json')).get('formats',[]) if f.get('ext')=='m4a'][:1]") &&
curl -sL "$AUDIO_URL" -o /tmp/reel-audio.m4a &&
ffmpeg -y -i /tmp/reel-audio.m4a -acodec libmp3lame -q:a 4 /tmp/reel-audio.mp3 2>/dev/null &&
curl -s https://api.groq.com/openai/v1/audio/transcriptions
-H "Authorization: Bearer $GROQ_API_KEY"
-F "file=@/tmp/reel-audio.mp3"
-F "model=whisper-large-v3-turbo"
-F "response_format=verbose_json"
# Just get the caption (no transcription)
yt-dlp --write-info-json --skip-download -o "/tmp/reel" "https://www.instagram.com/reel/ABC123/" &&
python3 -c "import json; d=json.load(open('/tmp/reel.info.json')); print(d.get('description',''))"
# Transcribe a TikTok video (same pipeline)
yt-dlp --write-info-json --skip-download -o "/tmp/reel" "https://www.tiktok.com/@user/video/123" &&
AUDIO_URL=$(python3 -c "import json; [print(f['url']) for f in json.load(open('/tmp/reel.info.json')).get('formats',[]) if f.get('ext')=='m4a'][:1]") &&
curl -sL "$AUDIO_URL" -o /tmp/reel-audio.m4a &&
ffmpeg -y -i /tmp/reel-audio.m4a -acodec libmp3lame -q:a 4 /tmp/reel-audio.mp3 2>/dev/null &&
curl -s https://api.groq.com/openai/v1/audio/transcriptions
-H "Authorization: Bearer $GROQ_API_KEY"
-F "file=@/tmp/reel-audio.mp3"
-F "model=whisper-large-v3-turbo"
-F "response_format=verbose_json"
```