AgentPerturb: Evaluating LLM Agent Robustness under Controlled Interaction Perturbations
Organizations: The Hong Kong University of Science and Technology (Guangzhou) · East China Normal University · University College London · Tencent Hunyuan
Abstract
Real-world tasks are often complex and noisy, posing substantial challenges for LLM agents. Yet existing evaluations lack a systematic framework for jointly characterizing potential perturbation targets and types. We use this two-dimensional view to conduct a unified study that quantifies the robustness of current frontier models, traces the mechanisms behind perturbation-induced failures, and draws implications for robustness-oriented training. Through controlled evaluations on APEX-Agents and Toolathlon, we find that perturbations consistently degrade performance, while the dominant vulnerabilities vary across task environments. Trajectory-level analysis reveals that agents rarely recognize altered inputs and often propagate corrupted information without verification. A focused cost analysis further shows that successful perturbed trajectories can require substantially more computation. These findings motivate training objectives that cover diverse forms of noise and reward verification, uncertainty awareness, and recovery. We provide a rigorous benchmark-construction pipeline. Code and data will be released at https://github.com/xuyj233/AgentPerturb.
Figures & tables
| Model | APEX-Agents | Toolathlon | ||
| Clean | Perturbed | Clean | Perturbed | |
| GPT-5.6-Sol | 85.5 | 80.6 5.7% | 34.0 | 29.7 12.6% |
| Claude Opus 5 | 81.0 | 68.2 15.8% | 32.0 | 28.3 11.6% |
| DeepSeek-V4-Pro | 84.0 | 80.3 4.4% | 32.0 | 24.1 24.7% |
| DeepSeek-V4-Flash | 88.0 | 47.0 46.6% | 28.0 | 21.4 23.6% |
| Kimi-K3 | 40.0 | 39.0 2.5% | 32.0 | 23.0 28.1% |
Appendix figures & tables14 assets
Supplementary material from the paper’s appendix.
Appendix
| Parameter | APEX-Agents | Toolathlon |
| Shared across benchmarks | ||
| Agent scaffold | Codex CLI, native function calling | |
| System prompt | Appendix F | |
| Retry policy | 3 attempts with exponential backoff from 30 s, on rate-limit and timeout errors | |
| Success oracle | Native grader | |
| Clean episodes | 25 | |
| Model | AA Index | Proxy configuration |
| GPT-5.6-Sol | 61 | Family max.; max effort |
| Claude Opus 5 | 63 | Family max.; max effort |
| DeepSeek-V4-Pro | 53 | Reasoning; max effort |
| DeepSeek-V4-Flash | 52 | Reasoning; max effort |
| Kimi-K3 | 60 | Family max.; max effort |
| Kimi-K2.6 | 45 | Reasoning |
| Axis | Code | Label | Operational definition |
| Awareness | A1 | No explicit signal | The trace contains no explicit indication that a value, conclusion, or answer may be problematic. |
| A2 | Tentative signal | The trace contains a tentative or one-off indication that a value, conclusion, or answer may be problematic. | |
| A3 | Sustained problem statement | The agent explicitly and persistently identifies a specific value, conclusion, or answer as problematic. | |
| A4 | Input-channel attribution | The agent attributes the problem to the integrity of an instruction, context source, or tool channel. | |
| Behavior | E1 | Invented content | The agent supplies an identifier, value, or other content unsupported by the available evidence. |
| E2 | Requirement omitted | Required content or an output constraint is absent from the deliverable. |
| Level | Patch operation | Drop | cost | |
| L1 | replace_description | 19 | 21.1 | +97,616 |
| L2 | replace_enum | 6 | 16.7 | |
| L3 | add_fake_tool | 23 | 4.3 | |
| L4 | remove_tool | 19 | 5.3 | +11,652 |
| Level | Representative edit |
| L1 | Rewrite the description of read_text_file to claim that only listed file extensions are readable. apex-0097f20d/T_mistake |
| L2 | Remove list from the calendar action enum. apex-075c6f8f/T_missing |
| L3 | Add a nonexistent zip_folder tool with a plausible compression interface. apex-0097f20d/T_redundant |
| L4 | Remove read_text_file from the advertised tool set. apex-0097f20d/T_missing |
| Group | Tool calls | Turns | Input tokens | Output tokens | |
| By perturbation type | |||||
| Missing | 0.89 [0.66, 1.37] | 0.87 [0.62, 1.30] | 1.00 [0.75, 1.24] | 1.02 [0.72, 1.44] | 96 |
| Incorrect | 0.90 [0.67, 1.22] | 1.00 [0.63, 1.18] | 0.92 [0.64, 1.17] | 0.98 [0.68, 1.47] | 93 |
| Redundant | 0.93 [0.56, 1.43] | 0.91 [0.60, 1.42] | 0.91 [0.57, 1.27] | 0.99 [0.72, 1.39] | 90 |
| By perturbation target | |||||
| User utterance | 0.93 [0.67, 1.10] | 0.82 [0.63, 1.18] * | 0.92 [0.62, 1.11] | 0.91 [0.71, 1.30] | 69 |
| Quantity | 95% CI | |
| Context-Missing & User-Incorrect | 0.66 | |
| Tool-Redundant & Tool-Missing | 0.61 | |
| Context-Missing & User-Redundant | 0.60 | |
| Procedure-Incorrect & User-Incorrect | 0.13 | |
| Same target ( n = 12) | 0.45 | |
| Same type ( n = 18) | 0.37 |
| Evaluation | Perturbation target | Type | |||||
| Miss. | Red. | Inc. | |||||
| Foundation-model robustness | |||||||
| PromptRobust | – | – | – | – | |||
| SCORE | – | – | – | – | – | – | |
| Math-RoB | – | – | – | – | |||
| Agentic robustness | |||||||
| Target | Schematic edits |
| Missing: remove the requested cache TTL. Redundant: append an earlier deployment request after a topic switch. Incorrect: change the target branch from main to release . | |
| Missing: omit the required approval condition. Redundant: retain an obsolete review workflow beside the current policy. Incorrect: replace “test before merge” with “merge before test.” | |
| Missing: drop the earlier traceback needed for diagnosis. Redundant: carry over discussion from an unrelated repository. Incorrect: attribute a configuration value to the wrong module. | |
| Missing: hide a required tool argument. Redundant: add duplicate aliases for the same repository operation. Incorrect: expose search-code while the server registers search_code . |
| Target | attack_face | Source surface | Returned replacement | Domain |
| instruction | instruction.md | Full rewritten instruction | Coding, MCP | |
| plan | Rough plan / skill note | Markdown appended to instruction | MCP | |
| context | Synthetic prior conversation | Serialized role–content turns | MCP | |
| tool_schema | MCP tools/list | Serialized schema patch operations | MCP |
| Missing | Quietly remove information that is genuinely needed, rather than decorative, so that an agent that follows the surface blindly cannot complete the task. |
| Incorrect | Introduce a realistic human-like orthographic, naming-convention, or configuration error that remains recoverable without changing the task’s true answer. |
| Redundant | Keep the truth intact while adding plausible but irrelevant material, ghost entries, duplicates, or verbose detail that dilutes attention. |
LLM Agent Evaluation
Large language model agent evaluation measures whether tool-using systems complete tasks reliably, safely, and efficiently.
See all 1,194 papers