SCHEMAXIS · Declared work. Results you can check.Documentation ↗ · Contact
schemaxis/Agent’s Hands

Local automation for engineering and creative work

Give your AI the tools.
Keep control of the work.

No remote code execution by the AI. Just declared input files.

Turn a repeatable task into a workflow. Use Schemaxis Studio yourself, or connect your AI through local MCP. Inspect the plan, run your installed applications and keep the results with their verification evidence.

In the strict interface, the AI supplies declared inputs, not arbitrary scripts or shell commands. Native applications run through the configured Schemaxis runtime.

Free Apache-2.0 core + Studio · Linux · Windows via WSL2 setup guide · Python 3.10+

DrivAer body with saved steady-field streamlines coloured by speed
Existing saved-result illustration. Schemaxis drove ParaView; HELYX ran the solver independently. Coarse, unconverged and unvalidated. This render is not hosted container-isolation evidence.
DeclareSource or generation → operations → outputs
CaptureImmutable inputs and their digests
CheckAdmission → schema → scope → budget reservation
ExecuteSealed qualified worker → output digests and receipts
InspectBounded observations and receipt content

From one task to the next

Make good work repeatable.

01 / SET UP

Install once. Choose your apps.

Download the local core and Studio. Configure the applications your workflow needs.

Get Schemaxis →
02 / DECLARE

Use Studio or your AI.

Describe the operations and values. Read the plan before running the native applications.

Follow the quick start →
03 / REPEAT

Keep the recipe and the receipt.

Inspect the checks and outputs. Reuse a workflow with new values for the next job.

Explore a workflow →

Meet Schemaxis Studio

Bring your workflow
into view.

Connect applications in Workflow Designer. Configure their operations in Adaptor Workbench. Inspect the geometry in 3D, then keep the workflow for the next job.

Work visually, write the input yourself, or let your AI help create the template.

Actual Schemaxis Workflow Designer connecting FreeCAD to Gmsh and ParaView with artifact arrows
Workflow Designer · three applications, explicit file handoffs. Current Studio preview.

Smaller models. Complex application work.

Small models.
A Schemaxis super suit.

Same models. Same ParaView task. All 110 checks passed with Schemaxis. Without it, none of these three models passed every required check. Schemaxis supplies the application contracts, workflow structure and result checks that help turn their intent into passing work.

29 September 2026 · ParaView authoring · checks passed
Model versionWithout SchemaxisChecks passed · incompleteWith SchemaxisChecks passed · all required checks
Haiku 4.522 / 110Incomplete110 / 110✓ All checks passed
Sonnet 4.622 / 110Incomplete110 / 110✓ All checks passed
GPT-5.6 Luna68 / 110Incomplete110 / 110✓ All checks passed

One conversation per model and method on a bounded ParaView task; 110 checks, not 110 independent tasks. Historical versions and results, not a general success guarantee.

Study scope, historical interface and reporting limits

Haiku 4.5’s native initial output had 32/32 images rejected, while its retained transcript called the result “production-ready”. The Schemaxis artifacts passed the required checks. The core supplies the verification state and receipt instead of relying on the agent’s success sentence. This records a misleading claim and changed artifact outcomes; it does not measure a general reduction in false-reporting propensity.

29 September 2026: one authoring conversation per model and method, older model versions, 110 checks across an initial task and revision on small, purpose-built serial ParaView fixtures. Checks are not independent tasks.

Some historical Schemaxis runs inspected implementation details or used helper code; one revision wrapper was broken despite passing artifacts. These are artifact outcomes, not qualification of the new strict no-shell authoring interface. The Opus native control was excluded after provider substitution.

Frontier-model tradeoff: frontier models passed either way in the retained paired studies, and Schemaxis was slower. The advantage shown here is enabling the smaller models.

Inspect the study data and before/after images ↗

No remote code execution by the AI

Follow the files.
Change parameters for the next job.

The template holds the operations, limits and checks. The parameter file supplies the values that vary. Together they define a job for Schemaxis. Click either file to inspect it, or change c and watch the parameter file update.

Follow the filesAI supplies files · Schemaxis coordinates the applications
AI authors files → Schemaxis coordinates the work. No remote code execution performed by the AI.
x² − 2
SchemaxisBind parameters
Check the plan
Coordinate authorised work
SymPyNative application
Root isolation

