The system of record
for software evolution

Concurrent software state with browser authentication for people and scoped credentials for automation.

Live Seeyon Chat OAuth + CI auth
Fix invoice total rounding
02 / 145

Fix invoice total rounding

Render a deterministic total before invoice_state is committed, instead of rounding after integration.

Activity

  1. Cx

    agent:codex submitted Change chg_8291 from workspace wrk_01928 · 2min ago

  2. CI

    ci:jenkins-prod published Evidence unit-tests 341 tests passed · 2min ago

  3. Sc

    validator:security published Evidence security-scan · 1min ago

  4. In

    integrator:master compared-and-swapped refs/heads/master abc123def456 · just now

Converge integrator

Policy satisfied. Three required Evidence records passed.

CAS succeeded. New snapshot snp_01JAC.

Git HTTP + JSON CLI SSH SQLite OpenTelemetry

A new species of source of truth. Purpose-built for concurrent coding agents, Converge replaces pull requests with atomic state transitions.

FIG 0.2

Immutable snapshots

Every agent starts from a frozen software state. Master is a pointer. The work is the snapshot.

FIG 0.3

Concurrent agents

Many machines, one authoritative line. Overlap is reported. Nothing is locked. Conflicts are normal.

FIG 0.4

Atomic integration

Compare-and-swap on the ref. Evidence required. Provenance retained. No silent merge.

Coordinate software the way agents actually work

Seven primitives. No dashboards, pull requests, or review threads. The transition is the product.

1.0 Model
Created 4

chg_8294

Normalize webhook retry backoff

policyCx

chg_8293

Tighten snapshot archive cache headers

httpCI
Validating 3

chg_8291

Fix invoice total rounding

buginvoiceCx

chg_8288

Reject forged CI evidence

authSc
Ready 2

chg_8276

CAS master only through Integration

coreIn

chg_8271

Expire workspace refs after submit

gitCx
Integrated 53

chg_8210

Default branch is master

repo

chg_8204

JWT claims for delegated_by

auth

Every actor has a verifiable principal

People sign in through Seeyon Chat. Agents, CI, validators, and integrators use scoped, revocable credentials. Every transition records identity, delegation, task, and credential provenance.

2.0 Principals
Capabilities
  • repo:payment-service:repo.readgranted
  • repo:payment-service:workspace.creategranted
  • repo:payment-service:change.creategranted
  • repo:payment-service:evidence.writeci only
  • repo:payment-service:ref.updatedenied
  • repo:payment-service:integration.executeintegrator
Delegation chain
  1. Zh
    human:zhang

    delegates TASK-8291

  2. Cx
    agent:codex:session-38192

    produces Change chg_8291

  3. CI
    ci:jenkins-prod

    attaches Evidence on commit def456

  4. In
    integrator:master

    atomically updates the authoritative ref

Proof attaches to the change, not the branch

CI fetches an exact immutable commit. Evidence is typed, capability-controlled, and required by policy before integration.

3.0 Evidence
TypeNameProducerStateSummary
testunit-testsci:jenkins-prodpassed341 tests passed
buildbuildci:jenkins-prodpassedlinux-amd64 12.4s
lintgolangcici:jenkins-prodpassed0 issues
securitysecurity-scanvalidator:securitypassedno secrets
policyrequired-evidenceintegrator:masterpassedready to integrate

Master moves only if it has not moved

Integration is compare-and-swap. A stale base is a 409, not a merge conflict to be papered over. Agents rebase, re-validate, and retry.

4.0 Integrate

Agent A

chg_100

A → B

base abc123

Waiting

refs/heads/master

abc123
awaiting integration…

Agent B

chg_101

A → C

base abc123

Waiting

Git for objects. Converge for state.

Agents already have a filesystem and Git. The CLI does not wrap clone, commit, or rebase. It manages the remote concepts Git does not understand.

5.0 CLI
converge — payment-service
$ converge auth login
Logged in as human:oauth:fLDfjVMvEuOLc0wOcmEmYzeI.

$ converge --json snapshot resolve payment-service master
{
  "id": "snp_123",
  "repository": "payment-service",
  "commit": "abc123"
}

$ converge --json workspace create payment-service --base snp_123 --task TASK-8291
{
  "workspace": { "id": "wrk_01928", "status": "active" },
  "ref": "refs/workspaces/wrk_01928"
}

$ git push origin HEAD:refs/workspaces/wrk_01928
$ converge change submit payment-service --workspace wrk_01928 --commit def456 --intent "Fix invoice rounding"
$ converge integrate payment-service chg_8291 --target master --expected abc123
{
  "integration": "int_19382",
  "previous": "abc123",
  "current": "def456",
  "snapshot": "snp_01JAC"
}

The canonical agent protocol

Resolve an immutable snapshot. Work locally with Git. Submit a Change. Attach Evidence. Integrate with compare-and-swap.

  1. 01
    Resolve master

    Pin work to a Snapshot ID, never a moving branch name.

  2. 02
    Create a workspace

    One agent, one task, one frozen base. Working sets are advisory.

  3. 03
    Edit with Git

    Clone, checkout the commit, commit locally. Converge does not wrap this.

  4. 04
    Submit a Change

    Base + result + intent + principal. The unit of evolution.

  5. 05
    Publish Evidence

    CI and validators write proof against the exact result commit.

  6. 06
    Integrate

    Atomic CAS. On conflict, rebase onto the new snapshot and retry.

A deliberately small machine

One binary. System Git. SQLite. OpenSSH. No Kubernetes, no custom Git server, no AI inside the core.

Stack

  • Go · net/http · JSON
  • System git executable
  • Bare repos on local disk
  • SQLite in WAL mode
  • Seeyon OAuth for people
  • Scoped service tokens for CI
  • OpenSSH certificates for Git

Design envelope

  • 10,000 repositories
  • 1,000 active agents
  • 100,000 changes / day
  • p95 metadata < 100ms
  • p95 ref transition < 250ms

Not in V1

  • Web UI, PRs, comments
  • CI runners or scanners
  • AI generation or review
  • Kafka, Redis, gRPC
  • Distributed database

Built for agents.
Available today.

Install the checksum-verified CLI, then run converge auth login. Your selected server is saved after browser authentication.

Windows x64 .exe Read the docs View the CLI