security-scan
作者 affaan-msecurity-scan 技能会使用 AgentShield 审计你的 Claude Code `.claude/` 配置,检查密钥泄露、风险较高的 MCP 配置、容易被注入的指令、危险的绕过标志,以及薄弱的 agent 或 hook 定义。适合在提交前或接入前进行可重复的安全检查。
该技能评分为 78/100,说明它很适合目录中需要聚焦 Claude Code 配置安全审计的用户。它提供了足够具体的工作流指导,便于较有把握地安装使用;但也要注意,它依赖外部工具,且快速上手包装还可以更紧凑。
- 明确说明了适用场景:新项目、配置变更、提交前、入职接手,以及周期性检查。
- 扫描范围具体,覆盖 `CLAUDE.md`、`settings.json`、`mcp.json`、hooks 和 `agents/*.md`,便于 agent 准确理解要检查什么。
- 使用指导实用,包含 AgentShield 的安装/运行命令,以及密钥、注入模式、风险 MCP servers 和命令注入等明确安全检查项。
- 需要先安装 AgentShield,因此该技能并非完全自包含。
- 没有提供支持文件或安装命令,部分配置和执行细节可能需要用户自行补齐。
security-scan 技能概览
security-scan 的作用
security-scan 技能会使用 AgentShield 审计 Claude Code 项目的 .claude/ 配置,检查其中的安全风险。它会查找密钥泄露、风险较高的 MCP server 配置、容易被注入的指令、危险的绕过标志,以及薄弱的 agent 或 hook 定义。
适合谁安装
如果你负责维护 Claude Code 配置、审查 AI agent 搭建,或者需要在提交变更前做一次可重复的安全检查,就应该使用 security-scan 技能。它最适合仓库负责人、平台工程师,以及任何接手一个 .claude 卫生状况未知的现有项目的人。
它在实际工作中的价值
通用 prompt 往往会漏掉配置层面的特定威胁。这个技能瞄准的正是现实中的任务:快速判断一个 Claude Code 配置是否安全到值得信任,并且指出风险具体藏在哪里,方便你在扩散之前修掉。
如何使用 security-scan 技能
安装并确认工具链
执行 security-scan install 时,把技能从目录对应的 repo 路径添加进来:
npx skills add affaan-m/everything-claude-code --skill security-scan
然后确认 AgentShield 可用:
npx ecc-agentshield --version
如有需要,可以通过 npm install -g ecc-agentshield 全局安装,或者直接运行:
npx ecc-agentshield scan .
给技能提供正确输入
security-scan usage 最适合对准一个具体的 Claude Code workspace,并说明你正在审查的变更。好的输入示例是:“扫描这个 repo 的 .claude/ 文件夹,重点检查新增 MCP server 和 hook 更新之后是否有密钥暴露、注入路径或过宽的工具访问权限。”
按这个顺序读取文件
先看 SKILL.md,再检查 CLAUDE.md、.claude/settings.json、mcp.json、hooks/ 和 agents/*.md。这个顺序和扫描面一致,能帮助你把发现结果对应回具体配置文件,而不是把输出当成泛泛的安全报告。
用复审循环,不要只跑一次
在提交前、配置修改后,以及接手一个仓库时都运行扫描。对于 security-scan for Security Audit,重点看每个发现是否会改变信任边界:密钥应当移除,危险命令应当收窄,任何 prompt injection 暴露都应改写成明确约束。
security-scan 技能常见问题
security-scan 只适用于 Claude Code 用户吗?
是的。这个技能是围绕 .claude/ 里的 Claude Code 配置设计的,不是通用应用安全扫描,也不是源码漏洞挖掘工具。
它和普通 prompt 有什么不同?
普通 prompt 可能只是让模型做一次安全审查,但 security-scan 直接编码了需要检查的具体面:CLAUDE.md、settings、MCP servers、hooks 和 agent 文件。这样更适合重复审查,也不那么依赖模型去猜“安全”到底指什么。
它适合初学者吗?
可以,只要你能识别仓库里的 Claude Code 配置文件。主要限制在于,它默认你能处理发现的问题,比如危险的 shell interpolation、过于宽松的 allow list,或者暴露的 secrets。
什么时候不该用它?
不要把 security-scan 当成应用漏洞测试、依赖审计,或者整个代码库范围的 secrets 扫描替代品。它最适合的场景,是安全问题明确指向 Claude Code 配置的时候。
如何改进 security-scan 技能
把扫描范围说清楚
security-scan 的最佳结果来自明确指定目录、分支或配置变更。写“扫描 .claude/”就很好;而“帮我审查整个 repo”范围太大,容易让结果变浅。
把你最担心的变更说出来
告诉技能哪里变了:新增了 MCP server、修改了 hook、加了新 agent,还是调整了 settings。这样它就能优先评估最可能的失败模式,而不是把所有问题都放在同一优先级。
要求可直接用于决策的输出
如果你想让 security-scan usage 更好用,可以要求它按“先修复”格式输出:文件、风险、为什么重要,以及最小安全改动。这能减少歧义,也更容易在不过度修正的前提下修补配置。
第一轮后继续迭代
第一次跑完后,只复扫你改过的文件。对于想让 security-scan guide 随时间产出更好结果的做法,可以把每个发现都当成一次收紧 allow list、删除危险指令,或在下一次复审前简化 hook 的提示。