Data flow: the parameter values supply the polynomial in this example. For file-based jobs, Schemaxis captures authorised source data and passes it to the declared app operations.

sqrt2-values.jsonRetained file · read onlyDownload file ↗
Enable JavaScript to switch between files. Exact sources are linked below.

Recorded binding and planning only; application launches: 0.

What is real here, and what happens after the preview?

The exact template bundle contains template.json and its referenced workflow.json recipe. The separate parameter file selects one job. An AI can create the bundle and values; later operators reuse the bundle and change only the values. The graph groups the manifest and recipe as “Workflow Template”.

Core 68e139a bound and planned c = −2 and c = −3 without launching SymPy. The page only switches retained files or generates a local file preview. It does not contact Schemaxis, submit files, run applications, verify new results or create receipts. Execution and fresh result checks happen separately in a supported environment.

The file-template example is the self-operated core contract. The hosted strict interface has its own admission contract. This single-app example does not qualify arbitrary multi-app pipelines or a hosted template-upload endpoint.

Exact template manifest ↗ · Exact recipe ↗ · Full workflow reference ↗

Inspect before execution. Verify after it.

Inspect without the apps.
Run it. Get a receipt.

Admission, the declared schema, task scope and budget reservation are checked before execution. A request outside its authority is refused before a native job can run. Planning and inspection can run without launching the applications; native result verification is a separate step that reports the checks actually performed.

BEFORE EXECUTION

Read the work before it runs.

Inspect the workflow files, resolve inputs and check the plan without launching the native applications.

AFTER EXECUTION

The result comes with evidence.

Keep the inputs, outputs, logs, digests and verification receipt. Inspect what ran, which checks passed and which limits remain.

AdmissionSchemaScopeBudget reservation

NumPy request. SymPy-only scope.

In the retained MCP demonstration, a NumPy request under a SymPy-only scope returned SCOPE_EXCEEDED. Calls stopped at planning: zero native execution, all four prior NumPy output digests unchanged, and no successful current invocation to claim.

Inspect the retained refusal facts ↗
allowed providers: ["sympy"]
requested provider: "numpy"
fault: SCOPE_EXCEEDED
native executions: 0
previous output digests: 4 / 4 unchanged
current invocation check: not passed

Historical prepared-recipe local MCP demonstration, core 5cfe1b0. It is separate from both the comparative study and the hosted container-isolation proof.

One reviewed workflow. A family of repeatable jobs.

Build the expertise into the workflow.
Let junior staff run the next job.

Once an AI or expert creates and reviews the template and its parameter format, changing permitted values creates another job in the same workflow family. Operators can follow the reviewed process without reconstructing its application logic.

A junior operator supplies the job’s inputs and parameters; the template carries the sequence, limits and checks. This is how one template can cover a broad set of recurring jobs within its declared scope.

Reliable reuse depends on the reviewed template, its checks, authorised inputs and compatible runtimes. The retained example demonstrates binding and planning; junior-staff performance has not been measured.

Inspect the reusable workflow and parameter files ↗
HOSTED CANDIDATE.
FIVE EXPLICIT SCOPES.
ParaViewSymPyExifToolNumPyFFmpeg

First example · ParaView from saved results

Industrial geometry.
Inspectable post-processing.

Existing DrivAer and pitzDaily views, rendered by Schemaxis driving ParaView 5.13.3. Native HELYX 4.6.0 ran the simulations independently. These are saved-result illustrations, not hosted solver capabilities.

Start from the selected saved case.

The data owner supplies saved fields and a declared ParaView recipe. Inspect supported operations and the plan before rendering. This preview uses already recorded views; it does not upload geometry, create a plan for a new CFD case or run a solver.

DrivAer body with steady-field streamlines coloured by speed
Expanded selected saved result

Existing saved result · not a new simulation

Rendered 23 October 2026. DrivAer: 92,316 cells, no boundary layers, 500 iterations without meeting residual targets. The full case and private input documents are not distributed. These renders do not validate flow physics or establish hosted admission for an industrial case.

Inspect curated image hashes and provenance ↗

One template · an entire geometry sweep

Set the dimensions.
Build the entire sweep.

