Repository inventory

mic92/mics-skills

Skills indexed from this repository, with install-style signals scoped to the repo.
3 skills24 GitHub stars0 weekly installsJavaScriptGitHubOwner profile

Overview

This skill lets you control a Firefox browser from the command line for web automation, scraping, testing, and interactive browser tasks. It exposes a JavaScript-based CLI execution environment with high-level actions for navigation, element interaction, snapshots, reader-mode extraction, downloads, waiting, and screenshots. Use it to script flows, inspect page state with stable refs, and integrate browser operations into pipelines or agent workflows.

How this skill works

Commands are sent to a running Firefox instance and executed in a tab context. snap() produces a readable snapshot with numeric refs you can use with click(), type(), drag(), select(), and other interaction functions. Higher-level helpers include read() for article extraction, wait() for synchronization, download() for saving assets, and shot() for screenshots. Actions return confirmations; use snap(), diff(), or logs() to inspect state and results.

When to use it

  • Automated form filling and multi-step web flows
  • Web scraping where human-like interactions are required (clicks, waits, drags)
  • End-to-end or integration testing of web apps from the CLI
  • Extracting readable article content for downstream processing
  • Capturing screenshots or downloads as part of a pipeline
  • Interactive debugging of page behavior using snapshots and console logs

Best practices

  • Call snap() frequently to get stable refs before interacting with elements
  • Prefer numeric refs from snapshot output (e.g., click(3)) for reliability over fragile selectors
  • Use wait('idle') or wait('text', ...) to synchronize with dynamic content before snapping or asserting
  • Use read({maxLength}) to limit extracted article size when feeding LLMs
  • Store downloads to a known path and check confirmations returned by download()
  • Run repetitive flows inside a single tab session to reduce overhead of opening/closing tabs

Example use cases

  • Automate login and form submission: open page, snap(), type() into inputs, click submit, wait('text','Success')
  • Scrape content behind interactive UI: navigate, click pagination, snap() for stable refs, extract structured text
  • Convert articles to plain text at scale: navigate then read({maxLength:5000}) to get LLM-friendly content
  • Visual regression or reporting: navigate, shot('/tmp/page.png') and compare images in CI
  • Download assets from pages: find link href and download(url, 'invoice.pdf') to collect files programmatically

FAQ

Yes. The CLI controls a managed Firefox instance. The tool manages tabs and execution contexts but requires the browser process it controls.

How do I reliably target elements?

Use snap() to get numeric refs and then call actions with those refs. You can also use CSS selectors or text selectors when refs are not available.

3 skills

More from this maintainer
Other repositories and skills published under the same GitHub owner.
Skills library
Jump back to the full directory or explore grouped topics.
Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational