Examples

Managed Runtime Example

Read capability manifests before claiming replay support.

Managed runtimes differ from app-owned frameworks because hooks may run before execution, after execution, or only as transcript output.

import { primitive, type AdapterCapabilityManifest } from "@isplay/adapter-runtime";

const capabilities: AdapterCapabilityManifest = {
  adapterId: "example-runtime",
  status: "managed_replay",
  primitives: {
    modelOutput: primitive("observe_only"),
    toolExecution: primitive("block_only"),
    toolResult: primitive("post_result_replace"),
  },
};

Interpretation:

PrimitiveClaim
observe_only model outputUseful capture, not deterministic model replay.
block_only tool executionSide effects can be prevented, but output replacement needs another primitive.
post_result_replace tool resultRecorded output can be changed after execution; side effects may already happened.