INNER CODE UNIT · Python
on_tool_end
VersusControl/devops-ai-guidelines · 03-ai-agent-for-devops/code/10/app.py:60
def on_tool_end(self, tool_name: str, result: str, success: bool = True):
label = TOOL_LABELS.get(tool_name, tool_name)
marker = "OK" if success else "FAIL"
preview = _summarize_result(tool_name, result)
self.status.write(f"[{marker}] **{label}** — {preview}")
self.steps.append({"label": label, "detail": f"[{marker}] {preview}"})
def on_approval_skipped(self, tool_name: str, tool_args: dict):
label = TOOL_LABELS.get(tool_name, tool_name)
self.status.write(f"[BLOCKED] **{label}** — requires your approval")
self.steps.append({"label": label, "detail": "[BLOCKED] requires approval"})
def complete(self):
n = self.tool_count
if n:
self.status.update(
label=f"Done — {n} tool{'s' if n != 1 else ''} used",
state="complete", expanded=False,