veil
Veil product referencev0.3.0 / public beta / local-first

01 / foundations

Private work is easy. A safe path out is the product.

A local clone is already private until you push it. Veil makes one unfinished result durable and verifiable without putting it on a public Git ref.

Private workspace boundary
01Open
02Work
03Check
04Publish

Only publication crosses into public Git.

The important distinction

Veil does not make git clone private. It already is.

Your unpushed files, commits, and local branches are not visible on GitHub. Veil adds a managed, durable boundary for pre-publication work, independent checking, and deliberate publication without requiring a public fork or intermediate branch.

End-to-end workflow

One path from public base to approved result.

Open

Validate a public GitHub URL or clean local GitHub checkout, pin an immutable base commit, and create an encrypted private context.

Work

Edit the managed workspace yourself or use a coding agent to work on the current result.

Capture & check

Manual capture or agent completion seals one current result, evaluates its pinned recipe when configured, and otherwise labels it unchecked; check shows its diff, provenance, status, and gates.

Publish

Re-evaluate a configured recipe, scan the patch, enforce the result's verification status, then export it or create a dedicated draft pull request after confirmation.

Publication boundary

Nothing appears on GitHub until publication succeeds.

Cloning or opening a repository, editing, running a coding harness, and verifying all remain local. A branch or pull request appears on GitHub only after Veil pushes its dedicated veil/* branch; on a public upstream, that published branch and pull request are public. Patch export writes a local file and performs no remote action.

Command-scoped Runner

One action, one short-lived process.

Each CLI, editor, MCP, or Codex-plugin action discovers the encrypted context, acquires a writer lease, performs one operation, flushes state, and exits. There is no local server or background daemon to start, pair, or keep alive.