Start with the body and the spoiler parameters. Schemaxis creates the baseline and the 100, 200 and 300 mm chord variants from the declared inputs, then captures the same front and rear views for every case. Change the values; keep the process.

GENERATED & VERIFIED · GEOMETRY SWEEP

One declared recipe creates the plate and supports, varies the chord and renders four configurations from two matching cameras. The spoiler-free baseline omits both plate and supports.

Download the sweep recipe ↓ · Inspect the verified run →

Geometry demonstration, not a CFD comparison. The recipe requires the three body/wheel STL inputs, which are not bundled. Source geometry retains its original topology limitations.

Dimensioned side view cut at the DrivAer centreline: 200 mm spoiler chord, 12 mm plate thickness, 1200 mm span out of plane and approximately 210 mm local clearance.
The selected 200 mm variant, cut at the centreline from the actual source mesh. Dimensions and source provenance →

DECLARED INPUT GEOMETRY · GEOMETRY ONLY

Baseline · no spoiler · front quarter

Geometry only — not a fluid mesh, CFD field, force result or accepted simulation/variant run.

includeSpoiler
false · no plate or pylons
Plate chord
N/A
Plate span
N/A
Nominal plate planform
N/A · no plate

Planform = span × chord, excluding pylons; not wetted, exposed or total-device surface area.

Native-render provenance and limits

GEOMETRY_ONLY_NOT_SIMULATION_RESULTS. No spoiler: no plate and no pylons; chord/span not applicable. Genuine DrivAer body/wheels in metres, identity transform. Grey body, dark wheels; when enabled, orange plate/pylons. Common orthographic cameras. Float32 STL is a display approximation; no repair/union/topology qualification. Original body/wheel topology warnings retained. This is declared input geometry, not a fluid mesh, CFD field, force result or accepted simulation; no mesher may use these preview STLs.

Native render of genuine DrivAer body/wheels and constructed appendages; not AI-generated.

cd8bbe128f7c72f3a16fb5af39a9109535ebc6b5de60189a17f5605939393293

Download original PNG ↗

DECLARED INPUT GEOMETRY · GEOMETRY ONLY

Baseline · no spoiler · rear quarter

Geometry only — not a fluid mesh, CFD field, force result or accepted simulation/variant run.

includeSpoiler
false · no plate or pylons
Plate chord
N/A
Plate span
N/A
Nominal plate planform
N/A · no plate

Planform = span × chord, excluding pylons; not wetted, exposed or total-device surface area.

Native-render provenance and limits

GEOMETRY_ONLY_NOT_SIMULATION_RESULTS. No spoiler: no plate and no pylons; chord/span not applicable. Genuine DrivAer body/wheels in metres, identity transform. Grey body, dark wheels; when enabled, orange plate/pylons. Common orthographic cameras. Float32 STL is a display approximation; no repair/union/topology qualification. Original body/wheel topology warnings retained. This is declared input geometry, not a fluid mesh, CFD field, force result or accepted simulation; no mesher may use these preview STLs.

Native render of genuine DrivAer body/wheels and constructed appendages; not AI-generated.

c45e89e1df455b068c405e6fe557a6af2c86376bf45b2e58ae571ed2b537a65e

Download original PNG ↗

DECLARED INPUT GEOMETRY · GEOMETRY ONLY

Spoiler · 100 mm chord · front quarter

Geometry only — not a fluid mesh, CFD field, force result or accepted simulation/variant run.

includeSpoiler
true · plate and pylons
Plate chord
100 mm
Plate span
1.2 m
Nominal plate planform
0.12 m²

Planform = span × chord, excluding pylons; not wetted, exposed or total-device surface area.

Native-render provenance and limits

GEOMETRY_ONLY_NOT_SIMULATION_RESULTS. Plate chord 100 mm, span1.2 m; nominal plate PLANFORM area 0.12 m² (span×chord), excluding pylons, not wetted/exposed or total-device area. Genuine DrivAer body/wheels in metres, identity transform. Grey body, dark wheels; when enabled, orange plate/pylons. Common orthographic cameras. Float32 STL is a display approximation; no repair/union/topology qualification. Original body/wheel topology warnings retained. This is declared input geometry, not a fluid mesh, CFD field, force result or accepted simulation; no mesher may use these preview STLs.

Native render of genuine DrivAer body/wheels and constructed appendages; not AI-generated.

