One platform. Three parts.
Xorq records what your agents do as verified, reusable work; runs each piece once; and executes it on whatever engine holds the data. Each part stands on its own. Together they are how a number gets from an agent to a board pack with its proof attached.
Every question an agent answers becomes a named, versioned entry: the expression, the result, the lineage, and who approved it. The next agent starts from verified work instead of a blank prompt.
Results are keyed on the expression and the source versions that produced them. A repeated question replays from the cache; when a source changes, only what depends on it recomputes.
Write the definition once. Xorq compiles it to whichever engine holds the data, moves only the aggregates a step needs, and records one entry no matter where it ran.