Hyperion V2
Hyperion V2 – LLM-nativer universeller Web-Agent
Der leistungsstärkste Browser für KI. Universeller MCP-Server, der jedem KI-Agenten (Claude, Cursor, Cline, OpenCode usw.) die Steuerung eines echten Chrome mit 5 Wahrnehmungsmodulen, resilientem Heartbeat und Echtzeit-Vision ermöglicht.
CLAUDE CODE ──┐
CURSOR ├─── MCP / CLI ──── HYPERION V2 ──── CDP ──── CHROME REAL
CLINE │ (Zod schemas) (5 engines) (tus tabs, logins)
OPENCODE ├─── Heartbeat + Auto-Reconnect
AGY │ Real-Time Vision Streaming
CODEX │ Overlay [0][1][2]...
HERMES └─── Action Registry + Full Tracing🚀 Was ist neu in V2?
1. LLM-freundliche API mit Zod-Schemas
✅ Selbstdokumentation → LLMs verstehen jedes Tool ohne Mehrdeutigkeit
✅ Typsichere Ausführung → Automatische Eingabevalidierung
✅ 16+ vorregistrierte Werkzeuge → Screenshot, Klick, Eingabe, Overlay, Vision usw.
2. Heartbeat + resiliente automatische Wiederverbindung
✅ Health-Monitoring → Erkennt stille Verbindungsabbrüche
✅ Exponentielles Backoff → Automatische Wiederverbindung mit steigender Verzögerung
✅ Verbindungspool → Echtzeitmetriken (Latenz, Nachrichten, Fehler)
✅ Kein "Verbindung verloren" mehr → Stellt sich automatisch wieder her
3. Echtzeit-Vision-Streaming
✅ Kontinuierliche Frames → 1–10 fps konfigurierbar
✅ Änderungserkennung → Erkennt, welche Elemente hinzugefügt/entfernt wurden
✅ Plattformerkennung → Identifiziert Instagram, TikTok, Facebook usw.
✅ Vollständige Elementmetadaten → Position, Text, Selektoren, ARIA-Rollen
4. Universelles Aktions-Framework
✅ Vollständige Ausführungsverfolgung → Screenshot vorher/nachher, Wiederholungshistorie, Dauer
✅ Automatische Wiederholung → Pro Aktion konfigurierbar (Timeout, Backoff)
✅ Ausführungshistorie → Letzte 1000 Aktionen mit vollständigen Logs
✅ Listener-Muster → Abonnieren von Ausführungsereignissen
5. Robuste Overlay-Engine
✅ EINMALIGE Injektion → Garantiert, keine Duplikate
✅ Automatische Aktualisierung → Aktualisiert bei DOM-Änderungen
✅ MutationObserver + Resize → Immer synchronisiert
✅ Klick per ID [0][1][2] → LLM sieht die Nummern und klickt
Related MCP server: agentify-desktop
📋 V2-Architektur
src/
├── core/
│ ├── types.ts ← Universal types (16 interfaces)
│ └── ActionRegistry.ts ← Action execution + tracing
│
├── connection/
│ ├── transport.ts ← Base transport (CDP protocol)
│ ├── resilience/
│ │ ├── HeartbeatManager.ts ← Health monitoring
│ │ ├── ReconnectionManager.ts ← Auto-reconnect + backoff
│ │ ├── ConnectionPool.ts ← Metrics + connection management
│ │ └── ConnectionHealthCheck.ts
│ ├── attach.ts ← WebSocket attach mode
│ ├── launch.ts ← Fresh Chrome launch
│ └── extension.ts ← Chrome extension mode
│
├── vision/
│ └── VisionEngine.ts ← Real-time frame capture + analysis
│
├── overlay/
│ └── OverlayEngine.ts ← Robust element mapping
│
├── mcp/
│ ├── LLMServer.ts ← 16+ registered actions
│ └── MCPServerAdapter.ts ← MCP protocol bridge
│
├── hyperion.ts ← Main client API
└── cli.ts ← CLI entry point (MCP/interactive)🎯 Anwendungsfälle
Claude Code / Cursor / Cline
# Start MCP server
hyperion --mcp --launch
# Configure in your editor's settings
# Claude Code automatically discovers and uses all 16+ toolsSo verwendet der LLM eine Aktion:
{
"actionId": "overlay-inject",
"input": {
"refreshIntervalMs": 1000
}
}
→ Response: {
"injected": true,
"elementCount": 42,
"elements": [
{ "overlayId": 0, "text": "Click here", "x": 100, "y": 200 },
{ "overlayId": 1, "text": "Submit", "x": 150, "y": 250 },
...
]
}{
"actionId": "overlay-click",
"input": { "overlayId": 5 }
}
→ Response: { "clicked": true, "overlayId": 5 }📊 16+ registrierte Aktionen
Aktion | Kategorie | Wahrnehmung | Timeout | Wiederholung |
| visuell | visuell | 5s | ✗ |
| Navigation | keine | 30s | ✓ (2x) |
| Interaktion | visuell | 3s | ✓ (3x) |
| Interaktion | keine | 5s | ✓ (2x) |
| visuell | visuell | 5s | ✗ |
| visuell | visuell | 2s | ✗ |
| Interaktion | visuell | 3s | ✓ (2x) |
| visuell | keine | 2s | ✗ |
| visuell | visuell | ∞ | ✗ |
| visuell | keine | ∞ | ✗ |
| Extraktion | keine | 5s | ✗ |
| Dienstprogramm | keine | 15s | ✗ |
| Interaktion | keine | 3s | ✗ |
| Dienstprogramm | keine | 5s | ✗ |
| Interaktion | visuell | 2s | ✗ |
| Interaktion | keine | 3s | ✗ |
🔧 Installation
npm install -g hyperion-browser
# O desde source
git clone https://github.com/ericklrm89-jpg/hyperion.git
cd hyperion
npm install
npm run build🎬 Schnellstart
MCP-Modus (Claude Code, Cursor usw.)
# Launch fresh Chrome + MCP server
hyperion --mcp --launch --port 9222
# O attach a Chrome existente
hyperion --mcp --attach ws://localhost:9222/devtools/page/xxx
# O usar extension
hyperion --mcp --extensionInteraktive CLI
hyperion --launch
> navigate https://example.com
> screenshot
> click "button.submit"
> type "#email" "test@example.com"
> scroll down 500
> eval "document.title"🏗️ Säulenarchitektur
SÄULE 1: Kerntypen
Universelle Definitionen, die vom gesamten System gemeinsam genutzt werden:
ActionDefinition<T>→ Zod-Schema + MetadatenActionExecution→ Vollständige Verfolgung mit ScreenshotsVisionFrame→ Frame mit 30+ EigenschaftenConnectionMetrics→ Health-Monitoring
SÄULE 2: Resilienzschicht
Heartbeat + automatische Wiederverbindung + Verbindungspool
// Heartbeat detecta desconexiones
const hb = new HeartbeatManager(
sender,
onHealthChange,
{ maxMissed: 3, clientId: 'agent-1' }
);
hb.start(5000); // Ping cada 5s
// ReconnectionManager reintentos exponenciales
const rc = new ReconnectionManager({
maxAttempts: 10,
initialBackoffMs: 1000,
maxBackoffMs: 30000,
backoffMultiplier: 1.5,
});
await rc.executeWithReconnect(() => transport.call('Method'));
// ConnectionPool métricas
const pool = new ConnectionPool();
pool.recordMessageSent('conn-1', 'Page.navigate', 250);
const metrics = pool.getMetrics('conn-1');
// { state, messagesSent, averageLatency, errorCount, ... }SÄULE 3: Universelles Aktions-Framework
Sichere Ausführung + Wiederholung + Verfolgung
const registry = new ActionRegistry();
// Registrar acción
registry.register({
id: 'custom-action',
name: 'My Action',
description: '...',
schema: z.object({ ... }),
retry: { maxAttempts: 3, backoffMs: 1000 },
timeout: 10000,
});
// Ejecutar con tracing
const execution = await registry.execute(
'custom-action',
{ input: 'value' },
async (validated) => {
// Tu código aquí
return result;
},
{
captureScreenshots: true,
beforeScreenshot: () => hyperion.screenshot.capture(),
afterScreenshot: () => hyperion.screenshot.capture(),
}
);
// execution contiene:
// - status, duration, attempts
// - output, error (si falló)
// - screenshots before/after/error
// - retry count y historial
registry.onExecution(exec => {
console.log(`Action ${exec.actionId} -> ${exec.status} (${exec.duration}ms)`);
});SÄULE 4: Echtzeit-Vision
Streaming + Änderungserkennung
const vision = new VisionEngine(hyperion);
// Start streaming
await vision.startStreaming(1000); // 1 frame/sec
vision.on('frame', (frame: VisionFrame) => {
console.log(`Frame ${frame.id}:`);
console.log(` URL: ${frame.url}`);
console.log(` Elements: ${frame.elements.length}`);
console.log(` Platform: ${frame.platform}`);
console.log(` Changes: +${frame.changes?.added.length} -${frame.changes?.removed.length}`);
});
vision.on('frame-changed', (frame) => {
// Solo elementos nuevos/removidos
console.log('DOM cambió:', frame.changes);
});
const latest = vision.getLatestFrame();
const history = vision.getFrameHistory(10);
const stats = vision.getStats();
vision.stopStreaming();SÄULE 5: Overlay-Engine
Robuste Injektion + automatische Synchronisation
const overlay = new OverlayEngine();
// Inyectar (una sola vez, garantizado)
await overlay.ensureInjected(hyperion, { refreshIntervalMs: 1000 });
// Obtener elementos
const elements = await overlay.getElements(hyperion);
// [
// { overlayId: 0, text: 'Login', x: 100, y: 200 },
// { overlayId: 1, text: 'Sign Up', x: 150, y: 200 },
// ]
// Click por ID
await overlay.clickById(hyperion, 5);
// Eliminar overlay
await overlay.kill(hyperion);SÄULE 6: LLM-Server
MCP-Brücke + 16+ Aktionen
const llmServer = new LLMServer(hyperion);
// Automáticamente registra 16+ acciones
const definitions = llmServer.getActionDefinitions();
// Cada una tiene schema Zod auto-documentado
// Ejecutar acción (como lo haría un LLM)
const result = await llmServer.executeAction('overlay-inject', {
refreshIntervalMs: 1000,
});
// Ejecuta, trackea, captura screenshots, reintentos
const history = llmServer.getExecutionHistory(100);
const stats = llmServer.getStats();🎛️ 3 Verbindungsmodi
Modus | Methode | Anti-Erkennung | Chrome 136+ | Empfohlen |
Erweiterung | Native Messaging | ✅ CreepJS 0% | ✅ Kein Popup | ✅ Standard |
Starten | Neuen Browser starten | ✅ Vollständig versteckt | N/A | Für CI/isoliert |
Anhängen | WebSocket an vorhandenen Browser | ⚠️ Teilweise | ❌ Popup | Nur Debugging |
🔒 Anti-Erkennung
Runtime.enableAUS → Beseitigt Runtime-LeckEmulation.setAutomationOverride→navigator.webdriver = false(nativ)Keine JS-Patches → Keine Fingerabdrücke
Erweiterung + Native Messaging → Vermeidet Popup von Chrome 136+
Emulation.setFocusEmulationEnabled→ Tabs im Hintergrund drosseln nicht
📈 Metriken und Debugging
// Connection metrics
const pool = new ConnectionPool();
const metrics = pool.getMetrics('conn-1');
// {
// state: 'connected',
// messagesSent: 1250,
// messagesReceived: 1240,
// failedMessages: 2,
// averageLatencyMs: 45.2,
// errorCount: 1,
// reconnectAttempts: 0
// }
// Action execution stats
const stats = registry.getStats();
// {
// totalExecutions: 500,
// successful: 495,
// failed: 5,
// successRate: 99%,
// averageDurationMs: 234.5
// }
// Execution trace
const exec = registry.getExecutionById('action-id-123');
// {
// status: 'success',
// duration: 1234,
// attempts: [
// { attempt: 1, result: {...} },
// { attempt: 2, error: '...' },
// { attempt: 3, result: {...} }
// ],
// screenshots: [
// { phase: 'before', base64: '...' },
// { phase: 'after', base64: '...' }
// ]
// }🧪 Tests
# Unit tests
npm run test
# Integration tests
npm run test:integration
# Watch mode
npm run test -- --watch📚 Vollständige Dokumentation
Kern-API – Vollständige Referenz
Schema-Definitionen – Alle Zod-Schemas
Beispiele – Funktionale Beispiele
Architektur – Detailliertes Diagramm
🤝 Integration mit LLMs
Claude Code
{
"mcpServers": {
"hyperion": {
"command": "hyperion",
"args": ["--mcp", "--launch"]
}
}
}Cursor
In .cursor/settings.json:
{
"rules": {
"hyperion": "hyperion --mcp --launch"
}
}Cline
In cline_config.json:
{
"mcpServers": [
{
"name": "hyperion",
"command": "npx hyperion --mcp --launch"
}
]
}📄 Lizenz
MIT – Frei für kommerzielle und private Nutzung
🚀 Roadmap V2.1
Integration der Videoaufzeichnung
Multi-Tab-Verwaltung
Erweiterte Gestenunterstützung (Wischen, Ziehen)
Chrome DevTools-Integration
Cloud-Persistenz für Ausführungsprotokolle
Leistungsprofiling-Hooks
💬 Support
GitHub Issues: hyperion/issues
Diskussionen: hyperion/discussions
Hyperion V2 – Das LLM-native Browser-Automatisierungs-Framework.
Entwickelt mit 💚 für KI-Agenten, die das Web richtig automatisieren möchten.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server + Chrome extension that gives AI coding agents control of your real browser with existing sessions, logins, and cookies. Works with Cursor, Claude, Windsurf.188847MIT

agentify-desktopofficial
AlicenseNot gradedqualityBmaintenanceMCP server that enables AI tools to control local browser sessions for ChatGPT, Claude, and other AI services, supporting querying, navigation, file uploads, and artifact management.65529Mozilla Public 2.0- FlicenseBqualityBmaintenanceA minimalist browser control engine that allows LLM agents to visually perceive and interact with web pages through the Chrome DevTools Protocol and MCP standard.411
- AlicenseNot gradedqualityAmaintenanceAn MCP server that lets LLM agents control all Chrome browser tabs via accessibility snapshots, element references, and a virtual cursor, supporting operations like click, type, navigate, screenshot, and video recording.MIT
Related MCP Connectors
Live browser debugging for AI assistants — DOM, console, network via MCP.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ericklrm89-jpg/hyperion'
If you have feedback or need assistance with the MCP directory API, please join our Discord server