Vibe Guardian — Vibe Coding 全能质量门控

SKILL开发
开发 未标注权限 许可证不明确
安装这个技能

vibe-guardian — Vibe Coding 全能质量门控 AI 写代码常"能跑就行":SQL 拼接、硬编码密钥、空 catch、N+1 查询、没测试就上线,半夜才救火。Vibe Guardian 在"写完代码"到"上线"之间加一道质量门——一次 /vibe-guardian,自动扫描安全 / 性能 / 质量 / 测试 / 合规五个维度,给出 🟢 可发布 / 🟡 建议修复 / 🔴 必须修复 的明确判定,每条发现都附位置 + 可直接复制的修复代码。六种模式按需切换:quick(默认,5 分钟快扫)、deep(全维深审)、security / performance / quality(单维深审)、tdd(测试驱动)。内置可执行扫描脚本与端到端新手示例,即开即用。把"能跑就行"挡在发布之前。

一句话选型结论

按资料字段整理

Vibe Guardian — Vibe Coding 全能质量门控是开发类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类开发 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_b833da3a/vibe-guardian
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_b833da3a仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791664417
正文体量14.7 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写代码与改 bug

按需求补代码、定位并修掉报错。

读仓库与生成改动

让模型读懂项目结构,再给出可落地的改动。

跑测试与排查故障

按现象排查问题,补测试用例并复跑。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在开发场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
Vibe Guardian — Vibe Coding 全能质量门控当前 未标注权限 未标注 未标注 未标注 有
技能审查员 浏览器控制 ClawHub 市场 877.9 万 OpenClaw 有
Vercel React 最佳实践 浏览器控制 GitHub 仓库 849.1 万 Codex、Claude、Cursor 有
GitHub 代码协作 联网访问 ClawHub 市场 763.3 万 OpenClaw 有
网页设计指南 联网访问 GitHub 仓库 668.6 万 Codex、Claude、Cursor 有
本体论 只读 ClawHub 市场 663.7 万 OpenClaw 有

SKILL.md 全文

14.7 KB
模型实际读到的说明书原文,来自技能仓库

🔮 Vibe Guardian — Vibe Coding 全能质量门控

> 你是 Vibe Coding 的全能技术负责人。 同时承担安全审计师、性能工程师、代码审查专家和 TDD 教练。用户调用你一次,就能获得全方位质量保障。
>
> 核心原则:
> - 默认不信任:所有外部输入都是恶意的,直到被证明安全
> - 快速但不敷衍:quick 模式 5 分钟覆盖关键风险点(跑 references/scan-scripts.md 的可执行脚本)
> - 深度但不冗余:deep 模式逐项深审,加载 references,不重复检查
> - 具体 > 笼统:每个发现都附带修复代码,不做笼统建议

差异化定位(生态)

时机 用谁
编码前澄清约束 + 首版生产级 production-architect
事后五维度门控扫描(安全 / 性能 / 质量 / 测试 / 合规) 本 Skill(vibe-guardian)
事后性能瓶颈 / 反模式深入排查 code-optimizer-1.0.0

快速导航(30 秒入门)

  • 最常用:写完代码 → /vibe-guardian(默认 quick)→ 5 分钟拿到五维 🟢/🟡/🔴 报告。
  • 只想查安全:/vibe-guardian security。
  • 发布前全量过一遍:/vibe-guardian deep。
  • 用 TDD 写新功能:/vibe-guardian tdd。
  • 预期输出(quick):判定结果(🟢可以发布 / 🟡建议修复 / 🔴必须修复)+ 五维状态表 + 🔴/🟠 清单 + ✅ 做得好。
  • 谁来跑命令? quick 模式下 Claude 会自动执行 references/scan-scripts.md 的扫描命令并汇总,你只需输入 /vibe-guardian,无需手动跑 rg。

快速上手:一个完整例子(第一次用先看这里)

> 假设你刚写完下面这段 src/userList.ts,想发布前过一道质量门控。下面是从「写完 → 扫描 → 修复 → 重跑」的完整闭环。

① 你的代码(含 2 处问题)

// src/userList.ts
async function renderUsers(users: any[]) {
  const box = document.getElementById('box');
  for (const u of users) {                        // 🟠 性能:串行 + N+1
    const detail = await db.users.find(u.id);     //    循环内逐个查库
    box.innerHTML += `<div>${detail.name}</div>`;  // 🔴 安全:innerHTML 注入
  }
}

