Documentation
One place to understand how Velora works.
Velora is a desktop workspace for coordinating AI work across cloud models, local runtimes, and supported coding agents. You provide the outcome. Velora turns it into a visible plan, keeps related tasks connected, and pauses supported high-impact computer actions for your approval.
Getting started
From an objective to a supervised result.
- 1
Create your account
Use the same Velora account on the website and in the desktop app. Account access keeps your plan and Pro entitlement tied to you instead of one browser.
- 2
Connect the tools you choose
Add supported cloud providers, a local runtime such as Ollama, or a compatible coding agent. Velora does not automatically gain access to every model or application on your computer.
- 3
Describe the finished outcome
Give Velora the goal, useful constraints, and the material it needs. Review the proposed plan before dependent work begins.
- 4
Review the work and approvals
Follow each task, inspect handoffs, and decide whether a supported action that sends, deletes, publishes, or changes data should run.
Workflow model
Plan, dispatch, approve, complete.
Velora breaks a broad request into smaller tasks and shows how they depend on one another.
Independent tasks can run in parallel. Dependent work waits for the context it needs.
Supported high-impact actions can pause with the target and effect shown in plain language.
Results, decisions, and action events remain attached to the workflow for inspection.
Models and agents
Bring the services that fit your work.
Velora is designed to coordinate supported services from OpenAI, Anthropic, Google, DeepSeek, local Ollama models, and compatible agent command-line tools. Provider availability depends on the credentials, plans, regions, and policies attached to your own accounts. A provider reference does not imply endorsement or a commercial partnership.
Permissions and safety
Access should match the task.
- Inspection and change are separate. Reading a supported interface does not automatically grant permission to change it.
- Approval names the target. A request should explain the action and the item it affects before you decide.
- The action is logged. The workflow records whether an action ran freely, was approved, or was refused.
Availability
Available on macOS and Windows.
macOS
Available for macOS 13 and newer on Apple silicon. The build is signed with a Developer ID certificate and notarized by Apple. Download Velora
Windows
An early Windows alpha is available from the Download page. It is currently unsigned, so Windows SmartScreen may ask for confirmation on first run. View downloads
Product media
Everything shown here is the real app.
The screenshots and the product tour on this site are captures of the shipping macOS build, not mockups. They use deterministic demo content, so no project name, local path, credential, API key, or notification from a real workspace appears in any of them.
- Product tourA silent 16-second recording that moves from goal, to plan, to active agents, to an approval, to the completed action log.
- Approval requestA publish action paused for review, naming the action, destination, requesting agent, and the checks that passed.
- Workspace and planThe projects view and a plan of connected tasks with a clear owner for each.
Release notes
What shipped, and when.
Every desktop release, with what changed in plain language. The current macOS build is 3.0.0-alpha.31. Website and account updates — including this documentation — are tracked in the changelog.
- v3.0.0-alpha.28September 8, 2026
The hardened boundary
A security pass over everything alpha.27 shipped: the packaged app now trusts only its own renderer, refuses DevTools and remote debugging, room joins are rate limited through a new Edge Function, CORS answers only allowlisted origins, and a secret-and-exposed-file gate guards the repository and its history.
- ImprovedPrivileged IPC accepts frames from the packaged renderer entry exactly, not any file: URL
- ImprovedPackaged builds strip remote-debugging switches, block DevTools, and deny every permission check
- NewRoom joins run through velora-room-join: bearer-authenticated, shape-validated, and limited to ten joins per minute with a 429 retry-after
- Improvedvelora-brain and velora-entitlements echo only allowlisted browser origins instead of *
- NewA dependency-free security gate blocks credential files, secret patterns across every reachable commit, and unsafe renderer sinks — wired into CI and the release path
- ImprovedThe deprecated @base-ui-components/react package is gone and Playwright left production dependencies, after a clean advisory audit
- v3.0.0-alpha.27September 8, 2026
Codex tools reach Velora's approval gate
Codex tasks receive their task-scoped Velora MCP server through the App Server configuration that owns the thread, its reviewer forwards MCP calls through Velora's audited permission gate, and computer tasks accept any spelling of a namespaced tool. The live team release gate now requires three real providers and passed with Codex, Claude, and OpenCode.
- ImprovedCodex tasks wait for their Velora MCP server to connect before work starts
- ImprovedThe App Server reviewer's MCP calls go through the same audited permission gate as everything else
- ImprovedFully-qualified MCP tool names are normalized before the computer-task allowlist applies
- ImprovedThe three-agent release gate requires exactly three configured providers — it no longer downgrades to a two-agent diagnostic
- v3.0.0-alpha.26September 7, 2026
The sidebar keeps its shape, and the app explains itself
Sidebar grouping became structural, so a saved order can no longer dissolve it into one unlabelled list. New installs open on a short getting-started checklist that reads live state, the welcome screen moved into the account menu, and the icon set dropped eight arbitrary sizes for four sharp ones.
- FixedThe sidebar dropped its group headings permanently whenever the saved order interleaved groups; sections now always render and reordering works within them
- NewA getting-started checklist on new installs that reads live state and dismisses itself, reopenable from the account menu
- ImprovedIcons collapsed from eight sizes to four, with a heavier stroke at small sizes so glyphs stop rendering on half pixels
- ImprovedThe design harness covers the Usage screen's plan-activity and Velora Brain panels, which had been crashing it
- v3.0.0-alpha.25September 6, 2026
Sign in with a password, and meet the Brain
Sign-in no longer depends on an email arriving: the same email-and-password credentials as the website work in the app. The built-in Velora Brain reaches the composer's Refine button, plan limits gained real enforcement machinery starting with internal accounts, and the release toolchain stopped depending on GitHub Actions.
- NewEmail-and-password sign-in; the six-digit code flow that never had real email templates is gone
- NewAccount avatars: set a picture on the website and the sidebar and account panel pick it up
- ImprovedThe Brain's Refine action is wired into the composer, billed to the account, with its daily allowance visible in Usage
- ImprovedPlan limits can be enforced per cohort — team-size caps, parallel-start refusals, and a Plan activity log of every run that went past the plan
- FixedSettings → Navigation saves again: the validator listed eight of twelve views and rejected every save
- v3.0.0-alpha.24September 6, 2026
Confirmations work again
If you pressed Disconnect on an integration in alpha.23, nothing happened. Same for Delete on a crew, a workflow, an automation, a hook or a saved memory; same for Remove on a plugin, an MCP server or a spend limit; same for Revoke on a…
- ImprovedThe daemon could log database is not open while shutting down, when a task that was still finishing wrote after the database had closed. Harmless,…
- ImprovedReleases now tag the commit they were actually built from. The tags for alpha.22 and alpha.23 name unrelated code — the binaries are unaffected,…
- ImprovedExisting preferences are read forward; nothing needs resetting
- ImprovedV2 installs still need a one-time manual update to v3
- v3.0.0-alpha.23September 6, 2026
Sign-in works, and one button language
Every release before this one was compiled without the Supabase publishable key, so the account panel reported itself unconfigured and nobody could sign in. Nothing was wrong with the auth code — the key was simply never passed to the…
- ImprovedThe task composer is one input group: the outcome field, the attachment actions and Run task in a single frame instead of three stacked rows, with…
- ImprovedThe pairing command on the Workers panel copies from a masked field rather than printing your token on screen
- ImprovedWebhook secrets and URLs copy the same way
- ImprovedAny accent colour, not just the four presets. The picker sits beside them in Settings and everything reading --accent follows
- ImprovedComposer defaults. Set the agent, mode, environment, project and budget you usually want, press Save defaults in the composer, and the next task…
- v3.0.0-alpha.22September 5, 2026
Background Computer runtime seam
Stage 13's foundation ships as real code, honestly gated.
- ImprovedComputerRuntime manages a QEMU VM lifecycle: headless boot (HVF-accelerated), user-mode networking with SSH forwarded, graceful stop over the…
- ImprovedGuest commands run over SSH — no agent to install; a stock cloud image with your key injected works from first boot
- ImprovedScreenshot via the guest's own screenshot tool, returned as bytes
- ImprovedQEMU detection is honest: Setup Doctor reports it installed or not, never guesses
- ImprovedThe computer tools (observe/click/type/key) that wire the runtime into the agent's tool surface — the dispatcher branch is committed, the tool…
- v3.0.0-alpha.21September 5, 2026
Proposals, tournaments, and OpenCode as a server
Phase 4 closes: the last three deferred items from the roadmap's exploration and provider stages.
- ImprovedThe evaluator prompt shows only measured rows, leaders, and caveats — no competitor self-assessment — and its output is a proposal for the room,…
- ImprovedV2 installs still need a one-time manual update to v3
- v3.0.0-alpha.20September 5, 2026
Workers, and the interface re-tuned
Two things land together: the first release of self-hosted workers, and the field-and-button migration polish.
- ImprovedOn the host: Settings → Workers shows the pairing command. On the worker: VELORA_WORKER_TOKEN=… velorad --worker ws://host:8789
- ImprovedThe worker connects outbound (nothing listens on it), executes delegated nodes as single tasks in its own worktree, and ships results back as git…
- ImprovedA worker that stops answering drops out of the pool: its queued nodes return to the host and its running nodes are reported interrupted — never…
- ImprovedWorker pairing tokens are per-boot; re-pair after restarting the host daemon
- ImprovedV2 installs still need a one-time manual update to v3
- v3.0.0-alpha.19September 4, 2026
Missions that span machines
Stage 5's completion: the mission room now reaches past this Mac.
- ImprovedMembership and roles live in Supabase with row-level security keyed to your signed-in account: owners manage, maintainers and contributors write,…
- ImprovedThe realtime channel is private: your access token is checked against those same policies on join, and re-supplied when refreshed. Your token…
- ImprovedRemote members' comments arrive into the same mission thread, keeping their author — provenance is the point
- ImprovedRequires signing in (the room relay is the first account-powered feature). Signed-out rooms keep working locally exactly as before
- ImprovedSchema 13 (comments) is unchanged; rooms live in Supabase, not SQLite
- v3.0.0-alpha.18September 4, 2026
A calmer interface
The redesign pass. Same Velora, same brand — a lot less noise.
- ImprovedThe shell split up. App.tsx hosted the entire Tasks, Agents, Approvals, Usage, and Projects surface in one 1,213-line file. The shell is now 58…
- ImprovedMissions became tabbed. A mission card used to stack its room, the agreed plan, and the prototype comparison vertically — five full panels in one…
- ImprovedDenser, in the good way: panel padding 13/16px (was 17/19), controls 30px, sections 24px apart. More of the work fits on screen
- ImprovedPage titles dropped from 30px to 17px. Velora is a tool, not a landing page; the loud header treatment is gone from every screen
- ImprovedThe sidebar reads like a sidebar: 28px rows, smaller primary button, uppercase group labels (Build / Design / Set up / Safety / Settings)
- v3.0.0-alpha.17September 4, 2026
The mission room, and releases that need no Actions minutes
Stage 5's first slice, built entirely on local ground, plus a release path that works even when GitHub Actions cannot.
- ImprovedPresence — what every agent in the project is doing right now, drawn from live tasks rather than stale badges
- ImprovedA comment thread with provenance: each comment keeps its author, its body, and the agents it addressed. One person writes as themselves today; the…
- ImprovedA composer whose @mentions are functional, not decorative: naming an agent (@codex, @claude-code, @team) delivers the comment as steering to that…
- ImprovedSchema migrates in place to version 13 (comments). No data is touched
- Improved60 tests in the daemon suite (2 new: mention-steering delivery, and comment-without-target retention), 425 in core, 110 in runtime
- v3.0.0-alpha.16September 4, 2026
Honest gates, sighted crews
The two items flagged at the end of last session, both closed.
- ImprovedRegistry reachable → the real audit runs and its verdict is inherited unchanged. A found advisory still fails the build
- ImprovedRegistry unreachable → the step skips loudly: a ::warning:: annotation on the run, and a line in the step summary saying the tree was not cleared.…
- ImprovedThe mission's binding constraints lead, labelled as binding, when the run belongs to a mission;
- ImprovedProject memory, when the project has memory on;
- ImprovedThe open findings, mission-scoped when there is a mission
- v3.0.0-alpha.15September 4, 2026
Build both, then decide from what came out
Two people proposing different architectures usually gets resolved by argument, and the more senior person wins. Both can simply be built.
- ImprovedAn approach that did not finish has not lost. If one run fails, every row reports what exists and no row names a leader, with the reason it…
- ImprovedA run that verified nothing has no result under checks failed, rather than zero. Zero failures reads as a clean run, which is the opposite of what…
- ImprovedA tie leads nobody. A row where both are equal separates nothing, and marking both as leading reads as though it did
- v3.0.0-alpha.14September 4, 2026
What the mission agreed to, and what you missed
A mission is more than its objective sentence, and coming back to six hours of overnight work is only useful if the first thing you see is what is blocked on you. This release adds both.
- NewWhat this mission agreed to
- v3.0.0-alpha.13September 3, 2026
Crews that hold their word, hooks that fire
Stage 3 of the roadmap, finished honestly: what a crew member declares is now what actually happens. Plus the missing half of hooks — they were registrable and editable, and now they run.
- ImprovedA member with a tool allowlist is refused anything outside it, by name
- ImprovedA read-only member cannot run tools that change things — write, destructive, privileged — whatever the permission preset allows. Reads and browser…
- ImprovedA member's budget becomes that task's spending cap, governed by the same ask / wait / stop machinery as a mission budget
- ImprovedBefore.tool gates every model-initiated tool call — a blocking hook's refusal cancels the call before anything executes;
- ImprovedBefore.file.write / after.file.write fire per written path, so a formatter or a protected-path gate works;
- v3.0.0-alpha.12September 3, 2026
Routing and fallback chains
Stage 2 of the roadmap: Velora's model neutrality stops being a dropdown and becomes a routing layer. This is the release where "Codex hits quota, work moves, nothing is lost" becomes a fact.
- ImprovedCrew members pinned to "Velora Auto" no longer crash at session start ("Unknown provider: auto")
- ImprovedThe harness/model backend rule documented in alpha.11 is now actually enforced where fallbacks move work
- ImprovedSchema migrates in place to version 10 (model groups, routing outcomes). No data is touched
- Improved361 deterministic tests pass, up from 324. The new suites are keyed to the specification's own routing identifiers (R-001…R-008, F-006)
- ImprovedV2 installs still need a one-time manual update to v3; the updater formats are incompatible
- v3.0.0-alpha.11September 3, 2026
Read the setup you already have
Velora can now read the AI setup you already have, connect to the services you already use, and check its own work against a baseline. The account moved to where every desktop app puts it.
- ImprovedThe same skill reachable through two tools is recognised as one skill, by hashing its instructions rather than its directory
- ImprovedThe same MCP endpoint configured in two tools becomes one Velora connection, so every agent shares it
- ImprovedNothing is trusted because it was found. A discovered hook is a command another tool runs automatically, so anything beyond a recognisable…
- v3.0.0-alpha.10September 3, 2026
Crews, workflows, automations, hooks
Velora stops being one loop you configure and becomes a system you compose: who does the work (crews), when and in what order it happens (workflows), what makes it start (automations), and what always happens regardless (hooks).
- ImprovedA member pinned to an agent that is not connected is a warning. Velora Auto routes around it, so the crew still runs
- ImprovedA read-only member holding a tool that can change things is an error that blocks activation. A reviewer that can rewrite what it reviews is not an…
- ImprovedConditions branch on recorded facts, never on model prose. "Did verification pass" reads the verification record. A workflow that branched on an…
- ImprovedCycles drawn with edges are rejected. Repetition is expressed with a loop node, which cannot exist without an iteration limit. That is the…
- ImprovedA run that fired late because the machine was asleep says so, and names the time it was scheduled for. A 2 AM sweep that starts at 9:12 is not a…
- v3.0.0-alpha.9September 3, 2026
Supabase account sign-in for macOS
The signed macOS build now embeds the Supabase publishable configuration at build time, so apps launched from Finder can use the Velora account email-code flow. The publishable key is supplied only through the macOS release secret;…
- NewSupabase account sign-in for macOS
- v3.0.0-alpha.8September 2, 2026
A calmer desktop surface, with every action accounted for
The Velora desktop overhaul makes the app feel native on macOS, gives every provider a deliberate identity, and makes mutations recoverable instead of silent. Existing v3 installs can receive the signed build through the in-app updater after the public release finishes publishing.
- ImprovedReserved space for macOS traffic lights and kept the Velora mark clear of native window controls
- NewAuthentic provider identities for Velora Auto, Codex, Claude, Gemini, OpenCode, Antigravity, and mapped custom APIs
- ImprovedGrouped Agents by readiness with complete status, metadata, diagnostics, and responsive connection setup
- NewShared action feedback with progress, duplicate-click prevention, success confirmation, and persistent recoverable errors
- ImprovedAsync confirmations stay open while busy and preserve form state when a mutation fails
- ImprovedSettings now groups Account & Updates, App & Appearance, Connections & Security, and System with the exact build version
- v1.2.0August 26, 2026
Release Captain turns an outcome into a verified release packet
Release Captain inspects GitHub, plans parallel fixes in isolated worktrees, runs release gates, and pauses before landing or publishing. The desktop release also hardens offline sign-in state, platform detection, and the monochrome mountain workspace.
- NewRelease Captain workflow with GitHub CLI preflight
- NewVersioned run receipts and routing contracts
- NewExplicit signed-out, remembered-offline, refreshing, authenticated, and re-authentication states
- ImprovedUpdated the desktop and website release surface to macOS-only
- ImprovedUpgraded the website to Next.js 16.3.3 and React 19
- v1.1.2August 19, 2026
The hero stays readable, and the range sits where it belongs
The mountain range now lives in the lower band of the homepage so the headline and download buttons stay in the sky. Velora 1.1.2 for macOS is the matching desktop release.
- NewVelora 1.1.2, delivered to existing Mac installs through the in-app update banner
- FixedPinned the homepage night range below the headline and call-to-action buttons
Was this documentation helpful?
Tell us what is missing