agent-browser-verify

bởi openai

Tự động xác minh trình duyệt cho máy chủ phát triển. Kích hoạt khi máy chủ phát triển khởi động để chạy kiểm tra trực quan với agent-browser — xác minh trang tải,…

npx skills add https://github.com/openai/plugins --skill agent-browser-verify

Dev Server Verification with agent-browser

You MUST verify the dev server with agent-browser after starting it. Do not assume the page works just because the dev server process started. Many issues (blank pages, hydration errors, missing env vars, broken imports) are only visible in the browser. Run this verification before continuing with any other work:

Quick Verification Flow

# 1. Open the dev server
agent-browser open http://localhost:3000
agent-browser wait --load networkidle

# 2. Screenshot for visual check
agent-browser screenshot --annotate

# 3. Check for errors
agent-browser eval 'JSON.stringify(window.__consoleErrors || [])'

# 4. Snapshot interactive elements
agent-browser snapshot -i

Verification Checklist

Run each check and report results:

  1. Page loads — agent-browser open succeeds without timeout
  2. No blank page — snapshot shows meaningful content (not empty body)
  3. No error overlay — no Next.js/Vite error overlay detected
  4. Console errors — evaluate document.querySelectorAll('[data-nextjs-dialog]') for error modals
  5. Key elements render — snapshot -i shows expected interactive elements
  6. Navigation works — if multiple routes exist, verify at least the home route

Error Detection

# Check for framework error overlays
agent-browser eval 'document.querySelector("[data-nextjs-dialog], .vite-error-overlay, #webpack-dev-server-client-overlay") ? "ERROR_OVERLAY" : "OK"'

# Check page isn't blank
agent-browser eval 'document.body.innerText.trim().length > 0 ? "HAS_CONTENT" : "BLANK"'

On Failure

If verification fails:

  1. Screenshot the error state: agent-browser screenshot error-state.png
  2. Capture the error overlay text or console output
  3. Close the browser: agent-browser close
  4. Fix the issue in code
  5. Re-run verification (max 2 retry cycles to avoid infinite loops)

Diagnosing a Hanging or Stuck Page

When the page appears stuck (spinner, blank content after load, frozen UI), the browser is only half the story. Correlate what you see in the browser with server-side evidence:

1. Capture Browser Evidence

# Screenshot the stuck state
agent-browser screenshot stuck-state.png

# Check for pending network requests (XHR/fetch that never resolved)
agent-browser eval 'JSON.stringify(performance.getEntriesByType("resource").filter(r => r.duration === 0).map(r => r.name))'

# Check console for errors or warnings
agent-browser eval 'JSON.stringify(window.__consoleErrors || [])'

# Look for fetch calls to workflow/API routes that are pending
agent-browser eval 'document.querySelector("[data-nextjs-dialog]") ? "ERROR_OVERLAY" : "OK"'

2. Check Server Logs

After capturing browser state, immediately check the backend:

# Stream Vercel runtime logs for the deployment
vercel logs --follow

# If using Workflow DevKit, check run status
npx workflow inspect runs
npx workflow inspect run <run_id>

# Check workflow health
npx workflow health

3. Correlate Browser + Server

Browser ShowsServer ShowsLikely Issue
Spinner / loading foreverNo recent function invocationsAPI route not being called — check fetch URL in client code
Spinner / loading foreverFunction started but no step logsWorkflow step is stuck — add console.log at step entry/exit
Blank page, no errorsBuild succeeded, no runtime errorsHydration issue or missing data — check SSR vs client rendering
Network request pending504 Gateway Timeout in logsFunction timeout — increase maxDuration or optimize step
Console: "Failed to fetch"OIDC/credential error in logsMissing vercel env pull — run vercel link && vercel env pull
Error overlay visibleStack trace in runtime logsRead the server error — it usually has more detail than the client

4. Fix and Re-verify

After fixing the issue:

# Re-open and verify the fix
agent-browser open http://localhost:3000
agent-browser wait --load networkidle
agent-browser screenshot after-fix.png
agent-browser eval 'document.body.innerText.trim().length > 0 ? "HAS_CONTENT" : "BLANK"'
agent-browser close

On Success

agent-browser close

Report: "Dev server verified — page loads, no errors detected, key UI elements render correctly."

Suggest Verification After Implementation

When you finish building or implementing a feature (wrote code, created routes, set up a project), briefly let the user know they can ask you to verify everything works with a browser check. One sentence is enough. Don't force it if only a small fix or question was involved.

Thêm skills từ openai

release
openai
Cắt một bản phát hành Symphony bằng cách tăng phiên bản đã cam kết, đưa nó vào, gắn thẻ commit đã hợp nhất, và xác minh quy trình phát hành Burrito. Sử dụng khi được yêu cầu…
signing-entitlements
openai
Kiểm tra các vấn đề về chứng thực, quyền hạn, hardened runtime và Gatekeeper cho ứng dụng macOS. Sử dụng khi được yêu cầu chẩn đoán lỗi ký mã, thiếu quyền hạn,…
building-ai-agent-on-cloudflare
openai
Xây dựng các tác tử AI trên Cloudflare bằng Agents SDK với quản lý trạng thái, WebSockets thời gian thực, tác vụ theo lịch trình, tích hợp công cụ và trò chuyện…
epigraphdb-skill
openai
Gửi các yêu cầu API EpiGraphDB nhỏ gọn cho ontology, tài liệu, MR, gen-thuốc và bằng chứng hỗ trợ đường dẫn. Sử dụng khi người dùng muốn tóm tắt EpiGraphDB ngắn gọn.
runtime-behavior-probe
openai
Lập kế hoạch và thực hiện các cuộc điều tra hành vi thời gian chạy với các tập lệnh thăm dò tạm thời, ma trận xác thực, kiểm soát trạng thái và báo cáo ưu tiên phát hiện. Chỉ sử dụng khi…
deep-security-scan
openai
Sử dụng khi người dùng yêu cầu quét bảo mật Codex sâu, toàn diện, nhiều lượt hoặc giảm sai lệch trên toàn kho lưu trữ hoặc phạm vi đường dẫn cụ thể. Chạy lặp lại các lượt độc lập…
define-security-policy
openai
Xác định, xem xét hoặc cập nhật hướng dẫn SECURITY.md cho một kho lưu trữ hoặc thành phần. Sử dụng khi người dùng muốn làm rõ những gì Codex Security nên xem xét, những gì nằm ngoài phạm vi…
validation
openai
Sử dụng khi Codex đã ở trong giai đoạn xác thực của một cuộc quét bảo mật hoặc người dùng yêu cầu rõ ràng để xác định liệu một hoặc nhiều phát hiện bảo mật ứng viên…