BrokkAi/mjolnir

Manage Codex, Claude Code, Muse Code, Kimi Code, Grok Build, and DeepSeek Harness with durable sessions, isolated environments, quotas, and remote control. A Rust terminal and web control plane for Agent Client Protocol (ACP) coding agents.

8

stars

2,153

commits

Rust

primary language

Sep 13, 2026

updated

mjolnir.brokk.ai/
acp
agent-client-protocol
ai-agent
ai-coding
automation
claude-code
code-review
codex
coding-agent
deepseek
developer-tools
docker
grok-build
headless
kimi-code
multi-agent
muse-code
podman
rust
tui

README

Mjolnir

Mjolnir (mj) is a a meta-harness for managing all your coding agents in one place.

If you only ever use a single subscription in a single harness on a single machine, you don't need mjolnir.

But if you expand beyond that, Mjolnir offers flexibility across all three:

  1. Move sessions between subscriptions (personal codex to work codex)
  2. Move sessions across harnesses (codex to claude code)
  3. Move sessions across machines or containers (local workstation to ec2)

... while handling details like cross-harness memory sync and integrating a privacy-first, no-setup web ui via Tailscale for when you're not at your desk.

Mjolnir is free and open source from the engineers at Brokk AI. We're not trying to make money off of mj; we built it because we wanted to use it.

Documentation · Quickstart · Releases

Screenshots

Targets and Quota minimized
Targets + Quota minimized to show more Sessions details
Sessions minimized
Sessions minimized, Targets + Quota showing details
Larger screen
On a larger screen, Sessions + Quota both showing details

Alternatives

The comparison below covers product capabilities. means no first-class capability; manual scripts, host setup, and filesystem access are described where relevant. Compared against repository snapshots inspected on September 8, 2026: Herdr, Paseo, and T3 Code.

Provisioning

FeatureMjolnirHerdrPaseoT3 Code
Remote targetsAnything reachable over SSH¹SSH machines with Herdr installedMachines running a reachable Paseo daemonSSH/WSL environments running a T3 backend
Remote executionUploads an on-demand session worker; no resident per-host daemonRequires a Herdr server on each hostRequires a Paseo daemon on each hostRequires a T3 backend in each environment
EC2Provisions and terminates instances from launch templatesManual setup as a remote hostManual setup as a remote hostManual setup as a remote environment
Session containersDocker, Podman
Credential synchronizationContinuously syncs whitelisted credentials into live targetsHost-local credentialsPer-daemon credentialsPer-environment credentials

Session continuity

FeatureMjolnirHerdrPaseoT3 Code
Native-session adoptionAll supported harnessesNo external adoption; only restarts sessions it was already supervisingAll supported providers with native list/load supportNo external adoption; continues T3-owned sessions
Resume sessions across profiles and harnessesManual handoff/paseo-handoff skillSame-harness only²
Cross-host move and restore
Multi-repo projectsBundles provision, checkpoint, review, move, and restore member repos together³Filesystem access only; separate workspaces or panesFilesystem/provider access only; one root per workspaceFilesystem access only; one workspace root per project

Harnesses and accounts

FeatureMjolnirHerdrPaseoT3 Code
Supported harnessesClaude Code, Codex, Kimi Code, Grok Build, DSH, Muse CodePi, OMP, Copilot, Devin, Kimi, Hermes, Qoder, Qwen, Droid, OpenCode, Kilo, MastraCode, Claude, Codex, Cursor, Amp, Grok, Antigravity, Kiro, Maki, Muse; any other CLI runs without agent-aware featuresClaude, Codex, Copilot, OpenCode, Pi, OMP; catalog and custom ACP agents including Kimi, Cursor, Hermes, and QwenCodex, Claude, Cursor, Grok, OpenCode
Multiple profiles per harnessFirst-class named profilesManual wrappers and environment configurationCustom provider aliasesProvider instances; continuation compatibility varies by harness
Usage and quota viewLive subscription quota by profile plus target capacity⁴Provider plan usage on demandToken and API-cost analytics; not remaining subscription quota

Assistance and control

FeatureMjolnirHerdrPaseoT3 Code
Cross-session project memorySynchronized project memory shared across sessions, profiles, harnesses, and targets
Automatic adversarial reviewBuilt-in automatic or on-demand independent reviewScriptable through agent automation; no built-in review loopManual /paseo-advisor second opinion
Control surfacesTUI, web, CLITUI, CLIWeb, desktop, iOS, Android, CLIWeb, desktop, iOS, Android, CLI
Voice inputTUI and web dictationDictation and conversational voice mode

Extensibility

