Physical repositories
Each source repository remains durable and owns a distinct path in Home.
Vex gives separate physical repositories a shared Home checkout, then uses stacked Changes and Jujutsu to coordinate reviewable work inside each component.
Flat checkout + repository-routed submission · Component-scoped landing
Register repositories under non-overlapping Home paths. Vex records their selected bookmarks in a versioned manifest and resolves one flat working copy for the team. Each path still knows its owning physical repository.
Home creates one working view; it does not copy every repository into one physical store.
Explore repository federationapps/web← web @ mainservices/api← api @ mainservices/worker← worker @ mainapps/web/
services/api/
services/worker/Submit edits by path

Running product
The federation registry keeps Home and jj separately addressable while making their relationship and external GitHub identity explicit.
This screen proves registered federation state, not aggregate cross-repository landing.
/vex/repos
Vex organization · 11 Aug 2026
Each source repository remains durable and owns a distinct path in Home.
Home records each repository, its checkout path, and the bookmark or version to resolve.
vex clone <org>/home resolves the manifest into one Vex and Jujutsu working copy.
Vex groups edited files by owning repository and creates one child revision in each.
Vex groups Home edits by their owning repository. It creates one public aggregate Change for the cross-path submission and one child revision in each repository, preserving project attribution in Home history. The aggregate is reviewable, while landing stays scoped to each component.
A Vex Change keeps its identity while patchsets evolve. The source graph records its dependencies, so reviewers can follow each piece and Vex can check every required Change before landing within one repository.
Explore stacked Changes
Running product
Grouped Changes expose stable positions and status for each member without collapsing the chain into one giant diff.
The shown stacks are scoped to individual repository components.
/vex/changes?view=stack
Vex organization · 11 Aug 2026
Each Jujutsu change gets a stable Vex identity and patchset history as its code evolves.
The graph records what depends on what without branch-name or PR-target conventions.
Within one component, Vex checks review, policy, CI, freshness, and required ancestors.
Jujutsu is a change-based source-control system. Vex maintains its own fork and hosted backend. That lets repository state, durable Change identity, dependencies, review, and landing policy share one model while Git remains an access path.
This is an architecture claim. We are not claiming the fork is categorically faster or safer than upstream Jujutsu.
Explore Jujutsu in Vex
Local to hosted
The local graph and hosted review share one durable Change identity instead of reconstructing it from a branch later.
This is architecture proof, not a performance comparison with upstream Jujutsu.
Ghostty · vex log + vex change show '#625'
Vex organization · 11 Aug 2026
Set up supported coding agents, navigate the native change graph, open Dash, capture scrubbed Agent Context, and expose repository-aware MCP tools from the same Vex binary.
Explore the Vex CLI›vex setup --with-mcp --with-agent-checkpointsSkills · MCP · Agent Context›vex log -r '::@' --limit 4Native change graph›vex dash --infra · vex deploy logs --app my-appServices · deploys · live logs›vex agent-checkpoints doctorProject-local session capture›vex mcp initRepository-aware tools for agentsOne binary
Use text commands for automation, open Dash when state becomes spatial, and expose the same repository model to supported coding agents through MCP.
05 / Merge Queue
Put Changes and stacks through one ordered pipeline. Vex builds the exact candidate, records required checks, and reconciles followers whenever the durable queue prefix changes. GitHub-primary targets can admit plain pull requests under their stricter sequential boundary.
Explore the Merge Queue06 / Agent Transcripts
Capture supported coding-agent sessions, screen known sensitive patterns before upload, and bind the authorized record to the exact Change for review, History, and a bounded handoff.
Explore Agent TranscriptsA platform or DevEx lead can validate the federation model without moving every repository. Vex assists with registration; your team verifies cross-path source and routing, then validates review and landing inside one component.
Register two physical repositories under separate Home paths.
Clone <org>/home and verify files plus project-attributed history.
Edit one Home path and verify the revision appears in its owning repository.
Create, review, and preview landing for two dependent Changes inside one component.
Excluded from success criteria: aggregate cross-repository landing. The current service rejects that operation.
Optional routing-only check: edit both Home paths and inspect the aggregate Change plus each repository-local child revision. Do not treat aggregate landing as a pilot outcome.
Before expansion, validate access, compliance, support, pilot terms, two-way sync, and rollback with the Vex team as part of the pilot plan.
Available / assisted
Physical repository federation, Home checkout, history attribution, and owner-routed submission
Operating scope
Hosted source, durable Changes, dependency-aware review, the ordered Merge Queue, and commit-bound Agent Transcripts for supported harnesses
Pilot scope
GitHub coexistence, pull-request projection, and two-way sync that must be proven per pilot
Verifying
Native Vex CI runners and the documented GitHub Actions compatibility subset
Product direction
Federated aggregate landing, atomic cross-repository landing, and a unified build or dependency graph