Skip to content

Releases

v0.2.0 — Build diffing

Choose a tag to compare

@Ethos6 Ethos6 released this 18 Oct 08:31
a03c1c1

New: spectra diff <old> <new>

Compare two builds of a binary, archive or project and see exactly what changed:

  • added and removed imports (PE dll!function, WebAssembly module.name), exports, dependencies (ELF DT_NEEDED, Mach-O dylibs, package.json), dynamic symbols and embedded indicators (URLs, domains, IPs, paths)
  • added, removed and resized sections, ranked by size change
  • exits with code 1 when the targets differ, like diff, so it drops straight into CI checks
  • --format json for automation, --format markdown for reports
  • also available as the diff_targets MCP tool and as diffReports() in the library
$ spectra diff ./app-1.4.exe ./app-1.5.exe

Fixed

  • File names such as *.debug, *.so and *.json are no longer reported as domains in string indicators.

Also new

  • Demo GIF in the README, made from real spectra inspect and spectra diff output on system binaries (scripts/record_demo.py)

Install

git clone https://github.com/Ethos6/spectraprobe && cd spectraprobe
npm install && npm run build && npm link   # then: spectra --help

Static analysis only; use it on software you own, open source, or targets you are authorized to analyse. All 45 tests pass in CI on Linux, macOS and Windows with Node 18, 20 and 22. Full notes: CHANGELOG.md