Skip to content

Update template naming and structure - #111

Merged
Kylejeong2 merged 46 commits into
devfrom
update-template-naming
Sep 25, 2026
Merged

Kylejeong2 merged 46 commits into
devfrom
update-template-naming

Conversation

@Kylejeong2

@Kylejeong2 Kylejeong2 commented Sep 25, 2026 •

Copy link
Copy Markdown
Member

Summary

Updates template naming conventions and directory structure with cleaner, more consistent identifiers.

Changes

  • Renames template directories for improved organization
  • Updates configuration files and documentation references
  • Maintains full Git history with cleaned records

Files Changed

  • All template configuration files
  • Documentation and README references
  • Directory structure reorganization

Note

Low Risk
Documentation and template path renames only; no automation logic or API behavior changes.

Overview
Renames the basic-recaptcha template to basic-captcha-solving across Python and TypeScript (Stagehand and Playwright variants). The root templates table and package metadata (package.json, pyproject.toml) now point at the new paths and names.

Documentation and user-facing copy shift from reCAPTCHA-specific wording to generic CAPTCHA language (titles, goals, glossary, expected output, error messages). Runtime behavior is unchanged—the demos still use Google's reCAPTCHA demo URL; only naming and docs reflect broader CAPTCHA support.

Reviewed by Cursor Bugbot for commit bd37b6f. Bugbot is set up for automated code reviews on this repo. Configure here.

jay-sahnan and others added 30 commits December 29, 2025 23:05
* init commit

* updating model
* init commit

* Add MFA-handling template updates and check script

- Updated MFA-handling Python and TypeScript templates
- Added 'check' script to package.json for running all formatting and linting checks

* addressing PR comments
* init commit

* addressing PR comments
* init commit

* addressing PR comments
* Add cartesia-form-filling template

Adds a voice-based form-filling agent template using Cartesia's LINE SDK and Google Gemini for conducting structured questionnaires.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>

* Replace with browserbase integration example

Uses the correct cartesia-ai/line example_integrations/browserbase folder
which integrates Cartesia LINE with Stagehand for voice-driven form filling.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Fix README install instructions

Use pip install . instead of pip install -r requirements.txt
since pyproject.toml is used for dependencies.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
* init commit

* changed to toml

* changes to readme

* fixed NITS
* init commit

* addressing PR comment
* init commit

* addressing PR
* init commit

* addressing PR comments
* inti commit

* formating

* addressing PR comments
* init commit

* added python version

* Replace exa-browserbase-1 with exa-browserbase (TypeScript)

* adding package.json, Exa import fix

* addressing Pr comments
* Restore descriptive comments in Python v3 templates

Restore important descriptive comments across all 18 Python templates:
- Replace "V3 BYOB architecture" with "cloud-based browser automation"
- Add "Connect to the browser via CDP" comments before sync_playwright sections
- Restore Pydantic model explanations and compatibility notes
- Restore caching behavior and context management documentation
- Restore login/navigation sequence explanations
- Keep all Pydantic models using model_json_schema() for extract

All templates tested for correctness where API keys available.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>

* Simplify Python templates to use pure Stagehand API

Address PR review feedback:
- Remove Playwright CDP connection from templates that only use act() and extract()
- Use client.sessions.navigate() instead of page.goto()
- Move session.end() to finally blocks to avoid duplicate calls
- Remove unnecessary inline schema comment
- Update READMEs with simplified quickstart instructions

Affected templates: council-events, license-verification, form-filling,
polymarket-research

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
* init commit

* addressing PR comments

* pin versions
- Replace processor/processorRun pattern with inline config via client.extract()
- Remove getOrCreateProcessor/get_or_create_processor and EXTEND_PROCESSOR_ID
- Rename config.parser to config.parseConfig, remove config.type
- Update file upload: client.file.upload() → client.files.upload()
- Unwrap API responses (response.id instead of response.processor.id)
- Bump extend-ai SDK: TS ^0.0.18 → ^1.0.2, Python >=0.0.21 → >=1.0.0
- Update READMEs and .env.example files

Co-authored-by: Claude (claude-opus-4-6) <noreply@anthropic.com>
* Add Cerebras docs checker Python template

