audn-ai/audn-cli

GitHub: audn-ai/audn-cli

面向 AI 代理的红队安全测试 CLI,提供 CI/CD 安全门禁与活动管理。

Stars: 2 | Forks: 0

# audn-cli [Audn.ai](https://audn.ai) 的命令行接口 — 语音和文本 AI 代理安全测试。运行对抗性活动,管控 CI/CD 管道,并从终端管理代理。 ## 安装 **macOS / Linux:** ``` curl -L https://audn.ai/cli/install.sh | sh ``` **Windows:** ``` iwr -useb https://audn.ai/cli/install.ps1 | iex ``` **从源码构建:** ``` go install github.com/audn-ai/audn-cli@latest ``` **或本地编译:** ``` git clone https://github.com/audn-ai/audn-cli.git cd audn-cli make build ``` ## 认证 ``` # 交互式登录(通过设备代码流程打开浏览器) audn-cli login # 或使用 PKCE 流程 audn-cli login --pkce # 查看当前登录用户 audn-cli whoami # 登出 audn-cli logout ``` **CI/CD 认证**(无需浏览器): ``` # 选项 1:API 密钥 export AUDN_API_SECRET="sk_your_secret_key" # 选项 2:Auth0 M2M 凭据 export AUTH0_M2M_CLIENT_ID="your-client-id" export AUTH0_M2M_CLIENT_SECRET="your-client-secret" # 选项 3:预获取的承载令牌 export AUDN_BEARER_TOKEN="your-token" ``` ## 命令 ### 网关检查(CI/CD) 运行安全网关检查 — 执行活动,等待完成,如果网关失败则退出并返回非零状态码。 ``` # 执行活动并对结果进行门禁 audn-cli gate check --campaign-id 675e383f-aab3-4545-bc19-3eea543abd31 # 如果存在高或严重严重性发现则失败 audn-cli gate check --campaign-id $CAMPAIGN_ID --fail-on-severity high # 要求最低 VAST 等级 audn-cli gate check --campaign-id $CAMPAIGN_ID --min-grade B # 用于机器解析的 JSON 输出 audn-cli gate check --campaign-id $CAMPAIGN_ID --json # 不等待完成 audn-cli gate check --campaign-id $CAMPAIGN_ID --wait=false ``` ### 活动 ``` # 列出活动 audn-cli campaigns list # 创建活动 audn-cli campaigns create --name "Q1 Audit" --agent-id $AGENT_ID # 获取活动详情 audn-cli campaigns get --id $CAMPAIGN_ID # 执行活动 audn-cli campaigns execute --id $CAMPAIGN_ID # 删除活动 audn-cli campaigns delete --id $CAMPAIGN_ID ``` ### 代理 ``` # 列出代理 audn-cli agents list # 创建代理 audn-cli agents create --name "IVR Bot" --platform twilio --phone +14155551234 # 获取代理详情 audn-cli agents get --id $AGENT_ID # 删除代理 audn-cli agents delete --id $AGENT_ID ``` ## CI/CD 集成 ### GitHub Actions ``` name: Voice Agent Security Test on: [push] jobs: security-test: runs-on: ubuntu-latest steps: - name: Install Audn CLI run: curl -L https://audn.ai/cli/install.sh | sh - name: Run Security Gate env: AUDN_API_SECRET: ${{ secrets.AUDN_API_SECRET }} run: | audn-cli gate check \ --campaign-id ${{ vars.CAMPAIGN_ID }} \ --fail-on-severity high \ --min-grade B ``` ### GitLab CI ``` security-test: image: golang:1.22 script: - curl -L https://audn.ai/cli/install.sh | sh - audn-cli gate check --campaign-id $CAMPAIGN_ID --fail-on-severity high variables: AUDN_API_SECRET: $AUDN_API_SECRET ``` ### Jenkins ``` pipeline { agent any environment { AUDN_API_SECRET = credentials('audn-api-secret') } stages { stage('Security Test') { steps { sh 'curl -L https://audn.ai/cli/install.sh | sh' sh 'audn-cli gate check --campaign-id ${CAMPAIGN_ID} --fail-on-severity high' } } } } ``` ## 全局标志 | 标志 | 环境变量 | 描述 | |------|-------------|-------------| | `--api-secret` | `AUDN_API_SECRET` | API 密钥(sk_...) | | `--bearer-token` | `AUDN_BEARER_TOKEN` | 预获取的承载令牌 | | `--m2m-client-id` | `AUTH0_M2M_CLIENT_ID` | Auth0 M2M 客户端 ID | | `--m2m-client-secret` | `AUTH0_M2M_CLIENT_SECRET` | Auth0 M2M 客户端密钥 | | `--api-url` | `AUDN_API_URL` | API 基础 URL(默认:https://audn.ai) | | `--json` | `AUDN_OUTPUT_JSON` | JSON 输出 | ## 网关检查标志 | 标志 | 环境变量 | 默认值 | 描述 | |------|-------------|---------|-------------| | `--campaign-id` | - | - | 要执行的活动 | | `--agent-id` | `AUDN_AGENT_ID` | - | 要测试的代理(遗留) | | `--fail-on-severity` | `AUDN_FAIL_ON_SEVERITY` | `critical` | 失败阈值 | | `--min-grade` | `AUDN_MIN_GRADE` | - | 最低 VAST 等级(A-F) | | `--wait` | `AUDN_WAIT` | `true` | 等待完成 | | `--timeout` | `AUDN_TIMEOUT` | `600` | 超时时间(秒) | ## 凭证存储 通过 `audn-cli login` 获取的凭证存储在: | 操作系统 | 路径 | |----------|------| | macOS / Linux | `~/.config/audn/credentials.json` | | Windows | `%APPDATA%\audn\credentials.json` | 文件权限设置为 `600`(仅所有者可读写)。 ## 直接下载 | 平台 | 架构 | 下载 | |------|-------------|------| | macOS | Apple Silicon(arm64) | [audn-darwin-arm64](https://audn.ai/cli/latest/audn-darwin-arm64) | | macOS | Intel(amd64) | [audn-darwin-amd64](https://audn.ai/cli/latest/audn-darwin-amd64) | | Linux | x86_64 | [audn-linux-amd64](https://audn.ai/cli/latest/audn-linux-amd64) | | Linux | arm64 | [audn-linux-arm64](https://audn.ai/cli/latest/audn-linux-arm64) | | Windows | x86_64 | [audn-windows-amd64.exe](https://audn.ai/cli/latest/audn-windows-amd64.exe) | ## 开发 ``` # 构建 make build # 构建所有平台 make build-all # 运行测试 make test # 代码检查 make lint # 完整 CI 检查 make ci ``` ## 许可证 GPL-3.0 — 见 [LICENSE](LICENSE)。该 CLI 为开源软件。Audn.ai API 受 [Audn.ai 服务条款](https://audn.ai/terms) 约束。 **[audn.ai](https://audn.ai)** — AI 代理的持续安全测试。
标签:AI代理, API安全, API密钥认证, Auth0 M2M, CI/CD安全, DevSecOps, DNS解析, EVTX分析, Go语言, JSON输出, Llama, Makefile构建, PKCE, SEO: AI安全测试, SEO: audn-cli, SEO: CI/CD安全门, Shell脚本, 上游代理, 命令行界面, 安全测试, 安全门禁, 对抗性活动, 开发者工作流, 开源项目, 承载令牌, 攻击性安全, 文本AI安全, 文档结构分析, 日志审计, 源码安装, 程序破解, 结构化查询, 自动化安全, 认证登录, 设备码流程, 语音AI安全