github mnemosynestack/doppelganger v0.8.0

7 hours ago

New Features

  • AI Selector Generator: Added a magic dust icon next to selector inputs across all action types (click, type, hover, wait). Clicking it opens a small popup where you can describe an element in plain English (e.g., "the green submit button"), and the backend will automatically analyze the DOM using Gemini to generate the CSS selector for you.
  • Smart Locational Interactions: Rewrote the Playwright interaction engine to stop defaulting to clicking dead-center on elements. Clicks and hovers will now target random coordinates strictly within a padded boundary (minimum 2px pad, generally targeting the inner 60%) to perfectly mimic human variability without ever missing the button.
  • Contextual Cookie Rendering: Added a feature to render only the cookies relevant to the specific page being viewed, improving privacy and reducing clutter.
  • Multiple API Keys Support: The Doppelganger backend and frontend settings now fully support managing arrays of API Keys for LLM providers (e.g., Gemini) to handle rate-limiting and scale.

UI/UX Enhancements

  • Action Block Overhaul: The AI Selector generator now fully respects its parent block's state (disabling itself when the action is disabled) and properly elevates its z-index so your prompt text floats over any subsequent action blocks.
  • Editor Flow Stability: Re-arranged the execution flow buttons so the Stop button appears immediately next to the Run button. The Open Browser button now properly disables and grays out while a task is running.
  • Headful Browser Disclaimer: Added a prominent amber warning disclaimer when using the viewport-based headful viewer explaining that native windows are less stable than the recommended Docker (noVNC) container approach.
  • Clean Session Cleanup: Headful sessions are now strictly managed and will automatically cleanly terminate if you navigate away from the Task Editor.

Reliability & Fixes

  • Strict Selector Rules: The AI selector generation prompt has been enhanced with aggressive constraints forbidding randomized, dynamic, or numeric IDs (e.g., #popup-170970) and hash-based CSS classes. It will now properly prioritize semantic text matching and structurally resilient pseudo-classes.
  • Playwright Explicit Scopes: Fixed an esoteric bug where text fields wouldn't receive inputs by forcing the agent to scroll elements into view, click them locationally, clear them with keyboard shortcuts, and type unconditionally on focus.

Don't miss a new doppelganger release

NewReleases is sending notifications on new releases.