Skip to content

Conversation

@betterclever
Copy link
Contributor

@betterclever betterclever commented Jan 3, 2026

Overview

This PR introduces the Browser Automation feature in its entirety. It refactors the browser component into a highly robust, type-safe, and user-friendly tool, utilizing a dedicated Playwright harness and a first-of-its-kind visual action builder.

Key Modules & Features

1. Dedicated Playwright Harness (@shipsec/browser-harness)

  • Isolation: Extracted the browser execution logic into a dedicated package.
  • Type-Safety: Uses shared Zod schemas between the worker and the harness for 100% type consistency.
  • Dockerized Execution: Runs within mcr.microsoft.com/playwright to ensure a consistent environment (screenshots, console capture, results).
  • Security: Implements tracking-blocking logic and optimized browser launch arguments.

2. Parameter System Elevation (SDK Changes)

  • First-Class Parameters: Promoted parameters to the top-level of ComponentDefinition.
  • UI Architecture: Parameters now appear at the very top of the Node Config Panel for immediate access.
  • Centralized Editors: Complex parameter editors (Script, Forms, Variables) are now centralized in frontend/src/components/parameter-editors/.

3. Visual Browser Actions Builder

  • UX Transformation: Replaced JSON definition with a Premium Card-based UI.
  • Supported Actions: Navigate (Goto), Click, Fill, Screenshot, Hover, Scroll, Select, Wait, Evaluate JS, and Text/HTML extraction.
  • Rich Interaction: Supports reordering, collapsible configuration forms, and real-time summaries.

4. End-to-End Reliability

  • Binary Support: Updated the worker's volume utilities to support binary file reading for high-resolution screenshots.
  • Shared Schemas: Centralized all browser automation types in @shipsec/shared.

Impact

Users can now build complex, multi-step browser workflows (like logging into a portal, taking a screenshot, and extracting data) entirely through a visual sidebar interface with zero JSON editing required.

@betterclever betterclever changed the title WIP: Visual Browser Actions Editor & Parameter Elevation Feat: Robust Browser Automation with Visual Actions Editor Jan 3, 2026
Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
…me read support

Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
…red types

- Created @shipsec/browser-harness for typesafe Playwright automation logic.
- Moved browser automation schemas to @shipsec/shared.
- Refactored browser.automation component to use compiled harness and shared types.
- Fixed lint errors in BrowserPanel frontend component.
- Integrated new package into root workspaces.

Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
… to first-class citizens

This commit includes:
- Promotion of parameters to a top-level property in ComponentDefinition.
- Implementation of a visual BrowserActionsEditor with cards-based UI.
- Extraction of complex parameter editors to a centralized location in the frontend.
- Refactoring of browser.automation to use the new top-level parameters and visual editor.

Signed-off-by: betterclever <paliwal.pranjal83@gmail.com>
@betterclever betterclever force-pushed the feat/browser-automation-visual-editor branch from 9778420 to 017eef0 Compare January 3, 2026 16:46
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.

2 participants