用途:作为代码库安全分析的起点,判断项目类型、处理的数据、可用扫描器,并推荐应运行哪些 /appsec:* 工具、顺序及原因。该技能在主代理上下文运行,不派遣子代理,只产出推荐而非发现结果。
主要能力:按 6 个步骤顺序执行。1) 通过 Glob 读取 package.json、requirements.txt、go.mod、Cargo.toml、Gemfile、pom.xml、.csproj、composer.json、Dockerfile、serverless.yml、terraform/.tf 及各类 CI 配置文件,识别语言、框架、数据库与基础设施。2) 用 Grep 扫描 PII、GDPR、支付/卡号、HIPAA/PHI、JWT/OAuth/会话/密码存储等模式,将数据敏感度分类为 None detected、PII、Financial、Health/PHI 或其组合。3) 识别架构:API-only 后端、全栈、GraphQL、WebSocket、Serverless、微服务、单体、业务逻辑密集、依赖众多、存在 CI/CD 等。4) 用 which 并行检测 semgrep、bandit、gosec、brakeman、cargo-audit、gitleaks、trufflehog、trivy、osv-scanner、checkov、tfsec、kics、npm、pip-audit,标记检测到与否。5) 检查 ESLint 安全规则、CSP、CORS、限流、Helmet、输入校验、.gitignore、Dependabot 等既有配置。6) 输出按优先级排序的工具建议及理由。
推荐规则:/appsec:secrets --scope full 始终为第一优先级,因为已提交的密钥是最常见且危害最大的问题;与检测到的数据敏感度或架构匹配的工具排名更高;无相关攻击面的工具进入 SKIP 列表,并说明原因。
标志:--scope 被忽略,start 始终评估整个项目;--format text 为默认人类可读 ASCII 输出;--format json 为结构化 JSON;--format md 为 Markdown 报告;--quiet 抑制解释,仅输出工具列表。
输出:文本格式包含 PROJECT、STACK、DATA、SCANNERS、RECOMMENDED TOOLS、SKIP、EXISTING SECURITY、QUICK START 等字段;同时支持 JSON 结构,含 stack、data_sensitivity、architecture、scanners、existing_security、recommended_tools、skip。评估完成后将结果写入 .appsec/start-assessment.json 供 /appsec:run 复用,并含时间戳以判断是否过期(超过 24 小时或清单文件 mtime 变化)。结尾建议运行 /appsec:run、/appsec:<top-priority-tool> 或 /appsec:full-audit。
限制:仅报告实际发现,不猜测;不派遣子代理;仅生成建议与工具清单,不执行扫描、不产出漏洞发现;具体安装方式与计费信息暂未提供。