██████╗ ██╗ ██╗██╗ ██████╗
██╔══██╗██║ ██║██║ ██╔══██╗
██████╔╝██║ ██║██║ ██████╔╝
██╔═══╝ ██║ ██║██║ ██╔═══╝
██║ ╚██████╔╝███████╗██║
╚═╝ ╚═════╝ ╚══════╝╚═╝
squeeze the web into clean markdown for AI
Pulp is a free, open-source, local-first alternative to createskills. Extract clean markdown from any webpage, YouTube video, Reddit post, Instagram Reel, or PDF — then package it as a skill for your AI workflows.
No API keys. No monthly fees. No data leaving your machine.
curl -sSL https://raw.githubusercontent.com/Baseplayer23893/Pulp/main/install.sh | bash| Pulp | createskills | |
|---|---|---|
| Price | Free forever | $10+/month |
| Open source | ✅ | ❌ |
| Local-first | ✅ | ❌ |
| YouTube transcripts | ✅ | Paywalled |
| MCP server | ✅ | Paywalled |
| API keys needed | None | Required |
- 🌐 Web pages — any URL → clean markdown via defuddle
▶️ YouTube — transcripts from any video or Short, no API key- 🟠 Reddit — post + top comments as markdown
- 📸 Instagram Reels — audio transcription + caption
- 📄 PDF — extract text from any PDF file
- 📦 Skill packaging — bundle extractions into
skill.zipfor Cursor, Antigravity, or any AI IDE - 🧠 brain CLI hook — integrates with your second brain workflow
- 🍊 Beautiful TUI — built with Bubble Tea + Lip Gloss
One-line install (Linux/macOS):
curl -sSL https://raw.githubusercontent.com/Baseplayer23893/Pulp/main/install.sh | bashBuild from source:
git clone https://github.com/Baseplayer23893/Pulp
cd Pulp
go build -o pulp ./main.go
sudo mv pulp /usr/local/bin/Dependencies:
npm install -g defuddle # web extraction
pipx install yt-dlp # YouTube / Instagram metadata and transcriptsCheck your machine:
pulp doctorpulp # open TUI
pulp extract <url> # extract webpage
pulp youtube <url> # YouTube transcript
pulp reddit <url> # Reddit post + comments
pulp instagram <url> # Instagram Reel
pulp pdf <file> # extract PDF
pulp package <name> # create skill.zip
pulp doctor # check dependencies and local setupQuick squeeze any URL straight from the TUI — just paste and hit Enter.
| Flag | Description |
|---|---|
-o, --output <path> |
Write to specific file path |
-f, --format <format> |
Output format: md (markdown), skillzip (zip archive), single (no frontmatter) |
-q, --quiet |
Suppress verbose output |
--no-cache |
Bypass cache, force fresh extraction |
--dry-run |
Show extraction info without writing files |
Pulp determines where to write output using this priority order:
-o/--outputflag — Explicit file path always winsPULP_FORCE_STDOUT=1— Force stdout, bypasses config (used by TUI)output_dirin config — Config file setting (~/.config/pulp/config.json)- Default — stdout
# Explicit output file
pulp extract https://example.com -o article.md
pulp extract https://example.com --output article.md
# Output format
pulp extract https://example.com -f skillzip
pulp extract https://example.com --format skillzip
# Force stdout (for scripting)
PULP_FORCE_STDOUT=1 pulp extract https://example.com
# TUI uses PULP_FORCE_STDOUT internally to capture CLI output
# Config sets default output directory
pulp config set output_dir ~/Documents/pulp-output
# Then extraction goes to ~/Documents/pulp-output/<slug>.mdThe supported launch surface is the CLI/TUI core:
- Web, YouTube, Reddit, Instagram, and PDF extraction
- Save, copy/fallback, settings, and history in the TUI
skill.zippackagingpulp doctorsetup checks
Experimental or future work:
- Web dashboard/API
- MCP integration
- Cloud sync
Pulp outputs a skill.zip that works with any AI IDE:
my-research/
├── SKILL.md ← clean content + frontmatter
└── references/ ← images, PDFs, audio
Drop it in your skills directory and your AI has the context.
TUI screenshots coming soon
- Web page extraction
- YouTube transcripts (no API key)
- Reddit posts
- Instagram Reels
- PDF extraction
- Beautiful TUI (Bubble Tea)
- Skill packaging
- Doctor/setup checks
- Web dashboard/API
- MCP integration
- Cloud sync (future)
PRs, issues, and feature requests welcome. Check CONTRIBUTING.md.
MIT — free forever, do whatever you want with it.