a3b3a5204ce6d4c02c72fb8a6d07a57126acd447e286bb1a899b36798d49d3b6

Download original PNG ↗

DECLARED INPUT GEOMETRY · GEOMETRY ONLY

Spoiler · 100 mm chord · rear quarter

Geometry only — not a fluid mesh, CFD field, force result or accepted simulation/variant run.

includeSpoiler
true · plate and pylons
Plate chord
100 mm
Plate span
1.2 m
Nominal plate planform
0.12 m²

Planform = span × chord, excluding pylons; not wetted, exposed or total-device surface area.

Native-render provenance and limits

GEOMETRY_ONLY_NOT_SIMULATION_RESULTS. Plate chord 100 mm, span1.2 m; nominal plate PLANFORM area 0.12 m² (span×chord), excluding pylons, not wetted/exposed or total-device area. Genuine DrivAer body/wheels in metres, identity transform. Grey body, dark wheels; when enabled, orange plate/pylons. Common orthographic cameras. Float32 STL is a display approximation; no repair/union/topology qualification. Original body/wheel topology warnings retained. This is declared input geometry, not a fluid mesh, CFD field, force result or accepted simulation; no mesher may use these preview STLs.

Native render of genuine DrivAer body/wheels and constructed appendages; not AI-generated.

567d38565d6a49ff584d0be48b727c833abf7b6d1b784d34ca03dc9703af93ad

Download original PNG ↗

DECLARED INPUT GEOMETRY · GEOMETRY ONLY

Spoiler · 200 mm chord · front quarter

Geometry only — not a fluid mesh, CFD field, force result or accepted simulation/variant run.

includeSpoiler
true · plate and pylons
Plate chord
200 mm
Plate span
1.2 m
Nominal plate planform
0.24 m²

Planform = span × chord, excluding pylons; not wetted, exposed or total-device surface area.

Native-render provenance and limits

GEOMETRY_ONLY_NOT_SIMULATION_RESULTS. Plate chord 200 mm, span1.2 m; nominal plate PLANFORM area 0.24 m² (span×chord), excluding pylons, not wetted/exposed or total-device area. Genuine DrivAer body/wheels in metres, identity transform. Grey body, dark wheels; when enabled, orange plate/pylons. Common orthographic cameras. Float32 STL is a display approximation; no repair/union/topology qualification. Original body/wheel topology warnings retained. This is declared input geometry, not a fluid mesh, CFD field, force result or accepted simulation; no mesher may use these preview STLs.

Native render of genuine DrivAer body/wheels and constructed appendages; not AI-generated.

d811c69e607027f5cd1735cd8d728d5aa8fbe02c834f20916d0707ad186062fd

Download original PNG ↗

DECLARED INPUT GEOMETRY · GEOMETRY ONLY

Spoiler · 200 mm chord · rear quarter

Geometry only — not a fluid mesh, CFD field, force result or accepted simulation/variant run.

includeSpoiler
true · plate and pylons
Plate chord
200 mm
Plate span
1.2 m
Nominal plate planform
0.24 m²

Planform = span × chord, excluding pylons; not wetted, exposed or total-device surface area.

Native-render provenance and limits

GEOMETRY_ONLY_NOT_SIMULATION_RESULTS. Plate chord 200 mm, span1.2 m; nominal plate PLANFORM area 0.24 m² (span×chord), excluding pylons, not wetted/exposed or total-device area. Genuine DrivAer body/wheels in metres, identity transform. Grey body, dark wheels; when enabled, orange plate/pylons. Common orthographic cameras. Float32 STL is a display approximation; no repair/union/topology qualification. Original body/wheel topology warnings retained. This is declared input geometry, not a fluid mesh, CFD field, force result or accepted simulation; no mesher may use these preview STLs.

Native render of genuine DrivAer body/wheels and constructed appendages; not AI-generated.

b4b40549a81d1eab55439cc896b021da6f50ae0e2f2cce2111ff8a62455218fb

Download original PNG ↗

DECLARED INPUT GEOMETRY · GEOMETRY ONLY

Spoiler · 300 mm chord · front quarter

Geometry only — not a fluid mesh, CFD field, force result or accepted simulation/variant run.

