DeepBlue Dynamics / Docs / Hyperia / Installation

Installation

Install, wire up an agent, and connect an external MCP client.

Install

One-liner. Fetches the latest signed release and runs it.

macOS & Linux

curl -fsSL https://hyperia.nuts.services/install.sh | sh

Windows

powershell -c "irm https://hyperia.nuts.services/install.ps1 | iex"

Prefer to grab the artifact yourself? All signed builds live at github.com/DeepBlueDynamics/hyperia/releases.

What actually ships

Platform Artifact Notes
Windows x64Hyperia-{version}-x64.exeNSIS wizard. Every binary inside is Authenticode-signed via Azure Trusted Signing (not just the installer).
macOS arm64Hyperia-{version}-mac-arm64.dmgApple Silicon. Signed + notarized.
macOS x64Hyperia-{version}-mac-x64.dmgIntel. Signed + notarized. Ships without voice / TTS — no ONNX runtime for this target. Everything else identical.
Linux (Debian / Ubuntu)hyperia_{version}_amd64.debPreferred on dpkg systems.
Linux (universal)Hyperia-{version}.AppImageAny x86_64 distro. Falls back to ~/.local/bin when dpkg is missing.

Windows: the wizard opens and lets you pick the install directory. Default is %LOCALAPPDATA%\Programs\Hyperia — per-user, no admin rights.
macOS: drag Hyperia to Applications. First open may prompt Gatekeeper; right-click → Open approves it once.
Linux: sudo apt-get install ./hyperia_{version}_amd64.deb, or chmod +x and run the AppImage.

Update

No auto-update yet — updating is re-running the same one-liner:

curl -fsSL https://hyperia.nuts.services/install.sh | sh          # macOS / Linux
powershell -c "irm https://hyperia.nuts.services/install.ps1 | iex"  # Windows

The pane Chooser shows your running version in its footer. When the site has a newer build, that footer flags vX.Y.Z available. Two buttons sit next to it:

[copy] copies the update command to your clipboard. [run] opens a shell with the command already typed at the prompt. Neither one auto-executes — you press Enter to update.

First launch

Hyperia opens with an empty pane and the sidecar (hyperia-sidecar) starts on port 9800. The Chooser — the picker that opens whenever you split or add a tab — has three rows:

Row Hotkey Opens
New WebpaneWEmbedded Chromium tab alongside terminals.
New ShellSAuto-detected shell picker (see below).
New AgentAAuto-detected agent picker + install shortcuts.

Hotkeys work immediately from the Chooser — no click required.

Auto-detected shells

PowerShell, CMD, Git Bash, and every installed WSL distro on Windows. zsh, bash, and fish on macOS / Linux (whichever are on PATH).

Auto-detected agents

Any of these on your PATH show up in the New Agent picker:

Claude Code   ·   Nemesis8   ·   Nemesis8 Danger
Antigravity   ·   Codex     ·   OpenCode
Grok          ·   Hermes    ·   Pi

Missing ones live under install an agent — copy the install command or open it in a shell. Nothing auto-runs.

Agent setup

The built-in Ghost agent is configured through a dedicated panel — no more pasting keys into the terminal.

Open the config panel

From the New Agent row of the Chooser, click the gear icon next to Hyperia in the pulldown. That opens the config panel at:

http://localhost:9800/agent/config

You can also reach it from any install view's [configure] button.

What lives in the config panel

One page, four blocks:

Provider & model — Anthropic, OpenAI, Gemini, or Ollama, with a curated model picker per provider (current tags only; stale IDs are pruned automatically).

API keys — one field per configured provider. Keys never leave your machine except to the provider you selected. Stored in ~/.hyperia/hyperia.json.

Services — toggles for the DBD service fleet: nemesis8, shivvr, grub, transcription, sailfish.

nuts.services login — attach a NUTS ahp_ token so services that require identity (grub, shivvr, transcription) authenticate without you re-pasting.

Zero-config local. If Ollama is running on localhost:11434, the Ghost falls back to a local model with no API key required. Pull the default once with ollama pull gemma2:9b.

Readiness

Open the Doctor dashboard at any time to see what's wired up and what's missing:

http://localhost:9800/dashboard

Connect an external MCP agent

Hyperia's sidecar publishes a streamable-HTTP MCP endpoint that any external MCP client can point at:

http://localhost:9800/mcp

Claude Code

claude mcp add --transport http hyperia http://localhost:9800/mcp

Add --scope user to make it available across every project.

OpenAI Codex

Add to ~/.codex/config.toml:

[mcp_servers.hyperia]
url = "http://localhost:9800/mcp"

Google Antigravity

