cmux-browser by manaflow-ai/cmux
npx skills add https://github.com/manaflow-ai/cmux --skill cmux-browser在 cmux webview 中使用此技能执行浏览器任务。
get url 验证导航。--interactive) 以获取新的元素引用。click, fill, type, select, press)。cmux --json browser open https://example.com
# 使用返回的界面引用,例如:surface:7
cmux browser surface:7 get url
cmux browser surface:7 wait --load-state complete --timeout-ms 15000
cmux browser surface:7 snapshot --interactive
cmux browser surface:7 fill e1 "hello"
cmux --json browser surface:7 click e2 --snapshot-after
cmux browser surface:7 snapshot --interactive
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
# 识别当前上下文
cmux identify --json
# 打开并路由到特定的拓扑目标
cmux browser open https://example.com --workspace workspace:2 --window window:1 --json
注意事项:
surface:N, pane:N, workspace:N, window:N)。--id-format uuids|both)。surface:N。cmux 支持类似于 agent-browser 的等待模式:
cmux browser <surface> wait --selector "#ready" --timeout-ms 10000
cmux browser <surface> wait --text "Success" --timeout-ms 10000
cmux browser <surface> wait --url-contains "/dashboard" --timeout-ms 10000
cmux browser <surface> wait --load-state complete --timeout-ms 15000
cmux browser <surface> wait --function "document.readyState === 'complete'" --timeout-ms 10000
cmux --json browser open https://example.com/signup
cmux browser surface:7 get url
cmux browser surface:7 wait --load-state complete --timeout-ms 15000
cmux browser surface:7 snapshot --interactive
cmux browser surface:7 fill e1 "Jane Doe"
cmux browser surface:7 fill e2 "jane@example.com"
cmux --json browser surface:7 click e3 --snapshot-after
cmux browser surface:7 wait --url-contains "/welcome" --timeout-ms 15000
cmux browser surface:7 snapshot --interactive
cmux browser surface:7 fill e11 "" --snapshot-after --json
cmux browser surface:7 get value e11 --json
# 导航 -> 验证 -> 等待 -> 快照 -> 操作 -> 快照
cmux browser surface:7 get url
cmux browser surface:7 wait --load-state complete --timeout-ms 15000
cmux browser surface:7 snapshot --interactive
cmux --json browser surface:7 click e5 --snapshot-after
cmux browser surface:7 snapshot --interactive
如果 get url 为空或显示 about:blank,请先导航,而不是等待加载状态。
| 参考文档 | 使用时机 |
|---|---|
| references/commands.md | 完整的浏览器命令映射和快速语法 |
| references/snapshot-refs.md | 引用生命周期和过时引用故障排除 |
| references/authentication.md | 登录/OAuth/2FA 模式和状态保存/加载 |
| references/authentication.md#saving-authentication-state | 登录后立即保存认证状态 |
| references/session-management.md | 多界面隔离和状态持久化模式 |
| references/video-recording.md | 当前录制状态及实用替代方案 |
| references/proxy-support.md | WKWebView 中的代理行为及解决方法 |
| 模板 | 描述 |
|---|---|
| templates/form-automation.sh | 快照/引用表单填写循环 |
| templates/authenticated-session.sh | 登录一次,保存/加载状态 |
| templates/capture-workflow.sh | 导航 + 捕获快照/截图 |
以下命令当前返回 not_supported,因为它们依赖于 WKWebView 未暴露的 Chrome/CDP 专用 API:
请改用受支持的高级命令 (click, fill, press, scroll, wait, snapshot)。
snapshot --interactive 或 eval 时出现 js_error某些复杂页面可能会拒绝或破坏用于丰富快照和临时评估的 JavaScript。
恢复步骤:
cmux browser surface:7 get url
cmux browser surface:7 get text body
cmux browser surface:7 get html body
get url,以便了解页面是否确实已导航。snapshot --interactive 或 eval 返回 js_error 时,回退到 get text body 或 get html body。每周安装量
556
代码仓库
GitHub 星标数
10.1K
首次出现
2026年2月20日
安全审计
安装于
codex539
amp537
gemini-cli537
opencode536
kimi-cli535
cursor535
Use this skill for browser tasks inside cmux webviews.
get url before waiting or snapshotting.--interactive) to get fresh element refs.click, fill, type, select, press).cmux --json browser open https://example.com
# use returned surface ref, for example: surface:7
cmux browser surface:7 get url
cmux browser surface:7 wait --load-state complete --timeout-ms 15000
cmux browser surface:7 snapshot --interactive
cmux browser surface:7 fill e1 "hello"
cmux --json browser surface:7 click e2 --snapshot-after
cmux browser surface:7 snapshot --interactive
# identify current context
cmux identify --json
# open routed to a specific topology target
cmux browser open https://example.com --workspace workspace:2 --window window:1 --json
Notes:
surface:N, pane:N, workspace:N, window:N).--id-format uuids|both).surface:N per task unless you intentionally switch.cmux supports wait patterns similar to agent-browser:
cmux browser <surface> wait --selector "#ready" --timeout-ms 10000
cmux browser <surface> wait --text "Success" --timeout-ms 10000
cmux browser <surface> wait --url-contains "/dashboard" --timeout-ms 10000
cmux browser <surface> wait --load-state complete --timeout-ms 15000
cmux browser <surface> wait --function "document.readyState === 'complete'" --timeout-ms 10000
cmux --json browser open https://example.com/signup
cmux browser surface:7 get url
cmux browser surface:7 wait --load-state complete --timeout-ms 15000
cmux browser surface:7 snapshot --interactive
cmux browser surface:7 fill e1 "Jane Doe"
cmux browser surface:7 fill e2 "jane@example.com"
cmux --json browser surface:7 click e3 --snapshot-after
cmux browser surface:7 wait --url-contains "/welcome" --timeout-ms 15000
cmux browser surface:7 snapshot --interactive
cmux browser surface:7 fill e11 "" --snapshot-after --json
cmux browser surface:7 get value e11 --json
# navigate -> verify -> wait -> snapshot -> action -> snapshot
cmux browser surface:7 get url
cmux browser surface:7 wait --load-state complete --timeout-ms 15000
cmux browser surface:7 snapshot --interactive
cmux --json browser surface:7 click e5 --snapshot-after
cmux browser surface:7 snapshot --interactive
If get url is empty or about:blank, navigate first instead of waiting on load state.
| Reference | When to Use |
|---|---|
| references/commands.md | Full browser command mapping and quick syntax |
| references/snapshot-refs.md | Ref lifecycle and stale-ref troubleshooting |
| references/authentication.md | Login/OAuth/2FA patterns and state save/load |
| references/authentication.md#saving-authentication-state | Save authenticated state right after login |
| references/session-management.md | Multi-surface isolation and state persistence patterns |
| references/video-recording.md | Current recording status and practical alternatives |
| references/proxy-support.md |
| Template | Description |
|---|---|
| templates/form-automation.sh | Snapshot/ref form fill loop |
| templates/authenticated-session.sh | Login once, save/load state |
| templates/capture-workflow.sh | Navigate + capture snapshots/screenshots |
These commands currently return not_supported because they rely on Chrome/CDP-only APIs not exposed by WKWebView:
Use supported high-level commands (click, fill, press, scroll, wait, snapshot) instead.
js_error on snapshot --interactive or evalSome complex pages can reject or break the JavaScript used for rich snapshots and ad-hoc evaluation.
Recovery steps:
cmux browser surface:7 get url
cmux browser surface:7 get text body
cmux browser surface:7 get html body
get url first so you know whether the page actually navigated.get text body or get html body when snapshot --interactive or eval returns js_error.Weekly Installs
556
Repository
GitHub Stars
10.1K
First Seen
Feb 20, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
codex539
amp537
gemini-cli537
opencode536
kimi-cli535
cursor535
agent-browser 浏览器自动化工具 - Vercel Labs 命令行网页操作与测试
138,300 周安装
FastMCP Python框架:快速构建MCP服务器,为Claude等大模型提供工具与资源
405 周安装
Nginx配置完全指南:生产级反向代理、负载均衡、SSL终止与性能优化
406 周安装
iOS HIG 设计指南:原生应用界面开发框架与 SwiftUI/UIKit 最佳实践
406 周安装
Aceternity UI - Next.js 13+ 动画React组件库 | Tailwind CSS & Framer Motion
406 周安装
RAG工程师技能详解:检索增强生成系统架构与最佳实践
406 周安装
survey技能:跨平台问题空间扫描与调研工具 | 智能体开发研究
406 周安装
| Proxy behavior in WKWebView and workarounds |