Skip to Content
Tares

How should an AI SRE end its run when crash loops turns out to be nothing?

Tares lets an AI SRE end a run on purpose with the conclude tool, and for a crash loops check that turns out to be nothing, the agent calls it with no_op. A no_op conclusion records no finding. When something does need attention, the agent concludes with a finding that carries a verdict, a headline and a next step instead.

How it works

An agent that ends with a conclusion gets the conclude tool. It has two outcomes:

  • no_op: there is nothing to report, so no finding is recorded. This is the right ending when the crash loops alert was noise, a restart that already settled, or a check that found nothing wrong.
  • A finding with a verdict about a named entity: use it when the crash loops are real. A finding also gives a headline and a next_step.

The two extra fields are:

  • headline: one line of up to 100 characters that says what was found in the reader’s terms.
  • next_step: up to 300 characters that say what a person should do. It stays empty when nothing needs doing.

The project’s Overview shows the headline and next step on each card, and agents are told to give both. If a run has no headline, Tares takes it from the note’s heading, bold lead or first sentence. If it has no next step, Tares takes it from the text after “Next step:”, “Next:” or “Recommendation:”.

You control how strict the ending is on the agent. With Ends every run with a conclusion on (concludes: true), the agent always gets the conclude tool, whatever its prompt says, and Tares adds the instructions for using it. If a run stops without concluding, Tares asks once more with conclude as the only choice. With it off, the agent’s last message is its finding, with no verdict.

The Verdicts it can give list holds your own words, each with when to give it. You can set up to 10. Each is one word made of letters, digits and dashes, each is listed once, and none can be no_op, because nothing to report is always possible. With a list, the tool accepts only those words and tells the model what each means. A finding must carry one, and an off-list word or a missing verdict goes back to the agent to fix within the same run.

Set it up

  1. Open the agent form and find the How it ends section.
  2. Tick Ends every run with a conclusion. In YAML this is concludes: true.
  3. Add the verdicts the agent can give when crash loops are real, each with a short description of when to use it. You do not add no_op, since it is always available.
  4. In the prompt, describe only the job: check whether the crash loops are a real problem, and say what counts as a real one. Tares adds the instructions for conclude, so you do not write them.
  5. Save the agent and let it run on its trigger.

The same setup in YAML:

agents: - name: triage trigger: watch-web concludes: true verdicts: - { verdict: investigate, when: one entity looks like a problem and needs a closer look } prompt: | ...

With this agent, a run that finds the crash loops harmless ends with no_op. A run that finds one entity restarting for a bad reason ends with the investigate verdict, a headline such as a one-line description of the failing entity, and a next step for the person who picks it up.

The Triage (on a schedule) preset comes with investigate already. The Root cause after a handoff preset comes with rca, for when you found what is failing and why, and resolved, for when it was noise or is already over. Pick the preset that matches where the agent sits in your flow, then adjust the verdict list.

For the wider picture of how agents watch signals and decide, see AI SRE.

What you get

  • A clean ending for the quiet case. A crash loops check that finds nothing ends with no_op and records no finding.
  • Findings that read well on a card. Each real finding has a verdict, a headline of up to 100 characters and a next step of up to 300 characters.
  • Verdicts in your own words. With a verdict list, the agent can only use the words you defined, and a wrong or missing one is corrected inside the same run.
  • A run that always ends on purpose. If the agent stops without concluding, Tares asks once more with conclude as the only choice.
  • Verdicts that other parts of Tares can use. The agent’s summary shows how it ends, and its handoffs key off these words.

The full behavior is on How a run ends.

When something else fits

  • If you want the agent’s last message to be its finding with no verdict, leave Ends every run with a conclusion off. The tradeoff is that the run has no verdict for handoffs to key off.
  • If you leave the verdict list empty, a finding can carry any verdict or none. Add a list when you want the agent held to a fixed set of words.

Still stuck? Get help

Last updated on