qwwiwi/agentos-skills-public · Archived

instagram-superpower

Full toolkit for Instagram: account analytics via HikerAPI SaaS + downloading reels/posts via Cobalt API. Use when: (1) download a reel/video/photo from Instagram, (2) find top-performing reels of an account, (3) analyze a competitor (views, likes, comments, engagement), (4) manage a watchlist of accounts for monitoring, (5) download + transcribe video, (6) hashtag/location search. "top reels", "watchlist", "track account", "competitor instagram", "engagement", links to instagram.com/reel/, ins…

First seen Jul 19, 2026

Installation

$ npx skills add qwwiwi/agentos-skills-public --skill instagram-superpower

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from qwwiwi/agentos-skills-public · top by installs.

npx skills add qwwiwi/agentos-skills-public

Browse all from qwwiwi/agentos-skills-public

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 3
License LICENSE
Default branch main
Open issues 0
Status Archived

Skill metadata

Parsed from SKILL.md frontmatter.

Declared agents claude-code

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 10,254 B
  • docs SUMMARY.md 717 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 1 installs

SKILL.md

Instagram SuperPower

Tools

Tool Purpose Cost
HikerAPI Analytics: profiles, reels, comments, followers, hashtags, search $0.001/request (Standard)
Cobalt Download video/photo from Instagram CDN Free (self-hosted)
Groq Whisper Transcription of downloaded videos Free

Documentation and links

Resource URL
HikerAPI docs https://hiker-doc.readthedocs.io/en/latest/
HikerAPI Swagger https://api.instagrapi.com/docs
HikerAPI Redoc https://api.instagrapi.com/redoc
HikerAPI dashboard https://hikerapi.com
HikerAPI Python SDK pip install hikerapi
Cobalt GitHub https://github.com/imputnet/cobalt
instagrapi GitHub https://github.com/subzeroid/instagrapi

Path mapping

Agent machine

What Path
Download script (Cobalt) ~/.claude/skills/instagram-superpower/scripts/download.sh
Analytics script (HikerAPI) ~/.claude/skills/instagram-superpower/scripts/analyze.sh
Watchlist script ~/.claude/skills/instagram-superpower/scripts/watchlist.sh
Cookie deploy script ~/.claude/skills/instagram-superpower/scripts/deploy-cookies.sh
Cookie check script ~/.claude/skills/instagram-superpower/scripts/check-cookies.sh
HikerAPI key ~/.secrets/hikerapi/api-key
Instagram credentials (for Cobalt) ~/.secrets/cobalt/accounts.json
Instagram cookies (for Cobalt) ~/.secrets/cobalt/cookies.json
Cobalt API key ~/.secrets/cobalt/api-key
Watchlist ~/.secrets/cobalt/watchlist.json
Downloaded files /tmp/downloads/

Cobalt server (self-hosted)

What Path
Cobalt Docker Compose /opt/cobalt/docker-compose.yml
Cobalt cookies (working copy) /opt/cobalt/cookies.json
Cobalt API keys /opt/cobalt/keys/api-keys.json
Docker container cobalt-api
Cobalt API endpoint http://127.0.0.1:9000/ (localhost only)

How it all connects

HikerAPI (cloud)                    Cobalt server (self-hosted)
─────────────────                    ────────────────────────────
api.instagrapi.com ◀── curl ──  Your machine
  analytics, data                    Cobalt API (localhost:9000)
  $0.001/request                       media download (free)

Your machine:
  analyze.sh  → HikerAPI (directly)
  download.sh → SSH → Cobalt server → Instagram CDN
  watchlist.sh → analyze.sh + download.sh

HikerAPI — Authentication

# IMPORTANT: use api.instagrapi.com (no Cloudflare) instead of api.hikerapi.com
# api.hikerapi.com blocks urllib/requests from scripts
cat ~/.secrets/hikerapi/api-key

# Usage in curl:
curl -s "https://api.instagrapi.com/ENDPOINT" \
  -H "accept: application/json" \
  -H "x-access-key: $(cat ~/.secrets/hikerapi/api-key)"

# Or as GET parameter:
curl -s "https://api.instagrapi.com/ENDPOINT?access_key=$(cat ~/.secrets/hikerapi/api-key)"

Balance: GET /sys/balance — shows remaining requests and balance.

HikerAPI — Main endpoints

Users

Endpoint Description Requests
GET /v2/user/by/username?username=X Profile by username 1
GET /v2/user/by/id?id=X Profile by ID (faster) 1
GET /v2/user/clips?user_id=X User reels (12/page) 1
GET /gql/user/clips?user_id=X Reels via GraphQL 1
GET /v1/user/medias/chunk?user_id=X All posts (paginated) 1
GET /v2/user/stories?user_id=X Stories 1
GET /v2/user/followers?user_id=X Followers (paginated) 1
GET /v2/user/following?user_id=X Following 1
GET /v1/user/highlights?user_id=X Highlights 1

Media (posts/reels)

Endpoint Description Requests
GET /v2/media/info/by/code?code=X Info by post code 1
GET /v2/media/info/by/url?url=X Info by URL 1
GET /v2/media/comments?media_id=X Comments (15/page) 1
GET /v2/media/likers?media_id=X Who liked 1
GET /v1/media/download/video?media_pk=X Download video 1
GET /v1/media/download/photo?media_pk=X Download photo 1

Search

Endpoint Description Requests
GET /v2/fbsearch/topsearch?query=X Global search 1
GET /v2/fbsearch/reels?query=X Reel search 1
GET /v2/fbsearch/accounts?query=X Account search 1
GET /v2/fbsearch/places?query=X Location search 1

