Product preview

Version control for the age of AI agents and humans.

Capability-scoped agents with provenance on their work, change IDs that survive history rewrites, and cryptographic per-file permissions — one system for how software actually ships now. Scroll to watch a change move through it.

Product preview · Public access is not open yet. Release status

Apache-2.0 engine, CLI, SDKs & spec
Commercial Forge · Rust core

01 · The change model

Every edit becomes a change with a durable identity.

The working copy auto-snapshots into a chg: — a random, stable ID that survives amend, rebase, absorb, and landing under supported profiles.

Why it mattersReview threads and automation attach to the work itself, not a commit hash that changes when you rewrite history.

02 · Permissions

Per-file cryptographic permissions.

Protected paths are encrypted at snapshot, before they reach storage — content keys wrapped only to authorized recipients.

Why it mattersAn unauthorized repository copy can hold the protected snapshot contents and still hold only ciphertext. Access requires the corresponding content keys.

03 · Agents

Capability-scoped automation.

Agents get expiring, delegable tokens bounded by repository, path, lane, operation, and secret clearance — a fleet on parallel lanes, provenance on their work.

Why it mattersRun a fleet without sharing human credentials. TOVIO checks authority on the operations it mediates; other tools and exposed plaintext need their own isolation.

04 · Resolve & scale

Conflicts are data. Binaries are first-class. The network is optional.

Merges can produce typed, durable conflict objects; FastCDC gives large binaries the same verified path as source; commit, inspect, and merge with no server.

Why it mattersKeep unresolved work inspectable, version assets without a separate LFS system, and keep local work independent of a server.

Follow one change in detail
tovio.
tovio — change sessionSIMULATED EXAMPLE

$ tovio policy show secrets/prod.env

