
Browser Form Fill
- 627 installs
- 67k repo stars
- Updated August 4, 2026
- ruvnet/ruflo
browser-form-fill is an agent skill that fills web forms from a field-name-to-value JSON map via claude-flow browser MCP tools for developers who need repeatable, template-aware form automation without manual clicking.
About
browser-form-fill is an agent skill in ruvnet/ruflo that opens a URL, applies a structured field-map.json to inputs, and optionally submits the form using claude-flow browser MCP primitives. The manifest lists 11 browser tools—including browser_fill, browser_select, browser_check, browser_click, and browser_snapshot—plus aidefence_has_pii for PII screening before submission. Developers pass argument hints like `<url> <field-map.json> [--template <name>] [--submit]` and can reuse known layouts from browser-templates instead of rediscovering selectors each run. The workflow suits agent-driven QA, onboarding smoke tests, and scripted data entry where the same form appears across environments. Reach for browser-form-fill when an agent must populate registration, checkout, or admin forms from JSON payloads while preserving optional template lookup and explicit submit control. It pairs Bash Read Write for map files with browser wait and snapshot steps to confirm field state before clicking submit.
- browser-form-fill
Browser Form Fill by the numbers
- 627 all-time installs (skills.sh)
- +7 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Ranked #613 of 4,347 Backend & APIs skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/ruvnet/ruflo --skill browser-form-fillAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 627 |
|---|---|
| repo stars | ★ 67k |
| Last updated | August 4, 2026 |
| Repository | ruvnet/ruflo ↗ |
How do you automate web form filling with JSON field maps?
Use browser-form-fill for development tasks
Who is it for?
Developers wiring claude-flow browser agents who need JSON-driven form fills with template lookup and optional submit for QA or integration scripts.
Skip if: Teams building backend REST APIs without browser automation requirements should skip browser-form-fill.
When should I use this skill?
User supplies a form URL plus field-map.json, mentions browser-templates, or asks an agent to fill and optionally submit a web form.
What you get
Populated form fields, optional submitted page state, and browser snapshot confirmation from the field-map run.
- Filled form state
- Optional submitted page
- Browser snapshot verification
By the numbers
- Lists 11 claude-flow browser MCP tools in allowed-tools
- Argument hint accepts url, field-map.json, optional --template, and --submit
Files
Browser Form Fill
Fill a form using a structured field map ({"first_name": "Ada", "company": "..."}). When a browser-templates entry exists for the host, use it to resolve field names → CSS selectors automatically; otherwise resolve via the page accessibility snapshot.
When to use
- Submitting a known form (signup, contact, checkout) where field names are stable.
- Re-using a stored template for a recurring submission.
- Authoring a new template for a site by recording the resolved selectors.
Steps
1. Open a recorded session via browser-record. 2. Resolve selectors:
- Template path (
--template <name>): pull{field_name → selector}frombrowser-templates. - Snapshot path: call
browser_snapshot, walk the accessibility tree, match each input's accessible name / label to the field map keys.
3. AIDefence PII gate: every value in the field map passes aidefence_has_pii before any keystroke; record pii_in_form: true in the session manifest. Do not record the values themselves in the trajectory; record only the field names + a redacted placeholder. 4. Fill with browser_fill / browser_type / browser_select / browser_check per input type. 5. Submit if --submit: locate the submit button via the snapshot, browser_click, then browser_wait for navigation. 6. Persist the template if a new mapping was discovered:
npx -y @claude-flow/cli@latest memory store --namespace browser-templates \
--key "<host>:<form-name>" \
--value "{field_map:{...}, submit_selector:..., post_submit_url_pattern:...}"7. Verify post-submit state if a verification snippet was provided in the field map's _assert key.
Caveats
- Trajectory steps for fills MUST redact values. The PII gate is the contract.
- For inputs that require typing simulation (e.g., autocomplete reactions), use
browser_type(simulates keystrokes) rather thanbrowser_fill(sets value programmatically). Record which one was used in the trajectory step. - Multi-step forms are a sequence of
browser-form-fillinvocations; chain them via the same session id. - If the form has a CAPTCHA, surface the request to the user — do not attempt to bypass.
Related skills
How it compares
Pick browser-form-fill over generic browser skills when forms are driven by reusable JSON field maps and browser-templates rather than one-off CSS selectors.
FAQ
What inputs does browser-form-fill require?
browser-form-fill expects a target URL and field-map.json mapping field names to values, with optional --template for browser-templates and --submit to click the form submit control after fills complete.
Which MCP tools does browser-form-fill use?
browser-form-fill calls 11 claude-flow browser MCP tools—including browser_open, browser_fill, browser_select, browser_click, and browser_snapshot—plus aidefence_has_pii to screen mapped values before submission.