RunHQGet RunHQ
RunHQ
v0.10.0local-first dev cockpit

One cockpit.
for every service, every log line, every stuck port, every CVE — for your whole machine.

Your editor edits code. RunHQ runs it.

  • Native · Tauri + Rust
  • < 100 MB RAM
  • 10 runtimes
  • MIT
  • Zero telemetry
The full cockpit

One window. Every project. Every running command.

What you’re looking at below is the actual React surface RunHQ ships — sidebar, tab strip, dashboard body and status bar pulled straight from the desktop package and re-rendered here with a fixture workspace.

RunHQ
Search services, stacks, actions…⌘K
3 running
Workspace·7 services·v0.10.0·Last scan 1h ago

1service need attention

287 MB 0.0% 4 ports
Running hot3 running
0.0%287 MB
  • acme-web
    178 MB0.0%
  • acme-compose
    80 MB0.0%
  • acme-api
    29 MB0.0%
Search projects/
Acme Projects43 on
acme-apiGO
All clear
1h ago
2 commands·run, main
main
0.0%29 MB
[2026-05-05T13:18:24.860] background scan complete
[2026-05-05T13:18:18.740] background scan complete
[2026-05-05T13:18:14.560] background scan complete
acme-composeDOCKER
All clear
1h ago
2 commands·compose-up, compose-down
main
0.0%80 MB
[1 t e n a c e - p o s t g r e s | 1] db migrations · idle
[1 t e n a c e - p o s t g r e s | 1] checkpoint · 217 frames
[1 t e n a c e - p o s t g r e s | 1] autovacuum · 0 dead rows
acme-webNODE
All clear
5
2 commands·dev, lint
main
0.0%178 MB
[2026-05-05T13:18:17.792] [vite] page reload (build)
[2026-05-05T13:18:14.382] [vite] hmr update src/...
[2026-05-05T13:18:13.301] [vite] dev server ready
billing-workerPYTHON
Idle · no dependencies missing
1h ago
1 commands·main
main
Tooling1
internal-cliRUST
Idle · no dependencies missing
1h ago
1 commands·run
main
Unassigned2
design-systemNODE
Idle · no dependencies missing
1h ago
1 commands·storybook
main
docs-siteNODE
Idle · no dependencies missing
1h ago
1 commands·dev
main
3 running
4 idle
0.0%287 MB4 ports· Ask AIAI Settings Darkv0.10.0 · Release notes
Watch the loop · Full demo

The full daily loop, in five minutes.

Discover repos, start the stack, chase logs, triage CVEs, ask AI for next actions — captured straight off a real workspace. Click play and you’re in.

Auto-discovers
Node.jsBunDenoGoRust.NETPythonJava · MavenJava · GradleRubyPHPDocker Compose
Product loop · Discover · Run · Triage

The daily loop RunHQ compresses.

Find the repo, remember how it boots, start the stack, chase logs, check ports, then decide what deserves attention. RunHQ turns that routine into one persistent local cockpit.

One scan, no memory tax.

RunHQ walks your dev folders, infers runtimes and start commands from manifest files, and keeps the registry local. Open the app and your projects are already a workspace, not a directory hunt.

  • 10 runtime families · Node, Bun, Deno, Go, Rust, .NET, Python, Java, Ruby, PHP, Docker
  • Manifest-aware commands · package.json, go.mod, Cargo.toml, pyproject.toml, compose.yaml
  • Persistent local registry · ~/.runhq/config.json plus SQLite snapshots
RunHQ · ~/code · scanning…
Walking ~/code
7 projects indexed·cached to ~/.runhq/config.json
3 node1 go1 rust1 .net1 docker
  • 00:00acme-webnodepnpm dev
  • 00:01acme-apigogo run ./cmd/api
  • 00:02internal-clirustcargo run
  • 00:03finsel-billingdotnetdotnet run
  • 00:04data-jobspythonuv run train.py
  • 00:05design-systemnodepnpm storybook
  • 00:06acme-stackdockerdocker compose up
Why · The local-first dev cockpit

Your editor edits code. RunHQ coordinates the environment.

01 · The status quo

Terminal tabs are hidden state.

Foreman runs one Procfile. Your IDE remembers recents. Docker Desktop shows containers. The rest is a pile of terminal tabs, shell history and memory.

