diff --git a/skills/cmux-browser/references/commands.md b/skills/cmux-browser/references/commands.md index 5cc37625..72693a5d 100644 --- a/skills/cmux-browser/references/commands.md +++ b/skills/cmux-browser/references/commands.md @@ -11,7 +11,7 @@ This maps common `agent-browser` usage to `cmux browser` usage. - `agent-browser fill ` -> `cmux browser fill ` - `agent-browser type ` -> `cmux browser type ` - `agent-browser select ` -> `cmux browser select ` -- `agent-browser get text ` -> `cmux browser get text ` +- `agent-browser get text ` -> `cmux browser get text ` - `agent-browser get url` -> `cmux browser get url` - `agent-browser get title` -> `cmux browser get title` @@ -34,7 +34,13 @@ cmux browser get url|title ```bash cmux browser snapshot --interactive cmux browser snapshot --interactive --compact --max-depth 3 -cmux browser get text|html|value|attr|count|box|styles ... +cmux browser get text body +cmux browser get html body +cmux browser get value "#email" +cmux browser get attr "#email" --attr placeholder +cmux browser get count ".row" +cmux browser get box "#submit" +cmux browser get styles "#submit" --property color cmux browser eval '' ``` diff --git a/tests_v2/test_browser_skill_get_selector_docs.py b/tests_v2/test_browser_skill_get_selector_docs.py new file mode 100644 index 00000000..92c5a8f9 --- /dev/null +++ b/tests_v2/test_browser_skill_get_selector_docs.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python3 +"""Regression checks for cmux-browser get selector examples.""" + +import sys +from pathlib import Path + +sys.path.insert(0, str(Path(__file__).parent)) +from cmux import cmuxError + + +ROOT = Path(__file__).resolve().parents[1] +COMMANDS = ROOT / "skills/cmux-browser/references/commands.md" + + +def _must(cond: bool, msg: str) -> None: + if not cond: + raise cmuxError(msg) + + +def main() -> int: + commands = COMMANDS.read_text(encoding="utf-8") + + _must("`agent-browser get text ` -> `cmux browser get text `" in commands, "Expected get text mapping to mention selector support") + _must("cmux browser get text body" in commands, "Expected get text body example") + _must("cmux browser get html body" in commands, "Expected get html body example") + _must('cmux browser get value "#email"' in commands, "Expected get value selector example") + _must('cmux browser get attr "#email" --attr placeholder' in commands, "Expected get attr selector example") + _must("cmux browser get text|html|value|attr|count|box|styles ..." not in commands, "Unexpected bare get example block") + + return 0 + + +if __name__ == "__main__": + raise SystemExit(main())