feat: add Android task file evidence and finalize plugin design

This commit is contained in:
chenmingxuan committed 2026-10-15 18:27:11 +08:00
1 parent 96fedc816f
commit 72ff342605
20 files changed
+1005 -35

No files matched your search

+5 -1
View File
@@ -51,6 +51,7 @@ from artemis.agents.validator.tool_declarations import (
normalize_coordinate_target,
)
from artemis.tools.history import HISTORY_TOOL_NAMES, history_tool_by_name
from artemis.tools.android_files import android_file
from artemis.tools.tool_wrapper import split_multimodal_result
from artemis.utils.coordinates import (
compute_smart_swipe_coordinates,
@@ -73,7 +74,8 @@ __all__ = ["McpActionExecutor"]
#: Non-device tools executed agent-side (never behind the action server).
AGENT_TOOL_NAMES: frozenset[str] = (
frozenset({"read_note", "list_notes", "ask_explorer", "video_analyzer"}) | HISTORY_TOOL_NAMES
frozenset({"read_note", "list_notes", "ask_explorer", "video_analyzer", "android_file"})
| HISTORY_TOOL_NAMES
)
#: Actions whose ``target`` is a single point: an element index or an [x, y] pair.
@@ -769,6 +771,8 @@ class McpActionExecutor:
)
elif raw_name in HISTORY_TOOL_NAMES:
text, blocks = await self._history_tool(raw_name, args)
elif raw_name == "android_file":
text = await android_file.execute(ctx=self.ctx, **args)
else:
text, ok = await self._ask_explorer(
# ``task_description`` is the pre-contract argument name