Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
4ier avatar

Neo

  • 13 installs
  • 745 repo stars
  • Updated April 28, 2026
  • 4ier/neo

Neo is a CLI that turns any website into an AI-callable API and automates browser tasks over the Chrome DevTools Protocol.

About

Neo is a CLI that lets an agent browse websites, read pages, automate browser tasks, and turn any website into an AI-callable API using the Chrome DevTools Protocol. It captures network traffic to generate API schemas, then calls those endpoints with authentication reused from the live browser. Developers use it to scrape data, post to social sites, or drive web apps that have no public API.

  • Turns any website into an AI-callable API using Chrome DevTools Protocol, no extension
  • CLI for browser automation: snapshot, click, fill, screenshot, scrape
  • Discovers and calls a site's private APIs with auto-auth from the browser session

Neo by the numbers

  • 13 all-time installs (skills.sh)
  • Ranked #11,409 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Jul 29, 2026 (Skillselion catalog sync)
At a glance

neo capabilities & compatibility

Free; installs the neo CLI from npm and drives a local Chrome.

Capabilities
browser automation · web scraping · api discovery · ui automation · cookie management
Works with
chrome
Use cases
web scraping · web search · orchestration
Runs
Runs locally
Pricing
Free
From the docs

What neo says it does

Neo turns any website into an AI-callable API. Zero extensions required — pure CDP.
SKILL.md
neo api x.com HomeTimeline # Call it (auto-auth from browser)
SKILL.md
neo snapshot # Get a11y tree with compact ref IDs
SKILL.md
npx skills add https://github.com/4ier/neo --skill neo

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs13
repo stars745
Last updatedApril 28, 2026
Repository4ier/neo

What it does

Drive websites and their private APIs from an agent - reading pages, scraping data, or calling endpoints with auth borrowed from the live Chrome session.

Who is it for?

Agents that must read pages, scrape data, or call a website's private API when no public API exists.

Skip if: Sites that must never be automated or where CDP-driven Chrome access is disallowed.

When should I use this skill?

The user asks to check a website, scrape a page, post on social media, or call any website's API.

What you get

The agent captures the site's own network calls, generates a schema, and calls its API directly with the browser's existing auth.

  • captured API schemas per domain
  • authenticated API calls
  • page text extraction and screenshots

By the numbers

  • mandatory first step: neo doctor
  • compact a11y refs cut interaction context to ~200-400 tokens vs ~3000-5000

Files

SKILL.mdMarkdownGitHub ↗

Neo 2.0 — Web App API Discovery & Browser Automation

Neo turns any website into an AI-callable API. Zero extensions required — pure CDP.

⚠️ MANDATORY FIRST STEP

neo doctor
  • All ✓ → proceed
  • Chrome CDP ✗ → neo start (launches Chrome with correct profile + CDP)
  • Still ✗ → ask the user, then STOP. Don't loop.

Critical Rules

1. NEVER start Chrome manually — always neo start 2. NEVER copy Chrome profiles — login sessions live in the real profile 3. NEVER `pkill chrome` — user may have important tabs open 4. If stuck → tell user, STOP. Don't retry in a loop.

Workflows

Read a web page

neo doctor
neo read example.com          # Extract readable text from any open tab
# If page isn't open:
neo open https://example.com
neo read example.com

Call a website's API (fast path)

neo doctor
neo schema show x.com                   # Check existing API knowledge
neo api x.com HomeTimeline              # Call it (auto-auth from browser)
neo api x.com CreateTweet --body '{"variables":{"tweet_text":"hello"}}'

Discover APIs for a new website

neo doctor
neo open https://example.com            # Open in Chrome
# Browse around to generate traffic
neo capture list example.com --limit 20
neo schema generate example.com
neo api example.com <keyword>

UI automation (click/fill/type — when no API exists)

neo doctor
neo snapshot                  # Get a11y tree with compact ref IDs
neo click 14                  # Click element by ref number
neo fill 7 "search query"    # Clear + fill input
neo type 7 "text"             # Append text
neo press Enter
neo scroll down 500
neo screenshot

Refs are compact integers: [0] button "Sign in", [1] input "Search". Use neo click 0, neo fill 1 "query" etc. Legacy @e5 and [5] formats also work.

Cookie management

