Skip to main content
Research that ends in prose is hard to act on and harder to audit. The last step of a research pipeline should produce a decision with a fixed shape: the call, the conviction, the reasoning, and what it was based on. Give the final agent an output_schema and it returns a validated object.
Because output_schema=Decision, the run returns a validated Decision. Downstream code reads result.call and result.allocation_usd without parsing text. If the model’s output fails validation, Agno logs a warning and content stays a string, so check the type before acting on it. The chair takes no tools. Its only job is to weigh the specialists’ inputs and commit to a call.

Two artifacts, two purposes

A research system usually produces both a machine-actionable decision and a human-readable memo. The memo is written by a dedicated agent with file tools and a fixed template, then archived. The next review reads it back as prior work. The decision is the row you store and act on.

Make it auditable

A decision without its citations is unverifiable. Require them in the schema and the instructions.

Gate the irreversible

When a decision triggers a real action (moving capital, publishing a number), put a human in the loop on that step. Approve the call, then let automation act. See human approval.

Next steps

Developer Resources