FeatureMjolnirHerdrPaseoT3 Code
Product pluginsWorkflow packages with actions, event hooks, terminal panes, and link handlersFull-stack client/server plugins: UI surfaces, RPCs, tools, providers, themes, and commands

“Native-session adoption” means discovering a session created outside the product and bringing it under management. Ordinary same-harness continuation is excluded.

  1. Mjolnir's SSH targets require a supported Linux host and the documented runtime prerequisites. It also supports Apple's container runtime on compatible Macs. See targets.
  2. T3 continuation also requires compatible provider homes: Codex can share history across accounts using its shadow-home setup; separate Claude account homes cannot continue the same thread.
  3. Bundles apply to managed targets. DSH (DeepSeek Harness) and Muse Code currently accept one workspace root. Bare sessions can access neighboring repositories subject to harness permissions, but do not manage them as a bundle.
  4. Quota availability depends on the harness. Muse currently cannot use the project-memory tools or act as a reviewer. Cross-harness resume requires a configured utility-capable profile to generate the handoff; see durability and recovery.

Get started

Install the release bundle on Linux or macOS (use WSL2 on Windows):

curl -fsSL https://raw.githubusercontent.com/BrokkAi/mjolnir/master/install.sh | bash

Linux CLI releases target glibc 2.28 or newer on x86-64 and ARM64 with a standard GNU loader. The desktop application and voice helper have additional native system dependencies and may require a newer distribution. Alpine and NixOS loader environments are not currently supported by these GNU bundles.

From your project directory, run:

mj

On first launch, Mjolnir creates a workspace from the current directory. If the opened workspace has no live session, it starts one automatically using your configured Codex account and prefers usable Podman, then Docker, then a local directory target. This happens once while the dashboard opens; switching workspace tabs only filters the list. Press Create for the full wizard, or use mj setup to configure other harness accounts and targets. Run mj doctor to check prerequisites.

Follow the quickstart for your first session. The installation guide covers npm, source builds, desktop dependencies, and portable workers.

Documentation

The website source lives in docs/. For the previous product generation, see Mjolnir 1.x.

License

Mjolnir is licensed under GPL-3.0-only.

Contributors

jbellis

1,292 commits

foundev

846 commits

DylenTurnbull

7 commits

BrokkAi/mjolnir

Manage Codex, Claude Code, Muse Code, Kimi Code, Grok Build, and DeepSeek Harness with durable sessions, isolated environments, quotas, and remote control. A Rust terminal and web control plane for Agent Client Protocol (ACP) coding agents.

8

stars

2,153

commits

Rust

primary language

Sep 13, 2026

updated

mjolnir.brokk.ai/
acp
agent-client-protocol
ai-agent
ai-coding
automation
claude-code
code-review
codex
coding-agent
deepseek
developer-tools
docker
grok-build
headless
kimi-code
multi-agent
muse-code
podman
rust
tui

README

Mjolnir

Mjolnir (mj) is a a meta-harness for managing all your coding agents in one place.

If you only ever use a single subscription in a single harness on a single machine, you don't need mjolnir.

But if you expand beyond that, Mjolnir offers flexibility across all three:

  1. Move sessions between subscriptions (personal codex to work codex)
  2. Move sessions across harnesses (codex to claude code)
  3. Move sessions across machines or containers (local workstation to ec2)

... while handling details like cross-harness memory sync and integrating a privacy-first, no-setup web ui via Tailscale for when you're not at your desk.

Mjolnir is free and open source from the engineers at Brokk AI. We're not trying to make money off of mj; we built it because we wanted to use it.

Documentation · Quickstart · Releases

Screenshots

Targets and Quota minimized
Targets + Quota minimized to show more Sessions details
Sessions minimized
Sessions minimized, Targets + Quota showing details
Larger screen
On a larger screen, Sessions + Quota both showing details

Alternatives

The comparison below covers product capabilities. means no first-class capability; manual scripts, host setup, and filesystem access are described where relevant. Compared against repository snapshots inspected on September 8, 2026: Herdr, Paseo, and T3 Code.

Provisioning

FeatureMjolnirHerdrPaseoT3 Code
Remote targetsAnything reachable over SSH¹SSH machines with Herdr installedMachines running a reachable Paseo daemonSSH/WSL environments running a T3 backend
Remote executionUploads an on-demand session worker; no resident per-host daemonRequires a Herdr server on each hostRequires a Paseo daemon on each hostRequires a T3 backend in each environment
EC2Provisions and terminates instances from launch templatesManual setup as a remote hostManual setup as a remote hostManual setup as a remote environment
Session containersDocker, Podman
Credential synchronizationContinuously syncs whitelisted credentials into live targetsHost-local credentialsPer-daemon credentialsPer-environment credentials

