Choosing Native, npm, WASM, or Playground

Choose a surface by deployment and command needs while keeping same-origin provenance and profile-specific resource limits visible.

Working method

  • Use Playground for zero-install evaluation, public WASM for browser embedding, npm for Node evaluation plus authenticated Vouch verify, inspect, and replay, and Native for signed issuance, current verifier re-execution, and the local decision gate.
  • Pin package or binary identity in automation rather than relying on a mutable latest channel.
  • Test the resource profile you deploy; equal language semantics do not imply equal recursion ceilings.
  • Native and npm expose the same exact identities, policy create/check, and raw/unpinned/pinned authentication through shared Rust. Native alone can issue and consume request-bound evidence for re-execution or gate; public WASM and Playground expose no Vouch identity, authentication, or policy tooling.

Runtime capabilities

SurfaceAvailableNot available
Nativeevaluation; identities; policy create/check; Vouch issue; raw, unpinned, and pinned authentication; request-bound re-execution and local decision gate; inspectunpinned bundle execution authority; Vouch corpus replay in the namespaced Native CLI
npm CLIevaluation; identities; policy create/check; authenticated raw, unpinned, and pinned Vouch verify; structural inspect; corpus replaysigned issuance, verifier re-execution, local decision gate, live evidence handle, report promotion
Public WASMembedded same-Rust-lineage evaluation APIsVouch CLI, key loading, signed authentication, verifier re-execution, local decision gate
Playgroundzero-install same-Rust-lineage evaluationVouch CLI, local artifacts or keys, signed authentication, verifier re-execution, local decision gate

Boundaries

  • None of the native, npm, WASM, or Playground Rust surfaces is an independent backend witness, and unavailable commands must not be simulated or silently downgraded.