The official CLI for the Olostep API — scrape, map, crawl, AI-researched answers, and parallel batch jobs from your terminal. Every data command returns JSON on stdout, so it pipes cleanly into jq, scripts, agents, and CI.
Pure JavaScript, Node 18+, no native binaries to download. Installs in under a second, starts in ~200 ms, ships as a single ~100 KB bundle.
npm install -g olostep-cli
olostep initRequires Node.js 18+.
One-liner alternatives (no manual npm step):
# macOS / Linux
curl -fsSL https://olostep.com/install.sh | sh
# Windows PowerShell
iwr -useb https://olostep.com/install.ps1 | iexBoth scripts check Node 18+, run npm install -g olostep-cli (with a sudo fallback on bash), and tell you to run olostep init next.
olostep init is the recommended first step — it signs you in, installs the Olostep skills into every detected AI agent, and configures the MCP server, all in one go. Flags: --skills-only, --mcp-only, --no-browser, --relogin.
To just sign in (no skills, no MCP): olostep login (or --no-browser for SSH). To sign out: olostep logout (--dry-run to preview). For CI, set OLOSTEP_API_KEY=.... Get a key at https://www.olostep.com/dashboard/api-keys.
Or try it without installing: npx -y olostep-cli@latest --help.
# Pull one URL as clean markdown
olostep scrape "https://example.com" --formats markdown
# Discover URLs on a site
olostep map "https://example.com" --top-n 20
# AI-researched answer with citations
olostep answer "What does Olostep do?"
# Crawl every page on a site
olostep crawl "https://docs.example.com" --max-pages 50
# Scrape many URLs from a CSV, in parallel
olostep batch-scrape urls.csv --formats markdown,htmlPipes stay clean — logs go to stderr, JSON to stdout:
olostep map "https://example.com" | jq '.urls[:10]'
olostep scrape "https://example.com" | jq -r '.result.markdown_content'Run olostep <command> --help for the full flag list.
| Command | What it does |
|---|---|
olostep login |
Browser PKCE sign-in |
olostep logout |
Remove saved credentials (confirms first); warns if env vars still hold a key. --yes skips prompt, --dry-run previews |
olostep init |
Login + install skills + install MCP server (recommended first step) |
olostep status |
Show version, auth, config dir (--json for machine output) |
olostep update |
npm install -g olostep-cli@latest (--check to check only) |
olostep scrape <url> |
One URL → markdown / html / text / json / raw_pdf / screenshot |
olostep scrape-get <id> |
Refetch a previous scrape by ID |
olostep map <url> |
Discover URLs on a site (filter by query or pattern) |
olostep answer <task> |
AI-researched answer with citations (synchronous) |
olostep crawl <url> |
Crawl a whole site, polls until done (filters, robots.txt, dry-run) |
olostep batch-scrape <csv> |
Up to 10,000 URLs in parallel from a CSV |
olostep batch-update <id> |
Update batch metadata |
olostep add skills / remove skills / list skills |
Manage Olostep skills in your AI agents |
olostep mcp install / mcp uninstall / list mcp |
Install the Olostep MCP server into your agents |
Common flags on every data command: --out <path> (write JSON to a file, default stdout), --timeout <seconds> (HTTP timeout), --api-key <key> (override the resolved key for one run).
Every data command prints its JSON result to stdout by default. Pass --out <path> to write to a file instead.
| Flag | Behavior |
|---|---|
| (none) | Pretty-printed JSON to stdout |
--out <path> |
Write JSON to that file (parent dirs created) |
--out - |
Explicit stdout (same as default) |
Management commands (status, list, add/remove skills, mcp install/uninstall) print human-readable text by default; pass --json for machine output. Progress and logs always go to stderr, so stdout stays clean.
The CLI ships 13 Olostep skills — drop-in SKILL.md files installed into Claude Code, Cursor, and other agents so they can use Olostep natively. Three categories:
| Category | What it does | Skills |
|---|---|---|
usage |
Use Olostep's features | scrape, search, answers, crawl, map, batch |
build |
Install / integrate Olostep into a codebase | setup, integrate |
workflow |
Produce a deliverable end-to-end | research, docs-to-code, migrate-code, debug-error, extract-schema |
olostep add skills # install all 13 into every detected agent
olostep add skills --category usage # only feature skills
olostep add skills --skill scrape --skill map # cherry-pick
olostep add skills --agent cursor --agent claude
olostep list skills # show what's installed where
olostep remove skills # uninstallOther useful flags: --exclude <name> (repeatable), --global / --no-global, --link-mode <auto|symlink|copy>, --overwrite / --no-overwrite, --json.
Supported agents: Cursor, Claude, Codex, Windsurf, Continue, Augment, Roo, Gemini, Copilot, Factory.
The CLI writes the Olostep MCP server into your agent's config for you — no JSON editing.
olostep mcp install # detect agents, hosted endpoint (default)
olostep mcp install --agent cursor # one agent
olostep mcp install --transport stdio # local `npx olostep-mcp` instead
olostep mcp install --no-global # write into the current project
olostep mcp install --dry-run --json # show the plan, don't write
olostep list mcp # see where it's installed
olostep mcp uninstall # remove the olostep entryTwo transports:
http(default) — hosted athttps://mcp.olostep.com/mcp. No local process.stdio— runsnpx -y olostep-mcplocally. Useful for offline use.
The CLI merges the olostep entry into your existing MCP config without touching other servers. Restart your agent after install.
Supported MCP-enabled agents: Cursor, Claude Code, Windsurf, VS Code, Kilo.
API key resolution order (first match wins):
--api-key <key>flagOLOSTEP_API_KEYenv varOLOSTEP_API_TOKENenv var.envfile in the current directory- Saved credentials file (after
olostep login)
The credentials file is shared with the Python CLI, so existing users keep their login:
| OS | Path |
|---|---|
| macOS | ~/Library/Application Support/olostep-cli/credentials.json |
| Linux | ~/.config/olostep-cli/credentials.json |
| Windows | %USERPROFILE%\AppData\Roaming\olostep-cli\credentials.json |
Run olostep logout to delete that file (it confirms first — pass -y to skip, or --dry-run to preview). If OLOSTEP_API_KEY / OLOSTEP_API_TOKEN env vars or a .env file in your cwd still define a key, logout reports them with the exact unset commands — those sources take priority over the credentials file. Set OLOSTEP_CLI_CONFIG_DIR to override the directory. An "update available" notice prints on interactive runs — silence with OLOSTEP_NO_UPDATE_NOTICE=1.
PowerShell tokenizes , and * differently from bash — quote the argument:
olostep scrape "https://example.com" --formats "markdown,html"
olostep map "https://example.com" --include-url "/*"
olostep answer "Extract facts" --json-format '{"company":"","year":""}'Use single quotes for JSON to avoid $ interpolation.
- Olostep — https://www.olostep.com
- Docs — https://docs.olostep.com · CLI docs
- API keys — https://www.olostep.com/dashboard/api-keys
- npm — https://www.npmjs.com/package/olostep-cli
- GitHub — https://github.com/olostep-api/olostep-cli
MIT — see LICENSE.