Launched this week

Selector Forge
Browser extension for AI-generated resilient selectors
99 followers
Browser extension for AI-generated resilient selectors
99 followers
Browser extension to create reliable CSS and XPath selectors using AI. You can use it to create a selector for a single element or for an array of elements. The selectors it creates are meant to be "semantic" and more resilient to page changes! Extension is also open source on GitHub: https://github.com/Intuned/selector-forge







Intuned
The silent wrong-click after a layout shift is the failure that's bitten me, way more than a clean no-match which at least throws. You said the judge only reports back when nothing survives, so at runtime, if a baked selector quietly over-matches or grabs a different anchor after a redesign, does it surface that, or is catching the confident-but-wrong hit on the calling agent?
Intuned
Hi@yannikga , thank you for your question. So with the extension, we give you a list of all the selectors that you generated. After a redesign you can recheck the generated selector by clicking here:
Interesting problem. For AI-generated selectors, the part I would test hardest is not the first successful selector, but how it fails after the UI changes.
A strong workflow would show: the matched element count, why the selector was chosen, what changed since the last run, and a fallback path that does not silently hit the wrong element. Browser automation failures are much safer when the tool refuses to act than when it confidently clicks a nearby sibling.
Intuned
@tang_weigang Really great insights! Thank you for replying. So we surface how many elements a selector match but right now we don't surface the judge. For the fallback, we currently surfuce the best selector but I agree, a fallback with a button like copy as playwright with chains of fallback would be interesting.
Nice launch! One of the biggest pain points in browser automation is flaky selectors. Curious whether the AI prioritizes attributes like aria-label, data-testid, and stable text content before considering class names.
Intuned
@yagnaveena Thank you Sree, yes it does. You can read more about it here:
https://intunedhq.com/blog/selector-forge
The part I’d want to see in practice is the failure case. When Forge rejects a selector during judging, does it show why, like over-matching, under-matching, or matching the wrong labeled field, or does it just return the best surviving option?
Intuned
@novamaker01 Just returns the reliable selector. It only reports back if none of the selector survived our judge. Feel free to checkout the open source project:
https://github.com/Intuned/selector-forge
The semantic, resilient selectors are the part I would test first, since most scrapers break exactly when class names or DOM order shift. I like that it handles array selectors and not just single elements, which is where naive "copy selector" tooling usually falls apart. When the AI generates one, can I pin a specific stable attribute and have it build the selector around that, or is the output a single best-guess I have to accept or regenerate?
Intuned
@hi_i_am_mimo Thank you for your comment, yes, it the extension finds the anchor and builds a selector on top of it. We don't support pinning an attribute but you are open to submit and issue about this into https://github.com/Intuned/selector-forge
That anchor-first approach makes sense. Even a lightweight override to prefer data-testid, aria-label, or another known stable attribute before generating the rest would be useful on pages with several similar anchors.
Makes sense — anchoring to a nearby stable element is usually more durable than the target's own attributes anyway. The case I'd still worry about is the anchor and target drifting apart in a redesign: does the extension re-resolve against the anchor at runtime, or is the selector baked at capture time? I'll open an issue on the attribute-pin idea.
Intuned
@hi_i_am_mimo the selector will be backed at capture time. Would love to hear your thoughts on Github! looking forward to it.
I like that this is aimed at resilient selectors rather than just another recorder. In browser automation the annoying bit is not capturing a selector once, it's keeping it alive after a small DOM/class change. Curious if you score candidates by stability signals like text/aria/data attrs, or mainly by replay success?
Intuned
@xiaosong001 We use stability signals that are explained here:
https://intunedhq.com/blog/selector-forge