Skip to main content
Superwire types describe input, secrets, schema fields, tool contracts, and agent outputs.

Primitives

object is also available as a broad object type when you do not want to define fixed fields.

Objects

Inline object fields use commas:

Arrays

Fixed-length arrays use a semicolon:

Tuples

Unions and nullable types

Use | when a value may be one of multiple types:
Use maybe as nullable shorthand:
maybe string is equivalent to string | null.

Enums

Inline enum variants use commas:
Multiline enum variants do not require commas:

Schema references

Variants

Use variant for tagged unions where each case has its own object shape.
You can also define a root-level variant directly on a schema: