← Discover MCPs and Agents
O
MCPAI & MLGitHub

OpenMonoAgent.ai

(BETA) AI shouldn't have a meter. Unlimited tokens. Forever. Your machine. Your agent. Use it from anywhere. Terminal-native coding agent powered by local LLMs — 100% open source, free forever, and installed with a single command. Proudly built on C#/.NET, because AI tooling should be infrastructure, not a subscription.

Links

README

From the repo.

OpenMonoAgent
Open-source coding agent. Local-first. Zero cost. Zero cloud.
Built to democratize AI. Powered by .NET.



.NET 10 GNU AGPL-3.0 License Docker llama.cpp Self-hosted Linux macOS

OpenMono is a coding agent that runs entirely on your hardware — no subscriptions, no data leaving your network, no per-token billing. It pairs a .NET 10 CLI with its own llama.cpp inference server, giving you a full agentic loop with 20 built-in tools, Docker sandboxing, and deep code intelligence. NVIDIA GPU, CPU, or Apple Silicon (Metal) — it auto-configures itself. You own the model, the compute, and the data.


Free Course — Get Started with OMA


Quickstart

One command. Auto-detects GPU · CPU · Apple Silicon. Installs model, runtime, and Docker containers.

bash <(curl -fsSL https://raw.githubusercontent.com/StartupHakk/OpenMonoAgent.ai/refs/heads/main/get-openmono.sh)

Then from any project:

openmono agent            # TUI mode (default)
openmono agent --classic  # classic scrolling terminal

→ Full command reference — daily commands, setup flags, GPU/CPU options


OpenMono TUI

What's shipping

What's shipping — Web Search & Scraping, Vision, Mobile App, VS Code & Cursor Extension

Get them: openmono setup search · OPENMONO_VISION_ENABLED=1 · App Store · Google Play · VS Code Marketplace


How it compares

Most coding agents are cloud products wearing an open-source label. Your prompts, your code, and your context hit someone else's servers on every keystroke. OpenMono runs the model on your hardware — after the one-time setup, inference costs nothing. Your code never leaves the machine. No account. No usage dashboard. No API key.

How OpenMono compares to Claude Code and OpenCode across cost, privacy, inference, sandboxing, code intelligence, extensibility, MCP, UI, and hardware

→ Full architecture + diagram · 4 providers · runs at ~45 tok/s on GPU, ~20 tok/s on CPU


What's inside

01 · Bundled inference — zero config, zero cost
llama.cpp ships inside Docker. Installer detects your hardware and picks the right model. After setup, every token is free.

GPU Qwen3.8-27B dense · ~60 tok/s
CPU Qwen3.6-35B-A3B MoE · ~20 tok/s
Mac Qwen3.6-35B-A3B MoE · Metal · ~45–48 tok/s

→ Models & reasoning mode

02 · Agentic loop that earns its name
25 iterations per turn. Doom-loop detection aborts if the same tool sequence repeats 3×. Checkpoints at 65% context fill, compacts at 80%. Runs until done — then stops.

03 · 20 tools, 12-step pipeline
Every call: parse → schema validate → path sanity → plan-mode guard → capability check → cache → pre-hook → execute → post-hook → artifact store. Read-only tools run in parallel. Nothing bypasses the pipeline.

04 · 5 specialist sub-agents
Isolated sessions with locked tool sets and turn budgets:

Explore · read-only discovery · 15 turns
Plan · architecture, no writes · 10 turns
Coder · full file access · 30 turns
Verify · adversarial + Roslyn · 20 turns
general-purpose · everything · 25 turns

05 · Docker sandbox
Project mounts as /workspace. The agent reads and writes your real files — that's the blast radius. Nothing outside that mount is visible or reachable.

06 · Deep code intelligence
Roslyn: type hierarchy, blast-radius, cross-file symbol search, callers, diagnostics — 5-min compilation cache. LSP for TypeScript, Python, Go, Rust, lazy-started on first use.

Auto-detects graphify (semantic concept graph, 25+ languages) and code-review-graph (structural call graph via MCP, ~22 tools) if installed — no config needed.

07 · Playbooks
YAML workflows with typed parameters, conditional gates, and checkpoint/resume. Composable — one playbook can call another.

08 · 4 providers, hot-swappable
Local llama.cpp is the default and fully supported. OpenAI, Anthropic, and Ollama are available but WIP — see Models for details.

09 · Distributed inference
Agent on your laptop, inference on a separate GPU machine. No port forwarding — tunnel is established outbound from the inference box. Free relay at app.openmonoagent.ai.

→ Dual-box setup guide

10 · Vision
Attach images in chat with @screenshot.png or ask the agent to read any image file. The multimodal projector (mmproj) is downloaded automatically at setup. Supported formats: PNG, JPG, GIF, WebP. Large images are auto-resized to fit within VRAM budget. Enable with OPENMONO_VISION_ENABLED=1.

→ Vision setup & usage

11 · Private web search & scraping
Self-hosted search via SearXNG — your queries never leave the machine. Anti-bot scraping via Scrapling + Camoufox (real browser, Cloudflare bypass). Single Caddy gateway, auto-detected. Falls back to DuckDuckGo / direct fetch when the gateway is absent.

openmono setup search · openmono setup scraper

→ Web services architecture

12 · VS Code extension
The full agent loop in your editor sidebar — streaming responses, live Markdown, file edits, bash, and permission prompts without leaving VS Code. Connects to the local agent over ACP on port 7475. Also works in Cursor.

code --install-extension StartupHakk.openmono-agent

→ Extension docs · Marketplace

Distributed inference: agent on laptop, inference on GPU machine

Supported Hardware

Linux — NVIDIA GPU / CPU: supported models, accuracy, and speed by VRAM/RAM

macOS — Apple Silicon (Metal): supported models, accuracy, context, and speed by unified memory

Auto-detects GPU · CPU · no config needed. On Linux, 12 GB and 16 GB cards run lower-accuracy models; use a 24 GB card for best results. Requires Ubuntu 26.04 LTS (recommended) or 25.10. On macOS, the full and inference roles require Apple Silicon (M1+); 64 GB+ unified memory is the recommended, tested configuration. Less than 64 GB is not encouraged — smaller model, much tighter context window. Intel Macs: agent-only mode. macOS 14+ (Sonoma/Sequoia) recommended.


Docs

RoadmapWhat's next
Setup & commandsDaily commands, TUI vs classic, flags
Architecture.NET CLI + llama.cpp + Docker, full diagram
Models & reasoningModel tiers, reasoning mode, provider config
Configurationsettings.json, providers, permissions, MCP servers
PlaybooksYAML workflows, typed params, checkpoint/resume
graphifySemantic code graph, 25+ languages
code-review-graphStructural call graph via MCP
VS Code extensionChat panel for VS Code 1.85+ · also works in Cursor · Marketplace
ContributingHow to contribute

PUBLIC BETA  Early access is open — we're shipping updates fast. Try it out and tell us what you'd like to see next.

Contributing

OpenMono is early and moving fast. Contributions are welcome — new tools, providers, LSP servers, playbooks, bug fixes, or docs.
→ Read the contributing guide before opening a PR


"AI shouldn't be a subscription you rent. It should be infrastructure you own —
sitting on your desk, serving your code, answering only to you."


— Startup Hakk

StartupHakk
GNU AFFERO GENERAL PUBLIC LICENSE v3.0 · © 2026 StartupHakk

Collected info

  • ★ 1,849 stars
  • ⎇ 220 forks
  • Language: C#
  • Source updated: 9/24/2026

Config for your environment

Replace {MCP_ENDPOINT_URL} with this MCP’s endpoint URL (from its repo or docs above). No API key — you connect directly.

Tool

OS

Config file: ~/.cursor/mcp.json

{
  "mcpServers": {
    "mcp-server": {
      "url": "{MCP_ENDPOINT_URL}"
    }
  }
}

Paste into mcpServers in the config file. Restart Cursor after saving.

If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.