Skip to content

HITL 审计 Agent 未跟随会话选择的 AI 通道,始终使用系统默认模型 #256

Description

@xuyuanyyds

问题描述

在对话页面中选择其他 AI 通道后,主 Agent 会正确使用所选模型,但当人机协同模式
设置为「审计 Agent」时,HITL 审计 Agent 仍然使用系统默认 AI 通道,而不是当前会
话选择的 AI 通道。

例如1:

  • 系统默认通道:Qwen / qwen3.8-max
  • 当前会话手动选择:DeepSeek / deepseek-v4-pro
  • 主 Agent:实际使用 DeepSeek
  • 审计 Agent:仍然调用系统默认的 Qwen 接口

例如 2:
想要使用 pro 作为渗透模型,flash 作为审计模型,但是发现依旧走的都是 pro

Image

因此,前端显示的会话模型与实际审计请求使用的模型不一致。

环境

  • CyberStrikeAI:v1.7.14
  • 部署方式:本地运行
  • 审批模式:Agent 审查 / 审计 Agent
  • AI 协议:OpenAI-compatible
  • 浏览器:Chrome
  • 系统:macOS

复现步骤

  1. 在系统设置中配置至少两个不同的 AI 通道,例如:

    • 通道 A:Qwen
    • 通道 B:DeepSeek
  2. 将通道 A 设置为系统默认通道。

  3. 在对话页面中选择通道 B。

  4. 将人机协同设置为:

    • 模式:审批模式
    • 审批方:审计 Agent
  5. 发起一个会触发工具调用的任务,例如:

    扫描目标的开放端口
    
    
  6. 查看主 Agent 请求以及审计 Agent 请求实际访问的 API 地址、模型名称或服务端日
    志。

预期行为

当对话页面选择了某个 AI 通道时:

  • 主 Agent 应使用当前选择的 AI 通道;
  • HITL 审计 Agent 也应默认继承当前会话选择的 AI 通道;
  • 如果 hitl.audit_model 中显式配置了独立模型,则应优先使用显式配置的审计模型。

也就是说:

当前会话 AI 通道

主 Agent

HITL 审计 Agent

实际行为

当前主 Agent 会使用会话选择的 AI 通道,但 HITL 审计 Agent 仍然使用系统默认通
道。

表现为:

  • 前端对话底部显示的是所选模型;
  • 主 Agent API 请求使用所选模型;
  • 审计 Agent API 请求却使用系统默认模型;
  • 审计 Agent 的 Base URL、API Key 和 Model 均可能来自系统默认配置。

初步排查

前端请求会正常发送当前会话选择的通道,例如:

{
"aiChannelId": "deepseek-channel"
}

主 Agent 路径会通过 configForAIChannel 解析该通道,并使用解析后的配置。

但 HITL 审计 Agent 路径仍然使用全局配置:

h.config.Hitl.AuditModelEffective(h.config.OpenAI)

其中 h.config.OpenAI 是启动时应用的系统默认通道配置,没有使用当前请求解析后的
aiChannelId。

因此,问题可能出现在以下调用链之间:

ChatRequest.aiChannelId

configForAIChannel()

主 Agent 使用所选通道

HITL auditAgentReview()

auditLLMConfig()

h.config.OpenAI

始终使用系统默认通道

影响

  • 用户无法让不同会话使用不同的审计模型;
  • 前端显示的模型与实际审计模型不一致;
  • 可能导致审计模型能力、协议兼容性、费用和响应速度不符合预期;
  • 如果系统默认模型与会话模型的安全策略不同,可能导致审计结果不一致;
  • 调试审计失败时容易误判为当前会话模型的问题。

建议修复

建议将当前请求解析后的有效 AI 通道配置传递给 HITL 审计 Agent。

推荐逻辑:

如果 hitl.audit_model 有显式配置:
使用 hitl.audit_model
否则:
继承当前会话选择的 AI 通道

不要始终从全局的 h.config.OpenAI 获取审计 Agent 配置。

同时建议在审计日志或调试日志中记录以下非敏感字段,方便确认实际调用模型:

  • AI channel ID
  • provider
  • model
  • base URL(可脱敏)
  • reviewer
  • conversation ID

备注

基本都是 AI 自己排查分析得到的结果,所以仅供参考,以您实际为准,但确实存在上述图片说明的问题

本 Issue 关注的是:

会话选择的 AI 通道没有传递给 HITL 审计 Agent

而不是审计模型请求参数兼容性问题。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions