Jervis Runtime

Keep project runtimes separate from developer tools, with compatible runtime selection and exact package versions.

  • Project Type : Developer tool · Runtime management
  • Share :

Discuss your project

Share your requirements and the parts of your workflow you want to improve.

Jervis Runtime

Project Links

Project Overview

Jervis Runtime (jrt) lets a project and a command-line tool use different runtime versions. A repository can stay on Node 18 while a tool runs on Node 22, without changing the project’s pin.

The Go CLI uses mise to install and run runtimes. It records exact tool versions and supports npm, PyPI, Go, Cargo, NuGet, executable Maven JARs, Bun and Deno npm tools, and dependency-free RubyGems. Compatibility rules account for the requirements of each source.

The Challenge

  • Run a tool that needs a different runtime without changing the project.
  • Check compatibility against package requirements and explicit overrides.
  • Record repeatable tool versions and explain why a runtime was selected.

How we built it

Project pins are stored in .jrt.toml, separately from the machine’s tool registry. Auto, strict and pinned policies control runtime selection. Optional shims route familiar commands, and jrt why explains the chosen runtime.

Technology Stack

  • Go
  • mise
  • CLI
  • Nuxt

What the product Delivers

Projects keep their specified runtimes while developer tools run in compatible environments, with locked versions and routing decisions that can be inspected.