> 核心功能: 本技能提供化工作流场景等能力。
> 核心功能: 本技能提供中文交互等能力。
> 核心功能: 本技能提供代码审计等能力。
功能适用范围
- 单次输入内容长度不超过10,000字符
- 并发请求不超过10个
- 依赖Agent平台内置LLM服务
- 不适用于需要人工判断的复杂决策场景
- 所有API Key通过环境变量配置,不硬编码在代码中
安全规则
- 无硬编码密钥: 所有API Key和凭证通过环境变量加载
- 无敏感信息泄露: 日志中对敏感字段进行脱敏处理
- 凭证存储安全: 配置文件建议加入.gitignore
- 最小权限原则: 仅授予完成任务所需的最小权限
- 数据传输加密: 所有API调用使用HTTPS加密传输
安全风险防范
| 风险项 | 等级 | 防护措施 | 验证方法 |
|---|---|---|---|
| API密钥泄露 | 高 | 通过环境变量配置,禁止硬编码 | 定期检查代码和配置文件 |
| 命令执行风险 | 高 | 仅执行白名单命令,避免拼接用户输入 | 使用沙箱环境测试 |
| 网络通信安全 | 中 | 使用HTTPS协议,验证SSL证书 | 定期检查证书有效期 |
| 敏感数据暴露 | 高 | 输出结果中不包含密钥、令牌等敏感信息 | 日志脱敏审查 |
| 未授权访问 | 中 | 限制访问权限,实施认证机制 | 定期审计访问日志 |
| ## 疑问汇编 | |||
| ### Q1:专业版如何兼容免费版配置? | |||
专业版完全兼容免费版的 .codequality.yml 配置格式。升级后无需修改任何配置,专业版会自动识别并应用免费版规则,同时启用额外的高级检查. |
|||
| ### Q2:如何集成到现有 CI/CD 系统? |
name: Code Quality
on: [push, pull_request]
jobs:
audit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run Code Audit
run: python audit.sarif
- uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: report.sarif
Q3:扫描大型项目性能如何?
| 项目规模 | 文件数 | 扫描时间 | 内存占用 |
|---|---|---|---|
| 小型 | <500 | <30s | <100MB |
| 中型 | 500-5000 | 1-5min | 100-500MB |
| 大型 | 5000-50000 | 5-30min | 500MB-2GB |
| 超大型 | >50000 | 30min+ | 建议分布式 |
| ### Q4:如何管理多团队的规则差异? | |||
| 使用多租户配置,每个租户可以有独立的规则集: |
multi_workspace:
workspaces:
- id: team-frontend
rules: [owasp_top10, xss_detection]
- id: team-backend
rules: [owasp_top10, sql_injection, ssrf]
- id: team-mobile
rules: [owasp_top10, insecure_storage]
创新优势
效率提升量化分析
| 操作步骤 | 手动耗时 | 自动化耗时 | 时间节约 | 准确率提升 |
|---|---|---|---|---|
| OWASP Top 10 漏洞扫描 | 1周 | 1小时 | 6天 | 95% |
| 代码质量评分 | 1周 | 1小时 | 6天 | 98% |
| 依赖漏洞检测 | 1周 | 1小时 | 6天 | 97% |
| 批量代码审查 | 1周 | 1小时 | 6天 | 96% |
| CI/CD 流水线集成 | 1周 | 1小时 | 6天 | 100% |
| ### 差异化对比 | ||||
| 对比维度 | 本技能 | 手动操作 | Python脚本 | 专业软件 |
| :--------- | :--------- | :--------- | :--------- | :--------- |
| 安全漏洞扫描深度 | 高度集成OWASP Top 10 | 逐项检查 | 基本覆盖 | 全面覆盖 |
| 批量扫描效率 | 高效批量处理 | 逐个项目处理 | 逐个项目处理 | 高效批量处理 |
| 自定义规则灵活性 | 高度灵活 | 有限自定义 | 有限自定义 | 高度灵活 |
| 报告格式多样性 | 多种格式支持 | 单一格式 | 单一格式 | 多种格式支持 |
| CI/CD集成便捷性 | 简单集成 | 需手动配置 | 需手动配置 | 简单集成 |
| ### 核心痛点解决 | ||||
| 痛点 | 描述 | 影响范围 | 解决方案 | 量化效果 |
| :----- | :----- | :----- | :----- | :----- |
| 安全漏洞高发 | 代码中存在大量安全漏洞,导致系统易受攻击 | 整个系统 | 自动化扫描并修复 | 安全漏洞减少90% |
| 代码质量低下 | 代码质量不达标,影响系统性能和稳定性 | 整个系统 | 自动化代码质量评分 | 代码质量提升30% |
| 依赖管理困难 | 依赖管理混乱,导致版本冲突和漏洞风险 | 整个系统 | 自动化依赖漏洞检测 | 依赖管理效率提升50% |
| ## 边界条件与错误处理 | ||||
| ### 边界条件 | ||||
| 边界场景 | 触发条件 | 处理方式 | 预期结果 | |
| :--------- | :--------- | :--------- | :--------- | |
| 扫描文件数量过多 | 文件数量超过系统限制 | 分批处理,避免系统崩溃 | 扫描顺利完成 | |
| 扫描文件过大 | 文件大小超过系统限制 | 分割文件,逐个处理 | 扫描顺利完成 | |
| 扫描项目结构复杂 | 项目结构复杂,难以识别 | 使用智能识别算法 | 正确识别项目结构 | |
| 扫描规则过于严格 | 规则过于严格,误报率高 | 调整规则,降低误报率 | 提高准确率 | |
| 扫描环境不稳定 | 环境不稳定,扫描中断 | 自动重试,确保扫描完成 | 扫描顺利完成 | |
| ### 错误处理方案 | ||||
| 错误码 | 原因 | 处理方式 | 恢复策略 | |
| :------- | :----- | :----- | :----- | |
| 1001 | 扫描文件不存在 | 检查文件路径,重新扫描 | 通知用户文件路径错误 | |
| 1002 | 扫描规则配置错误 | 检查规则配置,修正错误 | 通知用户规则配置错误 | |
| 1003 | 扫描过程中发生异常 | 记录异常信息,终止扫描 | 通知用户扫描异常,提供错误信息 | |
| 1004 | 扫描结果处理失败 | 检查处理逻辑,重新处理 | 通知用户处理失败,提供错误信息 | |
| 1005 | 系统资源不足 | 释放资源,尝试重新扫描 | 通知用户系统资源不足,建议优化系统配置 | |
| # 代码质量检查专业版 | ||||
| ## 付费版扩展能力 | ||||
| 能力 | 免费版 | 付费版 | ||
| --- | --- | --- | ||
| 基础功能 | 支持 | 支持 | ||
| OWASP Top 10深度扫描与CI/CD集成 | 不支持 | 支持 | ||
| 代码静态分析与质量评分 | 不支持 | 支持 | ||
| 依赖漏洞检测与升级建议 | 不支持 | 支持 | ||
| 批量代码审查与报告生成 | 不支持 | 支持 | ||
| CI/CD流水线集成 | 不支持 | 支持 | ||
| ## 能力总览 | ||||
| ### 1. OWASP Top 10 深度安全扫描 | ||||
| 覆盖 OWASP Top 10 全部安全风险类别,提供漏洞定位、风险评级和修复建议. | ||||
| OWASP 类别 | 检查内容 | 风险等级 | ||
| :--------- | :--------- | :--------- | ||
| A01 权限失效 | 越权访问、缺少访问控制 | 高危 | ||
| A02 加密失败 | 弱加密算法、明文传输 | 高危 | ||
| A03 注入攻击 | SQL注入、命令注入、XSS | 严重 | ||
| A04 不安全设计 | 缺少输入验证、不安全业务流 | 中危 | ||
| A05 配置错误 | 默认配置、调试模式开启 | 高危 | ||
| A06 脆弱组件 | 已知漏洞依赖、过期库 | 中危 | ||
| A07 认证失败 | 弱密码策略、会话管理缺陷 | 高危 | ||
| A08 数据完整性 | 反序列化、未验证更新 | 高危 | ||
| A09 日志监控 | 缺少审计日志、敏感信息记录 | 中危 | ||
| A10 SSRF | 服务端请求伪造风险 | 高危 |
#!/bin/bash
echo "=== OWASP Top 10 深度扫描 ==="
echo "[A03] 注入攻击检查..."
grep -rnE "(eval|exec)\s*\(" src/ --include="*.js" --include="*.py" --include="*.php"
grep -rnE "query\s*\(\s*['\"].*\+.*['\"]" src/ --include="*.js" --include="*.py"
echo "[A02] 加密失败检查..."
grep -rnE "(md5|sha1|des|rc4)\s*\(" src/ --include="*.js" --include="*.py"
grep -rn "http://" src/ --include="*.js" | grep -v "localhost\|127.0.0.1"
echo "[A05] 配置错误检查..."
grep -rnE "(debug\s*[:=]\s*true|allow_origin\s*[:=]\s*['\"]\*['\"])" src/
echo "[A06] 脆弱组件检查..."
if [ -f "package.json" ]; then
npm audit --json > security-audit.json 2>/dev/null
echo "依赖漏洞报告已生成: security-audit.json"
fi
2. 全项目批量审计
支持对大型代码库进行批量扫描,自动识别项目结构并应用对应规则.
3. 自定义规则引擎
支持企业自定义安全规则和质量标准.
version: "2.0"
edition: pro
custom_rules:
- id: CUSTOM-001
name: 禁止使用内部测试密钥
pattern: "TEST_KEY_\\d+"
severity: high
message: "检测到内部测试密钥,请使用环境变量"
- id: CUSTOM-002
name: API 路径必须包含版本号
pattern: "/api/(?!v\\d+/)"
severity: medium
message: "API 路径需包含版本号,如 /api/v1/"
- id: CUSTOM-003
name: 数据库连接必须使用连接池
pattern: "createConnection\\s*\\("
severity: medium
message: "建议使用连接池替代单个连接"
compliance_templates:
- name: 等保2.0三级
rules: [owasp_top10, data_protection, access_control, audit_log]
- name: GDPR
rules: [data_privacy, consent_check, right_to_erasure]
- name: PCI-DSS
rules: [card_data_handling, encryption_required, access_audit]
ci_cd:
fail_on: [critical, high]
report_format: [sarif, html, json]
output_dir: ./reports/
upload_artifact: true
- 异常时参考错误处理章节进行恢复
- 关键参数:
自定义规则引擎选项
4. 多格式报告输出
支持 SARIF、HTML、JSON 等多种报告格式,可集成到主流问题跟踪系统.
echo "=== 生成审计报告 ==="
python audit.py --format json --output report.json
python audit.py --format sarif --output report.sarif
python audit.py --format html --output report.html
python audit.py --format summary
```- 验证执行结果,确认输出符合预期格式
- 异常时参考错误处理章节进行恢复
- 关键参数: `多格式报告输出` 选项
## 初学指南
1. 确认运行环境满足依赖说明中的要求
2. 在AI Agent对话中调用本技能,提供必要的输入参数
3. 检查输出结果,根据需要进行后续处理
## 适用范围
### 场景一:企业级安全审计
对大型项目进行全面安全审计,生成合规报告.
```bash
#!/bin/bash
PROJECT_DIR="${1:-.}"
echo "=== 企业级代码安全审计 ==="
echo "项目目录: $PROJECT_DIR"
echo "扫描时间: $(date)"
echo ""
python audit.py \
--project "$PROJECT_DIR" \
--rules ".codequality.yml" \
--compliance "owasp_top10,pci_dss" \
--format sarif,html,json \
--output ./reports/
python audit.py --summary --output executive-summary.txt
CRITICAL_COUNT=$(python audit.py --count --severity critical)
if [ "$CRITICAL_COUNT" -gt 0 ]; then
echo "警告: 发现 $CRITICAL_COUNT 个严重问题,建议立即修复"
exit 1
fi
echo "审计完成,报告已输出到 ./reports/ 目录"
场景二:CI/CD 流水线集成
将代码质量检查集成到持续集成流水线中.
code_quality_scan:
stage: test
image: node:18
script:
- echo "运行代码质量扫描(专业版)"
- python audit.py
--project .
--format sarif
--output reports/audit.sarif
- python audit.py
--format summary
--fail-on critical,high
artifacts:
reports:
sast: reports/audit.sarif
paths:
- reports/
expire_in: 30 days
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
场景三:多租户协同审查
多个团队协同进行代码审查,问题跟踪与分配.
class CollaborativeReview:
"""多租户协同代码审查"""
def __init__(self, workspace_id):
self.workspace_id = workspace_id
self.reviews = {}
def assign_review(self, issue_id, reviewer, priority="normal"):
"""分配审查任务"""
self.reviews[issue_id] = {
"workspace": self.workspace_id,
"reviewer": reviewer,
"priority": priority,
"status": "assigned",
"assigned_at": datetime.now().isoformat()
}
def batch_assign(self, issues, reviewers):
"""批量分配审查任务"""
for i, issue in enumerate(issues):
reviewer = reviewers[i % len(reviewers)]
self.assign_review(issue["id"], reviewer)
使用说明
步骤一:配置规则
创建 .codequality.yml 配置文件(兼容免费版格式):
version: "2.0"
edition: pro
rules:
security: [owasp_top10, hardcoded_secrets, weak_crypto]
style: [naming, formatting]
compliance: [owasp_top10]
ci_cd:
fail_on: [critical, high]
report_format: [sarif, html]
步骤二:运行审计
请对当前项目进行全面代码安全审计,生成 SARIF 和 HTML 格式报告.
步骤三:查看报告
报告输出到 ./reports/ 目录,包含:
1. audit.sarif:用于 CI/CD 集成
2. audit.html:用于人工审阅
3. audit.json:用于程序处理
4. summary.txt:执行摘要
请求格式
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| content | string | 否 | code-quality处理的内容输入 |
| strict_level | string | 否 | 审查严格度, 可选: strict/normal/loose, 默认: normal |
| ## 输出说明 |
{
"success": true,
"data": {
"overall_grade": "A",
"total_score": 92,
"max_score": 100,
"summary": "处理完成",
"details": [
{
"item": "代码风格",
"status": "pass",
"score": 95,
"comment": "符合规范"
},
{
"item": "安全合规",
"status": "warn",
"score": 80,
"comment": "符合规范"
}
],
"improvements": [
{
"priority": "high",
"suggestion": "建议优化",
"expected_gain": "+5分"
},
{
"priority": "medium",
"suggestion": "建议优化",
"expected_gain": "+3分"
}
]
},
"error": null
}
依赖与配置
运行环境
- Agent 平台:支持 SKILL.md 的任意 AI Agent(Claude Code / Cursor / Codex / Gemini CLI 等)
- 操作系统:Windows / macOS / Linux
- 运行时:Python 3.8+ / Node.js 18+ / Bash
- CI/CD:支持主流 CI/CD 平台
依赖说明(补充)
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| Python 3.8+ | 运行时 | 必需 | python.org 下载 |
| grep/ripgrep | 系统工具 | 必需 | 系统自带 |
| npm audit | CLI工具 | 可选 | Node.js 自带 |
| SARIF SDK | 库 | 可选 | pip install sarif-tools |
| LLM API | API | 必需 | 由 Agent 内置 LLM 提供 |
| ### API Key 配置 | |||
| - 本 Skill 基于 Markdown 指令,无需额外 API Key | |||
- 如需集成外部安全扫描服务,在 .codequality.yml 中配置: |
external_services:
snyk:
api_key: "${SNYK_API_KEY}"
enabled: false
sonarqube:
url: "${SONARQUBE_URL}"
token: "${SONARQUBE_TOKEN}"
enabled: false
可用性分类
- 分类:MD+EXEC+PRO(专业版支持批量执行、CI/CD 集成和高级分析)
- 说明:企业级 AI Skill,支持全项目批量扫描、多格式报告输出和流水线集成
- 适用规模:中小型到超大型项目(文件数无上限)
- 兼容性:完全兼容免费版配置,支持平滑升级
案例展示
示例1: 基础用法
输入:
{
"content": "示例内容",
"strict_level": "normal"
## 问题解答集
### Q1: 代码质量检查专业版支持哪些输入格式?
A1: 企业级代码质量审计,支持OWASP Top 10、批量扫描、自定义规则与CI/CD集成,输出多格式报告。。支持文本指令和结构化参数输入,具体格式参考使用流程章节。
### Q2: 需要配置API Key吗?
A2: 是的,部分功能需要配置对应平台的API Key。请在依赖说明章节查看具体要求,并通过环境变量安全配置。
### Q3: 命令行执行失败怎么办?
A3: 检查命令参数是否正确,确认运行环境支持exec能力。如遇权限问题,请参照错误处理章节排查。