开源 Agent Skill · MIT 许可

让你的 agent 检查网站安全。

在自己的工作区检查网站源码,或通过 SiteXray 检查已经上线的网站。一个开源 skill,支持两种检查方式。

安装 skill

在项目中运行下方命令,然后选择你的 coding agent。仓库采用标准 Agent Skill 格式,可用于 Codex、Claude Code、Cursor 等兼容的 agent。

npx skills add littleben/sitexray --skill sitexray

安装工具需要 Node.js 22.20 或以上版本。可选的扫描脚本使用 Python 3.9+ 标准库。调用线上扫描无需注册,也不需要 API key。

检查项目源码

agent 使用工作区内的代码检查身份验证、访问控制、密钥暴露、不安全的输入处理和部署配置。源码保留在本地,检查结果包含文件位置和具体修复建议。

使用 $sitexray 检查这个网站项目的安全问题。列出已确认的问题、相关文件,以及最小可行的修复建议。

扫描线上网站

agent 调用 SiteXray 检查 TLS、安全响应头、Cookie、暴露文件、公开资源中的密钥及软件版本标识。返回评分、问题列表,以及保存成功后的报告分享链接。

使用 $sitexray 扫描 https://your-site.example,这是我自己的网站。解释发现的问题,并给我报告链接。

连接在线 MCP

将这个地址添加到支持 Streamable HTTP MCP 的 agent,直接调用网站的扫描服务。无需本地启动服务、注册账号或配置 API key。

https://sitexray.net/mcp

使用 mcpServers JSON 格式且支持 HTTP 传输的客户端(例如 Claude Code),可添加以下配置。其他客户端可能只需填写地址并选择传输类型。

{
  "mcpServers": {
    "sitexray": {
      "type": "http",
      "url": "https://sitexray.net/mcp"
    }
  }
}

scan_website — 检查已获授权的公开网站。传入 url、authorized: true 和可选的 locale(en 或 zh),返回问题、评分和可分享的 reportUrl。

get_report — 传入 reportId 和可选的 locale,读取已保存的报告,不会重新扫描目标。

{ "url": "https://your-site.example", "authorized": true, "locale": "en" }

扫描请预留最多 90 秒。MCP 与网站接口共享每位客户端每 8 秒一次的扫描限制;触发限流时,工具错误会包含 retryAfterSeconds。线上扫描会生成不公开列出、设为 noindex 的报告,持有链接的人均可查看。使用任务中已明确的授权,无需重复询问。

直接调用网站接口

具备 HTTP 工具的 agent 可以直接调用扫描 API,无需安装。请将示例 URL 替换为你拥有或获准测试的网站,只有已确认测试权限时才将 authorized 设为 true。

curl --max-time 90 https://sitexray.net/api/scan \
  -H 'Content-Type: application/json' \
  --data '{"url":"https://your-site.example","authorized":true}'

成功响应包含 code: 0,以及带评级、评分、问题和扫描时间的 data 对象。存在 data.id 时,可通过 https://sitexray.net/report/REPORT_ID 查看已保存的报告。完整 skill 中包含响应和错误说明。

请求超时可设为 90 秒。每个客户端每八秒可调用一次,相同网站约五分钟内可能复用已有结果。遇到 HTTP 429 时请遵循 Retry-After。

两种方式各能检查什么

本地检查不会将源码发送给 SiteXray。线上扫描会发送目标 URL,并保存为任何持链接者都能查看的报告,报告页面设有 noindex。被动扫描无法检查登录后的代码逻辑,也不能证明网站绝对安全。

试用网站扫描器