Skip to content

create_commentary

Attach narrative analysis to a model run, or to one named output of the run. Use this after compare_runs / get_run_output to save the agent’s interpretation alongside the data it explains. If output_name is omitted, the commentary is run-level. If output_name is provided and the run has output data available, the name is validated against the same resolver as get_run_output.

NameTypeRequiredDefaultDescription
run_idAnnotated[str, Field(description='UUID of the model run to attach commentary to.')]Yes
textAnnotated[str, Field(description='Commentary text content.')]Yes
output_nameAnnotated[str, Field(description='Named output within the run that this commentary describes.')]No''
change_noteAnnotated[str, Field(description='Optional brief note describing what changed in this version of the commentary.')]No''

Returns a structured object. Top-level fields:

  • commentary (object)

See the response example below for the full payload shape.

{
"name": "create_commentary",
"arguments": {
"run_id": "eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee",
"output_name": "revenue",
"text": "Revenue beat plan by 12% in March, mostly from SaaS expansion.",
"change_note": "Initial variance readout"
}
}
{
"commentary": {
"commentary_id": "ffffffff-ffff-ffff-ffff-ffffffffffff",
"tenant_id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"project_name": "forecasts",
"run_id": "eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee",
"output_name": "revenue",
"author_id": "22222222-2222-2222-2222-222222222222",
"text": "Revenue beat plan by 12% in March, mostly from SaaS expansion.",
"version": 1,
"archived_at": null,
"archived_by": null,
"created_at": "2026-04-28T10:00:00+00:00",
"updated_at": "2026-04-28T10:00:00+00:00"
}
}
  • Module: Run Commentary
  • Requires authentication via API token or Auth0 JWT.