{"id":"antinet-security-scan","name":"antinet-security-scan","summary":"システムに入力されるファイルやURLのセキュリティおよびコンプライアンススキャンを実施し、パス/拒否の判定およびスキャンレポートを出力し、すべての文書処理の必須条件となります。","body":"# 合规安检 Skill（锦衣卫）\n\n## 使用方式\n- 由锦衣卫 Worker 在收到文件/URL 时调用，作为流水线的第一道闸门。\n- 输出结构化判定（`pass` / `reject`），并写入 provenance 交由太史阁留痕。\n\n## 输入（Input）\n- `target`：待检对象，二选一\n  - 本地文件路径（PDF / PPT / Excel / Word / 图片）\n  - 外部 URL（需先解析域名）\n- `policy_ref`：（可选）覆盖默认策略的合规规则集引用\n\n## 输出（Output）\n- `verdict`：`pass` 或 `reject`\n- `report`：安全扫描报告，含命中的黑名单项、许可状态、风险等级\n- `trace_id`：本次扫描的 provenance 追踪 ID（用于太史阁留痕）\n\n## 依赖（Dependencies）\n- Sci-Hub 等已知违规域名黑名单（本地 CSV/JSON）\n- OA 文档许可校验库（本地规则）\n- 文件类型探测（`python-magic`）\n\n## 失败处理（Failure Handling）\n- 扫描服务不可用：**拒绝文件并告警**，绝不降级放行（零信任底线）。\n- 文件类型无法识别：标记 `reject` 并写入原因，交由管理员确认。\n- 黑名单库读取失败：回退到「全拒 + 告警」保守策略，并提示运维修复。\n\n## 复用价值（Reuse Value）\n- 与具体业务解耦：任何文档处理系统（RAG、知识库、合同审查）均可直接挂载此 Skill 作入口安检。\n- 判定标准可配置：通过替换 `policy_ref` 适配不同行业的合规基线。\n\n## 复赛代码包执行（runnable package）\n- 真实入口：`scripts/run_security_scan.py`\n- 执行等价于 `core.runtime.AgentSession.run_stage(\"security-scan\")`，调用 `security.jinyiwei.JinYiWeiAgent`（纯 Python，零外部依赖，可离线运行）。\n- 运行：`python skills/security-scan/scripts/run_security_scan.py`\n- 产物：`examples/snse_survey/skill_outputs/security_scan.json`（黄卡 + 扫描报告）。","author":"@anbeime","ownerProfile":null,"authorContacts":null,"sourceUrl":"https://github.com/anbeime/skill/tree/main/skills/antinet-security-scan","license":"Apache-2.0","category":"document","lang":"multi","tokens":523,"stars":0,"calls30d":2,"claimed":false,"visibility":"public","origin":"crawler","version":"0.1.0","createdAt":"2026-08-22","updatedAt":"2026-08-22","files":[{"path":"LICENSE","size":3065,"sha256":"4a0174fc00d8750df6d0b0a1a69611b02cc22bde51e5e061401ccae7a893ce2b"},{"path":"scripts/run_security_scan.py","size":2532,"sha256":"f0e776eaf5d35916d0db07e38dd0ac8515d913099257805c3d359924fb5816d1"}],"requires":{"mcp":[],"tools":[]},"safety":{"flags":[],"scannedAt":"2026-08-22","hasScripts":true,"networkEndpoints":[]}}