Skip to content

feat: browser automation#276

Open
NathanFlurry wants to merge 51 commits intomainfrom
ralph/browser-automation
Open

feat: browser automation#276
NathanFlurry wants to merge 51 commits intomainfrom
ralph/browser-automation

Conversation

@NathanFlurry
Copy link
Member

  • feat: [US-001] - Add browser_install.rs CLI command
  • feat: [US-002] - Register install browser subcommand in CLI
  • feat: [US-003] - Add browser type definitions (DTOs and errors)
  • feat: [US-004] - Add CdpClient for communicating with Chromium
  • feat: [US-005] - Add BrowserRuntime state machine
  • feat: [US-006] - Add browser lifecycle HTTP endpoints (start/stop/status)
  • feat: [US-007] - Add CDP WebSocket proxy endpoint
  • feat: [US-008] - Add browser navigation endpoints
  • feat: [US-009] - Add browser tab management endpoints
  • feat: [US-010] - Add browser screenshot and PDF endpoints
  • feat: [US-011] - Add browser content extraction endpoints (HTML, markdown, links, snapshot)
  • feat: [US-012] - Add browser scrape and execute endpoints
  • feat: [US-013] - Add browser interaction endpoints (click, type, select, hover, scroll)
  • feat: [US-014] - Add browser upload and dialog endpoints
  • feat: [US-015] - Add browser console and network monitoring endpoints
  • feat: [US-016] - Add browser context (persistent profile) management
  • feat: [US-017] - Add browser cookie management endpoints
  • feat: [US-018] - Add browser crawl endpoint
  • feat: [US-019] - Add TypeScript SDK browser types
  • feat: [US-020] - Add TypeScript SDK browser lifecycle and CDP methods
  • feat: [US-021] - Add TypeScript SDK browser navigation and tab methods
  • feat: [US-022] - Add TypeScript SDK browser content extraction methods
  • feat: [US-023] - Add TypeScript SDK browser interaction methods
  • feat: [US-024] - Add TypeScript SDK browser monitoring, crawl, context, and cookie methods
  • feat: [US-025] - Add BrowserViewer React component
  • feat: [US-026] - Add Browser tab to Inspector UI - runtime control and live view sections
  • feat: [US-027] - Add Browser tab - screenshot, tabs, and console sections
  • feat: [US-028] - Add Browser tab - network, content tools, recording, contexts, diagnostics sections
  • feat: [US-029] - Add browser API integration tests
  • feat: [US-030] - Fix crawl page load: replace sleep with readyState polling
  • feat: [US-031] - Fix crawl navigation status: use real HTTP status instead of faked 200
  • feat: [US-032] - Remove dead cdp_client() method from BrowserRuntime
  • feat: [US-033] - Fix default display dimensions to match spec (1280x720)
  • feat: [US-034] - Add reverse mutual exclusivity check in DesktopRuntime
  • docs: update PRD and progress for US-034
  • feat: [US-035] - Fix BrowserProblem misuse: use correct error variants for non-startup failures
  • docs: update PRD and progress for US-035
  • feat: [US-036] - Add integration tests for console and network monitoring
  • docs: update PRD and progress for US-036
  • feat: [US-037] - Add integration tests for crawling
  • docs: update PRD and progress for US-037
  • feat: [US-038] - Fix path traversal vulnerability in browser context_id
  • docs: update PRD and progress for US-038
  • feat: [US-039] - Fix leaked background tasks on browser stop
  • docs: update PRD and progress for US-039
  • feat: [US-040] - Remove with_cdp method from BrowserRuntime
  • docs: update PRD and progress for US-040
  • feat: [US-041] - Restrict crawl endpoint to http/https schemes only
  • feat: [US-042] - Handle CDP connection death on Chromium crash
  • feat: [US-043] - Strengthen network monitoring integration test

NathanFlurry and others added 30 commits March 17, 2026 04:37
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…tus)

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

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

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…t, and cookie methods

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

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

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

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

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
NathanFlurry and others added 20 commits March 17, 2026 15:18
…stead of faked 200

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…s for non-startup failures

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

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Store JoinHandles for the 3 CDP listener tasks (console, network
request, network response) in BrowserRuntimeStateData and abort
them in stop() before closing the CDP client.

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

railway-app bot commented Mar 21, 2026

🚅 Deployed to the sandbox-agent-pr-276 environment in sandbox-agent

Service Status Web Updated (UTC)
website 😴 Sleeping (View Logs) Web Mar 21, 2026 at 2:26 am
foundry-api ❌ Build Failed (View Logs) Mar 21, 2026 at 2:17 am
foundry-mock ❌ Build Failed (View Logs) Mar 21, 2026 at 2:17 am

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.

1 participant