Skip to main content

Overview

Boot the opt-in Tell resource host, approve a bounded shell job, read its output after start() returns, and release every process with one explicit owner. The ordinary Tell SDK and CLI do not boot this Cordis-backed host.

Example

Key Points

  • TellResourceHost::shellJobs(...)->boot() is deliberately separate from Tell::open() and TellHost::standard().
  • Denial is the default. An embedding application must supply an approval policy before the host creates a job identity or starts a process.
  • The host enforces project-directory containment, concurrency, lifetime, retained-output, read, and cancellation-grace bounds.
  • Snapshots and cursored output are immutable. Raw Cordis contexts, fibers, process handles, and pipes do not escape the owner scope.
  • Resource events use tell.resource.event.v1; they contain hashes, counts, states, and error classes, never commands or output.
  • Always call dispose() in finally; disposal is idempotent and cancels work that has not reached a terminal state.