<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="color-scheme" content="dark light">
<title>Supercode session observer</title>
<link rel="icon" href="/observer/favicon.svg" type="image/svg+xml">
<link rel="stylesheet" href="/observer/style.css">
</head>
<body>
<header class="product-header">
<div>
<p class="eyebrow">Supercode SDK</p>
<h1>Session observer</h1>
</div>
<p class="scope-note">An attachable view of an existing runtime—not a coding IDE or agent engine.</p>
</header>
<form id="connect-form" class="connect-card" aria-label="Connect to runtime">
<label>Runtime endpoint <input id="endpoint" name="endpoint" type="url" required></label>
<label>Scoped credential <input id="token" name="token" type="password" autocomplete="off" required></label>
<label class="checkbox"><input id="controls" name="controls" type="checkbox"> Request authorized controls</label>
<button class="primary" type="submit">Discover and attach</button>
<p id="connect-status" role="status">Credentials remain in this tab and are never placed in the URL.</p>
</form>
<div id="observer-root"></div>
<script type="module" src="/observer/app.mjs"></script>
</body>
</html>