Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/moeacgx/pinchtab-openclaw-kit --skill pinchtab명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
SOC 직업 분류 기준
| name | pinchtab |
| description | 使用 PinchTab HTTP API 控制浏览器(导航、截图、文本提取、点击、表单填写)。 |
| metadata | {"openclaw":{"emoji":"🌐","requires":{"bins":"[Truncated]"},"os":["linux","darwin","win32"]}} |
PinchTab 提供本地浏览器控制的 HTTP API。常用场景:网页导航、表单填写、点击、截图、文本提取、运行时页面调试。
当任务涉及“浏览器调试 / 页面行为异常 / DOM 闪动 / 实时渲染问题”时,不要只靠源码猜测,优先走运行时验证。
http://127.0.0.1:9867PINCHTAB_TOKEN 并在请求头添加:
Authorization: Bearer $PINCHTAB_TOKENcurl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
http://127.0.0.1:9867/health
curl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
http://127.0.0.1:9867/instances
不要先假设配置来自 ~/.config/pinchtab/config.json。
先查运行中的服务到底吃哪个配置。
systemctl cat pinchtab.service
systemctl status pinchtab.service --no-pager -l
重点看:
ExecStart=Environment=PINCHTAB_CONFIG=...ps -ef | grep -i pinchtab | grep -v grep
tr '\0' '\n' < /proc/<pinchtab-pid>/environ
重点看:
PINCHTAB_CONFIG=docker ps
docker inspect <container-id>
重点看:
PINCHTAB_CONFIG=/etc/pinchtab.json 或其他配置路径的文件如果没提前拿到 token,优先从实际生效配置文件里读取 server.token,不要盲猜。
如果导航时报类似错误:
navigation blocked by IDPIdomain is not in the allowed listunauthorized不要继续猜页面代码,先检查配置文件中的:
security.idpi.enabled
security.idpi.allowedDomains
security.idpi.strictMode
如果当前需求是本机私有浏览器调试,且用户明确要求不要白名单:
"security": {
"idpi": {
"enabled": false,
"allowedDomains": [],
"strictMode": false,
"scanContent": false,
"wrapContent": false,
"customPatterns": [],
"scanTimeoutSec": 0
}
}
/healthnavigate如果任务属于以下类型:
请遵守以下流程。
如果页面已经明显要求:
不要继续假装能全自动跑通。此时优先进入 VNC/noVNC 接管流程。
当需要用户手动登录时,优先这样提示:
这个站点需要登录/验证码,接下来请通过 VNC/noVNC 接管浏览器完成登录。
登录完成后告诉我“已登录”,我再继续自动化后续步骤。
如果已经有 SSH 隧道说明,也可以提示:
请先通过 SSH 隧道打开 noVNC / VNC,手动完成登录。登录完成后回复“已登录”。
用户回复“已登录”后:
推荐提示:
我会继续使用当前浏览器 profile 里的登录态执行后续步骤。
如果你希望后续复用这次登录,不要清空该 profile。
如果任务已完成,建议告诉用户:
这次登录态已经保存在当前 PinchTab profile 中。
下次同一站点通常可以直接复用,无需重新登录;除非站点主动让 cookie 失效。
默认不要主动提示用户退出网站账号,除非:
否则默认策略应是:
对于 PinchTab 来说,更准确的说法通常不是“单独导出 cookie”,而是:
所以对用户的表达推荐是:
这次登录状态会随当前浏览器 profile 一起保留,后续优先复用,不需要你每次重新登录。
而不要轻易承诺:
我已经单独保存了这个站的 cookie 文件
除非你真的实现了 cookie 导出。
curl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
-X POST http://127.0.0.1:9867/navigate \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com"}'
curl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
"http://127.0.0.1:9867/tabs/<TAB_ID>/snapshot?filter=interactive"
# 点击
curl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
-X POST http://127.0.0.1:9867/tabs/<TAB_ID>/action \
-H "Content-Type: application/json" \
-d '{"kind":"click","ref":"e3"}'
# 输入
curl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
-X POST http://127.0.0.1:9867/tabs/<TAB_ID>/action \
-H "Content-Type: application/json" \
-d '{"kind":"fill","ref":"e5","value":"text"}'
curl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
http://127.0.0.1:9867/tabs/<TAB_ID>/text
curl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
http://127.0.0.1:9867/tabs/<TAB_ID>/screenshot
遇到以下问题时,优先用 PinchTab 运行时验证:
建议流程:
# 列出实例
curl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
http://127.0.0.1:9867/instances
# 停止实例
curl -s -H "Authorization: Bearer $PINCHTAB_TOKEN" \
-X POST http://127.0.0.1:9867/instances/<INSTANCE_ID>/stop
PinchTab 官方镜像是 Alpine (musl),无法直接运行主机的 glibc 版 Chromium。 统一可行方案:
browser.binary 为 /usr/bin/chromium示例:
{
"browser": {
"binary": "/usr/bin/chromium",
"extraFlags": "--no-sandbox --disable-gpu --disable-software-rasterizer --disable-dev-shm-usage --disable-vulkan --use-gl=swiftshader"
}
}