ramain-browser-automatorlisted
Install: claude install-skill riteshkew/yc-skills
# Workflow
When this skill triggers, follow these steps in order.
## Step 1 — Capture the task spec
Ask the user for:
- **goal** — plain-English description of what the browser agent should accomplish
- **startUrl** — the URL to open first (e.g. `https://example.com`)
- **allowedDomains** — one or more domains the agent is permitted to navigate to (prevents scope creep)
- **sensitiveDataKeys** (optional) — names of environment variables that hold credentials (e.g. `LOGIN_EMAIL`, `LOGIN_PASSWORD`); their values will never be hard-coded in the script
- **maxSteps** (optional) — maximum number of agent steps before the run is aborted (default: 20)
Example spec:
```json
{
"goal": "Log in to the dashboard and download the latest invoice as a PDF.",
"startUrl": "https://app.example.com/login",
"allowedDomains": ["app.example.com"],
"sensitiveDataKeys": ["EXAMPLE_EMAIL", "EXAMPLE_PASSWORD"],
"maxSteps": 15
}
```
If the user is unsure, suggest the worked scenario in `examples/input.md`.
## Step 2 — Save the spec and run the generator
Save the spec as a JSON file, then run from the skill root (`skills/ramain-browser-automator/`):
```bash
node scripts/gen-task.mjs path/to/task.json > path/to/agent_task.py
```
The engine emits a valid Python script to stdout. Redirect it to a `.py` file.
The generated script:
- Imports `Agent` and `Browser` from `browser_use`, plus an async LLM client
- Builds a `sensitive_data` dict by reading each key from `os.environ` (never ha