The same loop as the native railway-agent, compiled to WebAssembly. The files live in this page's memory; the model reads, greps and edits them with the same Rust tools. Only the model call leaves the browser.
Defaults come from the server's /proxy-status. Change anything here and the next run starts a fresh agent with these values.