OpenLum.Core/Skills/webbrowser/SKILL.md
浏览网页。与 read skill 风格一致:直接 exec 调用 exe,传参执行,stdout 为结果。
npx skillsauth add ldotjdot/openlum webbrowserInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
与 read skill 统一:直接调用 exe,传命令行参数,stdout 为 JSON 结果。
| exe | 说明 | |-----|------| | skills/webbrowser/browser/openlum-browser.exe | 浏览器操作 |
openlum-browser.exe [--headless] <command> [args]
navigate --url <URL> --headless
snapshot [--maxChars N]
仅列出可交互元素(button/link/textbox 等)并分配 ref,便于 click/type 使用。
推荐:所有交互相关的决策(点哪里、在哪个控件输入)应优先通过 snapshot 完成。
find --text "<部分或完整文本>" [--role <角色名>] [--limit N]
用于无 ref 时定位元素:按可见文本或 ARIA 角色搜索,返回匹配项的中心坐标与边界框。
返回字段:matches[].index、matches[].centerX、matches[].centerY、matches[].width、matches[].height、matches[].text。
典型用法:先find --text "提交"得到centerX/centerY,再click --x <centerX> --y <centerY>点击。
--role可选,如button、link;--limit默认 10,最大 50。
type --ref <REF> --text <TEXT> [--submit]
click --ref <REF> [--force]
click --x <X> --y <Y>
两种方式二选一:ref(来自 snapshot)或 坐标 x,y(来自 find 的 centerX/centerY)。
坐标点击在页面内用elementFromPoint(x,y)取该点元素并触发 click,兼容 iframe 与覆盖层。
page_text [--maxChars N]
仅用于阅读大量文本内容或在 snapshot 中找不到某段文字时做兜底排查。 不要直接依赖 page_text 去“猜”要点哪个元素,page_text 不包含 ref,无法直接交互。
upload --ref <REF> --paths <path1> [path2...]
tabs [--switch N]
eval --expr "<JS 表达式>" [--maxChars N]
注意:
expr是一个 JS 表达式,例如() => window.location.href或() => ({ title: document.title, href: location.href })。返回值会被序列化为 JSON 字符串并截断到maxChars。
quit
直接执行 quit 即退出,关闭浏览器,失去浏览器当前上下文。
# 打开 Bing,显示窗口
& "skills/webbrowser/browser/openlum-browser.exe" --headless navigate --url "https://cn.bing.com"
# 获取快照(找搜索框 ref)
& "skills/webbrowser/browser/openlum-browser.exe" snapshot
# 输入并搜索
& "skills/webbrowser/browser/openlum-browser.exe" type --ref 2 --text "ldotjdot" --submit
# 无头模式打开
& "skills/webbrowser/browser/openlum-browser.exe" --headless navigate --url "https://example.com"
# 按文本查找再按坐标点击(无 ref 时)
& "skills/webbrowser/browser/openlum-browser.exe" find --text "提交" --limit 5
& "skills/webbrowser/browser/openlum-browser.exe" click --x 125 --y 212
# 退出(关闭浏览器,失去当前上下文)
& "skills/webbrowser/browser/openlum-browser.exe" quit
navigate --url https://cn.bing.com → 返回 snapshot 和 refsref,用 click --ref <REF> / type --ref <REF> ... 操作find --text "提交" 或 find --text "确定" --role button → 得到 matches[].centerX/centerYclick --x <centerX> --y <centerY> 点击该位置tabs --switch N 切换后继续以上步骤snapshot,尝试在 snapshot 中搜索关键字;若能找到,继续按 ref 交互page_text 获取更多纯文本内容(只用于阅读和排查)eval 在 DOM 中按文本/选择器查找并操作元素development
在缺少专用工具时,优先使用本地 Python 脚本完成复杂任务。临时脚本统一放在工作区 script 目录下的独立子文件夹中。
tools
用于在 C# / .NET 项目中进行规划、实现、重构和调试。优先使用 dotnet CLI 完成项目管理与编译,结合 Grep / Glob / 子代理 / 网络搜索进行代码定位与 Debug。禁止执行 dotnet run / dotnet test,编译通过即视为任务完成。
development
Local coding workflow: read/write/list_dir/exec,加上 Grep + Glob 的纯文本搜索。Use when: editing code, building, refactoring, or exploring a codebase. Success = compile passes; user runs the program.
development
Maintainer-only workflow for handling GitHub Secret Scanning alerts on OpenClaw. Use when Codex needs to triage, redact, clean up, and resolve secret leakage found in issue comments, issue bodies, PR comments, or other GitHub content.