policy · secrets/** · read: role=release

$ tovio agent list

checkout-assistant · scoped lane · 1h remaining

One system. Follow the change.

Give the agent a task.
Draw the boundary.

Delegate the checkout task with explicit paths, operations, and a time limit. The change records who acted and under whose authority.

Explore agent access
checkout-assistantInteractive example · simulated
Your taskUpdate the checkout interface.
src/checkout/
Checkout.tsxread / write
checkout.test.tsread / write
finance/forecast.csv
Protected snapshot contents are encrypted.
Granted scopesrc/checkout/**Operationsread · writeLane / lifetimeagent/checkout · 1 hour
Try the boundary
Allowedwrite src/checkout/Checkout.tsx

Inside the active scope. The change can be recorded.

Refused · outside scoperead finance/forecast.csv

The requested path is outside the agent’s grant.

Refused · capability expiredwrite src/checkout/Checkout.tsx

The path matches. The authorization has expired.

chg:9fk2m1checkout-assistant · authorized by you
Where does this boundary apply?

Scope governs TOVIO-mediated operations. Unrelated tools and working-copy plaintext need separate isolation. File policy controls encryption; a grant alone does not unlock protected content.

Read the trust model

Amend the code.
Keep the thread.

Refine a change without losing its identity. The commit hash changes; the Change ID stays with the work through supported rewrites.

Meet the change model
Same task. Updated snapshot. Illustrative identifiers
First snapshotblake3:8ca9…
amend
Amended snapshotblake3:2e61…
chg:9fk2m1Same change. Same review thread.
Skip staging.Edit → inspect → commit
Shape the work.Amend · split · absorb
Recover locally.Undo supported, retained operations

Review the change.
Follow its impact.

Go beyond changed lines. See exported symbol changes, breaking-interface advisories, and the recorded callers and tests to review next.

Explore semantic review
checkout-interfaceIllustrative analysis

Code edit

TypeScript
src/checkout/total.ts
export function
− calculateTotal(items)
+ calculateTotal(items,
+   currency)

Semantic diff

Interface change
$ tovio semantic diffChanged (breaking)~ calculateTotal(). (signature)Exported interface · advisory

The exported function now requires a currency argument.

Impact analysis

Recorded graph
$ tovio semantic impact
Changed symbolcalculateTotal().
Recorded caller · 1 hopCheckout#submit().src/checkout/form.ts
Recorded covering testtest:"calculates checkout total"checkout.test.ts

Rust · TypeScript / JavaScript · Python · Go. Relationships are extracted syntactically and may be incomplete. This analysis does not run tests or prove correctness.

Two changes collide.
Neither gets lost.

TOVIO keeps the common base and both sides in a first-class conflict object. The disagreement becomes versioned data you can inspect, sync, and resolve while independent work continues.

Explore conflicts as objects
src/checkout/retry.tsIllustrative conflict · content

Common base

TIMEOUT = 30

Our change

chg:9fk2m1
TIMEOUT = 60

Their change

chg:4e1a08
TIMEOUT = 90
Unresolved

One conflict object.

Base + both sides preserved.
The decision stays yours.

Resolve it. Record the decision.

Choose a side or record a hand-merged result. Matching conflicts can reuse the recorded resolution.

Example · explicitly keep our side
tovio resolve src/checkout/retry.ts --ours
Recorded choice: TIMEOUT = 60

Code. Models. Media.
One history. No LFS.

Your project is bigger than its source code. Store large binary assets in the same versioning system, with the same integrity checks.

See how binary storage works
One repository · source + binaryIllustrative project
.tsxSource codeCheckout.tsx
.glb3D assetsproduct-scene.glb
.wavAudio & mediacheckout.wav
.safetensorsModel weightsmodel.safetensors
One verified object pathFastCDC chunks BLAKE3 addresses verified reads

Native binary storage. No pointer files, smudge filters, or separate LFS server.

Reuse unchanged chunks. Content-defined chunking deduplicates across revisions; results depend on the file format.

Keep edits coordinated. File locks support assets that cannot be meaningfully merged.

Your AI agent’s transcript.Saved with the change.

Keep the request, recorded conversation, and tool activity alongside the code. The next reviewer gets the context behind the diff, without tracking down a separate chat.

Explore agent transcript capture
chg:9fk2m1Checkout timeout
Illustrative change + transcript

The code change

src/checkout/retry.ts
- const TIMEOUT = 30;+ const TIMEOUT = 60;  const RETRIES = 3;

Did the agent follow the request?

A reviewer sees the timeout change, then checks it against the captured instruction: raise the timeout and leave retries alone. The transcript gives them the context to ask the right question.

The saved transcript

Observed capture
Unattested · self-reported
  1. YouThe request

    Increase checkout’s timeout to 60 seconds. Keep the retry count unchanged.

  2. ToolRecorded activity
    read src/checkout/retry.ts
  3. AgentRecorded response

    Updated TIMEOUT to 60. RETRIES stays at 3.

Captured transcripts are review context, not proof of execution or code correctness. They do not reveal hidden model reasoning.

Capture settings and privacy

Repository policy governs capture. The current observed-capture path defaults to full capture unless configured or pinned otherwise. Disable it with tovio config set provenance.observed_capture off, or use --no-session to skip capture for a commit. Organization policy pins take precedence.

Transcripts may contain sensitive content. Review what is captured before syncing or sharing it. Supported built-in formats include Claude Code, Codex, and TOVIO’s neutral open-transcript format; available content depends on the source.

Make the case
for your team.

Developers need a workable daily loop. Businesses need clear access, ownership, and operating choices. Evaluate both.

Who can access our IP?

File policy encrypts protected snapshot contents. A repository copy alone does not grant the content keys.

Inspect the trust model

Can we own the foundation?

Apache-2.0 engine, CLI, SDKs, and specification. Commercial Forge collaboration, with a documented on-premise path.

Understand the licensing

What would adoption change?

TOVIO is a new VCS. Compare the workflow, Git bridge limits, deployment options, and pricing before planning a pilot.

Compare the workflow
Your Git repositoryExisting tools + remotes
ImportOne-time migration
Two-way bridgeOngoing exchange
ExportBack to a fresh Git repo
Your TOVIO repositoryNative changes + lanes
The bridge uses separate branch namespaces and explicit reconciliation, with no force-pushes. Protected files export as ciphertext.

Evaluate one project.
Keep your options.

Bring your history into TOVIO, export to a fresh Git repository, or keep a mixed team working through the two-way bridge.

Compare the Git migration paths

Public source and downloads are not available yet. Use the guide to plan an evaluation for when access opens.

CLI · MCP · Node SDK · VS Code · JetBrainsIntegration details & publication status

Built for scale at the edge.
Built for agent fleets.

TOVIO Cloud is edge-native by design. The hosted Forge architecture brings TOVIO’s versioned objects and authorization contracts to Cloudflare’s global network, rather than putting the on-premise server in one region.

Incoming work can distribute across the network as people and agents collaborate on parallel lanes. Shared repository state still follows coordinated paths for locks, reference updates, proposals, and audit ordering.

Cloud preview · Managed hosting is not available yet

Explore the Cloud roadmap

Cloudflare’s global network
Provider figures · checked October 22, 2026

Network latency
~50 msTo 95% of Internet users ↗
Network capacity
500 TbpsProvisioned external capacity ↗

Cloudflare-published network figures. Latency is proximity to its edge, not application response time; capacity is provisioned bandwidth, not peak traffic or measured TOVIO throughput.

TOVIO Cloud / CloudflareArchitecture illustration · not a capacity measurement
People + agent fleetsParallel work.
Individual authority.
Cloudflare global edgeDistribute incoming work
Shared repository state
AuthorityCoordinationVerified objects
Keep the contracts
as the fleet grows.

Beyond a single application origin.

The Cloud design distributes request handling at the edge. Capacity can expand across the request surface, while explicit admission bounds govern each operation.

Strong coordination where it counts.

Locks, reference updates, proposals, and audit ordering follow coordinated state transitions. Distributed requests keep the same repository rules.

Storage that grows with the work.

Content-addressed storage separates objects from request handling. BLAKE3 verification remains part of the contract as storage capacity grows.

Parallel lanes for an agent fleet.

The same surface serves people and agents, with scoped capability checks and signed provenance. A larger fleet does not need broader authority for each agent.

Network reach & launch status

Cloudflare lists 348 cities and approximately 50 ms network proximity to 95% of Internet users. Its April 10, 2026 capacity report describes 500 Tbps of provisioned external interconnection capacity. Sources checked October 22, 2026. These are not measured TOVIO agent capacity or latency. TOVIO Cloud’s hosted parity, identity, load evidence, legal, and independent-review gates remain open; no supplier appointment or service availability is implied.

Cloudflare network · Cloudflare capacity report · Cloudflare platform limits · TOVIO release status

Find your reason
to make the change.

Start with the everyday workflow. Bring the access, deployment, and adoption questions that matter to your team.

Explore the workflowsFollow development
Is this a new VCS?

Yes. TOVIO has its own change, object, permission, and sync models. Git import and the documented bridge support evaluation and coexistence.

Does TOVIO sandbox my agent?

It checks authority on TOVIO-mediated operations. Unrelated tools and exposed working-copy plaintext need their own isolation.

What stays encrypted?

File policy determines which snapshot contents are encrypted. Authorized recipients need the corresponding wrapped content keys. A repository copy alone does not grant those keys.

Current availability Product preview

Release record ·

Public downloads
Not published
Early access
Closed
Managed hosting
Not available
Independent security review
Not complete
View release status