gateway-proxy-debug

par vercel

Débogage de passerelle et proxy pour vercel-openclaw : routage /gateway, injection HTML, réécriture WebSocket, transfert de jeton de passerelle, page d'attente, pulsation de statut,…

npx skills add https://github.com/vercel-labs/vercel-openclaw --skill gateway-proxy-debug

Gateway Proxy Debug

Use this skill when the wrapper can reach a sandbox but /gateway, HTML injection, WebSockets, or token handoff is broken.

Evidence First

Collect:

  • Browser URL and failing request path.
  • GET /api/status.
  • GET /api/admin/sandbox-diag.
  • GET /api/admin/logs filtered for proxy., gateway., sandbox.port_, token..
  • Network trace for /gateway/*, WebSocket upgrade, and POST /api/status heartbeat.

Keep app auth, deployment protection bypass, gateway token, and AI Gateway auth separate. Do not paste gateway tokens in artifacts.

Path Diagram

browser -> wrapper auth -> /gateway route -> ensure sandbox running
  -> fresh gateway token -> sandbox port URL -> OpenClaw gateway
  -> HTML injection -> WebSocket rewrite -> heartbeat POST /api/status

Mark each edge unknown, verified-good, or verified-bad.

Common Failure Splits

  • Waiting page is correct because sandbox is not ready yet.
  • Proxy auth failed before any sandbox request.
  • Cached port URL is stale and needs invalidation.
  • Gateway token is stale or not injected.
  • HTML injection failed or produced a malformed script.
  • WebSocket URL rewrite points at the wrong origin/path.
  • Heartbeat is missing and sandbox times out.

Fix Boundaries

  • Primary: src/app/gateway/[[...path]]/route.ts.
  • Helpers: src/server/proxy/{proxy-route-utils,htmlInjection,waitingPage}.ts.
  • Lifecycle dependencies: src/server/sandbox/lifecycle.ts, src/server/public-url.ts.
  • Tests: proxy/html injection tests plus lifecycle tests for heartbeat interactions.
  • Docs: lat.md/sandbox-lifecycle.md, docs/architecture.md, docs/deployment-protection.md.

Verification

Run focused tests when available, then:

node scripts/verify.mjs --steps=test,typecheck
lat check

For UI/WebSocket fixes, verify in a browser or with a smoke check that HTML contains the injected script and WebSocket traffic reaches the sandbox.

Plus de skills de vercel

benchmark-sandbox
vercel
Exécute les scénarios d'évaluation de vercel-plugin dans des sandbox Vercel au lieu de panneaux WezTerm locaux. Provisionne des microVM éphémères avec Claude Code et le plugin préinstallé,…
official
emil-design-eng
vercel
Cette compétence encode la philosophie d'Emil Kowalski sur le polissage UI, la conception de composants, les décisions d'animation et les détails invisibles qui rendent un logiciel agréable.
official
vercel-react-best-practices
vercel
Directives d'optimisation des performances React et Next.js de l'équipe Vercel Engineering. Cette compétence doit être utilisée lors de l'écriture, de la révision ou du refactoring de code React/Next.js…
official
vercel-react-best-practices
vercel
Directives d'optimisation des performances React et Next.js de Vercel Engineering. Cette compétence doit être utilisée lors de l'écriture, de la révision ou du refactoring de code React/Next.js…
official
write-guide
vercel
Produire un guide technique qui enseigne un cas d'usage concret à travers des exemples progressifs. Les concepts ne sont introduits que lorsque le lecteur en a besoin.
official
release
vercel
Release vercel-plugin — exécuter les gates, incrémenter la version, générer les artefacts, commiter et pousser. Utiliser lorsqu'on demande de "release", "ship", "bump and push" ou "cut a release".
official
deepsec
vercel
Exécuter DeepSec sur un checkout de projet Vercel depuis dev3000. Utiliser pour la configuration DeepSec en un clic, l’amorçage du contexte du projet, le traitement limité de premier passage, et…
official
backport-pr
vercel
Effectuer un backport d'une pull request Next.js fusionnée depuis canary vers une branche de version précédente telle que next-16-2. Utiliser lorsque l'utilisateur demande de faire un backport, un cherry-pick ou d'ouvrir un…
official