Files
2026-07-13 12:49:17 +08:00

34 lines
1022 B
Python

# Copyright (c) 2025 ByteDance Ltd. and/or its affiliates
# SPDX-License-Identifier: MIT
from typing import override
from trae_agent.tools.base import Tool, ToolCallArguments, ToolExecResult, ToolParameter
class TaskDoneTool(Tool):
"""Tool to mark a task as done."""
def __init__(self, model_provider: str | None = None) -> None:
super().__init__(model_provider)
@override
def get_model_provider(self) -> str | None:
return self._model_provider
@override
def get_name(self) -> str:
return "task_done"
@override
def get_description(self) -> str:
return "Report the completion of the task. Note that you cannot call this tool before any verification is done. You can write reproduce / test script to verify your solution."
@override
def get_parameters(self) -> list[ToolParameter]:
return []
@override
async def execute(self, arguments: ToolCallArguments) -> ToolExecResult:
return ToolExecResult(output="Task done.")