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.
Start with the question
Section titled “Start with the question”| If you need to… | Start here |
|---|---|
| Understand an authored component, its props, placement, or result | Primitives |
| Configure evaluation limits, defaults, cancellation, or structured results | Runtime and evaluation |
| Define a portable stdio or HTTP MCP server | defineMcpServer() |
| Test workflows or provider contracts without live infrastructure | Testing APIs |
| Decide whether work belongs in an Agent, Sandbox, or Workspace | Provider contracts |
| Implement a custom Agent, Sandbox, or Workspace adapter | Provider authoring |
| Choose a built-in Agent, Sandbox, or Workspace | Provider catalog |
| Learn how a provider behaves in production | The relevant provider guide |
| Assemble a task from working examples | Cookbook |
| Understand what changed between published versions | Changelog |
AML’s three boundaries
Section titled “AML’s three boundaries”<Workspace /> → durable state and materialization<Sandbox /> → execution authority and environment<Agent /> → model or harness sessionThese 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.
Import the supported boundary
Section titled “Import the supported 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.
Stability and source of truth
Section titled “Stability and source of truth”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.