

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
1<!-- Guidance for AI agents working in Selenium Ruby Bindings -->23## Code location4- Library: `rb/lib/selenium/webdriver`5- Tests: `rb/spec/unit/` and `rb/spec/integration/`6- Type signatures: `rb/sig/`78## Common commands9- Build: `bazel build //rb/...`1011## Testing12See `rb/TESTING.md`1314## Code conventions1516### Logging17```ruby18WebDriver.logger.warn("actionable: something needs attention", id: :warning_id)19WebDriver.logger.info("useful: driver started successfully")20WebDriver.logger.debug("diagnostic: request details for debugging")21```2223### Deprecation24```ruby25WebDriver.logger.deprecate(26 'OldClass#old_method',27 'NewClass#new_method',28 id: :old_method29)30```3132### Internal APIs33Mark internal APIs with `@api private` in YARD comments:34```ruby35# @api private36def internal_method37end38```3940### Type signatures (steep/rbs)41When changing public API, update corresponding `.rbs` files in `rb/sig/`4243### Documentation44Use YARD for public APIs:45```ruby46# Brief description.47#48# @param name [Type] description49# @return [Type] description50# @raise [ErrorClass] when condition51```5253## Integration test guards5455Integration specs are guarded by RSpec metadata on `describe`/`context`/`it` (all enclosing56guards combine). Use one of these five, and always include a `reason:`:5758- `skip_if:` — skip when config matches59- `skip_unless:` — run only when config matches60- `pending_if:` — expect failure when config matches61- `pending_unless:` — expect failure unless config matches62- `flaky:` — `skip_if` reserved for unreliable/intermittent tests6364Matching within one Hash = AND (every pair must match); an Array value within a key = OR (matches any65listed value). An Array of Hashes lists configs matched independently, and the combined effect depends66on the guard direction: for `skip_if`/`pending_if` the guard triggers if **any** Hash matches (OR); for67`skip_unless`/`pending_unless` the example is kept only where **all** Hashes match (i.e. it is68skipped/pended if any does not). The `reason:` is a String or an issue number. Conditions (`browser`,69`driver`, `platform`, `ci`, etc.) are registered in70[`spec_helper.rb`](spec/integration/selenium/webdriver/spec_helper.rb).7172```ruby73skip_if: {browser: %i[chrome edge], headless: true, reason: '...'} # headless Chrome or Edge74pending_if: [{browser: :firefox, reason: 1234}, {platform: :macosx, reason: 5678}] # Firefox OR macOS75skip_unless: [{bidi: false, reason: '...'}, {driver: :remote, reason: '...'}] # only when non-bidi AND remote76```77
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| SeleniumHQ/seleniumjava/AGENTS.md · 34k | AGENTS.md | teststyledocs | 58/100 | 14 days ago | |
| SeleniumHQ/seleniumdotnet/AGENTS.md · 34k | AGENTS.md | teststyledocs | 73/100 | 9 days ago | |
| SeleniumHQ/seleniumpy/AGENTS.md · 34k | AGENTS.md | teststyletypesdeployment+2 | 80/100 | 14 days ago | |
| SeleniumHQ/seleniumrust/AGENTS.md · 34k | AGENTS.md | teststyledocs | 44/100 | 14 days ago | |
| SeleniumHQ/seleniumAGENTS.md · 34k | AGENTS.md | teststylearchgit+1 | 75/100 | 14 days ago | |
| SeleniumHQ/seleniumjavascript/selenium-webdriver/AGENTS.md · 34k | AGENTS.md | teststyledocs | 44/100 | 14 days ago |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| mui/material-uiAGENTS.md · 99k | AGENTS.md | setupbuildtestlint-format+9 | 100/100 | 14 days ago | |
| elastic/elasticsearchx-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/ml/AGENTS.md · 78k | AGENTS.md | buildtestlint-formatstyle+2 | 100/100 | 14 days ago | |
| code-yeongyu/oh-my-openagentpackages/web/AGENTS.md · 68k | AGENTS.md | setupbuildtestlint-format+6 | 100/100 | 13 days ago | |
| TryGhost/Ghoste2e/AGENTS.md · 55k | AGENTS.md | setupteststylearch+2 | 100/100 | today | |
| n8n-io/n8npackages/@n8n/agents/AGENTS.md · 201k | AGENTS.md | buildteststylearch+3 | 100/100 | 14 days ago | |
| duckduckgo/content-scope-scriptsspecial-pages/AGENTS.md · 70 | AGENTS.md | buildteststylearch+3 | 100/100 | 14 days ago | |
| deepseek-ai/deepseek-harnessnative/landlock-run/AGENTS.md · 104k | AGENTS.md | setupteststylearch+3 | 100/100 | today | |
| rails/railsAGENTS.md · 59k | AGENTS.md | teststylearchgit+4 | 100/100 | 14 days ago |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/seleniumhq-selenium-rb-agents)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.