IP
Instagram Post Downloader
🟡 Experimental🕐 updated 2026-06-24
🔷 SkillSpec L3
pm-writers
Download and save Instagram posts as high-resolution files. Use when asked to download, save, or archive an Instagram post, reel thumbnail, or carousel. Produces saved high-res images in a named folder, with carousel slides stitched into a single PDF; supports batch downloading of multiple URLs at once.
🗣 Say this to your agent
“Download this Instagram post for me: https://www.instagram.com/p/ABC123/”“Save that carousel to my downloads folder”“Can you grab all the slides from this Instagram post and make a PDF?”“Download these 5 Instagram posts" [followed by list of URLs]”“Archive this IG post before it gets deleted”
What to give it
▸Instagram post URL(s) — One per line, or comma-separated. `https://www.instagram.com/p/XXXX/` or `https://www.instagram.com/reel/XXXX/` format
▸Output directory (optional) — Defaults to `./instagram-downloads/` in the current working directory
▸PDF stitch for carousels (optional) — Defaults to yes — produces `carousel.pdf` alongside individual slides
▸File naming prefix (optional) — Optional prefix added before slide filenames, e.g. `brand_` → `brand_slide_01.jpg`
✅ The bar it holds itself to
Every skill in this library self-verifies — these are this skill's own quality checks, straight from its definition.
✓Before marking the task complete, verify each item:
✓Domain allowlist confirmed — `*.cdninstagram.com` is added before any fetch attempts
✓All provided URLs validated as Instagram URLs before processing begins
✓CDN URLs are the highest-resolution variants available (largest `config_width` selected)
✓Folder name is sanitised — no special characters, no spaces, max 40 chars from caption
✓Folder collision handled — shortcode appended if folder already exists
✓Carousel slides numbered sequentially with zero-padding (`slide_01`, `slide_02`, ...)
✓PDF includes all slides in correct order (not alphabetical — by slide index)
⚠️ What it refuses to do
Do not attempt to download private posts or content behind a login wall — this skill is for public posts only
Do not ignore 429 rate-limit responses — always implement a backoff wait before retrying
Do not save all downloads to a single flat folder when processing multiple accounts — use named subfolders per source
Do not skip PDF stitching for carousel posts — individual slides delivered without a combined PDF are incomplete output
Do not proceed if Instagram returns a login wall — surface the limitation clearly rather than returning an error silently
Install
npx pm-claude-skills add --agent claude # or codex · cursor · gemini · hermes
# or one-line MCP (every skill, any client):
claude mcp add pm-skills -- npx -y pm-claude-skills-mcp
Start with
Related skills
🔌 Embed this skill
Drop this on your blog, docs, or site — it renders a "Run this skill" card:
<div data-pm-skill="instagram-post-downloader"></div>
<script src="https://mohitagw15856.github.io/pm-claude-skills/embed.js" async></script>
💬 Discussion
Instagram Post Downloader is one of 1174 open-source professional AI agent skills — all SkillSpec L3.
Try them all in the browser · ⭐ Star on GitHub · Browse the full catalog