Skip to content

Reference

Reference is for decisions and stable boundaries. It explains what AML owns, what a provider owns, and which option or provider guide to choose. It is intentionally not a generated API catalogue: the published package declarations remain the exact TypeScript contract, while the guides under Providers explain configuration and vendor behavior.

AML publishes the SDK and CLI independently, so each package keeps its own version history.

If you need to…Start here
Understand an authored component, its props, placement, or resultPrimitives
Configure evaluation limits, defaults, cancellation, or structured resultsRuntime and evaluation
Define a portable stdio or HTTP MCP serverdefineMcpServer()
Test workflows or provider contracts without live infrastructureTesting APIs
Decide whether work belongs in an Agent, Sandbox, or WorkspaceProvider contracts
Implement a custom Agent, Sandbox, or Workspace adapterProvider authoring
Choose a built-in Agent, Sandbox, or WorkspaceProvider catalog
Learn how a provider behaves in productionThe relevant provider guide
Assemble a task from working examplesCookbook
Understand what changed between published versionsChangelog
<Workspace /> → durable state and materialization
<Sandbox /> → execution authority and environment
<Agent /> → model or harness session

These boundaries compose, but they are not interchangeable. A Workspace gives descendants a materialized directory; it does not execute commands. A Sandbox executes literal commands and processes; its security properties depend on the selected provider and deployment. An Agent owns a provider session; it should not be used as a substitute for storage or an enforcing execution boundary.

Application code imports runtime features from @aml-jsx/sdk. TypeScript selects the package’s JSX runtime automatically when jsxImportSource is set to @aml-jsx/sdk; applications do not maintain those compiler imports by hand. Deterministic fixtures and provider conformance helpers are available from @aml-jsx/sdk/testing when a workflow needs a credential-free provider.

Paths under sdk/src/** are implementation details, not supported imports. For working compiler and execution configuration, use Getting started and Deployment instead of copying an export inventory. For authored AML, use the hand-maintained primitive reference: it documents behavior and composition boundaries without turning internal types into a second API surface.

AML is pre-stable. This Reference describes the current SDK behavior and the decisions users need to make; it does not promise that every declaration will remain unchanged between releases. When the distinction matters, follow the provider guide and the linked source contract together.