procband
v0.3.2
Published
Supervise subprocesses from TypeScript: prefix logs, wait for output patterns, and manage lifecycle/restarts.
Readme
procband
Purpose
procband supervises subprocesses from TypeScript. It prefixes child output,
matches future log lines, waits for terminal exit, optionally restarts failed
processes, tree-kills descendants during shutdown, and propagates unobserved
terminal failures to the parent process.
Installation
pnpm add procbandQuick Example
import process from 'node:process'
import { supervise } from 'procband'
const proc = supervise({
command: process.execPath,
args: ['-e', 'console.log("ready")'],
})
await proc.waitFor('ready')
const result = await proc
console.log(result)Documentation Map
- Concepts and lifecycle: docs/context.md
- Minimal usage example: examples/basic-usage.ts
- Restart example: examples/restart-on-failure.ts
- Sequencing example: examples/sequenced-processes.ts
- Exact exported signatures: dist/index.d.mts
