feat(skills): add notte skill (Notte Functions + vault auth)#30
Conversation
…auth
Adds a bundled skill that teaches the agent to drive Notte (notte.cc):
hosted browser infrastructure with Functions (deploy a browser flow as a
serverless, scheduled, API-callable endpoint), vault-backed logins,
captcha-solving stealth sessions, and a natural-language agent runtime.
Single-file change. No code, no deps, no config. Conventions match
skills/notion/SKILL.md and skills/mcporter/SKILL.md (frontmatter shape,
metadata.bitterbot.{emoji, requires.bins, install}).
Three things the bundled browser tool + Firecrawl don't cover:
1. Functions — deploy a browser script as an API endpoint with cron
scheduling (notte agents workflow-code → notte functions create →
notte functions schedule-set). Aligns 1:1 with the dream-engine's
crystallization-into-skill pattern; marketplace skills get a
deterministic execution surface that's faster + cheaper than
re-running an agent each invocation.
2. Vault-backed credentials — addresses the gap docs/tools/browser-login.md
names: 'Automated logins often trigger anti-bot defenses and can lock
the account.' Vault auto-fills on matching URLs without exposing
passwords to the model — unblocks unattended dream cycles.
3. Stealth sessions — residential proxies + inline captcha solving for
Cloudflare/DataDome/PerimeterX/Akamai-protected sites.
Fixes Format check job in CI for Bitterbot-AI#30.
…op#30) Bitterbot merged the notte skill into their bundled-skills set on 2026-05-05 (PR #30, Functions-led framing). Users on that release get the skill auto-loaded; older versions can still pull via the direct-URL import path. README now reflects both states.
|
Hi Victor, Thanks for the clean merge, much appreciated. A few things in case useful:
Cheers, |
What
Adds
skills/notte/SKILL.md, a bundled skill that teaches the agent to drive Notte (notte.cc): hosted browser infrastructure with Functions (deploy a browser flow as a serverless, scheduled, API-callable endpoint), vault-backed logins, captcha-solving stealth sessions, and a natural-language agent runtime.Single-file change. No code, no deps, no config. Conventions match
skills/notion/SKILL.mdandskills/mcporter/SKILL.md(frontmatter shape,metadata.bitterbot.{emoji, requires.bins, install}).Why
Bitterbot already has two browser-side capabilities, each in its own lane:
browsertool (src/browser/, Playwright + CDP) handles routine navigation, snapshots, and AI-action mode against the user's Chromium.web_fetch(docs/tools/firecrawl.md) handles single-page stealth fetch withproxy: stealthfor sites that block plain HTTP.The notte skill sits alongside both, filling three further lanes:
Functions (the headline). Deploy a browser script as an API endpoint with a cron schedule:
notte agents workflow-code, thennotte functions create, thennotte functions schedule-set. Structurally similar to the dream engine's crystallisation of execution paths into reusable skills, except the execution surface is a deterministic Function rather than an agent re-run on each invocation. Marketplace-listable skills can settle into a faster, cheaper, more predictable runtime.Vault-backed credentials. Addresses the gap
docs/tools/browser-login.mdflags: "Automated logins often trigger anti-bot defenses and can lock the account." Notte's vault auto-fills passwords on matching URLs without exposing them to the model, which unblocks unattended dream-engine cycles where there is no user awake to log in manually.Multi-step stealth sessions. Residential proxies, geo-located exits, inline captcha solving across Cloudflare, DataDome, PerimeterX, and Akamai. Distinct from Firecrawl's single-page lane in that the session persists across navigation, clicks, form fills, and downloads, which is what authenticated workflows need.
Positioned as complementary: routine browsing stays in
src/browser/, single-page stealth reads stay with Firecrawl, the notte skill adds the deployment layer plus the multi-step authenticated path.How
skills/notte/SKILL.md, frontmatter plus markdown, follows the same conventions asskills/notion,skills/mcporter,skills/github.metadata.bitterbot.requires.bins: ["notte"]so the skill is gated behind binary presence.metadata.bitterbot.installlists bothbrew(via thenottelabs/notte-clitap) andgoinstall paths, matching the pattern used inskills/githubandskills/spotify-player.notte-mcpvia the existingmcporterskill) is also documented for users who would rather not install the CLI.Test plan
pnpm buildpassesbitterbot skills listincludesnottenottenot on PATH means the skill is filtered outsrc/plugins/schema-validator.ts)Notes
bitterbot skills import agentskills https://github.com/nottelabs/agent-skill-notte/raw/main/notte/SKILL.md. Happy to drop this PR if that path is cleaner.