RMT-first XTend Apps
An architecture path for apps whose shell comes from RMT.
What it covers
An RMT-first application owns its shell, state, and actions in RMT source. HTML provides mount targets and local modules only; imperative host JavaScript remains limited to adapters and real platform services.
Public building blocks
demos/xtendrmt/examples/first-app/source.rmtis the minimal shell.xtendrmt/rmt-app-runtime.jsaccepts core records into the runtime.components/manifest.jsonsupplies locally allowed UI tags.
Recommended workflow
Start with one surface and one state record. Add actions and resources only after the first core snapshot is stable, and keep network, storage, or browser APIs behind an explicit host adapter.
Next steps
Verify the shell contract
node scripts/run_xtend_tests.js rmt-first-class-app --json
The gate checks source, registry, and host boundary together. Parser success is insufficient if the shell still needs manual UI creation or a second state owner.