acme-web :3000NODE
acme-api :8080GO
docker composeDOCKER
data-jobs trainPYTHON

4 terminals, 3 runtimes, 1 broken port, zero shared state.

02 · RunHQ

RunHQ gives local dev one surface.

Projects, services, logs, ports, git state, CVEs and stale scans live together. The cockpit answers “what is happening on this machine?”

acme-platformDOCKER main
Running hot3 running
0.0%287 MB
  • acme-web
    178 MB0.0%
  • acme-compose
    80 MB0.0%
  • acme-api
    29 MB0.0%
3 on 4 idle0.0%·287 MB
03 · The AI difference

AI gets the missing context.

File-level AI can write code. RunHQ can explain the workspace around that code: which project is stale, which command failed, which CVE should go first.

1 cve 3 stale 2 dirtyworkspace pulse
> which projects need me this week?3 repos haven’t moved in 90d. acme-api has a critical CVE in axios. internal-cli is 12 packages outdated.
Features · Run · Observe · Triage · Think

Everything outside the editor, finally in one place.

RunHQ is the local dev cockpit: launch the stack, watch the logs, clear port conflicts, read workspace health and ask AI for next actions without leaving the same surface.

Run

acme-apiRUST
All clear
1
1 commands·dev
main
4.2%29 MB

Start services, stacks and custom commands without reopening the same terminal tabs every morning.

  • SIGTERM → grace → SIGKILL
  • Multi-command per service
  • Port watchdog
  • One-click kill port
  • Embedded xterm.js
  • Open in 8 IDEs
  • ⌘K palette
  • ⌘⇧K global hotkey
Graceful shutdown, multi-command services, one-click IDE launch.

Observe

›_ api · go run ./cmd/api
RUN
14:02GET /healthz · 200
14:02!WARN n+1 query · orders.handler
14:03POST /orders · 201

Command logs open as tabs, render like a real terminal, and stay searchable while services run.

  • Ring buffer · 10k/svc
  • Virtualized list
  • ANSI color · live filter
  • Activity timeline
  • Daily / weekly rollups
  • Standup export
  • Right-click → AI triage
  • SQLite persistence
Search, follow, copy lines, and send suspicious output to AI.

Triage

1 cve 3 stale 2 dirty
12%·287 MB
↑ axios CVE blocks deploy12 outdated

See stale scans, outdated packages, CVEs and dirty git across the whole local portfolio before they become surprises.

  • npm · cargo · pip audit
  • Persistent scan cache
  • Per-card freshness
  • Per-project rescan
  • Scan delta badges
  • "N stale" pill
  • Worst-offenders panel
  • Triage drawer
Cold start paints chips in < 100 ms from SQLite.

Think

> what should I fix first?acme-api · axios CVE blocks deploy. Patch first.
local · qwen2.5-coder128 tok

Ask questions against the whole workspace with your own OpenAI-compatible endpoint, local or cloud.

  • Project · Why?
  • Workspace report
  • Per-CVE deep-dive
  • In-place commit gen
  • Diff explain
  • Log triage
  • 5-tab chat · SQLite
  • tiktoken-rs token meter
Point it at a local model — code, diffs, logs never leave the machine.
Alternatives · Comparison

How RunHQ compares to Foreman, Overmind, mprocs and Concurrently.

Procfile runners cover one process file. Editor task runners cover one workspace. RunHQ covers the whole machine — every service, every port, every repo’s git and CVE state, in one local-first cockpit.

RunHQ · process-manager comparison
6 tools · 8 capabilities
Capability matrix comparing RunHQ to other developer process managers and local service runners. Columns are capabilities, rows are tools.
Tool
Multi-processRun many services at once
Multi-runtimeNode, Go, Rust, Python, …
Searchable logsANSI, ring buffer, follow
Port watchdogSee & kill stuck ports
CVE / outdatedPer-project audit
Git statusAcross all repos
AI triageBYO endpoint, local-first
Native GUImacOS · Linux · Windows
RunHQLocal dev cockpit · Tauri + RustMIT · < 100 MB RAM · zero telemetry
YesYesYesYesYesYesYesYes
ForemanProcfile runner · Ruby CLI
YesPartialPartialNoNoNoNoNo
Overmind / Hivemindtmux-backed Procfile runner
YesPartialYesNoNoNoNoNo
mprocsTUI process manager · Rust
YesPartialYesNoNoNoNoNo
Concurrently / npm-run-allnpm script multiplexer
YesNoPartialNoNoNoNoNo
VSCode tasks / launch.jsonEditor task runner
PartialYesPartialPartialNoPartialPartialNo

