import type { AgenticROSConfig } from "@agenticros/core"; /** * Returns the teleop web page HTML (Phase 3). * Includes: camera , source selector when multiple streams, twist buttons, speed slider. */ export function getTeleopPageHtml(config: AgenticROSConfig): string { const teleop = config.teleop ?? {}; const speedDefault = teleop.speedDefault ?? 0.3; const cameraPollMs = teleop.cameraPollMs ?? 150; return ` AgenticROS Teleop

AgenticROS Teleop

Back to AgenticROS

○ Checking…
🎮 No gamepad
Select a camera source (or waiting for feed)
${speedDefault}
Use a topic ending in /compressed for the feed.

WASD keys and Bluetooth gamepads also drive (W=Forward, A=Left, S=Back, D=Right). If Fwd/Back send 0s, open this page via the proxy: http://127.0.0.1:18790/plugins/agenticros/ → Teleop.

`; }