Settings → MCP → Add Server, paste the URL. Or edit the Antigravity MCP config directly with serverUrl set to http://localhost:9800/mcp.

Tool surface

Hyperia exposes roughly ~124 tools today, hidden behind doors — a progressive-disclosure model. Clients see a small core surface plus open_tools-style entry points that reveal categories on demand. Nothing dumps 100+ schemas at connect time.

Identity & consent

Two tiers, and the difference matters:

Read-only tools — status, screen reads, search — work anonymously. No token needed.

State-changing tools — run commands, type keys, open panes, read someone else's sticky — require identity plus human consent. Every one of these shows a prompt in the Hyperia UI before it executes.

In-pane agents (like the Ghost, or a Claude Code session launched inside a Hyperia terminal) get HYPERIA_AGENT_TOKEN injected into their environment automatically. Your MCP client picks it up and attaches it as the Authorization header — nothing to configure.

External agents (running outside a Hyperia pane) call the request_token tool once to mint a persistent hyp_agent_… token, then set Authorization: Bearer <that token> on the MCP client and reconnect:

claude mcp add --transport http --scope user hyperia \
  http://localhost:9800/mcp \
  --header "Authorization: Bearer hyp_agent_..."

After reconnect, state-changing tools work — subject to the user approving the specific action in the Hyperia UI.

What agents can do once connected

Beyond terminal control, the current tool surface includes:

Spoken summarieshyperia_spoken_summary renders a short text-to-speech summary using the local Kokoro voice model, so long-running work can talk to the room instead of blocking on the pane.

Sticky notes — floating scratchpads shared between humans and agents. Create, search (BM25 over name + body), read, open, schedule. Handy for handoffs and running lists.

Pane pulses & watchdogspane_pulse_set plus pane_on_idle / pane_busy / pane_idle for waiting on human input without polling.

Web-pane browsingopen_web_pane, web_pane_content, web_pane_eval, web_pane_mouse for driving embedded browser tabs.

Config file

All state lives in a single JSON file:

~/.hyperia/hyperia.json                # macOS / Linux
%USERPROFILE%\.hyperia\hyperia.json    # Windows

The shape:

{
  "config": {
    "agent":   { "provider": "anthropic", "model": "claude-sonnet-5" },
    "providers": {
      "anthropic": { "token": "sk-ant-...", "endpoint": "https://api.anthropic.com" },
      "openai":    { "token": "sk-..." },
      "gemini":    { "token": "..." },
      "ollama":    { "endpoint": "http://localhost:11434" }
    },
    "tts": { "recipient": "base" },
    "defaultProfile": "PowerShell 7.5.5",
    "profiles": [
      { "name": "My Agent", "kind": "agent",
        "config": { "shell": "cmd.exe", "shellArgs": ["/c", "claude"] } }
    ],
    "fontSize": 16,
    "fontFamily": "Menlo, Consolas, monospace",
    "cursorShape": "BEAM",
    "stickyFontSize": 14,
    "sidecarPort": 9800
  }
}

Edit the file directly or open it via Settings → Edit Config. Hyperia watches the file for changes; most keys take effect immediately. Sidecar port and shell profiles require a restart.

The tts.recipient field is the voice callsign every spoken transmission addresses (default "base"). Change it if you want the Ghost to speak to a different persona.

Other paths

Path What lives there Safe to delete?
~/.hyperia/lume/Local BM25 search index over shell history + notes.Yes — loses search history only.
~/.hyperia/stickys/Sticky notes.Yes — permanent loss of notes.
~/.hyperia/kokoro/Voice model cache (~120 MB, auto-downloads on first spoken summary).Yes — re-fetches on next use.
~/.hyperia/agents.jsonPersistent identity tokens for external agents (hyp_agent_…).Deleting revokes external-agent access.
~/.hyperia/pulse/Pane-pulse watchdog persistence.Yes — resets pulse timers.
~/.hyperia/logs/Sidecar logs.Yes — rotates on next launch.

Sidecar port

The sidecar defaults to 9800. Override with the HYPERIA_PORT environment variable or config.sidecarPort. The MCP endpoint and the /dashboard URL follow whichever value is active — update any MCP client registrations when you change it.

Uninstall

Windows: uninstall from Settings → Apps, or run the uninstaller shortcut. Removes the app and the bundled sidecar.

macOS: drag Hyperia.app to the Trash.

Linux: sudo apt remove hyperia, or delete the AppImage.

Your state under ~/.hyperia/ is left in place. To wipe everything — config, keys, tokens, voice model, notes:

rm -rf ~/.hyperia                                # macOS / Linux
Remove-Item -Recurse -Force $env:USERPROFILE\.hyperia   # Windows