Skip to content

🫳 Download and archive content from URLs (tweets, YouTube, Reddit, X articles) into organized folders with transcripts and AI summaries

Notifications You must be signed in to change notification settings

jamesalmeida/grab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🫳 grab

Download and archive content from URLs into organized folders with transcripts and AI summaries.

Drop a URL, get everything saved β€” text, media, transcripts, summaries β€” organized and synced to Dropbox (or wherever you want).

Supported Sources

Source Saves
X/Twitter Tweets Tweet text, video, images, transcript, AI summary
X Articles Full article text, AI summary
Reddit Posts Post text, top comments, video, images, AI summary
YouTube Videos Video, description, thumbnail, transcript, AI summary

Install

brew install yt-dlp ffmpeg openai-whisper

Optionally, set your OpenAI API key for AI summaries and smart folder titles:

export OPENAI_API_KEY="sk-..."

Without it, media downloads and transcription (local Whisper) still work.

Clone and make the script available:

git clone https://github.com/jamesalmeida/grab.git
chmod +x grab/scripts/grab

Or if you're using OpenClaw, just drop the grab folder into your workspace skills/ directory.

Usage

grab <url>
grab --config    # Change save directory
grab --help      # Show help

First Run

On first run, grab asks where to save files:

🫳 grab β€” First time setup

Where should grabbed files be saved?
  Default: ~/Dropbox/ClawdBox

Save directory (press Enter for default):

Config is stored in ~/.config/grab/config.

Output Structure

Downloads are organized by type, each in its own dated folder:

~/Dropbox/ClawdBox/
  XPosts/
    2026-02-03_embrace-change-you-can-shape-your-life/
      tweet.txt
      video.mp4
      transcript.txt
      summary.txt
  XArticles/
    2026-01-20_the-arctic-smokescreen/
      article.txt
      summary.txt
  Youtube/
    2026-02-03_state-of-ai-in-2026/
      video.mp4
      description.txt
      thumbnail.jpg
      transcript.txt
      summary.txt
  Reddit/
    2026-02-03_maybe-maybe-maybe/
      post.txt
      comments.txt
      video.mp4
      summary.txt

Features

  • Auto-transcription β€” Videos are transcribed locally via Whisper (no API key needed)
  • AI summaries β€” Every piece of content gets an AI-generated summary with key insights
  • Smart folder naming β€” Video folders are renamed based on transcript content (not just the tweet text)
  • Image descriptions β€” Image-only tweets get folder names from AI image analysis
  • Configurable save location β€” First-run setup, change anytime with --config
  • Reddit comments β€” Saves top 20 comments with authors and scores
  • YouTube metadata β€” Description, thumbnail, view/like counts all preserved

How It Works

Tweets with video: Downloads video via yt-dlp β†’ extracts audio β†’ transcribes with Whisper β†’ generates summary β†’ renames folder to descriptive title from content.

Tweets with images: Downloads images β†’ analyzes first image with vision model β†’ renames folder to image description.

X Articles: Detected automatically (exit code 2). Requires OpenClaw agent with browser to extract article content (X blocks headless access).

Reddit posts: Fetches via Reddit JSON API β†’ saves post + top comments β†’ downloads any video/images β†’ transcribes video β†’ generates summary of post + discussion.

YouTube: Fetches metadata β†’ downloads video (1080p max) + thumbnail β†’ transcribes β†’ generates summary.

Requirements

  • yt-dlp β€” media downloads
  • ffmpeg β€” audio extraction and video merging
  • curl β€” API requests
  • python3 β€” JSON parsing and API calls
  • whisper (openai-whisper) β€” local transcription (no API key needed)
  • OPENAI_API_KEY β€” optional, for AI summaries and smart folder titles (GPT-4o-mini). Without it, media downloads and transcription still work.

OpenClaw Skill

This is an OpenClaw / AgentSkills-compatible skill. The SKILL.md contains metadata for automatic discovery and gating.

When used with OpenClaw, the agent handles:

  • X Articles (browser-based extraction)
  • Reddit fallback (when JSON API is blocked)
  • Automatic OPENAI_API_KEY injection from config

License

MIT

About

🫳 Download and archive content from URLs (tweets, YouTube, Reddit, X articles) into organized folders with transcripts and AI summaries

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages