Skip to main content
simulate clones your environment in memory, applies a hypothetical change, recomputes capabilities and attack paths through the same pipeline as a real scan, and compares before with after. Your configuration is never touched; the last line of every run says so.

What you can change

Flags are repeatable and combine, so you can evaluate a whole hardening change at once.

Output

--json emits the versioned aspex-simulate/v1 schema: before/after environments, capability deltas, and attack paths added and removed.

Where simulation shows up elsewhere

  • aspex explain "…" ends every YES answer with the controls that break the path, each simulated so you see which one removes it on its own.
  • aspex tighten runs each recommendation through the simulator and shows its security impact next to the functional impact.
  • aspex inspect <command|path> simulates adding a server you have not installed yet.
  • aspex mcp exposes aspex_simulate_change so your coding agent can check a proposed .mcp.json before it writes it.
All four share this one engine, so the numbers agree everywhere.