面向网络安全的「一切皆扩展」agent harness
cyber-harness 是面向网络安全的 Agent 运行框架。它把模型循环、工具执行、知识、观测和协作按同一套 Extension 生命周期组装;你可以使用现成发行版,也可以在 Go 应用里选择自己的能力组合。
aiscan 是参考发行版:Agent、核心扫描器、代理、Skills 和 IOA 协作;aiscan-full 进一步提供 Web 工作台、浏览器自动化、被动测绘和深度爬取。
请只在明确授权的目标上使用。
从 GitHub Releases 下载对应平台的 aiscan 或 aiscan-full,解压并加入 PATH。安装、PowerShell 配置、模型连接和首个任务的完整步骤见 快速上手。
# 已配置模型后:完成一次 Agent 任务,保存事件记录
aiscan agent -p "只读查看当前目录并解释文件结构" -o first-run.jsonl
# 对自己的本地靶场执行规则扫描,关闭 AI 验证
aiscan scan -i http://127.0.0.1:3000 --verify=off
# 完整版:启动 Web 工作台,使用启动时打印的 access key 登录
aiscan-full webAgent 由模型决定下一步工具调用;scan 由规则和扫描事件驱动,可按需启用 AI 阶段。二者的关系见 概念与执行全景。
运行 aiscan init 配置用户级模型(~/.cyber/cyber.yaml);项目覆盖使用 aiscan init --project。这些是 cyber-harness 公共命令,通用 agent CLI 同样支持;重复初始化保留已有文件。详见配置与初始化。
cyber.yaml 示例:
llm:
provider: openai
base_url: https://api.deepseek.com/v1
model: deepseek-chat通过 OPENAI_API_KEY 提供密钥。Anthropic-compatible 服务使用 provider: anthropic 和相应配置。协议、profile、环境变量优先级见 配置参考。
从文档首页进入。正文描述当前源码,使用 release 时选择对应 Git tag。
基本概念解释 harness、模型、工具、会话和知识的关系,不要求先了解 Go。
使用者指南从安装和第一次任务开始,逐步介绍会话、工具、Skills、扫描与协作。
开发者指南面向基于框架构建应用的人,从可运行的工具组合推进到会话嵌入、扩展开发和宿主接入。
架构解释装配与生命周期、Agent 循环、执行环境、上下文及数据流。完整配置与命令单独放在参考页。
git clone --recurse-submodules https://github.com/chainreactors/cyber-harness.git
cd cyber-harness
make # 标准发行版
make agent # 最小本地 Agent
make full # 前端 + 完整发行版
make ARSENAL_EMBED=1 # 下载工具并嵌入,运行时自动释放Go 版本见 go.mod;full 还需要 Node.js/npm,standard 与 full 均使用 CGO_ENABLED=0。构建标签由 editions.env 定义;原生录屏需要 CGO,另见 record。工具清单、离线分发和版本跟随见 内嵌 Arsenal 工具。
自定义发行版使用 harness.BaseExtensions(config) 取得基础扩展,追加自己的扩展后交给 extension.New,由宿主持有 Load/Close;完整参考发行版的组装位于 cmd/aiscan。嵌入方可用 pkg/harness 构造通用宿主,或自行组合扩展;它不等价于完整 aiscan 发行版。可运行例子见 examples/custom,注册工具的最小示例见 扩展开发。
先阅读 扩展开发 与 文档维护标准。提交 PR 时描述具体行为变化、影响的入口和验证结果;行为变化应同步更新对应教程或参考页。
- 本工具仅面向合法授权的企业安全建设行为及个人学习用途,如您需要测试本工具的可用性,请自行搭建靶机环境。
- 在使用本工具进行检测时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。请勿对非授权目标进行扫描。
- 如您在使用本工具的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任。
- 在安装并使用本工具前,请您务必审慎阅读、充分理解各条款内容,限制、免责条款或者其他涉及您重大权益的条款可能会以加粗、加下划线等形式提示您重点注意。
- 除非您已充分阅读、完全理解并接受本协议所有条款,否则,请您不要安装并使用本工具。您的使用行为或者您以其他任何明示或者默示方式表示接受本协议的,即视为您已阅读并同意本协议的约束。
本项目使用 GNU Affero General Public License v3.0 (AGPL-3.0) 许可。
- chainreactors — 组织
- IOA — Internet of Agents 多 agent 协作协议
- sdk — 扫描器 SDK
- proxyclient — 多协议代理客户端
- crtm — 安全工具包注册中心
- utils — 共享工具库 & PTY 管理器
- parsers — 协议和数据解析器