# facebookexperimental/hermit

Hermit launches linux x86_64 programs in a special, hermetically isolated sandbox to control their execution. Hermit translates normal, nondeterministic behavior, into deterministic, repeatable behavior. This can be used for various applications, including replay-debugging, reproducible artifacts, chaos mode concurrency testing and bug analysis.

Repository: https://github.com/facebookexperimental/hermit
Canonical: https://ross.abutalabs.com/products/facebookexperimental-hermit
Language: Rust
License: NOASSERTION
License Family: other
Last push: 2026-08-24T19:31:23+00:00

## Health v2 (maintenance only)
Score: 77/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 35, longevity 100
- inputs: {"age_days": 1415, "days_push": 9, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1403, forks 50 (observed 2026-08-28T04:04:37.947651+00:00)

## What it is
Hermit is a Rust CLI tool that runs unmodified x86-64 Linux programs inside a hermetic sandbox, controlling sources of nondeterminism such as thread scheduling, time, randomness, and CPUID. It turns nondeterministic behavior into deterministic, repeatable execution for replay-debugging and concurrency testing.

## Use cases
- make a program run deterministically and repeatably
- replay-debug a schedule-sensitive concurrency bug
- chaos-test multithreaded code under controlled scheduling
- produce reproducible build artifacts
- record and replay program execution
- diagnose flaky race conditions

## When to choose
- you need repeatable execution of Linux x86-64 programs to debug nondeterministic failures
- you want controlled concurrency or chaos-mode testing of thread scheduling
- you need reproducible artifacts from otherwise nondeterministic builds

## When to avoid
- you need a security sandbox - Hermit is explicitly not a security boundary
- your workload relies on uncommon syscalls or complex record/replay
- you need to support architectures or operating systems other than x86-64 Linux
- you need actively developed features - the project is in maintenance mode

## Facets
- artifact type: cli-tool
- maturity: maintenance
- function: simulation, testing, developer-tools, cli
- domain: developer-tools, testing, operating-systems, performance
- platform: cli, rust
- tags: deterministic-execution, record-and-replay, sandbox, ptrace, reproducibility, chaos-testing, concurrency-bugs, linux

## Member repositories
- facebookexperimental/hermit (main) score 77

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:37.947651+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:38:55.062287+00:00, confidence not recorded.
  - readme: https://github.com/facebookexperimental/hermit (fetched 2026-08-28T04:04:37.947651+00:00, sha 8960ceaccdd5)
- Data as of 2026-08-30T08:39:29.467469+00:00.
