Unified Chat
Streaming answers, a collapsible thinking view for reasoning models, and voice and image input — talk to any model or saved agent.
A no-code, local-first studio for building and running AI agents. Inference runs on your machine — llama.cpp, MLX, or vLLM — or any OpenAI-compatible API you register, chosen per agent and per call by a logical ID like triage-fast. TheYgent never routes your prompts, payloads, or weights through anyone else’s servers.
Sovereignty, Not Surveillance
TheYgent is never a middleman you didn’t choose. No prompts routed through anyone else’s servers, no captured weights — every hop runs where you point it.
You can register a hosted API whenever you want one; the promise is sovereignty and anti-lock-in — not “nothing ever leaves your machine.” When something crosses the wire, it does so because you sent it there. See everything TheYgent ever connects to →
The Builder
A visual AI agent builder: drag nodes onto a canvas, wire them with edges, configure them in the inspector, and run — no code required. The graph is the agent; saving it mints a content-addressed version you can roll back to.
Logical-ID Indirection
Give a model a logical ID once. Swap the engine beneath it — Apple Silicon, an NVIDIA GPU, any machine, or an API you register — and every edge on the canvas stays untouched: no vendor lock-in, no rewiring. Engine choice is per node, not per app: one graph can run local and hosted models side by side. The local engines are built in, not bolted on — TheYgent starts, warms, and unloads them itself, so there is no separate model server to run. On a Mac, that means native MLX →
| logical id | binding | runs on |
|---|---|---|
| triage-fast | mlx | Apple Silicon |
| draft-large | vllm | An NVIDIA GPU |
| extract-ocr | llamacpp | Any machine |
| reason-remote | openai-compatible | An API you register |
MLX serves it on Apple Silicon — GPU and CPU sharing unified memory.
binding ∈ { mlx | vllm | llamacpp | openai-compatible } · source ∈ { hf | local-path | url }
The Runtime
Chat, tools, retrieval, models, and automation — one local runtime that orchestrates all of it, no glue code.
Streaming answers, a collapsible thinking view for reasoning models, and voice and image input — talk to any model or saved agent.
Built-in tools, HTTP calls, and any MCP (Model Context Protocol) server over stdio or HTTP — running in your own trust domain.
Deploy a saved agent behind a token-authed endpoint, an HMAC-signed webhook, or a cron schedule.
Crawl a site or upload documents, embed them locally into pgvector, and wire RAG retrieval into any graph.
Browse the catalog, see what fits your RAM before downloading, and serve chat, vision, audio, and embeddings locally.
Test and benchmark any model or agent: per-turn latency and token metrics, saved and compared side by side.
Production Discipline
An agent you can’t replay, trace, or audit is a demo. Every TheYgent run is checkpointed, traced, and kept — and the whole stack deploys the same way everywhere.
New in 1.0 · The AI Gateway
The AI Gateway sits between Claude Code and the Anthropic API. It records what every exchange cost and what routing would have saved — then, when you choose, moves work to cheaper models: a cheaper Claude where that’s a drop-in, or models you run yourself.
Where It Runs
The gateway relays Claude Code’s prompts and code, so it runs where you run it: your machine or your cluster, beside Claude Code. It never writes a prompt or a response anywhere.
The gateway is a hop you add on purpose, and the Anthropic API stays its upstream: whatever a local model doesn’t answer — and some requests it never takes, such as Claude Code’s quota check — goes to Anthropic as before. Local models are verified with llama.cpp.
Walkthroughs
Screen recordings of the real thing on one machine — the whole platform end to end, a voice pipeline, and a single agent driving a local model and a hosted API in the same run.
Clone the repo, bring the stack up, install a model, then build, run, and trace an agent — the full tour.
Speech-to-text, a model, and text-to-speech wired on the canvas — a spoken conversation with an agent you built.
A local model triages and handles the easy work; the hard question goes to a hosted API — one graph, each branch calling its own model.
Go Deeper
The three pages to read before you choose an agent platform for local models.
Where your data lives, every connection TheYgent makes and when, and running air-gapped.
Read more → mlxMLX, llama.cpp, and whisper.cpp on one Mac — what runs where, and setting it up.
Read more → compareNext to four popular visual AI builders — dated, sourced, and honest about where they win.
See the comparison →Run It Locally
Clone the repo, copy the example .env (its defaults work locally), and run make up. The interface, control plane, inference plane, AI Gateway, and Postgres come online locally; engines start lazily when a model is first called.
$ git clone https://github.com/al2m4n/TheYgent.git
$ cd TheYgent
$ cp .env.example .env
$ make up
✓ inference-plane :8081
✓ control-plane :8080 postgres :5432
✓ interface :5174
✓ ai-gateway :8082
# open http://localhost:5174
Questions
TheYgent is a no-code, local-first platform for building and running AI agents on a visual canvas. You drag nodes — LLMs, MCP tools, routers, RAG retrieval, guardrails, human approvals — wire them with edges, and run the graph as an agent. Inference runs on your own machine via llama.cpp, MLX, or vLLM, or on any OpenAI-compatible API you register, chosen per agent and per call.
TheYgent is source-available under a fair-code license (the Sustainable Use License), not an OSI-approved open-source license. The full source is on GitHub, and you are free to use, modify, and self-host it for internal business, personal, and non-commercial purposes. Selling it — including offering it as a hosted service — is not permitted.
Most visual AI workflow builders call a model server you install and run separately. TheYgent runs local models on its own engines, sends no telemetry, and can make every run crash-resumable. The comparison pages set it side by side with four popular builders, with sources and dates — including where each of them is the better pick.
TheYgent never routes your prompts, payloads, or model weights through anyone else’s servers — you own every hop. By default everything runs on your machine: local engines, your own Postgres, localhost interfaces. If you register a hosted API for a model, that traffic goes directly from your machine to the provider you chose — it crosses the wire only because you sent it there.
Three local engines plus a universal escape hatch: llama.cpp (runs on any machine, CPU or GPU), MLX (Apple Silicon), and vLLM (NVIDIA GPUs) — plus any OpenAI-compatible API you register. Models get a logical ID, so you can swap the engine underneath without touching the agent graph, and one graph can mix local and hosted models side by side.
No. TheYgent runs local models on its own engines — llama.cpp, MLX, and vLLM (experimental). Install a model from the in-app Hugging Face catalog, where every variant shows whether it fits your RAM, and the inference plane starts the engine on the first call, keeps it warm, and unloads it when idle. There is no separate model server to install or keep running.
Yes, once it is installed. With models installed from the catalog, or weights copied onto the host and registered by path, the canvas, the engines, Postgres, durable runs, and retrieval with a local embedding model all work with no network. The only automatic request — a public price list fetched at startup — falls back to a bundled copy when offline. Every network touchpoint is listed on the private and offline AI page.
No. TheYgent has no usage analytics, crash reporting, update checks, or license activation, and it needs no vendor account. Traces stay in your own Postgres; OpenTelemetry export is off until you point it at a collector you run.
Yes. TheYgent connects to any MCP server over stdio or HTTP, and you can browse and install servers from the MCP registry inside the app. MCP tools drop onto the canvas as nodes, so a local model can call the same tools a hosted assistant would — running in your own trust domain.
No. The canvas is the whole workflow: drag nodes from the palette, connect them, configure each one in the inspector, and run. Publishing an agent mints an immutable, content-addressed version you can invoke by API, roll back, or wire to a trigger — all without writing code.
Yes. A published agent can sit behind a token-authenticated endpoint, an HMAC-signed webhook, or a cron schedule. Runs can be durable: every step is checkpointed, so if the process dies mid-run it resumes from the last completed node — loops, subgraphs, and human-approval waits included.
Yes. Drop a human approval node into the graph and the run pauses there until someone approves or rejects it, from the interface or over the API. Approvals run on the durable runtime, so a run can wait minutes or days and still pick up where it left off after a restart.
Clone the repo, copy .env.example to .env, and run make up for bare metal, or deploy the same services with Docker Compose or Kubernetes — it’s one architecture in every topology. There’s no vendor account and no cloud dependency — the only account is the local admin you create in the first-run wizard; the stack listens on localhost by default and stores everything in your own Postgres.
Yes. Crawl a site or upload documents, embed them locally into pgvector in your own Postgres, and wire a retrieval node into any graph. Embedding and retrieval both run through engines you choose — keep the embedding model local and your documents never leave your machine; bind a hosted API and they go only where you pointed them.
Yes — engine choice is per node, not per app. A common pattern is a fast local model handling triage on-device while a larger hosted model, reached through an API you registered, takes the escalations. Because nodes reference logical model IDs, swapping any binding later doesn’t touch a single edge.
The AI Gateway is a TheYgent service you run between Claude Code and the Anthropic API to cut what Claude Code costs. In observer mode it records every exchange — its cost, its kind of request, and what routing would have saved — without changing it. In router mode it moves work where that is a drop-in: subagents and cold-cache turns to a cheaper Claude model, and a share you choose to models on your own inference plane, each measured on your own traffic first.
Yes — it relays them, so it runs where you run it: your machine or your cluster, in the same trust domain as Claude Code. It never writes a prompt or a response anywhere. What it sends to the control plane is metadata only: timings, model names, token counts, costs, and the reasons behind each routing decision — never prompt or response text.
The License
Free to use, modify, and self-host for internal business, personal, and non-commercial use under the Sustainable Use License. What you can’t do: sell it or offer it as a hosted service. No bait-and-switch — the core is the core.
No vendor account, no cloud dependency, no lock-in. Clone the repo, run make up, and your first agent is on the canvas in minutes.