agent/compose

Built-in compose adapter for records of any type: its manifest, needs, provides, config keys, cost, and an example step

What you'll learn

You're about to put agent/compose in a step and want its keys, fields, credentials, and cost before plan tells you.

  • what the adapter needs and provides
  • every with: key it accepts
  • what it costs and which credential it demands

A built-in compose adapter for records of any type: it needs the step's uses: fields and provides 2 fields. It publishes no per-record estimate, so plan prints ?, and it demands no credential.

Manifest

KeyValue
idagent/compose
version1
rolecompose
entity typeany type
credentialsnone
cost estimate per recordnot published

Needs

The fields the step's uses: line names, and nothing else.

Provides

{
  "additionalProperties": false,
  "properties": {
    "first_line": {
      "type": "string"
    },
    "ps_line": {
      "type": "string"
    }
  },
  "type": "object"
}

Config keys

The keys with: accepts. Plan rejects any other key.

KeyTypeRequiredWhat it sets
ofstringThe referent (ADR-048): the field whose value this step is about. Injected by the runner from the step-level of: key — never authored inside with:.
promptone of nevertty (default): at a terminal, gtme run walks the records and asks; never: every record waits in the ledger for gtme answer (ADR-049). The mode, never text — the text is template: (ADR-057)
providesobjectThe step's derived provides schema (ADR-033) — the menu the participant answers. Injected by the runner from the step-level provides: key — never authored inside with:.
renderobjectWhat the participant is shown per record (ADR-049): the listed fields, or the step's template: (ADR-057)
render.fieldsarray of stringThe fields shown to the participant (default: the uses: fields, or the of: value alone); validated as uses: (SPEC §7)
templatestringWhat the participant is shown per record (ADR-057): a template over record.* (the uses:/of: fields) and config.*, in place of the field listing. The runner loads {file:} before validation.

Example

A minimal step:

  - id: compose
    use: agent/compose