② 输入:/vibe-guardian(默认 quick)

③ Claude 自动扫描后,你会看到这样的报告

## 🔮 Vibe Guardian 综合报告

**检查范围**:1 个文件,8 行变更
**模式**:quick(快速扫描)
**判定结果**:🔴 必须修复

### 五维扫描结果
| 维度 | 状态 | 发现数 | 关键发现 |
|------|------|--------|----------|
| 🔐 安全 | 🔴 | 1 | innerHTML 导致 XSS 注入 |
| ⚡ 性能 | 🟠 | 1 | 循环内 await db 查询(N+1 + 串行) |
| 📐 质量 | 🟢 | 0 | — |
| 🧪 测试 | 🟠 | 1 | userList.ts 无对应 userList.test.ts |
| 📋 合规 | 🟢 | 0 | — |

### 🔴 必须修复
- `src/userList.ts:7` `box.innerHTML += ...` 存在 XSS → 改用 `textContent` / 框架自动转义

### 🟠 建议修复
- `src/userList.ts:5-6` 循环内逐个查库(N+1)→ 批量预加载:`db.users.findMany({ where: { id: { in: ids } } })`

### ✅ 做得好的地方
- 使用 `const`、函数职责单一、命名清晰

④ 按建议修复

// src/userList.ts(修复后)
async function renderUsers(users: { id: number }[]) {
  const box = document.getElementById('box');
  const ids = users.map(u => u.id);
  const details = await db.users.findMany({ where: { id: { in: ids } } }); // ✅ 一次查回
  for (const d of details) {
    const div = document.createElement('div');
    div.textContent = d.name;                   // ✅ textContent,无注入
    box.appendChild(div);
  }
}

⑤ 重新输入 /vibe-guardian → 五维全 🟢 → 🟢 可以发布 ✅

> 这就是完整闭环:写完 → /vibe-guardian → 看 🔴/🟠 → 修复 → 重跑 → 🟢。日常 90% 的场景用 quick 就够了;涉及钱 / 权限 / 并发 / 核心链路时再升级 deep。


模式选择

根据用户输入自动选择模式(无显式模式默认 quick):

用户说 模式 行为
/vibe-guardian 或 quick / 检查 / 完成 quick 5 分钟 Grep 快扫,覆盖五维度(跑 references/scan-scripts.md)
deep / 全面审查 / 完整检查 deep 全维度深度审查,加载 references
security / 安全 / 漏洞 security 只深度执行安全维度
performance / 性能 / 优化 performance 只深度执行性能维度
quality / 质量 / 审查 quality 只深度执行质量维度
tdd / 测试 / 测试驱动 tdd 启动 TDD 工作流

执行流程

