You write the instruction
One project, one briefing — the mission you want the agent to run at.
01 · SETUP
The desktop app's in-product onboarding wizard is the source of truth. This is the same flow, in text, for reference and for readers deciding whether to install.
STEP 01
Codron drives coding-agent CLIs: Claude Code by default, with OpenAI Codex and Google Antigravity as options. Install and auth Claude Code on every machine you want to dispatch briefings from. Install instructions
STEP 02
Codron stores briefings, engagements, and decisions in Supabase. Free-tier is more than enough for personal use. The onboarding wizard accepts your project URL and anon key.
STEP 03
Download the installer for your OS. First launch opens the onboarding wizard.
STEP 04
From the dashboard, hit + new: pick a source (fresh folder, GitHub repo, or an existing local folder), set the ambition (how far the agent pushes before parking), and write the briefing. The agent engages in the background and the engagement streams in real time. Not sure it's a project yet? Open a scratch, chat it out, and hit promote; the briefing drafts itself from the conversation.
02 · LOOP
Every project cycles through the same four beats. Codron leaves the middle two to the agent and pulls you in only for beat 3.
One project, one briefing — the mission you want the agent to run at.
Reads code, edits, tests, commits. Each engagement is one uninterrupted run.
Only for questions only you can answer — options come with the card.
Files changed, tokens, cost, confidence. Then it queues the next cycle.
AMBITION TIER
Every briefing carries an ambition tier — how far the agent pushes before it parks. Cycles continue on their own within the tier. When the tier's goal is reached, the agent escalates: raise the tier or park it here? You answer, and the loop resumes or stops. This is how unattended runs stay bounded: the loop won't rack up spend past a milestone you haven't approved.
03 · FLEET
Install Codron on every machine you work from. They all report into the same dashboard and each briefing picks its target — the box that actually has the code, the secrets, or the GPU it needs.
MACHINES
The + new form has a machine picker. Route a Postgres migration to the tower with the DB, a Vercel deploy to the cloud VM, a UI polish job to the Mac in front of you.
Change a project's target machine from settings. The agent on the new host picks it up on the next engagement; state lives in Supabase, not any one box.
04 · BRIEFINGS
A briefing is one paragraph of intent. The agent turns it into a plan, engages, edits files, runs tests, and commits — you see the whole thing stream, or you close the laptop and check the field report later.
PROJECT NAME
TARGET MACHINE
AMBITION
BRIEFING
pull enriched leads from the crm, dedupe by domain, and stage an outbound batch. keep everything idempotent so a re-run never double-mails.
Tool calls, edits, tests — all timestamped. Look for the running dot; leave the tab and it keeps going.
Every engagement files a record on stop: what changed, tokens, cost, engine, confidence. That's what you scan on the way to bed.
If a question comes up mid-run, the project flips to needs input and holds. See the next section.
05 · DECISIONS
The agent escalates only for questions it can't answer without you. Three shapes cover everything: a plain decision (pick an option), an env_request (a secret it doesn't have), and a file_request (an asset it needs).
mvp goal reached, raise the tier or park it here?
cluster show hn launches by vertical
mvp goal reached, awaiting your call
regenerate webhook fixtures for 2026-08-01 api
shipped /releases feed + changelog page
Interactive — click one of the two options in the decision card to resolve it and watch the project row flip.
storage: sqlite or postgres?
Standard pick-an-option. Options come from the agent — sometimes 2, sometimes N. A terminal option (e.g. park it here) stops the project instead of resuming it.
STRIPE_PRODUCT_ID
Agent hit a missing secret. Card includes the why + a how-to link. You paste the value into the project's Variables tab (or the machine keyring), then approve to resume.
logo.svg for the site header
Agent needs an asset it can't generate. Drop the file into the project's dropzone, then approve. Same shape as env_request, different payload.
TELEGRAM APPROVALS
Every decision also fires to your Telegram bot. One tap answers it from bed; the desktop card updates itself, and the engagement resumes. Same for env_request / file_request cards.
06 · CHAT
Not every idea is a project yet, and even inside a project, some conversations don't want to be briefings. Scratches sit above the fleet; sessions sit inside a project.
Throwaway chat lanes on the home page — where you toss an idea around before it earns a project. When one grows legs, hit promote and the briefing drafts itself: name, mission, reference docs lifted from what you pasted. Review, tweak, engage.
what if the export was a webhook, not a download
pros: streams, no local file. cons: needs a receiver url.
yeah ok try it as a new project
Every project has chat sessions for thinking beside the work. When the discussion lands on something actionable, one click distills it into an order — intent plus action items — that you edit and queue for the next engagement. No copy-pasting your own chat into a new prompt.
our bounce rate is up. spf/dkim?
spf passes. dkim signature is wrong on the ses fallback path.
fix and add a check to ci
07 · PREVIEW
Explaining a UI fix in prose means screenshots and guessing. In Codron's live preview, the element you click resolves to its source file and line. Add a memo, and the snap queues as an order for the next engagement.
| Month | Revenue | Growth |
|---|---|---|
| Apr 2026 | $12,480 | +8.2% |
| May 2026 | $14,920 | +19.6% |
| Jun 2026 | $15,134 | +1.4% |
src/reports/ExportButton.tsx:42 · <ExportButton>
Codron spawns your project's dev server and embeds it. Interact with it like any browser window — click, scroll, type.
The pick tool crawls DOM + source maps + the framework's data-* attributes to find the actual JSX for the clicked element.
A snap is a first-class order. It rides into the next engagement with your memo, so the agent sees where and why.
08 · DEV SERVER
Codron manages your project's dev server: spawns it, tracks the port, restarts it when a broken engagement kills it, and exposes it over a shared tunnel so your phone (or a teammate) can hit the same instance.
Public URL routed to :3000 · phone-safe · dies with the project.
If a bad edit crashes the server mid-engagement, Codron notices, restarts, and the agent picks up where it left off instead of failing the cycle.
Optional. Open the preview on your phone, share the URL with a teammate for a quick look, or point a webhook at it during development.
09 · VARIABLES
Edit each project's .env in the app, Vercel-style. When an engagement needs a key it doesn't have, the agent asks by name with a how-to link. Values never sync to the cloud — Supabase stores project metadata, not your secrets.
STRIPE_PRODUCT_ID
checkout can't run without the live product id
how-to: Stripe dashboard → Products → copy id
Each project has its own file, edited in the app or in your editor of choice. The agent reads it at engagement start.
Seed a value once per box (STRIPE_SECRET_KEY, OPENAI_API_KEY) and every project on that machine reuses it. env_request cards for keyed values auto-populate.
Values are read locally by the agent process. Only the key names (what was asked for, whether it was answered) round-trip through Supabase.
10 · ENGINES
Pick an engine per project. Turn on pair review and a second engine reads the first's work before the next engagement builds on it — cheap insurance against low-confidence changes shipping into your main branch.
Codex re-reads any engagement Claude tags below 0.7 confidence.
Different projects, different engines. A Rust systems job on Claude, a marketing site on Codex, an experimental tool on Antigravity — swap anytime from settings.
Optional. Set a confidence threshold; when the primary engine dips below it, the reviewer takes a pass before the next engagement builds on the diff.
Daily spend caps and automatic stand-down come with every engine. A runaway cycle stops itself before it drains a budget.
QUESTIONS / FEEDBACK
Email anything from typos to crashes. Every report shapes what we ship next.
contact@vivatechlab.com