DEV Community

Oryn
Oryn

Posted on

I built a desktop AI coding agent that runs 100% offline with Ollama

I'm a solo developer with a full-time job and a family, and for the last several months I've been building an AI coding tool in the cracks of my day — early mornings, late nights, weekends. It's called Oryn, and I want to share why I built it and how it works, because the two decisions at its core might resonate with you.

The itch

Two things bugged me about the AI coding tools I was using:

  1. My code went to someone else's cloud, and I paid a markup for the privilege. Every request routed through a vendor, wrapped in their pricing.
  2. Everything was a subscription. Another monthly fee here, another there.

I wanted something that (a) let me use my own model — my own API key, or a model running entirely on my machine — and (b) that I could pay for once. So I built it.

What it does

Oryn is a desktop app for Windows. You open a project folder and describe what you want in plain English:

"Add a login page to my app with email + password and client-side validation."

It then runs an agent loop:

  • Reads the relevant files to understand your codebase
  • Plans the steps
  • Writes and edits files
  • Runs commands and tests
  • Verifies its own work

…pausing for your approval on each change if you want (manual mode), or running straight through (auto mode). Every step is visible — you can stop it, skip a step, or jump into the built-in editor and take over at any point.

Here's a real, unedited 2-minute run building a working app from a single sentence: https://youtu.be/D1utnumMAlo

The two bets

1. Bring your own model — or go fully local.
Plug in your own key (Claude / GPT / Gemini / Groq) and pay the provider directly, no markup from me. Or — the part I'm proudest of — run it 100% local with Ollama. No key, no cloud, nothing leaves your machine. For a lot of day-to-day work (refactors, boilerplate, tests) a local model is plenty, and it's private and free to run.

2. One-time price. Pay once. No subscription.

How it's built (for the curious)

  • Frontend: Electron + React + TypeScript, with a Monaco-based editor.
  • Backend: a bundled service that runs locally (bound to 127.0.0.1) and handles agent orchestration, file tools, terminal, git, and provider routing.
  • The agent loop is a plan → act → verify cycle with tool calls (file read/write, shell, git). Manual approval is a gate in front of every mutating tool call.
  • Local models run through Ollama; cloud models go directly from your machine to the provider using your own key.

What was hard (the honest part)

  • Making the agent stop at the right moment. Early versions would happily "fix" things I didn't ask for. Adding a visible plan + per-step approval solved both the trust problem and the runaway problem.
  • The local path is a balancing act. Local models are great for many tasks but still trail frontier cloud models on long multi-step reasoning. Letting you switch per task, instead of forcing one choice, was the answer.
  • Shipping a desktop app solo is a grind — packaging, signing, auto-updates, licensing. None of it is glamorous and all of it matters.

Try it / tell me I'm wrong

There's a 7-day free trial, no card: https://oryneye.com . It's a paid product (one-time, no subscription) — saying that up front so nobody feels baited.

I'd genuinely love feedback, especially:

  • How does the local Ollama path feel on your setup?
  • Where does the agent loop break for you?

As a solo dev, honest criticism is the most useful thing I can get. Thanks for reading. 🙏

Top comments (0)