snob.

who doesn't follow you back?

Snob knows. An Instagram client for the terminal: who left, who never followed back, stories and reels to keep, and output ready for AI agents.

macOS · Homebrew

brew tap dennisgr7/snob https://github.com/dennisgr7/snob-clibrew install snob

other ways ↓

snob profile someone@someone  Someone Example  (verified)  photographer, mostly coffeeFollowers:    1234Following:    56Posts:        78You do not follow them, they follow youHighlights:   2Stories up:   1

Everything you check by hand, in one command.

On a terminal most commands open a full-screen view you move through with the arrow keys; snob --help lists everything.

  • unfollowers

    You follow them; they do not follow you back.

    snob unfollowers3 accounts you follow that do not follow you back - 3 of 87 - 9 requests
  • profile

    An account's page, the way Instagram shows it.

    snob profile someoneFollowers:    1234Following:    56
  • stories · highlights

    See them and save them. A story is never marked as seen.

    snob stories someone -d all# every story it has up, saved
  • post · reel

    One post or reel by its link, every photo and video in it.

    snob reel <link> -d all# every photo and video in it, saved
  • watch

    Keeps watching on a schedule and reports what changed.

    snob watch onceChanges for @me since Aug 14 at 09:12  followers gained: 1  followers lost: 1
  • follow · unfollow

    The only two writes. One account at a time, after asking.

    snob unfollow someoneUnfollow @someone? [y/N] yNo longer following @someone.

A light client, on purpose.

It signs in as you and sends its requests from a Chrome, Edge, Brave or Chromium already on your machine, at a human pace. Your password never goes through snob, and it never reads your own browser's cookies.

There is no official API for most of this, so snob uses the same web API instagram.com uses, signed in as you. That is outside Instagram's Terms of Use, and the usual consequence is that Instagram asks the account to verify itself. snob keeps to modest volumes, sends only the web app's own requests, and stops at the first sign of push-back. Use it from the connection you normally browse from.

✓ 12 accounts a page, 1 to 3 seconds apart✓ a rest of 5 to 15 minutes every 40 pages✓ two writes, ever: follow and unfollow, after asking✓ stories are never marked as seen✓ the session is stored on your machine, in the system keyring when there is one! the first push-back stops it, and it cools down

Same answer, for people and programs.

Every command can print instead of opening a view, in a stable form a program can read. Down a pipe that is the default, and the default format is JSON.

# on a terminal

> anna.example    Anna Example  bob_builds      Bob  camille.k       Camille     verified

# down a pipe

snob unfollowers | jq '.[0]'{  "pk": 1234567890,  "username": "anna.example",  "full_name": "Anna Example",  "is_private": false,  "is_verified": false}

Flags for scripts

--format json|ndjson|csv|xlsx|md|table
a list or a document, in the form you need
-o <file>
write it to a file
--json
a status object, for commands such as whoami
--no-interactive
always print, never open a view
-y
answer the one confirmation in advance
watch --webhook <url>
post each report as JSON

Exit codes

0
it worked
1
it failed
2
the command line could not be parsed
3
log in again
4
the account needs verifying
5
rate limited or cooling down
130
stopped

Install it.

Builds exist for Windows and Linux on x86_64 and ARM64, and macOS on Apple Silicon. Everything that talks to Instagram needs a Chromium-based browser installed; no window is ever shown.

macOS · Linux

With Homebrew.

brew tap dennisgr7/snob https://github.com/dennisgr7/snob-clibrew install snob

Windows

With Scoop.

scoop bucket add snob https://github.com/dennisgr7/snob-cliscoop install snob

Debian · Ubuntu

The .deb for your architecture, downloaded from the releases page. Releases

x86_64

sudo apt install ./snob-v0.6.0-x86_64-unknown-linux-musl.deb

ARM64

sudo apt install ./snob-v0.6.0-aarch64-unknown-linux-musl.deb

Script

Without a package manager.

macOS · Linux

curl -fsSL https://raw.githubusercontent.com/dennisgr7/snob-cli/main/packaging/install.sh | sh

Windows · PowerShell

irm https://raw.githubusercontent.com/dennisgr7/snob-cli/main/packaging/install.ps1 | iex

From source

With Rust and a C compiler.

cargo install --locked --git https://github.com/dennisgr7/snob-cli snob-cli