API reference

GhostEnv

Constructor

new GhostEnv(config: GhostEnvConfig)
FieldTypeDescription
seednumber / intPRNG seed (default 1) for providers that use rng
providersProvider[] / listOrdered list; first match wins
chaosChaosOptions / dictOptional latency / simulated failures

Methods

MethodTypeScript
fetchfetch(input, init?)Response
callscalls(provider?)CallRecord[]
wasCalledwasCalled(provider, partial?)boolean
resetreset()
snapshot / restoresnapshot() / restore(data)

Recording shape

Each CallRecord: id, provider, method, url, request body, responseStatus / response_status, response body, durationMs / duration_ms.

On thrown errors before a provider responds, the recorder may store provider: "error".

Exports

Core

  • GhostEnv, GhostEnvConfig, Provider
  • WorldState, mulberry32 (advanced / tests)

Recording

  • Recorder, CallRecord
  • exportRecordingJSON, exportRecordingMarkdown, exportHAR

Presets

  • Named helpers: github, stripe, postgres, openai, s3, slack, anthropic
  • Lower-level: githubProvider, stripeProvider, … (custom name / composition)

Eval & replay

  • runEval, defineScenario, Scenario, EvalReport
  • ReplayFixturefromJSON, nextResponse, reset

Types

  • ChaosOptionsminLatencyMs?, failureRate? (0–1)

ReplayFixture

Replays CallRecord responses in order as synthetic Response objects (JSON content-type). Use for deterministic replays without live providers.