Skip to content

Hyperyond/hover-seeds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hover-seeds

Community translation seeds for Hover — worked examples that teach Hover's optional AI optimization pass new patterns, by few-shot rather than by hardcoding anything in core.

A seed is just one example: "when the captured steps look like this, the Playwright code should look like that." The optimization pass generalizes from it. No fork, no plugin code.

Use a seed

Copy any seeds/*.json into your project's .hover/rules/ directory:

mkdir -p .hover/rules
curl -o .hover/rules/download.json \
  https://raw.githubusercontent.com/Hyperyond/hover-seeds/main/seeds/download.json

Hover picks it up automatically on the next optimize run. The widget's Seeds tab (Saved-sessions → Seeds) shows which seeds it currently sees.

Seeds influence generated code. Hover validates every optimized candidate (no XPath / no waitForTimeout / must parse) and you review it via diff before it replaces anything — but still, only add seeds you've read.

Seed format

Each file matches seed.schema.json:

{
  "name": "download",
  "signature": ["browser_click"],
  "note": "A click that triggers a file download.",
  "example": {
    "steps": [{ "tool": "browser_click", "element": "Export CSV button" }],
    "code": "const [download] = await Promise.all([\n  page.waitForEvent('download'),\n  page.getByRole('button', { name: 'Export CSV' }).click(),\n]);"
  }
}
  • signature — a cheap relevance filter (Hover only feeds a seed to the pass when one of its base tools appears in the spec). Not exact-matched.
  • code — must obey Hover's rules: getByRole / getByLabel / getByText selectors, no XPath, no waitForTimeout.

Contributing

  1. Add seeds/<name>.json (validate it against seed.schema.json).
  2. Add a matching entry to index.json.
  3. Open a PR. Keep seeds high-signal: a real, reusable pattern with clean, idiomatic Playwright.

Built-in seeds ship inside Hover itself; this repo is for the long tail the community wants to share.

Current seeds

Seed What it covers
download A click that triggers a file download (waitForEvent('download') pairing).
oauth-popup Sign-in through a provider popup that opens a new tab.
file-upload Set a file on a hidden <input type=file> via the file chooser.

License

Apache-2.0 © Hyperyond Studio

About

Community translation seeds for Hover — worked examples that teach its optional AI optimization pass new Playwright patterns by few-shot. Drop a seed into .hover/rules/.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors