1password
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app…
Deploy browser automations as scheduled, API-callable serverless Functions — plus stealth sessions, vault-backed login, captcha solving, and natural-language agent runs via the Notte CLI. Turns any browser flow into a deterministic Bitterbot-callable endpoint, ideal for
$ npx -y skills add bitterbot-ai/bitterbot-desktop --skill notte --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/notteContext preview
The summary Claude sees to decide when to auto-load this skill.
Deploy browser automations as scheduled, API-callable serverless Functions — plus stealth sessions, vault-backed login, captcha solving, and natural-language agent runs via the Notte CLI. Turns any browser flow into a deterministic Bitterbot-callable endpoint, ideal for
name: notte
description: Deploy browser automations as scheduled, API-callable serverless Functions — plus stealth sessions, vault-backed login, captcha solving, and natural-language agent runs via the Notte CLI. Turns any browser flow into a deterministic Bitterbot-callable endpoint, ideal for crystallized skills + dream-engine cron schedules.
homepage: https://notte.cc
metadata:
{
"bitterbot":
{
"emoji": "🥷",
"requires": { "bins": ["notte"] },
"install":
[
{
"id": "brew",
"kind": "brew",
"tap": "nottelabs/notte-cli https://github.com/nottelabs/notte-cli.git",
"formula": "notte",
"bins": ["notte"],
"label": "Install Notte CLI (brew)",
},
{
"id": "go",
"kind": "go",
"module": "github.com/nottelabs/notte-cli/cmd/notte@latest",
"bins": ["notte"],
"label": "Install Notte CLI (go)",
},
],
},
}Hosted browser infrastructure with a CLI that does three things the bundled `browser` tool and Firecrawl cannot:
1. **Functions** — deploy a browser automation script as a serverless, API-callable endpoint with built-in cron scheduling. The natural fit for crystallized skills and dream-engine cycles. 2. **Vault-backed login** — passwords auto-fill on matching URLs without ever entering the model's context. 3. **Stealth sessions** — residential proxies + inline captcha solving, for sites where the bundled Chromium gets locked out.
Crystallized skills and dream-cycle automations both want the same thing: a stable, repeatable browser action the agent can call by name on a schedule. Notte Functions is exactly that.
# 1. Capture an agent's run as deterministic Python (or hand-write it).
notte agents workflow-code # exports the latest agent's steps as Python
notte sessions workflow-code # or export from a CLI session
# 2. Deploy the script as a Function (one-shot — no servers, no infra).
notte functions create --file workflow.py
# → returns function_id
# 3. Run on demand, or schedule.
notte functions run # one-off
notte functions schedule-set --cron "0 */2 * * *" # every 2h, matches dream cycles
notte functions runs # invocation history
notte functions fork # version forward without losing the original
# 4. Or invoke via HTTP from anywhere (skill scripts, gateway hooks, channels).
curl -X POST https://api.notte.cc/functions/{function_id}/runs/start \
-H "Authorization: Bearer $NOTTE_API_KEY" \
-d '{"url":"https://example.com","query":"laptop"}'**Why this matters for Bitterbot:**
| Need | Use | | ---------------------------------------------------------------------------- | --------------------------------------------------------- | | Open a tab, click around, take a snapshot | **Bundled `browser` tool** (`src/browser/`) | | Pull a single page through a stealth fetch | **Firecrawl via `web_fetch`** (`docs/tools/firecrawl.md`) | | **Crystallize a recurring browser flow into a callable API endpoint** | **`notte functions`** | | **Schedule a browser flow on a cron (dream-cycle aligned)** | **`notte functions schedule-set`** | | Run a multi-step task on an authenticated site | **`notte` session** | | Log in without exposing the password to the LLM | **`notte` vault** | | The bundled browser is being challenged with captcha / Cloudflare / DataDome | **`notte`** (`--solve-captchas`, `--proxy`) | | Need a residential / geo-located IP | **`notte`** | | Hand a browsing goal to an agent and get a structured answer | **`notte agents`** |
`notte` does not replace the bundled browser. It's the deployment + infrastructure layer for browser flows that need to outlive a single agent run.
# Install (handled by the install metadata above). brew tap nottelabs/notte-cli https://github.com/nottelabs/notte-cli.git && brew install notte # or: go install github.com/nottelabs/notte-cli/cmd/notte@latest # Authenticate. Stores the API key in the system keyring. notte auth login # or: export NOTTE_API_KEY=...
notte sessions start --proxy --solve-captchas notte page goto "https://news.ycombinator.com" notte page observe notte page scrape --instructions "Top 10 story titles, points, and URLs as JSON" notte sessions stop -y
`observe` returns interactive element IDs (`@B3`, `@I1`, `@L9`). Use those with `click` / `fill`, or fall back to Playwright selectors (`#submit`, `button:has-text('Submit')
Bitterbot - a mesh of agents that turns shared experience into collective capability.
Repo: bitterbot-ai/bitterbot-desktop
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app…
Manage Apple Notes via the `memo` CLI on macOS (create, view, edit, delete, search, move, and…
Manage Apple Reminders via the `remindctl` CLI on macOS (list, add, edit, complete, delete).…
Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.