{"id":50712908,"url":"https://github.com/zaydiscold/hydra","last_synced_at":"2026-06-09T17:00:32.582Z","repository":{"id":358988925,"uuid":"1208417664","full_name":"zaydiscold/hydra","owner":"zaydiscold","description":"Local-first OpenRouter fleet manager, desktop control plane, and OpenAI-compatible API router","archived":false,"fork":false,"pushed_at":"2026-06-03T05:49:32.000Z","size":121059,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-06-03T06:21:06.723Z","etag":null,"topics":["api-router","desktop-app","electron","fleet-management","local-first","openai-compatible","openrouter","prisma","react","sqlite"],"latest_commit_sha":null,"homepage":"https://github.com/zaydiscold/hydra","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zaydiscold.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-12T08:49:33.000Z","updated_at":"2026-06-03T05:49:36.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/zaydiscold/hydra","commit_stats":null,"previous_names":["zaydiscold/hydra"],"tags_count":48,"template":false,"template_full_name":null,"purl":"pkg:github/zaydiscold/hydra","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zaydiscold%2Fhydra","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zaydiscold%2Fhydra/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zaydiscold%2Fhydra/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zaydiscold%2Fhydra/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zaydiscold","download_url":"https://codeload.github.com/zaydiscold/hydra/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zaydiscold%2Fhydra/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34116461,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-09T02:00:06.510Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-router","desktop-app","electron","fleet-management","local-first","openai-compatible","openrouter","prisma","react","sqlite"],"created_at":"2026-06-09T17:00:23.228Z","updated_at":"2026-06-09T17:00:32.553Z","avatar_url":"https://github.com/zaydiscold.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hydra\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/zaydiscold/hydra/actions/workflows/ci.yml\"\u003e\u003cimg alt=\"CI\" src=\"https://github.com/zaydiscold/hydra/actions/workflows/ci.yml/badge.svg?branch=master\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/zaydiscold/hydra/actions/workflows/release.yml\"\u003e\u003cimg alt=\"Desktop Release\" src=\"https://github.com/zaydiscold/hydra/actions/workflows/release.yml/badge.svg\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/zaydiscold/hydra/releases/latest\"\u003e\u003cimg alt=\"Release\" src=\"https://img.shields.io/github/v/release/zaydiscold/hydra\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"public/hydra_dragon.png\" alt=\"Hydra\" width=\"112\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eLocal-first OpenRouter fleet manager, desktop control plane, and OpenAI-compatible API router.\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"Node\" src=\"https://img.shields.io/badge/node-%3E%3D22.12-339933?style=flat-square\u0026logo=node.js\u0026logoColor=white\"\u003e\n  \u003cimg alt=\"Electron\" src=\"https://img.shields.io/badge/Electron-42-47848F?style=flat-square\u0026logo=electron\u0026logoColor=white\"\u003e\n  \u003cimg alt=\"React\" src=\"https://img.shields.io/badge/React-19-61DAFB?style=flat-square\u0026logo=react\u0026logoColor=111\"\u003e\n  \u003cimg alt=\"Prisma\" src=\"https://img.shields.io/badge/Prisma-SQLite-2D3748?style=flat-square\u0026logo=prisma\u0026logoColor=white\"\u003e\n  \u003ca href=\"openapi/hydra-api.openapi.json\"\u003e\u003cimg alt=\"OpenAPI\" src=\"https://img.shields.io/badge/OpenAPI-3.1-6BA539?style=flat-square\u0026logo=openapiinitiative\u0026logoColor=white\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nHydra is a packaged Electron app for running an OpenRouter account fleet from one local machine. It combines encrypted local storage, account/session management, key provisioning, promo-code workflows, live traffic visibility, a scriptable CLI, and an OpenAI-compatible `/v1` proxy that can stay running as an API router.\n\nIt is designed for operators who want a native control plane without shipping account secrets to a hosted service.\n\nHydra is useful in two ways at once:\n\n- Open the desktop app when you want a visual command center for accounts, sessions, keys, imports, redemption, and traffic.\n- Leave the router running in the background when local tools need an OpenAI-compatible endpoint backed by your pooled OpenRouter credentials.\n- Use the `hydra` CLI when you want the same operational facts in a terminal, a script, or an agent workflow.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"videos/hydra_showreel.gif\" alt=\"Hydra desktop showreel — Vault, Command, routing, and terminal surfaces\" width=\"720\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"videos/hydra_splash.gif\" alt=\"Hydra packaged desktop splash animation\" width=\"720\" /\u003e\n\u003c/p\u003e\n\n## Navigation\n\n- [Start Here](#start-here)\n- [Feature Tour](#feature-tour)\n- [Install](#install)\n- [Quick Start From Source](#quick-start-from-source)\n- [Desktop App](#desktop-app)\n- [CLI](#cli)\n- [Local API Router](#local-api-router)\n- [Operator Hardening](#operator-hardening)\n- [Development And Release Gates](#development-and-release-gates)\n- [Docs Index](#docs-index)\n- [Versioning](docs/VERSIONING.md)\n- [Gallery](#gallery)\n\n## Start Here\n\nHydra keeps local OpenRouter operations in one place:\n\n| Need | Where to go |\n| --- | --- |\n| See fleet health quickly | **Command**: scroll the account viewport in Grid, scan aligned rows in List, or open the topology Map. |\n| Import existing accounts | **Bulk Import**: use the sequential direct-HTTPS OTP queue. |\n| Inspect saved logins | **Vault**: review account state and live-session evidence. |\n| Decide which keys may route | **Pool Manager**: enable accounts and keys with forgiving controls. |\n| Redeem codes across accounts | **Code Redeemer**: preflight first, then run a selected batch. |\n| Understand a failed local request | **Traffic Console**: inspect route attempts, status, model, latency, token count, and price. |\n| Adjust desktop behavior | **Settings**: Touch ID, telemetry, UI density, account proxies, and diagnostics. |\n| Automate without the GUI | **CLI** and the local **MCP** server. |\n\nThe local proxy is OpenAI-compatible, so many SDKs can point at Hydra by\nchanging only the base URL and local Hydra key. Hydra then selects an eligible\npooled OpenRouter credential, applies cooldown behavior, and leaves a local\ntraffic trail that explains what happened.\n\n## Feature Tour\n\n- **Native desktop control plane**: Electron shell with an embedded Express API, tray/menu lifecycle, platform-native user data paths, and packaged runtime resources.\n- **OpenAI-compatible local router**: `/v1/models` and `/v1/chat/completions` proxy traffic through the managed OpenRouter key pool.\n- **Readable Traffic Console**: each recent request shows route attempt, outcome, model, account, key, client, latency, input/output tokens, and input/output price. Exact OpenRouter usage cost wins when upstream returns it; cached catalog prices provide an explicit estimate fallback.\n- **Long-running API behavior**: bounded proxy concurrency, bounded multi-key failover, buffered request-log writes, log rotation, request-log retention, upstream health checks, and graceful shutdown paths.\n- **Fleet account operations**: add accounts, track session health, provision management keys, sync balances, and inspect account readiness.\n- **Account import and signup lanes**: existing OpenRouter accounts use the direct HTTPS OTP queue; new signup uses Generator with an isolated visible browser when upstream human verification is required.\n- **Key pool management**: rotate across pooled keys, cool down rate-limited keys, disable unhealthy keys, and expose a single local Hydra proxy key.\n- **Account proxy pool**: optional encrypted per-task proxy list for signup, key, and code flows, including direct HTTPS and browser fallbacks.\n- **Promo-code workflows**: preflight readiness, redeem against selected accounts, and keep redemption history.\n- **Local-first security**: local vault password, Touch ID unlock on supported Macs with a durable Settings opt-out, encrypted secrets, owner-only data directories, redacted CLI output, and loopback-first network binding.\n- **Scriptable operator CLI**: JSON-friendly commands for automation, diagnostics, imports/exports, fleet scans, and router lifecycle control.\n- **Operator-friendly desktop polish**: a bounded Command account viewport, true dense List rows, labeled sidebar hover tips, stronger proximity feedback, persisted Bulk Import activity, content-wide density controls, compact redemption layout, and a launch-bounded ambient moon orbit.\n- **Release-oriented quality gates**: linting, Electron packaging checks, API integration tests, UI static contracts, OpenAPI coverage, Docker smoke checks, and Windows path compatibility checks.\n\n## Install\n\nUse the packaged release artifact for your platform:\n\n| Platform | Artifact | Notes |\n| --- | --- | --- |\n| macOS | `Hydra.app` / zip | Boots the embedded server and native desktop window. |\n| Windows | `Hydra Setup.exe` | Uses `%APPDATA%\\\\Hydra\\\\` for app data. |\n| Linux | `Hydra-*.AppImage` | Active x64 desktop package with updater metadata. |\n\nOn first launch, Hydra creates an encrypted local vault and an empty SQLite database in the platform user-data directory. Closing the app window does not have to kill the router; quit from the tray/menu when you want the server fully stopped.\n\n## Quick Start From Source\n\n```bash\ngit clone https://github.com/zaydiscold/hydra.git\ncd hydra\ncp .env.example .env\nnpm install\nnpm run dev:electron\n```\n\nBuild a desktop artifact:\n\n```bash\nnpm run electron:build\n```\n\nRun the quality gate:\n\n```bash\nnpm run lint\nnpm test\nnpm run gate\n```\n\n## Desktop App\n\nThe desktop app is the primary operator surface. It starts the embedded API server, stores secrets in the local vault, exposes tray/menu lifecycle controls, and keeps app data in the platform user-data directory instead of the source checkout.\nClosing the main window keeps the proxy alive in the background; full shutdown\nis reserved for explicit Quit actions in the tray, menu, or sidebar so a normal\nwindow close cannot accidentally take down local routing.\n\nSettings includes local security controls, router settings, Touch ID status when\navailable, and the encrypted account proxy pool. Touch ID defaults on once for\nsupported Macs, stays off on unsupported devices, and keeps an explicit\nSettings opt-out durable across future launches. Settings also exposes the\navailability status, enable toggle, and test-prompt button. A successful\npassword unlock persists for up to 24 hours on the device; when Touch ID is\nenabled and a valid saved token exists, Hydra starts the Touch ID prompt once\nper relaunch before releasing that token. If the token is missing, expired, cancelled, or\nunavailable, Hydra keeps the polished password fallback visible immediately\ninstead of blanking the window while native token release is pending. Manual\n**Lock** ends the visible session immediately but keeps a still-valid device\ntoken only when the Touch ID gate is enabled, so the next unlock screen offers\nboth **Unlock with Touch ID** and password. Hydra intentionally avoids macOS\nKeychain token storage here: the owner-only token file plus native Touch ID\ngate keeps launch calm without duplicate Keychain prompts.\n\nThe proxy pool accepts one proxy per line in `ip:port:user:pass` format. Empty\npools are valid; account tasks continue without proxies when no saved proxy is\navailable. Hydra selects one random saved route per new task and reuses it\nacross direct HTTPS probes and any browser fallback for that task.\n\nThe sidebar keeps high-frequency operations together and moves Account\nGenerator to the bottom of the main stack. Hover any icon in the collapsed\nsidebar to see its section name. Settings lives beside lock and quit actions at\nthe bottom. Settings also includes **Standard** and **Compact** density modes\nfor operators who want more information visible at once. Compact mode tightens\nthe working pages without shrinking the sidebar rail or weakening its proximity\nfeedback. On Command, Grid and List scroll inside the account viewport instead\nof pushing the whole page downward; List is an aligned operator row view rather\nthan a one-column card stack.\n\n## CLI\n\nHydra ships a local `hydra` binary for operator scripts. Link it during development:\n\n```bash\nnpm link\nhydra help\n```\n\nCommon commands are grouped by operator workflow:\n\n| Workflow | Commands |\n| --- | --- |\n| Status and diagnostics | `hydra status`, `hydra doctor --json`, `hydra logs --lines 100` |\n| Fleet and accounts | `hydra accounts --json`, `hydra account \u003cid-prefix\u003e`, `hydra balance`, `hydra scan --json` |\n| Keys and codes | `hydra keys --account \u003cid-prefix\u003e`, `hydra codes preflight \u003ccode\u003e --all` |\n| Router lifecycle | `hydra proxy status`, `hydra serve --port 3001`, `HYDRA_TOKEN=\u003ctoken\u003e hydra stop --port 3001` |\n| OpenRouter helpers | `hydra openrouter models --json`, `hydra ai chat \"hello\" --route proxy` |\n| Agent tools | `hydra mcp`, `hydra mcp --list-tools`, `hydra api-map --json` |\n| Vault automation | `hydra unlock --stdin --token-only` |\n\nThe CLI defaults to redacted human output and supports `--json` on the commands meant for automation. Secret-bearing flows require explicit flags such as `--yes`, `--stdin`, or an environment token so shell scripts do not accidentally burn codes, rotate proxy keys, or expose credentials.\n\nPackaged Hydra listens on an OS-assigned embedded port. When the app is running,\nElectron publishes that non-secret runtime URL to the app data directory, and\n`hydra doctor`, `hydra status`, `hydra proxy status`, `hydra ai chat`, and\n`hydra stop` follow it automatically. Explicit `--base-url`, `--port`,\n`HYDRA_BASE_URL`, `HYDRA_PORT`, and `PORT` values still win when you need a\nfixed source or test server.\n\n`hydra mcp` starts a private local stdio MCP server for Claude Code, Cursor, and other agent clients. It exposes curated fleet tools over the existing CLI contracts: status, proxy status, API map, release audit, and doctor diagnostics. It does not publish Hydra, register public endpoint tools, or bypass confirmation-gated live writes.\n\n## Local API Router\n\nHydra exposes OpenAI-compatible endpoints on the local server:\n\n```bash\ncurl http://127.0.0.1:3001/v1/models \\\n  -H \"Authorization: Bearer sk-hydra-...\"\n\ncurl http://127.0.0.1:3001/v1/chat/completions \\\n  -H \"Authorization: Bearer sk-hydra-...\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"model\": \"openai/gpt-4o-mini\",\n    \"messages\": [{ \"role\": \"user\", \"content\": \"ping\" }]\n  }'\n```\n\nThe tracked API contract lives at [`openapi/hydra-api.openapi.json`](openapi/hydra-api.openapi.json).\n\nHydra attempts up to eight eligible pooled keys for a request by default. That\nceiling is intentionally bounded and can be adjusted with\n`HYDRA_PROXY_MAX_KEY_ATTEMPTS` up to `32`. Rate-limited keys cool down and\nrejoin later. A client-visible OpenRouter `404` is recorded separately because\nchanging credentials cannot repair an unavailable model or incorrect endpoint.\n\n## Operator Hardening\n\nHydra is meant to sit open and take repeated local requests. The server includes guardrails for unattended use:\n\n- Bounded `/v1` in-flight request cap via `HYDRA_PROXY_MAX_IN_FLIGHT`.\n- Bounded eligible-key failover via `HYDRA_PROXY_MAX_KEY_ATTEMPTS` with an\n  eight-attempt default and a hard cap of `32`.\n- Buffered request-log writes via `HYDRA_REQUEST_LOG_QUEUE_MAX`, `HYDRA_REQUEST_LOG_FLUSH_MS`, and `HYDRA_REQUEST_LOG_FLUSH_BATCH`.\n- Bounded shutdown drain via `HYDRA_REQUEST_LOG_SHUTDOWN_DRAIN_MS`.\n- Request-log retention via `HYDRA_REQUEST_LOG_KEEP_DAYS` and `HYDRA_REQUEST_LOG_KEEP_COUNT`.\n- Rotating file logs via `HYDRA_LOG_MAX_SIZE` and `HYDRA_LOG_MAX_FILES`.\n- Background health, retention, refresher, and task timers that do not pin idle Node processes.\n- Loopback-first server binding and authenticated shutdown.\n\nLocal security controls are intentionally boring and explicit: vault-backed secrets, owner-only data directories, redacted CLI output, optional biometric unlock status in Settings, and encrypted account proxy storage. The README avoids embedding real account data, full API keys, or live secrets.\n\n## Development And Release Gates\n\nUse these scripts when changing the app locally:\n\n```bash\nnpm run dev:electron        # Electron development loop\nnpm run server              # Standalone Express server\nnpm run build               # Vite renderer build\n```\n\nUse these gates before treating a change as release-ready:\n\n```bash\nnpm run electron:prepare    # Prepare packaged server/runtime resources\nnpm run electron:smoke      # Smoke-test packaged Electron artifact\nnpm run docker:smoke        # Docker runtime contract check\nnpm run openapi:hydra       # Regenerate tracked OpenAPI map\n```\n\nDocker is optional. Hydra does not need Docker Desktop to run as a desktop app\nor local `/v1` router; the Docker workflow only validates the containerized\nruntime lane.\n\nVersioning is documented in [docs/VERSIONING.md](docs/VERSIONING.md). Incremental\nsource/doc hardening commits use `[skip-bump]`; the performance tranche shipped\nfirst as `v1.1.0`, and the current release lane is `1.6.1` — a patch fixing a\n1.6.0 packaged-install schema bug (the `User.authDisabled` column needed a\nmigration) — carrying the `1.6.0` features: splash hold-to-skip and a unified\ndisable-auth feature (the `HYDRA_DISABLE_AUTH` env var for headless servers plus\na lockout-safe Settings toggle), on top of the `1.5.15` ambient graphics work.\nRemaining manual dogfood evidence stays explicit in the audit.\n\n## Docs Index\n\nStart with these when you need more than the quick README tour:\n\n- [Versioning](docs/VERSIONING.md): patch/minor/major rules, `[skip-bump]`\n  checkpoints, the `1.5.15` patch lane, and completed release history.\n- [1.5.15 Patch Release](docs/releases/1.5.15.md): settled ambient-motion\n  repair, lower-cadence planet moon orbits, current public release notes, and\n  `1.5.15` package proof.\n- [1.5.14 Patch Release](docs/releases/1.5.14.md): hidden meteor control,\n  Command balance truth, and public release-matrix asset evidence.\n- [1.5.13 Patch Release](docs/releases/1.5.13.md): diagonal shooting-star\n  repair, Command balance truth, and persistent ambient-space package evidence.\n- [1.5.12 Patch Release](docs/releases/1.5.12.md): idle-safe settled-space\n  repair for the lower-right planet moons, diagonal shooting-star pulses, and\n  packaged LaunchServices evidence.\n- [1.5.11 Patch Release](docs/releases/1.5.11.md): packaged runtime-port bridge\n  for `doctor`, `status`, `proxy status`, `ai chat`, and `stop`.\n- [1.5.10 Patch Release](docs/releases/1.5.10.md): concise GitHub release\n  notes, Generator checkbox wording, persistent shooting stars, opacity-only\n  star twinkle, and clearer moon orbit styling.\n- [1.5.9 Patch Release](docs/releases/1.5.9.md): release-note automation and\n  continuous ambient planet moon motion.\n- [1.5.8 Patch Release](docs/releases/1.5.8.md): Generator now records hidden\n  security/loading-submit handoffs, retries signup after the gate clears,\n  exposes a deliberate browser-backed email-code escape hatch, auto-starts\n  saved-token Touch ID unlock, and tightens the launch splash.\n- [1.5.7 Patch Release](docs/releases/1.5.7.md): Generator OTP submit now\n  flips local UI state immediately, avoids high-cost local rate limiting, and\n  keeps duplicate submits idempotent while background finalization runs.\n- [1.5.6 Patch Release](docs/releases/1.5.6.md): Generator signup-shell\n  checkpoint polling, abort-aware cleanup, packaged self-capture evidence, and\n  `/private/tmp` capture allowance.\n- [1.5.5 Patch Release](docs/releases/1.5.5.md): OpenRouter OTP-screen\n  detection, isolated-browser viewport sizing, and Generator active-job layout\n  resilience.\n- [1.5.4 Patch Release](docs/releases/1.5.4.md): OpenRouter signup modal\n  drift, duplicate form filling, checkpoint-driven OTP unlock, and the\n  Generator Start button label fix.\n- [1.5.3 Patch Release](docs/releases/1.5.3.md): Generator browser-state\n  checkpointing, explicit Playwright wait timeouts, and account-browser focus.\n- [1.5.2 Patch Release](docs/releases/1.5.2.md): OpenRouter signup password,\n  required checkbox, security-handoff detection, and Generator cleanup hardening.\n- [1.5.1 Patch Release](docs/releases/1.5.1.md): Account Generator OTP timeout,\n  manual-verification state, and packaged verification notes.\n- [1.5.0 Release](docs/releases/1.5.0.md): Traffic Console pricing, real\n  Command modes, density controls, Touch ID defaults, and desktop polish.\n- [Traffic Routing And Pricing](docs/recon/TRAFFIC_ROUTING_AND_PRICING.md):\n  bounded multi-key failover, status interpretation, and OpenRouter price\n  provenance.\n- [Design Engineering](docs/DESIGN_ENGINEERING.md): splash portal composition,\n  restrained proximity fields, session-truth copy, and embedded product credit.\n- [Splash Tilt Research](docs/SPLASH_TILT_RESEARCH.md): how the 16 second,\n  72-word unique splash uses opportunistic device tilt, fallback lean, staged exit, and bounded\n  Matter.js/RAF/sensor cleanup.\n- [Session Truth](docs/SESSION_TRUTH.md): login-session versus management-key\n  state, live Clerk probes, bounded device-cookie identity memory, and OTP aliases.\n- [Bulk Auth Import Redirect And Dedupe](docs/recon/BULK_AUTH_IMPORT_REDIRECT_AND_DEDUPE.md):\n  Email Link callback limits, direct-HTTPS OTP import, duplicate handling, and\n  Force Replace behavior.\n- [OpenRouter Key Endpoints And Provision Fallbacks](docs/recon/OPENROUTER_KEY_ENDPOINTS_AND_PROVISION_FALLBACKS.md):\n  canonical API-key metadata, management-key boundaries, and bounded fallback learning.\n- [Release Audit](docs/RELEASE_AUDIT.md): measured performance evidence,\n  packaged-app evidence, and the remaining manual dogfood blockers.\n- [Accessibility Profiling Distortion](docs/ACCESSIBILITY_PROFILING_DISTORTION.md):\n  why timed-out native Computer Use attaches contaminate idle profiles and how\n  to recover before remeasuring.\n- [Renderer Idle Performance](docs/RENDERER_IDLE_PERFORMANCE.md): why steady\n  status dots use static glows and how the packaged compositor fix was\n  measured.\n\n## Star History\n\n\u003ca href=\"https://www.star-history.com/#zaydiscold/hydra\u0026Date\"\u003e\n  \u003cimg alt=\"Hydra star history\" src=\"https://api.star-history.com/svg?repos=zaydiscold/hydra\u0026type=Date\" /\u003e\n\u003c/a\u003e\n\n## Gallery\n\nCaptured from the packaged Electron app. Account aliases, emails, UUIDs, session IDs, and API keys are deterministically redacted before capture so the gallery reflects the real UI without exposing operator data.\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd width=\"50%\" align=\"center\"\u003e\n      \u003ca href=\"videos/assets/vault.png\"\u003e\u003cimg src=\"videos/assets/vault.png\" alt=\"Hydra Vault unlock screen\" /\u003e\u003c/a\u003e\n      \u003cbr/\u003e\n      \u003cstrong\u003eVault\u003c/strong\u003e\u003cbr/\u003e\n      \u003csub\u003eLocal-first unlock. Nuclear reset is a hold-to-confirm.\u003c/sub\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"50%\" align=\"center\"\u003e\n      \u003ca href=\"videos/assets/dashboard.png\"\u003e\u003cimg src=\"videos/assets/dashboard.png\" alt=\"Hydra Command center dashboard\" /\u003e\u003c/a\u003e\n      \u003cbr/\u003e\n      \u003cstrong\u003eCommand\u003c/strong\u003e\u003cbr/\u003e\n      \u003csub\u003eFleet balance, account health pills, and burn rate at a glance.\u003c/sub\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd width=\"50%\" align=\"center\"\u003e\n      \u003ca href=\"videos/assets/pool.png\"\u003e\u003cimg src=\"videos/assets/pool.png\" alt=\"Hydra Pool Manager\" /\u003e\u003c/a\u003e\n      \u003cbr/\u003e\n      \u003cstrong\u003ePool Manager\u003c/strong\u003e\u003cbr/\u003e\n      \u003csub\u003eUnified routing pool across accounts and pooled keys.\u003c/sub\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"50%\" align=\"center\"\u003e\n      \u003ca href=\"videos/assets/traffic.png\"\u003e\u003cimg src=\"videos/assets/traffic.png\" alt=\"Hydra Traffic Console\" /\u003e\u003c/a\u003e\n      \u003cbr/\u003e\n      \u003cstrong\u003eTraffic Console\u003c/strong\u003e\u003cbr/\u003e\n      \u003csub\u003eLive proxy observability: route attempts, outcomes, tokens, pricing, and error rates.\u003c/sub\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzaydiscold%2Fhydra","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzaydiscold%2Fhydra","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzaydiscold%2Fhydra/lists"}