with one click
workspace-audit
「审计 / 诊断 / 跑一遍审计」触发。Phase 1 脚本自动 + Phase 2 模型推理,支持按类别选执行。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
「审计 / 诊断 / 跑一遍审计」触发。Phase 1 脚本自动 + Phase 2 模型推理,支持按类别选执行。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
当需求涉及多系统对接 / 资金流转,或用户提到「架构图」「技术架构」时触发。超复杂链路中场景清单后、IMAP 前自动接续;也适用于系统设计文档、技术方案评审、风险分析、Phase 路线图等。
「竞品分析 / 调研 / 抓情报 / 采集 XX」触发,丢竞品截图或链接亦触发。「截图 / 截一下」单独不触发。
当 PRD 完成后最终交付前验收,或用户说「拉通检查」「校验一下」「检查一致性」「reader test」时触发。 7 维结构性校验已脚本化(PRD 写入自动跑),本 skill 保留两件脚本替代不了的事:① 多 ❌ 项的修复优先级编排 ② Reader Testing 评审实践。
「流程图 / 泳道图 / 审批流 / 状态机」触发。引擎自动选(mermaid / drawio),输出 .svg + .png 供 PRD / IMAP / PPT / 架构图 `<img>` 引用。
当用户提到「交互大图」「交互流程图」「IMAP」时触发。 场景清单确认后进入视觉化阶段自动接续触发。
MRD 评审 / 价值评审 / 该不该做触发。判断市场窗口 + UE 模型,输出投票表 + 评审意见。已有报告迭代修改直接编辑 deliverables/mrd-review-*.md,不走此 skill。
| name | workspace-audit |
| description | 「审计 / 诊断 / 跑一遍审计」触发。Phase 1 脚本自动 + Phase 2 模型推理,支持按类别选执行。 |
| type | tool |
| output_format | .md |
| output_prefix | none |
| depends_on | [] |
| optional_inputs | [] |
| consumed_by | [] |
| disallowed-tools | Edit, Write, NotebookEdit |
| scripts | {"audit.sh":"全局审计 — bash .claude/skills/workspace-audit/scripts/audit.sh [类别号]","rules-review.py":"季度规则瘦身 review — python3 .claude/skills/workspace-audit/scripts/rules-review.py --model <ver>"} |
做什么:全局诊断工具。两阶段审计:Phase 1 脚本硬检查(audit.sh,零推理纯 bash)+ Phase 2 模型软检查(语义推理的矛盾分析、安全扫描、瘦身建议)。
何时触发:用户说「审计 / 诊断 / 跑一遍审计」。
不做:业务决策(仅给出问题清单 + 严重度,不替 PM 拍板)/ 自动修复(输出报告即停)。
hook 守的是「Read 过本文件」不看读了多少行。改 scripts/audit.sh / rules-review.py 用
Read 此文件 limit=80(§1+§2 即够)。
Public API(不可改签名):
bash audit.sh [类别号] — 全局审计入口(类别号逗号分隔)python3 rules-review.py --model <ver> [--dry-run] — 季度规则瘦身 review会拦你的 hook:
post-script-syntax-check — bash -n / pyflakespre-skill-load-gate — 改 .claude/skills/workspace-audit/scripts/* 必先 Read 本 SKILL.mdpre-commit 钩 audit.sh 默认类别(1,2,3,4,7,12,13,14,15,17),audit.sh exit code 非 0 阻 commit改完跑啥:
bash .claude/skills/workspace-audit/scripts/audit.sh 1,2,3,4,7,12,13,14,15,17 # 跑 pre-commit 覆盖类别
bash .claude/skills/workspace-audit/scripts/audit.sh 18 # 跑场景编号悬空(warn-only,不进 pre-commit)
bash .claude/skills/workspace-audit/scripts/audit.sh 16 # 跑 SKILL.md 结构合规
深入读什么:完整类别清单 grep -A 5 "^## 执行步骤" SKILL.md;新增 cat 时改 audit.sh 对应 case 段;SKILL.md 章节标准 Read .claude/runbooks/skill-conventions.md。
展示以下菜单,用户选哪些跑哪些。默认全选。
请选择审计范围(输入编号,多选用逗号分隔,直接回车=全部执行):
Phase 1 — 脚本自动检查(audit.sh)
scripts: 声明的脚本必须真实存在.claude/hooks/ 语法检查、BSD sed 兼容性、引用脚本存在性、settings.json 注册一致性、pre-commit trigger 覆盖.md 相对链接目标存在性(红灯,进 pre-commit).audit-ignore-scene 豁免,黄灯 warn-only)Phase 2 — 模型推理检查
所有硬检查逻辑在 scripts/audit.sh 中实现(执行类脚本,模型无需读取源码)。
bash .claude/skills/workspace-audit/scripts/audit.sh <类别编号逗号分隔>
示例:
bash .claude/skills/workspace-audit/scripts/audit.sh 1,2,3,4,5,6,7,12,13,14,15,16,17,18bash .claude/skills/workspace-audit/scripts/audit.sh 1,2,3,4,7,12,13,14,15,17bash .claude/skills/workspace-audit/scripts/audit.sh 16(章节顺序 / 命名 / 行数 / 同义词禁用,参考 skill-conventions.md §SKILL.md 内部章节标准)逐项用 bash 命令取数据,模型做语义推理判断。每项给出 ✅/⚠️/❌ + 证据(文件名:行号)。
8.1 字体规范一致性
grep -rn "font-family" .claude/skills/*/assets/*.css 2>/dev/null
@audit-spec 规范scene-list / architecture-diagrams 这类叙事 / 阅读型产出物允许正文栈挂 'Noto Serif SC' 做主字或 fallback(例:'Noto Sans SC', 'Noto Serif SC', 'Poppins', ... 或 arch 的 var(--arch-serif-cn),'Noto Sans SC',system-ui,sans-serif),增强中文阅读感,符合 Claude Design 系 display serif 风格。非 editorial 类(imap / prototype / ppt / flowchart)正文栈必须是 'Noto Sans SC','Poppins',不得掺 Seriffont-family 声明必须用同一套英文 fallback(如 :44 和 :558 一处 'Inter' 一处 'Poppins' 算真 bug,通常是焕新时遗漏)8.2 色板一致性
grep -rn "#0B0E11\|#0ECB81\|#F6465D\|#00B42A\|#F53F3F" .claude/skills/*/assets/*.css 2>/dev/null
8.3 设备尺寸一致性
grep -rn "375\|812\|width.*px" .claude/skills/*/SKILL.md 2>/dev/null
@audit-spec 一致8.4 HTML 行数阈值一致性
grep -rnE ">\s*200\s*行|200\s*行.*HTML|HTML.*200\s*行|脚本生成" CLAUDE.md .claude/runbooks/ .claude/skills/*/SKILL.md 2>/dev/null
8.5 自检反压规则一致性
grep -rn "自动修复.*次\|失败.*停\|静默.*跳过" CLAUDE.md .claude/runbooks/ .claude/skills/*/SKILL.md 2>/dev/null
8.6 执行优先级描述一致性
grep -rn "优先级\|Layer\|层级" CLAUDE.md .claude/runbooks/ README.md workspace-context.md 2>/dev/null
9.1 明文密钥扫描
grep -rn "sk-\|api[_-]key\|token.*=\|password\|secret\|Bearer " . --include='*.md' --include='*.json' --include='*.js' --include='*.py' --include='*.sh' -not -path '*/node_modules/*' -not -path '*/.git/*' 2>/dev/null
9.2 双层脱敏覆盖度
本工作区双层脱敏,判断"是否会泄露"时必须同时查:
.gitignore — 不进 private git。覆盖真 secret / 本机配置:.mcp.json / .env / node_modules/ / .claude/session-state.md / projects/ / references/ / deliverables/sync_public.sh --exclude 列表 — 进 private git 但不同步到 public repo。覆盖个人偏好 / 战略主线 / 项目内容:.claude/output-styles/pm-strict.md / workspace-context.md / .claude/runbooks/ / .claude/skills/data-report/ 等(战略层 projects/product-lines.md 由 projects/ 整体排除自动覆盖)# 看 Layer 2 实际覆盖
grep -- '--exclude' sync_public.sh
判定规则:文件在 Layer 1 或 Layer 2 任一层即为"已脱敏",不算泄露。只有既不在 .gitignore 又不在 sync_public.sh exclude 列表里的敏感内容才报 🔴。
9.3 git tracked 大文件
git ls-files | xargs ls -la 2>/dev/null | sort -k5 -n -r | head -20
10.1 防腐化 hook
cat .githooks/pre-commit
10.2 依赖声明
cat package.json
cat requirements.txt
对 Phase 1 Cat5 报告中 >10K token 的 Skill:
审计完成后,输出两份:
1. 对话内报告(精简版)
# Workspace Audit Report
审计时间:{日期}
审计范围:类别 {用户选的编号}
## 总览
| 类别 | 结果 | 问题数 |
|------|------|--------|
| 1. 文件完整性 | ✅/❌ | N |
| ... |
**总计**:N/12 通过,M 个问题
## 需要修复的问题(按严重度排序)
1. 🔴 {严重问题} — {文件:行号}
2. 🟡 {中等问题} — {文件:行号}
3. 🟢 {建议优化} — {文件:行号}
2. 文件报告(完整版),含所有检查项的详细输出
保存到 deliverables/audit-{日期}.md。
projects/{项目名}/deliverables/audit-{日期}.mddeliverables/audit-{日期}.md触发:每 3-6 月一次 / 重大模型升级后 / 感觉规则层让模型变笨时。源自 Anthropic 大代码库实践 §"Actively maintaining CLAUDE.md as model intelligence evolves" — 补偿旧模型局限的规则在新模型下可能成 overhead。
用法:
python3 .claude/skills/workspace-audit/scripts/rules-review.py --model sonnet-4.7
# 或 dry-run 只看统计不写文件
python3 .claude/skills/workspace-audit/scripts/rules-review.py --model sonnet-4.7 --dry-run
输出 deliverables/rules-review-{date}.md:规则清单 + hook 触发统计(30/60/90d)+ 空白「候选评估」列。
人工 review 流程:
为何不进 audit.sh 默认 Cat:节奏不匹配(季度级 vs pre-commit 每次跑)+ 输出形态不同(可编辑 md vs 终端 ✅/❌)。