human/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 human/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
| Key | Value |
|---|---|
| id | human/compose |
| version | 1 |
| role | compose |
| entity type | any type |
| credentials | none |
| cost estimate per record | not 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.
| Key | Type | Required | What it sets |
|---|---|---|---|
of | string | The 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:. | |
prompt | one of tty, never | tty (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) | |
provides | object | The 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:. | |
render | object | What the participant is shown per record (ADR-049): the listed fields, or the step's template: (ADR-057) | |
render.fields | array of string | The fields shown to the participant (default: the uses: fields, or the of: value alone); validated as uses: (SPEC §7) | |
template | string | What 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
From Report:
- id: opener
use: human/compose
uses: [full_name, title]
provides: [opener]
with:
prompt: never