4-phase documentation checker: crawl docs via parallel Stagehand BYOB workers,
discover the source GitHub repo, clone it, and verify docs accuracy against
source code using Cerebras tool-calling agent.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Add inline comments to match other Python template conventions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…I calls (#65)

* Bump JS SDK to v2.7 and Python SDK to v1.5, remove project_id from API calls

- Bump @browserbasehq/sdk to ^2.7.0 in all TypeScript templates
- Bump browserbase to >=1.5.0 in all Python templates
- Remove projectId/project_id from bb.sessions.create(), bb.contexts.create(),
  and browserbaseSessionCreateParams/browserbase_session_create_params since
  it no longer needs to be explicitly set

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Remove empty object args from sessions.create() and contexts.create()

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* readmes and env examples

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…#67)

* feat: add smart-fetch-scraper template — Fetch API + browser fallback

* feat: add package.json for smart-fetch-scraper

* feat: add .env.example for smart-fetch-scraper

* feat: add README for smart-fetch-scraper

* add more robust browser fallback checks

* refactor code

* refactor readme

* update code + add example sites in readme

* chore: remove package-lock.json from tracking and add .gitignore

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* link directly to fetch

* fix relative cd path command in quickstart

* remove stagehand, just use playwright page.content when falling back to browser

* Revert "remove stagehand, just use playwright page.content when falling back to browser"

This reverts commit 76c0db5.

* adding python example

---------

Co-authored-by: Alex Qiu <alexander@browserbase.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Jay Sahnan <jay@browserbase.com>
* typescript: image download template using stagehand extract to pull image urls

* add Python template

* rm gitignore

* fix try catch handling in TS example

* update gitignore

* wrap file write in try/except

* revert root .gitignore and uv.lock changes — out of scope for this PR

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* catch non-numeric strings set in max images and fall back to default 10

* python: missing bb api key error instead of accepting;

* update ts exampel to wait until network idel, as we are extracting images

* typescript match python behavior by validating urls

* clean up image-url-download templates to match repo conventions

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Jay Sahnan <jay@browserbase.com>
…s) (#69)

* feat: add getting-started-with-browserbase template (Search, Fetch, Sessions)

* addressed PR comments
Replace 8 dead URLs with current equivalents:
- docs.browserbase.com/features/sessions → /fundamentals/create-browser-session
- docs.browserbase.com/integrations/playwright/python → /introduction/playwright
- docs.browserbase.com/stagehand/extract → docs.stagehand.dev/v3/basics/extract
- docs.stagehand.dev/basics/navigate → /v3/references/page
- docs.stagehand.dev/basics/execute → /v3/basics/act
- docs.stagehand.dev/python → /v3/sdk/python
- docs.stagehand.dev/reference/python/overview → /v3/sdk/python
- github.com/browserbase/stagehand/tree/main/examples → browserbase.com/templates
jay-sahnan and others added 14 commits April 2, 2026 13:21
* Add Puppeteer JavaScript quickstart template

* small fix

* small fix
…d Selenium API (#78)

* Migrate Selenium Python quickstart into monorepo

* small readme fix

* Fix Selenium quickstart session handling and waits

Applied via @cursor push command

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
* Add Selenium TypeScript quickstart template

Adds typescript/selenium/quickstart-selenium/ mirroring the Python
Selenium quickstart. Navigates SFMOMA, clicks interactive elements,
and extracts page copy using typed Selenium WebDriver.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* addressing bug bot fixes

* small fix

* small readme update

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* adding playwright templates

* addressing nits

* fix: small readme and code fix

* add toml file

* fix
#85)

* feat(browser-agent): adding browser agent demo from docs to templates + prettier/eslint

* update readme
…bump SDKs (#76)

* Migrate templates to Browserbase Model Gateway

* Fix Model Gateway naming and remove CUA notes from READMEs

* using correct package version

* updated stagehand package version to use latest

* Remove BROWSERBASE_PROJECT_ID from Stagehand templates

* bumped bb sdk versons
* Flatten README template list for agent discoverability

Add a single searchable table of all 80+ templates with name, language,
and one-line description so agents and humans can quickly find relevant
templates without navigating subdirectories.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* ci: validate README template index

* fix: align README template index with tracked templates

* ci: streamline README index workflow

* ci: bump checkout action

* docs: group template index by language

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…#75)

* init

* add a build step that turns new ts templates into js in CI

* add file filter to build script

* add built js templates

* add exclude flag

* add comments to explain build filters

* add build step to run on dev branch in CI

* regen templats on each pr merge

* include all readme, package json and env examples in build

* get paths to build js files first so that the entire repo isn't deleted and rewritten with new build

* remove built js files

* only build js files to production branch

* remove build javascript workflow

* before recursing, skip directories whose basename is in DEFAULT_EXCLUDED_DIRS

* before recursing, skip directories whose basename is in DEFAULT_EXCLUDED_DIRS

* if there are zero playground compatible templates, do not call build-javascript.mjs

* add test-production branch support

* build js templates

* remove built js files

* add pkg.type = module to adaptPackageJsonForJavaScript so it's unconditionally set for all generated JS templates

* consolidate workflows to one plauground.yml file to remove need to make updates to it twice

* write contents to test-production and production branches

* use hardcoded branch names instead of unused var

* add --no-verify flag to build

* add stripLeadingTscBuildCommand to handle when multiple commands exist alongside tsc

* add parseBuildOptions to parse CLI flags at once instead of in multiple places to prevent drift
* Update TypeScript templates to Stagehand V4

* Use code mode for V4 agent templates

* Harden live template outcomes

* Use published Stagehand V4 package

* Harden V4 templates with live outcome validation

* fix: address review comments

* feat: migrate Python templates to Stagehand V4

* fix: complete credentialed TypeScript template flows

* feat: migrate Go template to Stagehand V4

* fix: harden reviewed template inputs

* fix: avoid newest-story validation race

* fix: disambiguate spoken radio answers

* fix: reject uncertain spoken answers

* style: align Go template with V4 docs

* chore: pull Python integration from Stagehand main

* fix: verify omitted GitHub application field

* fix: make context and pickleball standalone

* fix: address fresh v4 e2e failures

* fix: preserve template Stagehand primitives

* fix: retry nurse result extraction

* fix: stabilize Exa application reviews

* restore Stagehand primitive-first template flows

* restore code-mode agent prompt behavior

* simplify Exa application workflow

* fix: stabilize remaining V4 template smoke tests

* test templates out of band and preserve Stagehand primitives

* Address final template review feedback

* Harden proxy region validation

* Address SDK review and remove redundant extract caveats

* Address latest template review feedback

* Use Model Router in remaining templates

---------

Co-authored-by: Shrey Pandya <3813908+shrey150@users.noreply.github.com>
* fix: add Browserbase SDK dependency for download-financial-statements

* fix: add Browserbase SDK dependency for job-application
* fix: make source-cloned templates self-contained

* fix: keep link tester concurrency safe by default
Update documentation and code comments to use generic CAPTCHA solving terminology throughout all template files.
Rename all basic-recaptcha template directories to basic-captcha-solving and update all related references in configuration files and documentation.
@Kylejeong2
Kylejeong2 marked this pull request as ready for review September 25, 2026 21:08
@Kylejeong2
Kylejeong2 merged commit 8e135ff into dev Sep 25, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.