NRNS Runner

Back End · Conceptualization

TypeScriptzodDockerConvex

Responsibilities & Contributions

Agent Runtime

Designed the runner as a supervisor rather than a native agent loop: it spawns agent CLIs, parses their event streams and governs each tool call through a hook and permission gate, with sandboxed sessions behind a gateway.

Persisted every run to an append-only transcript, with multi-turn context that resumes the provider session when it can and replays the transcript when it cannot.

Integration Protocol

Defined a versioned, typed runner protocol and an integration relay (the runner connects out, pushes events and pulls decisions) so any product can host it; NRNS Tasks is just the first integration and uses only the public contract.

Kept the runner free of product-specific prompts: agent instructions, tools and workflows come from the agent and project definition.

Reliability

Treated an offline machine as the normal case, with a durable task queue, scheduled workflows, remote runners paired by capability token, and isolated state so staging and production runners never mix.