

Paper: 2605.27333 Authors: Haoxuan Jia, Yang Liu, Bin Chong, Yingguang Yang, Yancheng Chen, Jiayu Liang, Qian Li, Hanning Lu, Kefu Xu, Hao Zheng Categories: cs.CL
The Gap
Finance LLM agents execute multi-step workflows involving irreversible operations like fund transfers. Existing safety approaches fall into two camps: boundary filters that check only the initial prompt (missing malicious drift mid-trajectory), and post-hoc auditing that reviews the entire trace after execution completes (too late to prevent damage, and computationally expensive for long traces). Neither approach can catch a prompt injection that starts benign but pivots to unauthorized actions halfway through a 10-step workflow.
Problem: Malicious drift in multi-step agent execution
|
v
Assumption: Safety decisions need per-step context + cumulative risk
|
v
Method: Inline monitors (Query + Tool) + Adaptive routing (Cascade)
|
v
Evidence: ASR 38.3% -> 15.0%, benign approval 41.1% -> 39.3%
|
v
Conclusion: Real-time intervention beats boundary/post-hoc filtering
The Increment
One sentence: Before this paper, you either checked safety once at the boundary or audited everything after the fact; now you can monitor each step inline and route expensive verification only when risk accumulates.
Core Mechanism
FinHarness wraps the agent with three components. The Query Monitor tracks intent drift across conversation turns, comparing the current query against the original request to detect semantic pivots. The Tool Monitor evaluates each prospective tool call before execution, checking whether the action aligns with stated intent and business rules. The Cascade module maintains a running risk score: when accumulated risk crosses a threshold, it routes the decision to an advanced LLM judge; otherwise, a lightweight judge suffices.
When a risk factor fires (intent drift detected, suspicious tool call, high cumulative risk), FinHarness doesn’t just block—it re-injects the risk evidence back into the agent’s input as ex-ante context. The agent sees “Warning: detected intent drift from ‘check balance’ to ‘transfer funds’” and can refuse, re-plan, or justify why the action is legitimate. This turns the safety system from a gatekeeper into a feedback loop.
User Query --> [Query Monitor] --> Risk Score
| |
v v
Agent Reasoning --> [Tool Monitor] --> Risk Score
| | |
v v v
Tool Call --> [Cascade Router] --> Lightweight Judge
| |
+---> Advanced Judge (if risk > threshold)
|
v
Risk Evidence --> Re-inject to Agent
Think of FinHarness as a co-pilot with a hand on the emergency brake. The Query Monitor is the navigator checking if you’re still heading to the original destination. The Tool Monitor is the safety officer reviewing each maneuver before you execute it. The Cascade is the decision protocol: for routine checks, the safety officer handles it; for high-stakes calls, you escalate to the chief compliance officer. When something looks wrong, instead of just slamming the brakes, the co-pilot taps your shoulder and says “Hey, you said we’re going to the bank, but you just turned toward the casino—want to explain?” You (the agent) can then course-correct or justify the detour.
Key Concepts
-
Intent Drift: Imagine you ask your assistant to “check my account balance.” Midway through, a prompt injection in a retrieved document tricks the assistant into thinking you now want to “transfer $10,000 to account XYZ.” The original intent (read-only query) has drifted to a different intent (write operation). Intent drift detection compares the semantic meaning of the current action against the initial request. If the distance exceeds a threshold, it flags potential hijacking. Concrete example: initial query embedding is close to “information retrieval,” current tool call embedding is close to “financial transaction”—cosine distance jumps from 0.1 to 0.7, triggering a warning.
-
Inline Monitoring: Traditional safety checks happen at two points: before the agent starts (input filter) or after it finishes (output audit). Inline monitoring inserts checkpoints *during execution, evaluating each intermediate step. It’s the difference between checking a student’s homework only at submission versus walking around the classroom and catching mistakes as they happen. For agents, this means intercepting each tool call, running a safety check, and deciding whether to allow, block, or escalate before the tool executes.
-
Adaptive Routing (Cascade): Not all decisions need the same level of scrutiny. Checking account balance is low-risk; transferring funds is high-risk. A cascade uses a lightweight judge (fast, cheap) for most cases and escalates to an advanced judge (slow, expensive) only when risk signals accumulate. Think of airport security: most passengers go through the quick metal detector; only flagged passengers get the full pat-down. FinHarness maintains a running risk score across the trajectory—if it stays low, the lightweight judge handles all checks; if it spikes, the advanced judge takes over.
Framework Shift
Before (boundary + post-hoc): After (inline + adaptive):
Input Filter Query Monitor (per turn)
| |
v v
[Agent runs freely] Agent Step 1
| |
v v
[Agent runs freely] Tool Monitor --> Cascade
| | |
v v v
[Agent runs freely] Agent Step 2 Lightweight
| | or Advanced
v v |
Output Audit Tool Monitor <-------+
(too late) |
v
Risk Re-injection
From “check once at the gate, audit the corpse” to “monitor every step, escalate only when needed,” the core shift is real-time intervention with cost-aware verification.
Expert Assessment
Problem choice: Real gap. Finance agents are moving from demos to production, and the “filter input, pray, audit output” paradigm doesn’t cut it for irreversible operations. The paper targets a genuine pain point where existing safety research (mostly focused on single-turn refusal) hasn’t caught up to multi-step agentic workflows.
Method maturity: Solid engineering, not a breakthrough. The components (semantic drift detection, per-step monitoring, tiered verification) are individually known techniques. The contribution is the integration and the adaptive routing strategy. The risk re-injection idea is clever—turning the safety system into a feedback loop rather than a hard gate. No simpler approach is being overlooked; this is the right level of complexity for the problem.
Experimental integrity: Baselines are fair (boundary filter, post-hoc audit, always-advanced judge). The FinVault benchmark is purpose-built for this paper, which raises reproducibility questions—would be stronger with evaluation on an external dataset. The 4.7× cost reduction claim is credible given the cascade design, but the paper doesn’t report latency, which matters for production deployment. The benign approval drop (41.1% → 39.3%) is small but non-zero; the paper doesn’t deeply investigate false positives.
Writing quality: The abstract and intro are crisp. The method section is dense—Figure 2 (system architecture) does heavy lifting, but the text doesn’t walk through a concrete example end-to-end until the appendix. Rewriting Section 3.2 (Cascade module) with a step-by-step trace would make the paper much more accessible. The related work section is thorough but reads like a literature dump; tighter framing around “why existing approaches fail for multi-step agents” would sharpen the narrative.
Verdict: Weak accept — Addresses a real problem with a well-engineered solution and solid empirical results, but the contribution is incremental (integration of known techniques) and the evaluation is limited to a single, paper-specific benchmark.
Takeaways
Adaptive verification routing: The cascade pattern (lightweight judge by default, escalate on accumulated risk) is directly transferable to any domain where you need to balance safety and cost. Healthcare agents, legal document processing, code generation—anywhere you have a spectrum of risk and can’t afford to run expensive checks on every step.
Risk re-injection as feedback: Instead of blocking silently or logging for post-hoc review, inject detected risks back into the agent’s context. This turns safety from a binary gate into a reasoning aid. The agent can self-correct, explain, or escalate. Applicable beyond LLM agents—think of it as “show your work” for automated systems.
Per-step monitoring beats boundary filtering: For multi-step workflows, checking only the initial input is insufficient. This is obvious in hindsight but underappreciated in practice. If you’re building agents that execute sequences of actions, instrument each action with a safety check. The cost is worth it for irreversible operations.
论文: 2605.27333 作者: Haoxuan Jia, Yang Liu, Bin Chong, Yingguang Yang, Yancheng Chen, Jiayu Liang, Qian Li, Hanning Lu, Kefu Xu, Hao Zheng 分类: cs.CL
缺口
金融 LLM 智能体执行涉及不可逆操作(如资金转账)的多步骤工作流。
现有安全方法分两派:边界过滤器只检查初始提示(遗漏轨迹中途的恶意漂移),事后审计在执行完成后审查整个轨迹(为时已晚无法阻止损害,且对长轨迹计算成本高昂)。
两种方法都无法捕获这样的提示注入:开始时看起来无害,但在 10 步工作流的中途转向未授权操作。
问题:多步智能体执行中的恶意漂移
|
v
假设:安全决策需要每步上下文 + 累积风险
|
v
方法:内联监控器(查询 + 工具)+ 自适应路由(级联)
|
v
证据:ASR 38.3% -> 15.0%,良性批准 41.1% -> 39.3%
|
v
结论:实时干预优于边界/事后过滤
增量
一句话: 这篇论文之前,你要么在边界检查一次安全性,要么事后审计所有内容;现在你可以内联监控每一步,仅在风险累积时才路由昂贵的验证。
核心机制
FinHarness 用三个组件包裹智能体。
查询监控器跟踪对话轮次间的意图漂移,将当前查询与原始请求对比以检测语义转向。
工具监控器在执行前评估每个预期的工具调用,检查该操作是否与声明的意图和业务规则一致。
级联模块维护一个运行中的风险评分:当累积风险超过阈值时,它将决策路由到高级 LLM 判断器;否则,轻量级判断器就足够了。
当风险因素触发时(检测到意图漂移、可疑工具调用、高累积风险),FinHarness 不只是阻止——它将风险证据作为事前上下文重新注入智能体的输入。
智能体看到”警告:检测到意图从’查询余额’漂移到’转账’“,可以拒绝、重新规划或证明该操作的合法性。
这将安全系统从守门人变成反馈回路。
用户查询 --> [查询监控器] --> 风险评分
| |
v v
智能体推理 --> [工具监控器] --> 风险评分
| | |
v v v
工具调用 --> [级联路由器] --> 轻量级判断器
| |
+---> 高级判断器(如果风险 > 阈值)
|
v
风险证据 --> 重新注入智能体
把 FinHarness 想象成一个手放在紧急制动器上的副驾驶。
查询监控器是导航员,检查你是否还在朝原始目的地前进。
工具监控器是安全官,在你执行每个操作前审查它。
级联是决策协议:对于常规检查,安全官处理;对于高风险调用,你上报给首席合规官。
当某事看起来不对时,副驾驶不只是猛踩刹车,而是拍拍你的肩膀说”嘿,你说我们要去银行,但你刚转向赌场——能解释一下吗?“你(智能体)可以纠正路线或证明绕道的合理性。
关键概念
- 意图漂移: 想象你让助手”查询我的账户余额”。
中途,检索到的文档中的提示注入欺骗助手认为你现在想”向账户 XYZ 转账 10,000 美元”。
原始意图(只读查询)已漂移到不同意图(写操作)。
意图漂移检测将当前操作的语义含义与初始请求对比。
如果距离超过阈值,它标记潜在劫持。
具体例子:初始查询嵌入接近”信息检索”,当前工具调用嵌入接近”金融交易”——余弦距离从 0.1 跳到 0.7,触发警告。
- 内联监控: 传统安全检查发生在两个时间点:智能体启动前(输入过滤器)或完成后(输出审计)。
内联监控在执行期间插入检查点,评估每个中间步骤。
这是只在提交时检查学生作业与在教室里走动、当场发现错误的区别。
对于智能体,这意味着拦截每个工具调用,运行安全检查,并在工具执行前决定是允许、阻止还是上报。
- 自适应路由(级联): 并非所有决策都需要相同级别的审查。
查询账户余额是低风险;转账是高风险。
级联对大多数情况使用轻量级判断器(快速、便宜),仅在风险信号累积时上报到高级判断器(慢速、昂贵)。
想想机场安检:大多数乘客通过快速金属探测器;只有被标记的乘客接受全面搜身。
FinHarness 在轨迹中维护运行中的风险评分——如果保持低位,轻量级判断器处理所有检查;如果飙升,高级判断器接管。
框架转变
之前(边界 + 事后): 之后(内联 + 自适应):
输入过滤器 查询监控器(每轮)
| |
v v
[智能体自由运行] 智能体步骤 1
| |
v v
[智能体自由运行] 工具监控器 --> 级联
| | |
v v v
[智能体自由运行] 智能体步骤 2 轻量级
| | 或高级
v v |
输出审计 工具监控器 <-------+
(为时已晚) |
v
风险重新注入
从”在门口检查一次,审计尸体”到”监控每一步,仅在需要时上报”,核心转变是具有成本意识的实时干预。
专家评审
选题眼光: 真实缺口。
金融智能体正从演示走向生产,“过滤输入、祈祷、审计输出”的范式对不可逆操作不够用。
论文针对一个真实痛点,现有安全研究(主要关注单轮拒绝)尚未跟上多步智能体工作流。
方法成熟度: 扎实的工程,不是突破。
组件(语义漂移检测、每步监控、分层验证)是单独已知的技术。
贡献在于集成和自适应路由策略。
风险重新注入的想法很巧妙——将安全系统变成反馈回路而非硬门。
没有被忽略的更简单方法;这是问题的正确复杂度级别。
实验诚意: 基线公平(边界过滤器、事后审计、始终高级判断器)。
FinVault 基准是为本文专门构建的,这引发可重现性问题——如果在外部数据集上评估会更有力。
4.7 倍成本降低的声明鉴于级联设计是可信的,但论文未报告延迟,这对生产部署很重要。
良性批准下降(41.1% → 39.3%)很小但非零;论文未深入调查误报。
写作功力: 摘要和引言简洁。
方法部分密集——图 2(系统架构)承担重任,但文本直到附录才端到端地走完一个具体例子。
用逐步跟踪重写第 3.2 节(级联模块)会让论文更易理解。
相关工作部分详尽但读起来像文献堆砌;围绕”为什么现有方法对多步智能体失败”的更紧凑框架会使叙事更锐利。
判决: 弱接收 — 用精心设计的解决方案和可靠的实证结果解决真实问题,但贡献是增量式的(已知技术的集成),评估仅限于单个论文特定基准。
要点总结
自适应验证路由: 级联模式(默认轻量级判断器,在累积风险时上报)可直接迁移到任何需要平衡安全性和成本的领域。
医疗智能体、法律文档处理、代码生成——任何有风险谱系且无法在每步都运行昂贵检查的地方。
风险重新注入作为反馈: 不要静默阻止或记录以供事后审查,而是将检测到的风险注入回智能体的上下文。
这将安全从二元门变成推理辅助。
智能体可以自我纠正、解释或上报。
适用于 LLM 智能体之外——把它想成自动化系统的”展示你的工作”。
每步监控优于边界过滤: 对于多步工作流,仅检查初始输入是不够的。
这在事后看来显而易见,但在实践中未被充分重视。
如果你正在构建执行操作序列的智能体,为每个操作配备安全检查。
对于不可逆操作,成本是值得的。