neo
Browse websites, read web pages, interact with web apps, call website APIs, and automate web tasks. Use Neo when: user asks to check a website, read a web page, post on social media (Twitter/X), interact with any web app, look up information on a specific site, scrape data from websites, automate browser tasks, or when you need to call any website's API. Keywords: website, web page, browse, URL, http, API, twitter, tweet, post, scrape, web app, open site, check site, read page, social media, online service.
Best use case
neo is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Browse websites, read web pages, interact with web apps, call website APIs, and automate web tasks. Use Neo when: user asks to check a website, read a web page, post on social media (Twitter/X), interact with any web app, look up information on a specific site, scrape data from websites, automate browser tasks, or when you need to call any website's API. Keywords: website, web page, browse, URL, http, API, twitter, tweet, post, scrape, web app, open site, check site, read page, social media, online service.
Teams using neo should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/neo-browser/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How neo Compares
| Feature / Agent | neo | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Browse websites, read web pages, interact with web apps, call website APIs, and automate web tasks. Use Neo when: user asks to check a website, read a web page, post on social media (Twitter/X), interact with any web app, look up information on a specific site, scrape data from websites, automate browser tasks, or when you need to call any website's API. Keywords: website, web page, browse, URL, http, API, twitter, tweet, post, scrape, web app, open site, check site, read page, social media, online service.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
Top AI Agents for Productivity
See the top AI agent skills for productivity, workflow automation, operational systems, documentation, and everyday task execution.
AI Agents for Marketing
Discover AI agents for marketing workflows, from SEO and content production to campaign research, outreach, and analytics.
SKILL.md Source
# 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
```bash
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
```bash
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)
```bash
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
```bash
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)
```bash
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
```bash
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
```bash
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
```bash
neo tabs
neo eval "window.close()" --tab example.com
```
## Command Reference
```bash
# 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
---
name: article-factory-wechat
humanizer
Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.
find-skills
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
tavily-search
Use Tavily API for real-time web search and content extraction. Use when: user needs real-time web search results, research, or current information from the web. Requires Tavily API key.
baidu-search
Search the web using Baidu AI Search Engine (BDSE). Use for live information, documentation, or research topics.
agent-autonomy-kit
Stop waiting for prompts. Keep working.
Meeting Prep
Never walk into a meeting unprepared again. Your agent researches all attendees before calendar events—pulling LinkedIn profiles, recent company news, mutual connections, and conversation starters. Generates a briefing doc with talking points, icebreakers, and context so you show up informed and confident. Triggered automatically before meetings or on-demand. Configure research depth, advance timing, and output format. Walking into meetings blind is amateur hour—missed connections, generic small talk, zero leverage. Use when setting up meeting intelligence, researching specific attendees, generating pre-meeting briefs, or automating your prep workflow.
self-improvement
Captures learnings, errors, and corrections to enable continuous improvement. Use when: (1) A command or operation fails unexpectedly, (2) User corrects Claude ('No, that's wrong...', 'Actually...'), (3) User requests a capability that doesn't exist, (4) An external API or tool fails, (5) Claude realizes its knowledge is outdated or incorrect, (6) A better approach is discovered for a recurring task. Also review learnings before major tasks.
botlearn-healthcheck
botlearn-healthcheck — BotLearn autonomous health inspector for OpenClaw instances across 5 domains (hardware, config, security, skills, autonomy); triggers on system check, health report, diagnostics, or scheduled heartbeat inspection.
linkedin-cli
A bird-like LinkedIn CLI for searching profiles, checking messages, and summarizing your feed using session cookies.
notebooklm
Google NotebookLM 非官方 Python API 的 OpenClaw Skill。支持内容生成(播客、视频、幻灯片、测验、思维导图等)、文档管理和研究自动化。当用户需要使用 NotebookLM 生成音频概述、视频、学习材料或管理知识库时触发。
小红书长图文发布 Skill
## 概述