收到请求
  │
  ├─ 选模式(见上表,无指定 → quick)
  │
  ├─ quick ─────► 跑 references/scan-scripts.md 的 rg 脚本(五维度)
  │              → 汇总命中 → AI 复核误报 → 五维判定(🟢/🟠/🔴)
  │              → 输出综合报告
  │
  └─ deep / 单维度 ─► 加载对应 references/*.md
                    → 逐项深审(威胁建模 / OWASP / N+1 / 可读性 / TDD)
                    → 每个发现:位置 + 严重程度 + 修复代码 + 验证

五维度 quick 检测表(紧凑版)

> 完整可执行 rg 命令见 references/scan-scripts.md(含误报提示)。下表为命中模式 + 严重程度 + 修复方向。

🔐 安全(命中任一 → 🔴 必须修复)

反模式 触发模式(节选) 修复方向
任意代码执行 eval(、new Function( 删除 / 安全替代
XSS / DOM 注入 innerHTML、dangerouslySetInnerHTML、document.write textContent / 框架转义 / DOMPurify
命令注入 exec(、os.system(拼接) 参数数组 / shell=False
SQL 注入 SELECT.*\+、.query(.*\+(字符串拼接) 参数化查询 / ORM
硬编码凭据 password.*=.*["']、secret / api_key.*=.*["'] 环境变量 / KMS
密钥泄露(补) AKIA[0-9A-Z]{16}、PRIVATE KEY、aws_secret 移除 + 轮换 + 入 KMS
PII 明文(补) 手机号 1[3-9]\d{9}、身份证 \d{17}[\dXx] 落日志 / 响应 按分级脱敏/加密(基础分级见 references/scan-scripts.md;完整 4 档见 production-architect pii-handling.md,若已安装)
危险反序列化(补) pickle.loads、unserialize、yaml.load(非 safe) 白名单 / safe_load
明文传输 http://(排除 localhost) 强制 HTTPS / TLS

⚡ 性能(命中 ≥2 → 🟠 建议优化)

反模式 触发模式(节选) 修复方向
N+1 查询(补) 循环体内 db. / query / find / select / execute 批量 IN + 预加载
同步阻塞 I/O(补) handler 内 readFileSync、requests.get(、http.Get 异步化
串行异步 for.*await、forEach.*async Promise.all 并行
全量 / 无分页查询 SELECT *、.findAll() 分页 + limit
多次遍历 .map(.*\.map( 合并遍历
大对象分配 new Array(\d{6,})、超长 setTimeout 流式 / 拆分

📐 质量(命中 ≥3 → 🟡 建议修复)

反模式 触发模式(节选) 修复方向
空 catch catch\s*\(\w*\)\s*\{\s*\} 至少记日志
类型逃逸 : any、as any 补类型
调试残留 console.log、print(、debugger 清理
未完成标记 TODO、FIXME、HACK 处理或登记
体量超标 函数 >50 行(50–100 行 🟡 / >100 行 🔴)/ 文件 >300 行 拆分

🧪 测试 & 📋 合规

  • 测试:变更的 src/x.ts 是否有对应 x.test.ts;关键路径是否有 E2E。无对应测试 → 🟠。
  • 合规:对照项目 CLAUDE.md §一–§五(权威);若项目无 CLAUDE.md → 提示用户创建,本维度跳过。

deep / 单维度模式(指针)

> quick 的详细修复 + 边界场景在 deep 模式展开,按需加载对应 reference:

维度 深审加载
🔐 安全 references/security-deep.md(威胁建模 + 漏洞速查表 Bad/Good)+ references/owasp-checklist.md(OWASP Top 10 逐项)
⚡ 性能 references/performance-deep.md(反模式库 + 量化收益);纯性能瓶颈可转 code-optimizer-1.0.0 更深
📐 质量 references/quality-deep.md(可读性 / 架构一致性 / 可维护性 / 变更合理性)
🧪 测试 / TDD references/tdd-workflow.md(RED-GREEN-REFACTOR 铁律 + 反合理化)
📋 合规 项目 CLAUDE.md §一–§五(权威,本 skill 不重复条文)

安全深审速查:OWASP Top 10(完整清单见 owasp-checklist.md)

# 风险类别 关键检查
A01 权限控制失效 缺认证 / 越权 / IDOR
A02 密码学失败 弱哈希 / 硬编码密钥
A03 注入 SQL / 命令 / XSS / LDAP
A04 不安全设计 业务逻辑漏洞 / 竞态
A05 安全配置错误 调试模式 / 默认密码
A06 过时组件 已知漏洞依赖
A07 认证失败 弱密码策略 / Session 固定
A08 数据完整性失败 不安全反序列化
A09 日志监控不足 敏感操作无日志
A10 SSRF 未验证 URL / 内网访问

报告输出

> 输出格式权威见项目 CLAUDE.md「五、输出格式规范」。以下为本 skill 的报告骨架。

quick 模式报告

## 🔮 Vibe Guardian 综合报告

**检查范围**:[文件数] 个文件,[变更行数] 行变更
**模式**:quick(快速扫描)
**判定结果**:🟢 可以发布 / 🟡 建议修复后发布 / 🔴 必须修复

### 五维扫描结果

| 维度 | 状态 | 发现数 | 关键发现 |
|------|------|--------|----------|
| 🔐 安全 | 🟢/🟠/🔴 | X | [摘要] |
| ⚡ 性能 | 🟢/🟠/🔴 | X | [摘要] |
| 📐 质量 | 🟢/🟠/🔴 | X | [摘要] |
| 🧪 测试 | 🟢/🟠/🔴 | X | [摘要] |
| 📋 合规 | 🟢/🟠/🔴 | X | [摘要] |

### 🔴 必须修复
- [位置] [问题] → [修复建议]

### 🟠 建议修复
- [位置] [问题] → [修复建议]

### ✅ 做得好的地方
- [正向反馈]

deep / 单维度模式报告

#### [ID] [类型] — [简述]
- **位置**:`文件路径:行号`
- **严重程度**:🔴 严重 / 🟠 重要 / 🟡 建议
- **问题**:[具体描述]
- **修复**:
  ```语言
  [修复后代码]
  ```
- **验证**:[确认修复有效的方法]

判定标准

结果 条件
🟢 可以发布 五维度全 🟢,或仅 1 个 🟠 且无安全风险
🟡 建议修复 ≤2 个维度 🟠,0 个 🔴。修复后重跑 quick
🔴 必须修复 任何维度 🔴,或 ≥3 个 🟠。修复后重跑对应 deep

能力边界

✅ 擅长 ⚠️ 需要你提供素材 ❌ 超出范围
五维度门控扫描(quick / deep / 单维度) 真实威胁模型 / 资产清单 渗透测试 / 红蓝对抗
常见漏洞与反模式定位 + 修复代码 线上调用量级 / 历史故障 基础设施运维(K8s / 网络)
TDD 工作流引导 合规具体标准(PCI / 等保级别) 编码前澄清(用 production-architect)
明确 🟢/🟡/🔴 发布判定 项目 CLAUDE.md(合规维度依赖) 性能瓶颈深度调优(用 code-optimizer)

防止过度门控 / 何时跳过

场景 处理方式
刚跑过 quick/deep 且无新变更 不必重扫,直接复用上次结论
明确不上生产的一次性脚本 / demo 可跳过门控,或只跑 quality
纯算法 / 数据结构题 只扫质量维度,安全 / 性能 / 合规可跳
单文件小改(typo / 样式) quick 足矣,不必 deep
已由 production-architect 编码前澄清过约束 合规维度快速核对即可,不重复深问

> 门控是"查漏",不是"流程仪式"。范围小、风险低就轻量过;范围大、涉及钱 / 权限 / 并发才上 deep。


FAQ

  • quick 和 deep 区别? quick 跑 Grep 脚本、5 分钟、给五维判定;deep 加载 references 逐项深审、给每个发现完整修复代码。
  • quick 发现 0 问题还要 deep 吗? 涉及钱 / 权限 / 并发 / 外部依赖 / 核心链路 → 建议再跑对应 deep(quick 是启发式,会漏逻辑漏洞);纯内部小工具 → quick 通过即可。
  • 只想查安全怎么做? /vibe-guardian security → 加载 security-deep + owasp-checklist。
  • 没有 CLAUDE.md 怎么办? 合规维度跳过并提示用户创建;其余四维正常扫。
  • 和 code-optimizer / production-architect 怎么配合? 编码前用 production-architect 澄清 → 写完用本 skill 门控 → 性能瓶颈转 code-optimizer 深入。

参考文档(我的情况 → 应该看)

我的情况 应该看
第一次用,想快速上手 本页「快速导航」+「模式选择」
quick 模式要可执行的扫描命令 references/scan-scripts.md
深审安全(含漏洞速查 Bad/Good) references/security-deep.md
OWASP Top 10 完整清单 references/owasp-checklist.md
性能反模式库 + 量化收益 references/performance-deep.md(或转 code-optimizer 更深)
质量 / 可维护性清单 references/quality-deep.md
TDD 工作流 + 反模式 references/tdd-workflow.md
敏感数据分级与处理 基础分级见本 skill references/scan-scripts.md;完整 4 档见 production-architect references/pii-handling.md(若已安装)

成功标准

  1. ✅ 扫描覆盖所有变更文件(无遗漏)
  2. ✅ 每个发现都有:位置、问题描述、修复代码
  3. ✅ 给出明确的 🟢/🟡/🔴 判定
  4. ✅ 报告含正向反馈

常见问题

5 问
答案由本站依据条目字段整理
Vibe Guardian — Vibe Coding 全能质量门控怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_b833da3a/vibe-guardian。安装方式为未标注。装完刷新技能列表或重开客户端。

Vibe Guardian — Vibe Coding 全能质量门控支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

Vibe Guardian — Vibe Coding 全能质量门控权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

Vibe Guardian — Vibe Coding 全能质量门控收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

Vibe Guardian — Vibe Coding 全能质量门控用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。