Skip to content

Use Observer

AstorisTheBrave edited this page Aug 10, 2026 · 1 revision

Use Observer

Observer inspects an offline Minecraft Java world and prints a report without changing that world.

Before you begin

Observer is currently distributed as source code rather than a packaged installer. This release is mainly suitable for evaluators and developers who can build a Rust project. See the repository toolchain guide if you need to build it.

Use a stopped server or a filesystem snapshot. Observer detects changes and fails closed, but it does not create a safe live snapshot for you.

Run a standard scan

elah observe <world>

Replace <world> with the path to the Java world folder that contains level.dat.

Standard mode checks the world structure, saved metadata, dimensions, region headers, and occupied chunk envelopes. It is the lower-cost choice.

Run a deep scan

elah observe <world> --deep

Deep mode also reads, decompresses, and validates every occupied terrain chunk. It uses more disk I/O, CPU, memory, and time.

Get machine-readable output

elah observe <world> --format json

A successful JSON report uses the elah.observe/v1 schema. Errors use the separate elah.error/v1 schema.

See advanced details

elah observe <world> --verbose

Normal errors explain what happened, why no report can be trusted, and what you can do next. Advanced details add bounded paths or lower-level causes for troubleshooting.

Understand the result

Exit code 0 means a complete report was produced. Exit code 5 means the world changed while Observer was reading it, so no success report was produced. Other nonzero exits mean the command, selected path, filesystem boundary, or world data was not accepted.

Read the full safety limits.

Clone this wiki locally