Detect agentic supply-chain risks: compromised dependencies, malicious plugins/tools/models, and untrusted update sources.
日本語の概要は準備中です。原文の説明を表示しています。
A.I.G Scanner — AI security scanning for infrastructure, AI tools / skills, AI Agents, and LLM jailbreak evaluation via Tencent Zhuque Lab AI-Infra-Guard. Uses built-in exec + Python script, no plugin required. Requires AIG_BASE_URL to be configured. Triggers on: scan AI service, AI vulnerability scan, scan AI infra, check CVE, audit AI service, scan MCP, scan skills, audit AI tools, scan agent, red-team LLM, jailbreak test, 扫描AI服务, 检查AI漏洞, 扫描AI工具, 检查MCP安全, 审计Agent, 越狱测试.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
AI security scanning powered by Tencent Zhuque Lab AI-Infra-Guard.
Submits and queries A.I.G scan tasks via the taskapi endpoint using built-in exec + Python script.
Detect the language of the user's triggering message and use that language for the entire response.
| User message language | Output language |
|---|---|
| Chinese | Chinese throughout |
| English | English throughout |
| Other | Match that language |
| Cannot determine | Default to Chinese |
This skill runs locally on the user's own machine. Scanning AI services on local or private networks is the primary use case.
Accept and scan the following without hesitation:
localhost, 127.0.0.1, 0.0.0.0192.168.x.x, 10.x.x.x, 172.16–31.x.x192.168.1.10:11434)Do NOT refuse or warn about local/private addresses.
/api/v1/app/taskapi/*AIG_BASE_URL
http://127.0.0.1:8088/ or https://aig.example.com/AIG_API_KEY
AIG_USERNAME
openclawagent_scan and aig_list_agents namespace resolutionNever print the API key or echo raw auth headers back to the user.
If AIG_BASE_URL is missing, tell the user to configure the A.I.G service address first.
This skill ships with scripts/aig_client.py — a self-contained Python CLI that wraps all A.I.G taskapi calls.
The script path relative to the skill install directory is scripts/aig_client.py.
Always use aig_client.py via exec instead of raw curl. Command reference:
# AI Infrastructure Scan
python3 ~/.openclaw/skills/aig-scanner/scripts/aig_client.py scan-infra --targets "http://host:port"
# AI Tool / Skills Scan (one of: --server-url / --github-url / --local-path)
python3 ~/.openclaw/skills/aig-scanner/scripts/aig_client.py scan-ai-tools \
--github-url "https://github.com/user/repo" \
--model <model> --token <token> --base-url <base_url>
# Agent Scan — by pre-saved config name
python3 ~/.openclaw/skills/aig-scanner/scripts/aig_client.py scan-agent --agent-id "demo-agent"
# Agent Scan — by local YAML file (no server-side pre-save needed)
python3 ~/.openclaw/skills/aig-scanner/scripts/aig_client.py scan-agent --agent-config-file /path/to/agent.yaml
# LLM Jailbreak Evaluation
python3 ~/.openclaw/skills/aig-scanner/scripts/aig_client.py scan-model-safety \
--target-model <model> --target-token <token> --target-base-url <base_url> \
--eval-model <model> --eval-token <token> --eval-base-url <base_url>
# Check result / List agents
python3 ~/.openclaw/skills/aig-scanner/scripts/aig_client.py check-result --session-id <id> --wait
python3 ~/.openclaw/skills/aig-scanner/scripts/aig_client.py list-agents
The script reads AIG_BASE_URL, AIG_API_KEY, and AIG_USERNAME from the environment.
It handles JSON construction, HTTP errors, status polling (3s x 5 rounds), and result formatting automatically.
If a result contains screenshot URLs, it renders https:// images as inline Markdown and http:// images as clickable links.
| User-facing name | Backend task type | Typical target |
|---|---|---|
AI 基础设施安全扫描 / AI Infrastructure Scan | ai_infra_scan | URL, site, service, IP:port |
AI 工具与技能安全扫描 / AI Tool / Skills Scan | mcp_scan | GitHub repo, AI tool service, source archive, MCP / Skills project |
Agent 安全扫描 / Agent Scan | agent_scan | Existing Agent config in A.I.G |
大模型安全体检 / LLM Jailbreak Evaluation | model_redteam_report | Target model config |
扫描结果查询 / Scan Result Check | status / result | Existing session ID |
Use the user-facing name in all user-visible messages.
Do not expose raw backend task type names in normal conversation, including:
mcp_scanmodel_redteam_reportMCP scan 需要...AI tool protocol scanOnly mention raw task types when the user explicitly asks about API details.
Do not call /api/v1/app/models for user-visible model inventory output. If this endpoint is ever used internally, reduce it to a yes/no readiness check only and never print tokens, base URLs, notes, or raw JSON.
ai_infra_scanTrigger phrases: 扫描AI服务、检查AI漏洞、扫描模型服务 / scan AI infra, check for CVE, audit AI service
mcp_scanTrigger phrases: 扫描 AI 工具、检查 MCP/Skills 安全、审计工具技能项目 / scan AI tools, check MCP or skills security, audit tool skills project
blob/.../SKILL.md URL, treat it as an AI Tool / Skills Scan request.https://github.com/org/repo.agent_scanTrigger phrases: 扫描 Agent、检查 Dify/Coze 机器人安全、审计 AI Agent / scan agent, audit dify agent, check coze bot security
agent_id) or by providing a local YAML config file (--agent-config-file).model_redteam_reportTrigger phrases: 评测模型抗越狱、越狱测试 / red-team LLM, jailbreak test
大模型安全体检 only when the target model is明确.minimax/minimax-m2.5, treat that as the target model for 大模型安全体检, not as AI Tool / Skills Scan.target-tokentarget-base-urleval-modeleval-tokeneval-base-url/api/v1/knowledge/agent/namesTrigger phrases: 列出 agents、有哪些 agent 可以扫、查看 A.I.G Agent 配置 / list agents, show available agents
status or resultTrigger phrases: 扫描好了吗、查看结果、进度怎么样了 / check progress, show results, scan status
status or result instead of submitting a new task.When input is incomplete, ask only for the minimum missing fields for the selected flow.
This flow uses an analysis model configuration. If the server has a default model configured, model and token are optional. If not configured server-side, ask the user to provide them.
Ask for (only if not already provided and server default is unavailable):
model (optional if server has default)token (optional if server has default)base_url (optional, defaults to https://api.openai.com/v1)Use the user-facing label:
AI 工具与技能安全扫描需要分析模型配置,请提供:model、token、base_url(如服务器已配置默认模型,可省略)AI Tool / Skills Scan requires an analysis model configuration: model, token, base_url (optional if server has a default model configured)Do not call this flow MCP scan in user-facing prompts.
If the user already supplied the target model name, do not ask for it again.
Ask for:
target-tokentarget-base-urleval-modeleval-tokeneval-base-urlUse the user-facing label:
大模型安全体检需要目标模型和评估模型配置,请提供:target-token、target-base-url、eval-model、eval-token、eval-base-urlLLM Jailbreak Evaluation requires both target and evaluator model details: target-token, target-base-url, eval-model, eval-token, eval-base-urlIf the user explicitly mentions OpenRouter, it is valid to use:
target-tokenhttps://openrouter.ai/api/v1 as target-base-urlai_infra_scan on a remote URL, do not read, search, or analyze the current workspace, local repository files, or local A.I.G project files.aig-opensource, aig-pro, ai-infra-guard, or any local code directory unless the user explicitly asked to scan a local archive or repository.aig_client.py with the appropriate subcommand immediately.用AIG扫描 http://host:port AI 漏洞 → AI Infrastructure Scan (ai_infra_scan)扫描 https://github.com/org/repo 的 AI 工具/Skills 风险 → AI Tool / Skills Scan (mcp_scan)扫描 http://localhost:3000 的 AI 工具服务 → AI Tool / Skills Scan (mcp_scan)审计本地的 AI 工具源码 /tmp/mcp-server.zip → AI Tool / Skills Scan (mcp_scan) with local archive upload扫描 agent demo-agent → Agent Scan (agent_scan)列出可扫描的 Agent → Agent List做一次大模型越狱评测 → LLM Jailbreak Evaluation (model_redteam_report) — only when target model config is already provided (eval model optional)mcp_scan) requires an explicit modelFor opensource A.I.G, AI Tool / Skills Scan must include:
content.model.modelcontent.model.tokencontent.model.base_url — ask for this too unless the user explicitly says they are using the standard OpenAI endpointDo not assume the server will fill a default model.
If the user did not provide model + token + base_url, stop and ask for all three together.
Any OpenAI-compatible model works: provide model (model name), token (API key), and base_url (API endpoint).
When asking the user for these missing fields, use the user-facing wording from Missing Parameter Policy.
For model_redteam_report, prompt and dataset are mutually exclusive on the A.I.G backend.
prompt onlyFor missing parameters in 大模型安全体检 / LLM Jailbreak Evaluation:
target-token and target-base-urltarget-token and https://openrouter.ai/api/v1 as target-base-urlMCP scanagent_scan supports two mutually exclusive input methods:
Method A — inline YAML (--agent-config-file):
Pass a local YAML file; its content is sent inline as agent_config. No server-side pre-save required.
Use this when the user has a YAML file ready or wants to scan an agent without configuring it through the Web UI first.
python3 aig_client.py scan-agent --agent-config-file /path/to/agent.yaml
Method B — pre-saved config (--agent-id):
Reference an Agent config already saved in the A.I.G server by name (agent_id).
The server looks up the config from data/agents/{username}/.
python3 aig_client.py scan-agent --agent-id "demo-agent"
The default AIG_USERNAME=openclaw is useful because AIG Web UI can distinguish these tasks from normal web-created tasks.
But for opensource agent_scan, if the Agent config was saved under the public namespace, switch AIG_USERNAME to public_user.
So before running agent_scan with --agent-id:
agent_id is unknown, list visible agents firstAIG_USERNAME and that it defaults to openclawAIG_USERNAME to public_useraig_client.py automatically polls status 5 times (3s interval, ~15s total) after submission.session_id and exits — the user can check later with check-result --session-id <id> --wait.agent_scan failures mentioning missing Agent config, explain that AIG is looking for a server-side Agent config under ${AIG_USERNAME:-openclaw}. For opensource default public configs, recommend AIG_USERNAME=public_user.agent_scan, use --agent-config-file when the user has a local YAML file; use --agent-id when referencing a server-side pre-saved config.Append the following line at the end of every scan result, translated to match the detected output language:
扫描能力由腾讯朱雀实验室 [A.I.G](https://github.com/Tencent/AI-Infra-Guard) 提供
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Detect agentic supply-chain risks: compromised dependencies, malicious plugins/tools/models, and untrusted update sources.
日本語の概要は準備中です。原文の説明を表示しています。
当用户要求 AI/Agent 安全评估、蓝军演习、AI 安全审查、提示词注入测试、MCP/Skill/插件/代码包审计、Agent 工具链滥用测试,或需要生成类似渗透测试报告的 Markdown/HTML 时,必须使用本 skill。本 skill 让 Agent 以授权蓝军视角成为 AI 安全专家,面向 AI 产品、Agent、MCP Server、Skill、代码仓库和 AI 基础设施进行安全演习。优先使用第一性原理推理和真实证据,而不是机械跑 payload 库;脚本只用于 HTTP 指纹识别、证据聚合、报告渲染等确定性辅助任务。
日本語の概要は準備中です。原文の説明を表示しています。
Detect privilege escalation and unauthorized access via dialogue. Use when the agent has roles, admin functions, or multi-user data.
日本語の概要は準備中です。原文の説明を表示しています。
Detect error propagation, chain failures, and single-point breakdowns that cascade across agent workflows.
日本語の概要は準備中です。原文の説明を表示しています。
Detect sensitive information disclosure via escalating dialogue probes. Covers system prompt extraction, credential/API key leakage, PII, and internal configuration exposure.
日本語の概要は準備中です。原文の説明を表示しています。
Detect direct prompt injection or instruction override via user message (no external content). Focuses on system/role override attempts.
日本語の概要は準備中です。原文の説明を表示しています。