Capability data sourced from each project’s public README / docs as of . Open a PR if a row is out of date — github.com/erdembas/runhq.

Install · macOS · Linux · Windows · v0.10.0

Install once. Stop rebuilding your setup.

macOS
11+

Cask postflight clears Gatekeeper quarantine. First launch is one click.

Linux
x64 & ARM64
AppImagex64ARM64

Every artifact is signed with the same minisign key the in-app updater verifies.

Windows
10 / 11

The in-app updater keeps it current — no reinstall needed between releases.

Need an older version, the .sig alongside a binary, or the Tauri updater manifest? Browse every release on GitHub. Prefer source? pnpm tauri:dev — Rust + pnpm, that’s the full toolchain.

FAQ · Developer questions

Questions developers ask before they install.

Eight straight answers about runtimes, privacy, licence, IDE adjacency and how RunHQ sits next to the tools you already use.

  • 01What is RunHQ?
    Answer
    RunHQ is a local-first developer cockpit for your laptop. It auto-discovers the repos in your dev folder, lets you start whole stacks with one click, opens a log tab per command, watches ports, scans dependencies for CVEs, and lets AI triage the workspace. Native desktop app, MIT-licensed, written in Rust + Tauri.
  • 02How is RunHQ different from Foreman, Overmind, mprocs or Concurrently?
    Answer
    Procfile-style runners (Foreman, Overmind, Hivemind) and TUI process managers (mprocs) cover one Procfile per repo and stop there. RunHQ covers the whole machine — services across every repo, port watchdog, CVE + outdated-dependency scanner, git status, AI triage, and a real native GUI. See the comparison matrix for the cell-by-cell breakdown.
  • 03Does RunHQ replace Docker Desktop?
    Answer
    For local development, often yes. RunHQ runs your services natively (Node, Go, Rust, Python, …) without containerising them, but it can also start Docker Compose stacks the same way it starts a `pnpm dev`. Many teams keep Docker for production parity tests and use RunHQ for the day-to-day inner loop.
  • 04Does my code or AI prompt ever leave my machine?
    Answer
    Never by default. RunHQ has zero telemetry, no account, and no built-in cloud sync. AI triage uses any OpenAI-compatible endpoint you point it at — that can be a local model (Ollama, LM Studio, qwen2.5-coder, llama.cpp) or your own cloud key. Logs, scans, and chat tabs persist to a local SQLite file under ~/.runhq/.
  • 05Which runtimes and package managers does RunHQ auto-discover?
    Answer
    Ten runtime families today: Node.js, Bun, Deno, Go, Rust, .NET, Python (Poetry / uv / pip), Java (Maven + Gradle), Ruby, PHP, plus Docker Compose. RunHQ reads package.json, go.mod,Cargo.toml, pyproject.toml, compose.yaml and friends to infer start commands.
  • 06How does RunHQ work alongside VSCode, Cursor or JetBrains IDEs?
    Answer
    Your editor edits code; RunHQ runs it. The cockpit watches the same workspace your editor has open and exposes one-click “open in IDE” buttons for VSCode, Cursor, Zed, Sublime, Xcode, JetBrains and any terminal — picking up where you left off without re-typing paths. RunHQ does not replace your editor or its run/debug configurations.
  • 07Is RunHQ free? What is the licence?
    Answer
    Yes, free and open source under the MIT licence. No paid tier today, no seat-based pricing, no account walls. The full source lives on github.com/erdembas/runhq and every release is signed with the same minisign key the in-app updater verifies.
  • 08How heavy is RunHQ on system resources?
    Answer
    RunHQ targets under 100 MB of RAM idle and ships as a Tauri + Rust native binary — the same engine that powers tools like Linear’s desktop app and Spacedrive. The renderer is React, but every cross-process call is a Rust IPC, not Electron-style Node-bridged JS. Cold start to first paint is sub-300 ms on an M-series Mac.

Got a question that isn’t here? Open a discussion on GitHub.

Stop carrying your dev setup in terminal tabs. Start from RunHQ.

Free · MIT · macOS · Linux · Windows · < 100 MB RAM

No account. No credit card. No telemetry.