Hashtags

Endpoint Description Requests
GET /v2/hashtag/by/name?name=X Hashtag info 1
GET /v2/hashtag/medias/top?hashtag_id=X Top posts by hashtag 1
GET /v2/hashtag/medias/recent?hashtag_id=X Recent posts by hashtag 1

Response data

Each media object contains:

  • playcount / viewcount — views
  • like_count — likes
  • comment_count — comments
  • taken_at — publish timestamp
  • code — shortcode for URL (instagram.com/reel/{code}/)
  • caption.text — caption text
  • user.username — author

Quick start

Account profile

HIKER_KEY=$(cat ~/.secrets/hikerapi/api-key)
curl -s "https://api.instagrapi.com/v2/user/by/username?username=<username>" \
  -H "x-access-key: $HIKER_KEY" | python3 -m json.tool

Account reels (top performing)

HIKER_KEY=$(cat ~/.secrets/hikerapi/api-key)
USER_ID=$(curl -s "https://api.instagrapi.com/v2/user/by/username?username=<username>" \
  -H "x-access-key: $HIKER_KEY" | python3 -c "import json,sys; print(json.load(sys.stdin)['user']['pk'])")

curl -s "https://api.instagrapi.com/v2/user/clips?user_id=$USER_ID" \
  -H "x-access-key: $HIKER_KEY" | python3 -c "
import json, sys
d = json.load(sys.stdin)
items = d.get('response',{}).get('items',[])
for item in sorted(items, key=lambda x: x['media'].get('play_count',0), reverse=True)[:5]:
    m = item['media']
    print(f'{m.get(\"play_count\",0):>10,} views | {m.get(\"like_count\",0):>6,} likes | https://instagram.com/reel/{m[\"code\"]}/')
"

Download reel (via Cobalt)

bash ~/.claude/skills/instagram-superpower/scripts/download.sh "https://www.instagram.com/reel/<CODE>/"

Download + transcribe

bash ~/.claude/skills/instagram-superpower/scripts/download.sh "https://www.instagram.com/reel/<CODE>/" transcribe

Check HikerAPI balance

curl -s "https://api.instagrapi.com/sys/balance" \
  -H "x-access-key: $(cat ~/.secrets/hikerapi/api-key)"

Typical scenarios

1. "Show top reels of a competitor"

bash scripts/analyze.sh <username> 5 14

2. "Download this reel and summarize it"

bash scripts/download.sh "<url>" transcribe

Cobalt downloads → Groq transcribes → agent analyzes.

3. "Add to monitoring"

bash scripts/watchlist.sh add <username>
bash scripts/watchlist.sh scan 3 14

4. "Full competitor breakdown"

  1. analyze.sh <username> 5 14 → top-5 reels + metrics
  2. download.sh <url> transcribe for top-3
  3. Agent analyzes: hook → pain → solution → CTA

5. "What's viral in a hashtag"

HIKER_KEY=$(cat ~/.secrets/hikerapi/api-key)
curl -s "https://api.instagrapi.com/v2/hashtag/by/name?name=aitools" -H "x-access-key: $HIKER_KEY"
curl -s "https://api.instagrapi.com/v2/hashtag/medias/top?hashtag_id=ID" -H "x-access-key: $HIKER_KEY"

Pagination

Many endpoints return nextpageid. For the next page:

curl -s "https://api.instagrapi.com/v2/user/clips?user_id=123&page_id=NEXT_PAGE_ID" \
  -H "x-access-key: $HIKER_KEY"

Reels: ~12 per page. For 50 reels you need ~4 requests.

Rate Limits

HikerAPI

  • Limit: 8 requests/second (Standard plan)
  • No risk of Instagram ban — HikerAPI uses its own account pool and proxies

Cobalt (downloads)

  • Rate limits Instagram: 20 downloads/hour per 1 account
  • Pause between requests: minimum 3 seconds
  • Batch downloads (>5): pause 10-15 seconds
  • Strictly sequential, never parallel

Optimal strategy

  • Analytics (HikerAPI): no limits, up to 8 req/sec
  • Downloads (Cobalt): 20/hour, sequential
  • HikerAPI can also download (/v1/media/download/*), but uses paid requests — use Cobalt instead

Maintenance

HikerAPI

curl -s "https://api.instagrapi.com/sys/balance" -H "x-access-key: $(cat ~/.secrets/hikerapi/api-key)"
# Key in dashboard: https://hikerapi.com → Tokens

Cobalt

ssh root@<your-server-ip> "docker ps --filter name=cobalt-api --format '{{.Status}}'"
ssh root@<your-server-ip> "docker logs cobalt-api --tail 20"
ssh root@<your-server-ip> "cd /opt/cobalt && docker compose restart cobalt-api"

Updating Instagram cookies (for Cobalt)

  1. Credentials: ~/.secrets/cobalt/accounts.json
  2. Login via browser automation (agent-browser via CDP)
  3. Login using Input.dispatchKeyEvent (character by character)
  4. Button: div[role="button"]
  5. 2FA: TOTP → input[name="verificationCode"]
  6. Cookies: Network.getCookies.instagram.comcookies.json
  7. Deploy: bash scripts/deploy-cookies.sh

Security

  • HikerAPI key: ~/.secrets/hikerapi/api-key (chmod 600)
  • Cobalt: ONLY 127.0.0.1:9000 on the Cobalt server
  • Cookies/credentials: ONLY ~/.secrets/cobalt/ (chmod 600)
  • Forbidden: logging keys/cookies, printing in chat, committing to git