Synaplan
기업을 위한 오픈소스 AI 플랫폼
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Self-hosted command center for AI agent fleets — create agents, dispatch tasks, watch them ship. FastAPI + Next.js + Docker.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Your self-hosted AI agent fleet — with guardrails, a real git workflow
and zero cloud.
Create agents, give them souls, dispatch tasks, watch them ship — from a
single dark-mode control room, running entirely on your own hardware.
Running one AI coding agent is easy. Running several is chaos — and that's
the problem Mission Control exists to solve:README 전문 보기 ↗A phone remote for coding agents on your own models — self-hosted, with approval gates.
Ask your lead agent from the couch, watch every edit land as a live diff, answer its questions with a tap — and keep the risky steps behind your approval. Runs on your hardware, prefers your local models, AGPL — with a one-click model recipe for NVIDIA DGX Spark.
Spark recipe · Install · What it does · Maturity · Docs · Roadmap · Community
Pick a recipe on the Runtimes page and click Install — the recipe downloads the weights and sets up its engine while MC shows the live install log. For two-box recipes MC picks a free second box and wires it in. One click on Start switches a box (or a pair) to another recipe; a switch lock refuses it while the engine is still serving requests.
| Recipe | Boxes | Engine | Measured on 2× DGX Spark |
|---|---|---|---|
| GLM-5.3-Flash · EXL3 4-bit · TensorFold | 2 (tensor parallel) | TensorFold | 62.6 tok/s single stream · 211 tok/s at 16 parallel · 1M context per request · prefill ~1,800 tok/s |
This is the recipe MC ships today; more recipes are on the way and land in
the same catalog. The recipe builds on other people's engines, quants and
models — see CREDITS. Note: the GLM recipe's default speculative
drafter is licensed CC BY-NC-ND 4.0 (non-commercial); a licence-free drafter
option exists. Numbers: our own benchmark (tokens counted from the
API's usage, greedy, 512-token answers, on our own 2× DGX Spark pair,
08 Oct 2026); the same weights on the plain vLLM recipe reach 34.6 tok/s —
the dedicated recipe is ~1.8× faster. Catalog status: this entry's
gb10_validated flag is currently false — the catalog's own marker for
"actually watched running on a GB10 box" is not yet set for this recipe,
even though the numbers above come from a real run; if you install it and
hit a mismatch, open an issue with your own numbers. How it works:
ADR-077
· Runtimes.
Coding agents are good enough to work while you are away from the desk. The tools around them are not:
/v1) and that work never leaves your network.MC is built around two fixed agents and one chat to steer them:
Live tool output, a diff for each edit, file chips and the session cost — in the chat, on phone and desktop. The Changes panel lists what this chat changed, file by file, with Revert, Commit and Open PR.
The commit message is suggested by your local model when one is set up (otherwise MC writes a plain summary). The commit stays on your machine until you open the PR.
The local omp agent can stop and ask. Its questions arrive as question cards; in plan mode it writes a plan first and waits for Approve, Refine or Cancel. Screenshots taken by browser tools show up right on the tool card.
Phone use is monitor and steer: read, answer, approve, stop, send the next instruction. Full editing stays at the desk. MC installs as a home screen app (PWA manifest); it is not an offline app.
Call your lead agent from the chat and give instructions by voice. This uses
OpenAI Realtime with your own API key and has a daily budget cap
(default 5 USD). It is off by default (VOICE_LIVE_ENABLED) and in preview
(ADR-091, still Proposed). On a phone the
browser only allows the microphone over HTTPS — see
Reverse proxy & remote access.
Your GPU boxes show up as runtimes with model, context, speed and load. For each agent you choose the runtime yourself; heads (preview) pre-select a local runtime when one exists. There is no automatic fallback from local to cloud yet.
Not every coding tool runs on every model. The matrix shows what works today — and says no, with the reason, where it doesn't:
Details: Runtimes · Run agents on a local LLM.
Agents ask MC before risky actions, and your settings decide what happens:
gh pr merge --squash) and respect your branch protection
and merge queue. There is no merge button in the phone chat.Insights shows tokens per day, the share that ran locally, where usage comes from (lead agent, omp agents, heads, you) and the local share per week. Costs are shown at list price, even on flat-rate plans, so you can compare. The chat's context ring shows the prompt cache hit rate.
The numbers in this picture are demo data.
MC is changing direction (ADR-085, ADR-089, ADR-090): away from a permanent fleet of named agents, towards one lead agent, one local agent and the chat as remote control. Here is where each part stands.
| Status | What | How to get it |
|---|---|---|
| Stable | Core stack (boards, tasks, inbox, memory/vault, runtimes, insights, settings) · autonomy levels, approval cards, ADR gate · runtime switch with rollback | Default install |
| New (Oct 2026), live | Chat with live diffs and Changes panel (Revert / Commit / Open PR) · question cards and plan mode for omp agents · tool screenshots. In daily use; the phone acceptance check and reliability work are still open (ROADMAP) | Default install |
| Preview, opt-in | Heads — one short-lived coding session per job, in its own git worktree, ending in a PR and a run record | HEADS_ENABLED=true · macOS host (launchd + sandbox profile) |
| Preview, opt-in | Night shift — "run tonight" jobs and a morning report | NIGHT_SHIFT_ENABLED=true · needs heads, so macOS host |
| Preview, opt-in | Live voice in the chat (ADR-091) | VOICE_LIVE_ENABLED=true + OPENAI_API_KEY · daily budget cap · HTTPS on the phone |
| Frozen | The persistent agent fleet (dispatch, healers, group chat) · Skill Lab, ClawHub and plugin management | Still in the code, no new work; being removed step by step (ROADMAP E5) |
Fresh installs still start with the classic board. The first-run wizard offers a demo board with a small demo crew of agents and sample tasks. That is the older picture of MC. The two-agent setup above is not created by the wizard yet — the quickstart walks you through it.
You need: git, curl, openssl and Docker with Compose v2. The installer checks all of them at once and prints the exact command for anything that is missing — it never installs system packages on its own.
# Debian / Ubuntu / Raspberry Pi OS
sudo apt update && sudo apt install -y git curl openssl
curl -fsSL https://get.docker.com | sh && sudo usermod -aG docker "$USER" # then log out and in again
# macOS: install Docker Desktop (and git via Xcode tools or Homebrew)
Then:
curl -fsSL https://raw.githubusercontent.com/argyelan-ai/mission-control/main/install.sh | bash
The installer installs the latest release — code and prebuilt images of
the same version (amd64 and arm64), so nothing has to be built. It writes
.env with fresh secrets, starts the stack and prints the address to open.
Developers who want main can pass --channel edge (built locally, not for
everyday use). Update an install later from its folder with
curl -fsSL https://raw.githubusercontent.com/argyelan-ai/mission-control/main/install.sh | bash -s -- --update
(never downgrades). Release rules: ADR-092.
On a server or a Pi without a screen the installer notices and asks
whether you will open MC from another device. If yes, it creates the first
admin account right there in the terminal (password hidden) and only then
opens MC to your network — nobody else on the LAN can grab the admin account.
Flags: --remote, --public-host <address>, --local. Prefer to keep MC
private? Use an SSH tunnel (ssh -L 8080:localhost:80 you@server, then open
http://localhost:8080) or Tailscale
(tailscale serve --bg 80, with sudo on Linux). Raspberry Pi notes (8 GB, SSD, memory cgroup):
docs/setup/raspberry-pi.md.
On Linux, MC runs as your own user id (PUID/PGID in .env, set by the
installer). If /health reports degraded, the message says what to fix.
Run one-off commands as that user: docker compose exec -u mcuser backend ….
After the first login the setup wizard opens by itself and stays until it is done. After the install, no agent is running yet. To get a lead agent and a local omp agent you can steer from the chat, follow Quickstart: install to your first remote-controlled agent.
Keep MC off the public internet. The easiest way to your phone is
Tailscale: tailscale serve --bg 80 (sudo on Linux) gives you an
HTTPS address inside your tailnet without opening MC to the LAN — HTTPS is
also what voice on the phone needs. Add MC to your home screen to use it as
an app. Other options (LAN address, your own reverse proxy):
Reverse proxy & remote access.
| Platform | Path | Notes |
|---|---|---|
| macOS | the one-liner | Everything, including heads and night shift (preview) |
| Linux server / NAS | the one-liner | Core stack and Docker agents; no heads or host agents (they need macOS launchd) |
| Windows 10/11 | .\setup.ps1 — sets up WSL2 + Docker, then runs the installer (guide) | Same as Linux |
| Windows Server / company VM | a small Linux VM next to your Windows VMs (guide) | Same as Linux |
| Runtipi | community app store | Core stack only |
| Portainer | deploy/catalogs/portainer-template.json as an App Template source | Core stack only |
| Umbrel / CasaOS | manifests prepared in deploy/catalogs/, not submitted | — |
Catalog installs run the core stack. Agents, heads and host-level extras need the full install.
Full map and "where do I change what": docs/ARCHITECTURE.md.
| You want to… | Read |
|---|---|
Find your way around docs/ | docs/README.md |
| Get from install to a remote-controlled agent | Quickstart |
| Understand the lead agent, heads and the chat as remote control | Heads and remote control |
| Look things up | Handbook · FAQ |
| Connect GitHub | docs/setup/github.md |
| Update or back up | Updating · Backup & restore |
| Know why things are built this way | PRINCIPLES · 90 decision records |
No dates are promised; stages move when their acceptance check passes. Next in the chat: session list, resume and fork (P4), sending images, installing plugins, skills and MCP servers through an approval card. The lead agent's own merge and deploy gate is planned and not built yet. Full status: docs/ROADMAP.md.
docs/decisions/, each with
its reason. Some are still Proposed; the status line says which.voice profile's LiveKit media ports are the exception),
Docker only through a filtering socket proxy, secrets encrypted with
Fernet. Reporting a vulnerability: SECURITY.md.Development:
cd backend && python3.12 -m venv .venv && source .venv/bin/activate
pip install -e ".[test]" && pytest -q # backend
cd frontend-v2 && npm install && npm run test:run # frontend
make help lists the common entry points. Rules for contributors and coding
agents: CONTRIBUTING.md · AGENTS.md.
Language note: the project grew in a German-speaking home lab. Many ADRs and some code comments are German; the UI, README and setup are English (the UI also ships in German).
Mission Control's DGX Spark recipe builds on GLM-5.3-Flash by Z.ai, the EXL3 quantization format and ExLlamaV3 by turboderp, the TensorFold engine by ashhart, the DFlash2 drafter by Inco AI and the recipe work of Mia's AI Lab. MC drives the coding harnesses Claude Code, OpenClaude, omp, Hermes Agent, Kimi Code and Grok Build. Full list with licences and links: CREDITS.md.
AGPL-3.0 — see LICENSE. Use it, self-host it, change it. If you distribute a modified version or offer it as a network service, share your changes under the same license. For commercial licensing beyond AGPL, contact the maintainer.