diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..d2243d5 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,1512 @@ + + +
+ + ++ Five surfaces. One platform. Embed AI agents, automate the web through + CLI, connect to Claude via MCP, or call our REST API — all powered by + rtrvr's browser AI infrastructure. +
+ +All surfaces share the same intelligence — 1.5M+ trajectories. Pick the right surface for your use case.
+# 1. Install globally +npm install -g @rtrvr-ai/cli + +# 2. Authenticate +rtrvr auth login # browser OAuth +rtrvr auth login --api-key rtrvr_... # or direct API key + +# 3. Run an AI agent task +rtrvr run "Extract top 10 products and prices" \ + --url https://example.com + +# 4. Structured JSON output +rtrvr run "Get all pricing tiers" \ + --url https://example.com/pricing \ + --schema-file ./schema.json --json + +# 5. Scrape a page +rtrvr scrape --url https://example.com + +# 6. Diagnose connectivity +rtrvr doctor+
import { createRtrvrClient } from '@rtrvr-ai/sdk'; + +const client = createRtrvrClient({ + apiKey: process.env.RTRVR_API_KEY!, + defaultTarget: 'auto', +}); + +// Run an agent task +const result = await client.run({ + input: 'Find latest headline and author', + urls: ['https://example.com'], + target: 'auto', +}); + +// Extract structured data +const extracted = await client.tools.extract({ + user_input: 'Extract all product names and prices', + tab_urls: ['https://example.com/products'], +}); + +// Check credit balance +const credits = await client.credits.get();+
# 1. Install & auth +npm install -g @rtrvr-ai/cli +rtrvr auth login + +# 2. Wire into Claude Code +rtrvr mcp init --client claude + +# 2b. Or Cursor +rtrvr mcp init --client cursor + +──────────────────────────────────────── +8 MCP tools exposed to your AI client: +──────────────────────────────────────── + planner Multi-step browser automation + act_on_tab Interact with a web page + extract_from_tab Extract structured data + crawl_and_extract Crawl + extract across pages + cloud_agent Run a cloud AI agent + cloud_scrape Cloud-based scraping + list_devices List extension devices + get_current_credits Check credit balance+
<!-- Script tag (any HTML page) --> +<script> + (function(){ + var r = window.rover = window.rover || function(){ + (r.q = r.q || []).push(arguments); + }; + r.l = +new Date(); + })(); + rover('boot', { + siteId: 'YOUR_SITE_ID', + publicKey: 'pk_site_YOUR_PUBLIC_KEY', + allowedDomains: ['yourdomain.com'], + }); +</script> +<script src="https://rover.rtrvr.ai/embed.js" async></script> + +// ── React / Next.js (npm) ────────────── +import { boot, shutdown } from '@rtrvr-ai/rover'; +import { useEffect } from 'react'; + +export function RoverWidget() { + useEffect(() => { + boot({ siteId: '...', publicKey: 'pk_site_...' }); + return () => shutdown(); + }, []); + return null; +}+
# ── Agent endpoint ────────────────────── +curl -X POST https://api.rtrvr.ai/agent \ + -H "Authorization: Bearer $RTRVR_API_KEY" \ + -H "Content-Type: application/json" \ + -d '{ + "input": "Extract the top 5 products", + "urls": ["https://example.com/products"], + "target": "cloud" + }' + +# ── Scrape endpoint ───────────────────── +curl -X POST https://api.rtrvr.ai/scrape \ + -H "Authorization: Bearer $RTRVR_API_KEY" \ + -d '{"urls": ["https://example.com"]}' + +# ── Response shape ────────────────────── +# { "result": "...", +# "metadata": { "selectedMode": "cloud" }, +# "credits_used": 4 }+
If your agent needs to see, click, or extract anything on the web — we're your infra.
+"Scrape pricing from 50 competitor sites into a spreadsheet"
+ +"Extract contacts from YC pages, enrich via LinkedIn profiles"
+ +"Fill out 100 job applications with my resume, customized per role"
+ +"Track price changes on 200 products, alert my team on Slack"
+ +"Research any topic across the web, compile a structured report"
+ +"Guide users through complex signups and workflows, click-by-click"
+ +