includeSpoiler
true · plate and pylons
Plate chord
300 mm
Plate span
1.2 m
Nominal plate planform
0.36 m²

Planform = span × chord, excluding pylons; not wetted, exposed or total-device surface area.

Native-render provenance and limits

GEOMETRY_ONLY_NOT_SIMULATION_RESULTS. Plate chord 300 mm, span1.2 m; nominal plate PLANFORM area 0.36 m² (span×chord), excluding pylons, not wetted/exposed or total-device area. Genuine DrivAer body/wheels in metres, identity transform. Grey body, dark wheels; when enabled, orange plate/pylons. Common orthographic cameras. Float32 STL is a display approximation; no repair/union/topology qualification. Original body/wheel topology warnings retained. This is declared input geometry, not a fluid mesh, CFD field, force result or accepted simulation; no mesher may use these preview STLs.

Native render of genuine DrivAer body/wheels and constructed appendages; not AI-generated.

1ca0ffb25343c9fb9a5e375482e5ab5e5fe83ad2fd59e9163f2a6b2e4f319d9e

Download original PNG ↗

DECLARED INPUT GEOMETRY · GEOMETRY ONLY

Spoiler · 300 mm chord · rear quarter

Geometry only — not a fluid mesh, CFD field, force result or accepted simulation/variant run.

includeSpoiler
true · plate and pylons
Plate chord
300 mm
Plate span
1.2 m
Nominal plate planform
0.36 m²

Planform = span × chord, excluding pylons; not wetted, exposed or total-device surface area.

Native-render provenance and limits

GEOMETRY_ONLY_NOT_SIMULATION_RESULTS. Plate chord 300 mm, span1.2 m; nominal plate PLANFORM area 0.36 m² (span×chord), excluding pylons, not wetted/exposed or total-device area. Genuine DrivAer body/wheels in metres, identity transform. Grey body, dark wheels; when enabled, orange plate/pylons. Common orthographic cameras. Float32 STL is a display approximation; no repair/union/topology qualification. Original body/wheel topology warnings retained. This is declared input geometry, not a fluid mesh, CFD field, force result or accepted simulation; no mesher may use these preview STLs.

Native render of genuine DrivAer body/wheels and constructed appendages; not AI-generated.

8b605ffabaac98dc7e5f1a8cc78e542e03823b8b33aca4362fec779bc08089ba

Download original PNG ↗

DECLARED INPUT GEOMETRY · GEOMETRY ONLY

Declared geometry input

Declared geometry input — not a simulation result

Geometry only — not a fluid mesh, CFD field, force result or accepted simulation/variant run.

Second example · SymPy

Exact roots.
A repeatable recipe.

The same declared root-isolation workflow can be bound to new exact-rational coefficients. The picture is a mathematical illustration; the file explorer above includes real host-preflight records, not a new native run.

Graph of x squared minus two with roots labelled minus and plus square root of two
Mathematical illustration of x² − 2. Decimal labels are explanatory; the declared SymPy route returns exact rational isolating intervals, with an independent certificate.

Plan · illustrative

Agree the work before it runs.

Discover the admitted operation, declare inputs and bounds, then inspect the plan and its revision. A valid plan is permission to attempt that declared work.

provider: sympy
operation: isolateRealRoots
polynomial: x² − 2
inputs: exact rational coefficients

Inspect the inputs before any app runs.

The interactive file viewer above includes the exact template, recipe, parameter files and two recorded host plans. Both cases were bound and planned without launching SymPy.

Return to the workflow files ↑ Open the full reference ↗

Choose how you operate it

The workflow is reusable.
Hosting is optional.

A saved recipe and ongoing provider-operated access are different things. Neither a GUI paywall nor a database subscription is being introduced here.

Free core + Studio

Planned Apache-2.0 distribution includes declared workflow tooling, Studio, parameter forms, local execution and evidence. Operate it on your own machines with suitable application runtimes.

Read the current boundary ↗

Reusable workflow family

One reviewed declaration plus bounded parameters can describe a family of repeated jobs. A maintained commercial workflow pack is a proposal, not an included template library or adopted subscription.

Inspect a real example ↗

Optional managed operation

The provider operates the supported runtime during agreed access. The earlier C$400 / 14-day proposal is under review; there is no final price, current hosted access or established buyer value.

Compare self-operation and hosting ↗