Jobman

Jobman runs and manages durable command-line jobs without a continuously running shared daemon. It combines detached execution, retries, timeouts, dependencies, concurrency limits, retained logs, lifecycle controls, live input, and notifications in one local CLI.

Get productive quickly

What Jobman manages

  • Execution: detached or foreground direct commands with preserved argument boundaries and explicit standard-input policy.
  • Reliability: bounded retries, repeated successful runs, backoff, jitter, per-run timeouts, and whole-job deadlines.
  • Scheduling: time, file, executable-probe, and prior-job dependencies plus store-wide and named-pool concurrency limits.
  • Observability: durable state, raw stdout/stderr capture, log following, rotation, retention, versioned JSON, and health checks.
  • Control: wait, cancel, rerun, best-effort pause/resume, and private live input using the native mechanism documented for each platform.
  • Integration: strict layered YAML, secret references, command callbacks, HTTPS webhooks, and SMTP notifications.

Basic examples

The following recordings walk through common Jobman workflows, from running a single command to coordinating dependencies, sending input, and handling failures.

Run and inspect a job

Submit a named job, list it, follow its logs, and inspect its recorded state. Job selectors accept a complete ID, a unique ID prefix of at least eight characters, or an unambiguous exact name.

Coordinate dependent jobs

Make one job wait for another to succeed, then pause and resume the prerequisite while following both jobs’ progress.

Send live input

Start a job with live standard input, send it a line, close the input stream, and review the resulting job state and logs.

Retry failures

Watch Jobman run a failing command with two configured retries, wait for it to finish, and report the final result.

Enforce a run timeout

Apply a five-second timeout to a long-running command, wait for the timeout, and inspect the completed job.

License

Jobman is available under the MIT License. Release binaries also include the applicable third-party notices.