Session continuity

FeatureMjolnirHerdrPaseoT3 Code
Native-session adoptionAll supported harnessesNo external adoption; only restarts sessions it was already supervisingAll supported providers with native list/load supportNo external adoption; continues T3-owned sessions
Resume sessions across profiles and harnessesManual handoff/paseo-handoff skillSame-harness only²
Cross-host move and restore
Multi-repo projectsBundles provision, checkpoint, review, move, and restore member repos together³Filesystem access only; separate workspaces or panesFilesystem/provider access only; one root per workspaceFilesystem access only; one workspace root per project

Harnesses and accounts

FeatureMjolnirHerdrPaseoT3 Code
Supported harnessesClaude Code, Codex, Kimi Code, Grok Build, DSH, Muse CodePi, OMP, Copilot, Devin, Kimi, Hermes, Qoder, Qwen, Droid, OpenCode, Kilo, MastraCode, Claude, Codex, Cursor, Amp, Grok, Antigravity, Kiro, Maki, Muse; any other CLI runs without agent-aware featuresClaude, Codex, Copilot, OpenCode, Pi, OMP; catalog and custom ACP agents including Kimi, Cursor, Hermes, and QwenCodex, Claude, Cursor, Grok, OpenCode
Multiple profiles per harnessFirst-class named profilesManual wrappers and environment configurationCustom provider aliasesProvider instances; continuation compatibility varies by harness
Usage and quota viewLive subscription quota by profile plus target capacity⁴Provider plan usage on demandToken and API-cost analytics; not remaining subscription quota

Assistance and control

FeatureMjolnirHerdrPaseoT3 Code
Cross-session project memorySynchronized project memory shared across sessions, profiles, harnesses, and targets
Automatic adversarial reviewBuilt-in automatic or on-demand independent reviewScriptable through agent automation; no built-in review loopManual /paseo-advisor second opinion
Control surfacesTUI, web, CLITUI, CLIWeb, desktop, iOS, Android, CLIWeb, desktop, iOS, Android, CLI
Voice inputTUI and web dictationDictation and conversational voice mode

Extensibility

FeatureMjolnirHerdrPaseoT3 Code
Product pluginsWorkflow packages with actions, event hooks, terminal panes, and link handlersFull-stack client/server plugins: UI surfaces, RPCs, tools, providers, themes, and commands

“Native-session adoption” means discovering a session created outside the product and bringing it under management. Ordinary same-harness continuation is excluded.

  1. Mjolnir's SSH targets require a supported Linux host and the documented runtime prerequisites. It also supports Apple's container runtime on compatible Macs. See targets.
  2. T3 continuation also requires compatible provider homes: Codex can share history across accounts using its shadow-home setup; separate Claude account homes cannot continue the same thread.
  3. Bundles apply to managed targets. DSH (DeepSeek Harness) and Muse Code currently accept one workspace root. Bare sessions can access neighboring repositories subject to harness permissions, but do not manage them as a bundle.
  4. Quota availability depends on the harness. Muse currently cannot use the project-memory tools or act as a reviewer. Cross-harness resume requires a configured utility-capable profile to generate the handoff; see durability and recovery.

Get started

Install the release bundle on Linux or macOS (use WSL2 on Windows):

curl -fsSL https://raw.githubusercontent.com/BrokkAi/mjolnir/master/install.sh | bash

Linux CLI releases target glibc 2.28 or newer on x86-64 and ARM64 with a standard GNU loader. The desktop application and voice helper have additional native system dependencies and may require a newer distribution. Alpine and NixOS loader environments are not currently supported by these GNU bundles.

From your project directory, run:

mj

On first launch, Mjolnir creates a workspace from the current directory. If the opened workspace has no live session, it starts one automatically using your configured Codex account and prefers usable Podman, then Docker, then a local directory target. This happens once while the dashboard opens; switching workspace tabs only filters the list. Press Create for the full wizard, or use mj setup to configure other harness accounts and targets. Run mj doctor to check prerequisites.

Follow the quickstart for your first session. The installation guide covers npm, source builds, desktop dependencies, and portable workers.

Documentation

The website source lives in docs/. For the previous product generation, see Mjolnir 1.x.

License

Mjolnir is licensed under GPL-3.0-only.

Contributors

jbellis

1,292 commits

foundev

846 commits

DylenTurnbull

7 commits

Languages

Rust

86.9%

HTML

6.6%

JavaScript

3.7%

Python

2.0%