neo cookies list                        # All cookies for active page
neo cookies list github.com             # Filter by domain
neo cookies export github.com cookies.json  # Save to file
neo cookies import cookies.json         # Restore cookies
neo cookies clear github.com            # Delete by domain
neo cookies clear                       # Delete all

Use export + import to persist login sessions across browser restarts.

Profile management

neo profile list              # Discover all Chrome profiles + emails
neo profile use "Default"     # Set default profile
neo start                     # Launches with selected profile

Clean up — close tabs when done

neo tabs
neo eval "window.close()" --tab example.com

Command Reference

# Page Reading & Interaction
neo open <url>                          # Open URL in Chrome
neo read <tab-pattern>                  # Extract readable text
neo eval "<js>" --tab <pattern>         # Run JS in page context
neo tabs [filter]                       # List open Chrome tabs

# UI Automation (compact refs: neo click 5, neo fill 3 "text")
neo snapshot [-i] [-C] [--json] [--diff]  # A11y tree with compact refs
neo click <ref> [--new-tab]             # Click element
neo fill <ref> "text"                   # Clear + fill input
neo type <ref> "text"                   # Append text to input
neo press <key>                         # Keyboard key (Ctrl+a, Enter, etc.)
neo hover <ref>                         # Hover
neo scroll <dir> [px] [--selector css]  # Scroll
neo select <ref> "value"               # Select dropdown
neo screenshot [path] [--full]          # Capture screenshot
neo get text <ref> | url | title        # Extract info
neo wait <ref> | --load | <ms>          # Wait for element/load/time

# Cookie Management
neo cookies list [domain]               # List cookies
neo cookies export [domain] [file]      # Export as JSON
neo cookies import <file>               # Import from JSON
neo cookies clear [domain]              # Clear cookies

# Profile Management
neo profile list                        # Discover Chrome profiles
neo profile use <name>                  # Set default profile

# Capture & Traffic (no extension needed — pure CDP)
neo status                              # Overview
neo capture start                       # Start CDP network capture
neo capture stop                        # Stop capture
neo capture list [domain] [--limit N]   # Recent captures
neo capture search <query>              # Search by URL pattern
neo capture domains                     # Domains with counts
neo capture detail <id>                 # Full capture details

# Schema (API Knowledge)
neo schema generate <domain>            # Generate from captures
neo schema show <domain>                # Human-readable
neo schema list                         # All cached schemas
neo schema search <query>               # Search endpoints

# API Execution
neo api <domain> <keyword> [--body '{}']  # Smart call (schema + auto-auth)
neo exec <url> [--method POST] [--body] [--tab pattern] [--auto-headers]
neo replay <id> [--tab pattern]         # Replay captured call

# Setup & Diagnostics
neo setup                               # First-time setup
neo start [--profile <name>]            # Launch Chrome with correct profile + CDP
neo doctor [--fix]                      # Health check (--fix to auto-repair)

Decision Tree

Want to interact with a website?
  │
  ├─ FIRST: neo doctor
  │   ├─ All ✓ → continue
  │   ├─ Chrome ✗ → neo start → retry
  │   └─ Still ✗ → ask user, STOP
  │
  ├─ Just read content? → neo read <domain>
  │
  ├─ Need to call an API?
  │   ├─ neo schema show <domain> → exists? → neo api
  │   └─ No schema? → neo open → browse → neo schema generate → neo api
  │
  ├─ Need to click/fill/type?
  │   └─ neo snapshot → neo click 5 / neo fill 3 "text"
  │
  ├─ Need to manage cookies/sessions?
  │   └─ neo cookies list/export/import/clear
  │
  └─ Done? → neo eval "window.close()" --tab <domain>

Key Principles

1. `neo doctor` first, always. 2. API > UI automation. If schema has it, use neo api. Don't snapshot+click. 3. Auth is automatic. API calls inherit browser cookies/session/CSRF. 4. Close tabs after use. Every neo open creates a new tab. 5. If stuck, stop. Don't loop on Chrome startup. Ask the user.

Related skills

FAQ

Does Neo need a browser extension?

No. Neo works over pure Chrome DevTools Protocol with zero extensions required.

How does Neo authenticate API calls?

It reuses the login session from the real Chrome profile, so API calls are auto-authenticated from the browser.

AI & Agent Buildingagentsautomation

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.