Skip to content

Latest commit

 

History

History
89 lines (54 loc) · 6.34 KB

tools.md

File metadata and controls

89 lines (54 loc) · 6.34 KB

工具

使用者指南 · 前一篇:会话与上下文 · 下一篇:Skills 与知识

工具是 Agent 读取和改变环境的方式。模型看到工具名称、说明和参数结构,再请求执行;aiscan 返回实际结果,模型据此继续工作。可用集合取决于发行版及已安装扩展,运行时可用 /status 查看。

文件与命令

文件工具支持读取、查找和修改内容,bash 支持命令式工作。工作目录决定相对路径的起点,宿主权限决定进程实际可以访问的环境。会话本身不提供容器或文件系统隔离。

bash 既可以执行宿主上的程序,也可以调用 aiscan 注册的命令。例如 gogo、spray 和 scan 可以直接调用内置扫描器,无需在 PATH 中另放一个同名程序;普通外部命令仍要求系统安装对应工具。

交互模式的 ! 前缀直接执行命令,适合查看帮助或手动完成明确的操作:

aiscan> !gogo -h
aiscan> !tmux ls

内置命令和外部命令可以通过执行适配层组成管道。不同命令有自己的参数作用域,例如 Agent 的 -p 表示 prompt,gogo 的 -p 表示端口。参数细节见命令参考。

工具准入与审批

Guardrail 在工具执行前检查本次调用的参数和工作目录。先按工具审批配置启用 JEV 策略;仅设置 API key 不会开启检查。

模式 被标记的调用如何处理
auto(默认) 再次判断实际后果;明确无害时执行,后果不确定或有害时返回工具错误,Agent 继续工作
safe 等待人工批准或拒绝;首次判断为 review 或 block 的调用均进入审批

首次判断为 record 的调用直接继续。每次调用都会重新检查,既有批准只适用于一次调用。交互 CLI 会提示待审批操作,可用:

/guardrail pending
/guardrail approve <operation-id>
/guardrail reject <operation-id>
/guardrail pending --session <session-id>

默认范围是当前会话及其仍存活的子会话,--session 可选择其他存活会话。批准使原调用执行一次;拒绝、审批超时或取消返回工具错误。非交互运行需通过控制客户端处理审批,或等待超时。

Web 在工具所属轮次内显示审批卡片与处理结果,侧栏标记需要处理的会话。断线时审批按钮禁用,重连后重新查询运行时状态;历史卡片保留记录,重启不会恢复可执行审批。批准记录与工具执行结果分别展示,批准本身不表示执行成功。

顶部 Guardrail 菜单可切换自动或人工模式;Settings → Guardrail 设置策略与凭据。模式切换仅影响新调用,已有审批继续等待。凭据和策略变更会重新构建 Profile,并取消原有执行与待审批操作。连接测试向 JEV 发送本地只读操作的描述,不运行工具,降级结果不算连接成功。

Guardrail 是工具调用的检查边界。已启动子进程内部的操作和原始 PTY 输入仍受宿主权限与环境控制。JEV 会收到脱敏后的工具参数和调用上下文;常见凭据会被遮盖,但任意命名或编码的秘密不保证被识别。运行前应按实际数据范围配置凭据、网络和执行环境。

后台任务

较长的命令可以在等待一段时间后转入后台,使 Agent 继续处理其他工作。以下是模型调用 bash 时的参数形态:

{"command":"某个长时间运行的命令","wait":5,"timeout":120}

wait 表示此次工具调用在前台等待的秒数。5 秒后尚未结束,工具返回后台 session ID,命令继续运行;wait: 0 或省略则等待完成。timeout 是命令的总运行期限,转入后台后仍生效;省略使用默认 600 秒,显式设为 0 表示不设置总期限。

完成结果会送回 Agent 会话,运行期间也可通过 tmux 查看输出、发送交互输入或停止任务。这是 aiscan 自己的工作管理命令,不要求系统安装 tmux。

aiscan> !tmux ls
aiscan> !tmux kill -t <session-id>

长输出可能只在模型上下文中保留部分内容。需要查看较早输出时使用工具返回的读取提示,完整管理语法见终端命令说明。远程 API 的前台执行入口有独立契约,不能把 Agent 的后台等待参数等同于所有入口的行为。

网络与代理

aiscan 的工具网络出口由本地代理 Hub 管理。--proxy 设置初始上游,Agent 可以通过 proxy 命令管理和切换节点;mitm 用于查看捕获的请求和响应。稳定的本地地址使工具可以复用路由配置。

aiscan scan -i http://127.0.0.1:3000 --verify=off --proxy socks5://127.0.0.1:1080

内置客户端接收代理配置,外部程序通过代理与 CA 环境变量接入。忽略这些变量的程序不一定经过 Hub;上游切换也不会把已经建立的 TCP 连接迁移到另一出口。

HTTPS 捕获依赖客户端信任 Hub CA。--mitm=false 关闭捕获,保留路由。模型 API 使用独立的 --llm-proxy,与扫描工具的出口分别配置。协议、节点管理和捕获限制见代理参考。

浏览器与外部工具

full 版的浏览器支持页面导航、交互、截图和网络捕获。持久浏览器会话保留多步交互状态,适合需要登录或 JavaScript 渲染的页面;它的状态与 Agent 的对话历史不同,恢复聊天记录不会恢复旧浏览器实例。具体命令见浏览器说明。

Arsenal 管理外部安全工具,并将安装目录加入子进程 PATH。安装后的工具仍需要满足平台与运行依赖。原生桌面录屏是另外的可选构建,见 record。

搜索与资源

web_search 获取网络搜索结果,fetch 读取 URL 内容。搜索优先使用支持该能力的 Provider,必要时使用已配置的 Tavily;没有可用后端时会失败。搜索结果提供线索,具体判断仍需读取和核实来源。

Cyberhub 面向已经加载的指纹和 POC 资源,支持按指纹、CVE 等查询关联。它与公共网络搜索的用途不同。资源配置及扫描器用法见参考手册。