← All projects Applied research

T-Rax — Multi-Agent Unity Code Generation

A multi-agent graph pipeline that turns a scene description into working C# Unity code, splitting planning from code generation so each agent has one job.

Role
Sole author
Context
Applied research
Core stack
LangGraph-style graph · Python · C# / Unity
Code
master-ti-rax/xage

At a glance

T-Rax generates Unity scene logic from a high-level description. Rather than asking a single model to plan and write code in one pass, it splits the work across a graph of agents — an orchestrator, a planner, and an executor — each with a narrow responsibility and a defined handoff.

Orchestrator Planner Executor SceneLogic.cs three layered stages emits C#
The planner emits task descriptions only; the executor is the sole component that writes code.

The problem

Some things are only safe to practice in simulation: an emergency evacuation, a substation intervention, a machine changeover, a civil-protection drill. Extended-reality training works well for exactly these cases — and the organizations that need it most, from municipalities and fire services to hospitals, vocational schools and manufacturing SMEs, are the ones least able to pay for it.

How this helps

T-Rax moves scenario authoring away from the developer and toward the person who owns the procedure. The input is a structured description in natural language; the output is working C# scene logic. What sits in between is the part that matters institutionally: the planner writes down what it intends to build before anything is generated, so the plan is a document a human can read, correct, and sign off on.

Stated plainly: this is research-stage work, not something an organization can procure today. What it establishes is the shape of the answer — that scenario generation splits cleanly into a reviewable planning artifact and a mechanical code step — and that split is the part which would survive into anything built for real use.

How the pipeline is structured

The separation is the point. The planner never emits code and the executor never re-plans, which keeps failures diagnosable: a bad scene is either a planning problem or a generation problem, never an ambiguous mix of both.

Why split planning from generation

A single agent asked to both plan and implement tends to drift: it writes code that quietly diverges from what it said it would do, and there is no artifact in between to check. Forcing the planner to emit a description first creates that artifact. The plan can be inspected, and the generated C# can be judged against it.

Stack

LangGraph-style graph Python C# / Unity Mermaid / SVG docs

Links

← Gmail Assistant SmartReco →