One operations console
- One dashboard, organised by trains, machines and schedules
- An overview that starts with what needs attention
- A picture of every state machine
- Works where persisted operations are required
Roadmap
Sketch, not final
$ trax deploy plan --env production $ trax deploy --env production $ trax deploy --target compose
Sketch, not final
$ trax generate --schema ./shop-api.yaml \
--auth jwt --database postgres \
--tables Product,Order --output ./ShopOctober 2026 · 1.67
query OrderCard($input: FindOrderInput!) {
discover {
findOrder(input: $input) { title customer { name } }
}
}
$ trax client --manifest web/src/trax/manifest.json --out web/src/trax \
--documents 'web/src/**/*.graphql'October 2026 · 1.65
m.In(OrderState.Packing)
.Spawns<ParcelMachine, OrderContext, ParcelResult>(c => c.ParcelId)
.OnDone(OrderState.Sent)
.OnFailed(OrderState.Lost)
.OnCancelled(OrderState.Recalled);October 2026 · 1.64
$ trax client --target react --manifest web/src/trax/manifest.json --out web/src/trax
configureTrax({ url, socketUrl, user });
const checkout = useRememberedCheckout();
checkout.send("Submit", { address });October 2026 · 1.63
mutation {
machines {
checkout {
submit(id: $id, input: { address: $address }, requestId: $req) {
state
context { total }
}
}
}
}
subscription {
machineChanged(machine: "checkout", id: $id) { state revision }
}October 2026 · 1.62
Chain<LoadCorpus>()
.Parallel(p => p
.Branch("embedding", b => b.Chain<EmbeddingSimilarity>())
.Branch("cocitation", b => b.Chain<CoCitationOverlap>()))
.Chain<CombineSignals>()
.Resolve();
m.In(Partition.Ingesting)
.Invokes<IIngestPartitionTrain, IngestInput, IngestOutput>(ctx => new IngestInput(ctx["source"]!.GetValue<string>()))
.OnDone(Partition.Ingested)
.OnFailed(Partition.Failed)
.OnCancelled(Partition.Cancelled);October 2026 · 1.60
September 2026 · 1.57
July to September 2026 · 1.52
June 2026 · 1.41
May 2026 · 1.38
April 2026 · 1.32
March 2026 · 1.30
March 2026 · 1.28
March 2026 · 1.27
March 2026 · 1.24
February 2026 · 1.0