platforms/hermes/skills/software-development/codex-hermes-playwright-ext-timeout-triage/SKILL.md
排查 Codex/Hermes 的 playwright-ext 从“可用”变为不可用(Extension connection timeout)时的最小闭环流程。先判定 bridge 层,再判定 token/同步链路,避免误把问题归因于“未安装 Playwright”。
npx skillsauth add codingsamss/ai-dotfiles codex-hermes-playwright-ext-timeout-triageInstall 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.
当出现以下任一现象时使用:
mcp_playwright_ext_browser_tabs(list) 返回 Extension connection timeout先区分三层问题,避免混淆:
playwright --version 正常 != bridge 一定可连。
node -vnpm -vnpx playwright --versionhermes mcp test playwright-ext + browser_tabs(list)codex exec 直接调用 playwright-ext.browser_tabs(list)~/.hermes/config.yaml~/.codex/config.tomltomllib)提取字段,确认是否为占位符 <PLAYWRIGHT_EXT_TOKEN>。~/.hermes/config.yaml 已是实值 token,但当前 Hermes/Gateway 会话仍 timeout。playwright-mcp --extension 进程环境变量是否还是旧值/占位符。ps -Ao pid,ppid,etime,command | grep '@playwright/mcp@latest --extension'ps eww -p <node_pid> -o pid=,ppid=,command= 并比对 PLAYWRIGHT_MCP_EXTENSION_TOKENhermes gateway restart)后复测。scripts/sync_to_codex.shplatforms/codex/config.tomlscripts/bootstrap.shsync_to_codex.sh 是否仅在 --sync-config 下触碰 config.tomlbootstrap.sh 默认是否传 --sync-config(通常不传)./scripts/sync_to_codex.sh --root-only --sync-config --dry-run --yesCODEX_HOME--sync-config)hermes mcp test playwright-exthermes mcp listcodex mcp get playwright-extcodex exec --ephemeral --json "调用 playwright-ext browser_tabs(list) 并原样返回"./scripts/sync_to_codex.sh --root-only --sync-config --dry-run --yespython3 - <<'PY' ... 结构化读取 ~/.codex/config.toml 与 ~/.hermes/config.yaml 的 token 后再比对(避免肉眼误判)development
Query Midea MX / 美信 local message cache through the MX local HTTP query service from Codex. Use when the user asks to read MX sessions, search chat history, search messages globally or inside a group/session, list recent messages, or page message history. This is read-only and does not require send authorization. Never fall back to reading SQLite or app cache files directly.
development
Safely search MX users or groups and send Midea MX / 美信 IM messages from Codex. Use when the user asks to notify someone, send a message to a person or group, use a configured group alias, @ users, @ all, or send MX file/image messages. Read lookups need no extra authorization; every live send needs explicit user authorization for that exact target and message.
tools
MX channel output rules. Always active in MX conversations.
tools
Use the company WorkSpace `ws` CLI reliably as a delegated coding agent from Codex. Trigger when the user wants Codex to command `ws`, WorkSpace CLI, or the company opencode-derived coding tool to generate code, inspect a repo, run a bounded implementation task, or use a requested WorkSpace model while Codex reviews the output.