Skip to main content Skills Marketplace Descubra e explore skills de IA criadas pela comunidade.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Copiar promptMostrar detalhes do prompt Um comando direto ignora o prompt de revisão. Verifique a origem antes de executá-lo.
npx skills add https://github.com/CaufieldZ/pm-workspace-public --skill workspace-auditO comando permanece em uma só linha. Role horizontalmente para revisá-lo antes de copiar.
Prefere uma cópia local? Baixe os arquivos disponíveis atualmente no SkillsMP.
Baixar Zip Baixando...
Explorador de arquivos
3 arquivos 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>"}
Workspace Audit
触发与定位
做什么 :全局诊断工具。两阶段审计:Phase 1 脚本硬检查 (audit.sh,零推理纯 bash)+ Phase 2 模型软检查 (语义推理的矛盾分析、安全扫描、瘦身建议)。
何时触发 :用户说「审计 / 诊断 / 跑一遍审计」。
不做 :业务决策(仅给出问题清单 + 严重度,不替 PM 拍板)/ 自动修复(输出报告即停)。
改脚本前 30 秒
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 / pyflakes
pre-skill-load-gate — 改 .claude/skills/workspace-audit/scripts/* 必先 Read 本 SKILL.md
pre-commit 钩 audit.sh 默认类别(1,2,3,4,7,12,13,14,15,16,17,19,20,21),audit.sh exit code 非 0 阻 commit
改完跑啥 :
bash .claude/skills/workspace-audit/scripts/audit.sh 1,2,3,4,7,12,13,14,15,16,17,19,20,21
bash .claude/skills/workspace-audit/scripts/audit.sh 18
bash .claude/skills/workspace-audit/scripts/audit.sh 19
深入读什么 :完整类别清单 grep -A 5 "^## 执行步骤" SKILL.md;新增 cat 时改 audit.sh 对应 case 段;SKILL.md 章节标准 Read .claude/runbooks/skill-conventions.md。
执行步骤
Step 0:让用户选择审计范围
展示以下菜单,用户选哪些跑哪些。默认全选。
请选择审计范围(输入编号,多选用逗号分隔,直接回车=全部执行):
Phase 1 — 脚本自动检查(audit.sh)
文件完整性 — SKILL.md 存在性、frontmatter、references 引用、配置文件
数值与格式一致 — 设备尺寸、配色 token、命名前缀、字体规范、字体栈顺序
依赖与链路 — depends_on 闭环、循环依赖、链路覆盖、孤立 skill
规则冲突 — 章节引用扫描、触发词重叠、术语一致
Token 预算 — 规则层总量、单 skill 成本、全链路 session 预算、臃肿文件
产出物一致性 — 场景编号、术语、文件命名(按 scene-list.md 发现活跃项目)
SKILL_TABLE 一致性 — workspace-context.md 表格 ↔ frontmatter 比对
Scripts 字段存在性 — 各 SKILL.md frontmatter scripts: 声明的脚本必须真实存在
scripts/lib import 链路 — 共享模块能被 skill 脚本正确 import
三件套纯洁性 — scripts/ 仅可执行代码 · references/ 仅 .md · assets/ 不含 .md(按 Anthropic Progressive Disclosure 规范)
Hooks 健康度 — .claude/hooks/(含 lib/)语法检查、BSD sed 兼容性、引用脚本存在性、settings.json 注册一致性、pre-commit trigger 覆盖
SKILL.md 内部结构合规 — 行数上限、必需章节、禁用同义词章节名(红灯,进 pre-commit)
内链断链 — CLAUDE.md / SKILL.md / references / runbooks / hooks 里 .md 相对链接目标存在性(红灯,进 pre-commit)
场景编号悬空 — baseline 引用 scene-list 未定义的场景编号(字母族收敛自动滤决议号 + 项目级 .audit-ignore-scene 豁免,黄灯 warn-only)
跨平台兼容 — mktemp 后缀模板 / Python open() 缺 encoding / sed -i 裸用 / GNU-only coreutils 无 BSD fallback(macOS BSD ↔ Linux GNU ↔ Windows,红灯,进 pre-commit)
计数对账 — 门面文档(README / README-EN / workspace-context)手写的「N 个 skill/hook/runbook」+ badge 与文件系统真实数比对,漂移即红灯(进 pre-commit)
hub 分发物健康 — zip 新鲜度(源码比 zip 新 = 忘重打)/ zip 缺失 / OWUI 部署态漂移 + INDEX.md drift + 各包按形态的必备文件齐全(红灯,进 pre-commit)
脚本健康度 — py 语法/未定义名(ruff E9/F821)+ sh 双版本 bash -n + shellcheck error 级(按需跑,不进 pre-commit 默认)
规则层矛盾深度扫描 — 逐条比对 CLAUDE.md / pm-methodology.md / artifact-conventions.md / 各 SKILL.md 中的规则是否冲突
安全 & 泄露扫描 — API key / token / password 模式、.gitignore 覆盖度、大文件
工程健壮性 — hook 机制、依赖声明、Python 包管理
瘦身与优化建议 — >10K token Skill 的按需加载机会、重复内容提取
Step 1:Phase 1 执行(脚本硬检查) 所有硬检查逻辑在 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,18,19,20,21
只跑 pre-commit 覆盖的:bash .claude/skills/workspace-audit/scripts/audit.sh 1,2,3,4,7,12,13,14,15,16,17,19,20,21
只跑 SKILL.md 结构合规:bash .claude/skills/workspace-audit/scripts/audit.sh 16(章节顺序 / 命名 / 行数 / 同义词禁用,参考 skill-conventions.md §SKILL.md 内部章节标准)
Step 2:Phase 2 执行(模型语义推理) 逐项用 bash 命令取数据,模型做语义推理判断。每项给出 ✅/⚠️/❌ + 证据(文件名:行号)。
8. 规则层矛盾深度扫描 grep -rn "font-family" .claude/skills/*/assets/*.css 2>/dev/null
逐个比较每个 CSS 文件的 font-family 声明与 tokens.css @audit-spec 规范
特别检查:正文栈 vs 等宽栈是否混写;PPT JetBrains Mono 白名单
editorial 产出物豁免 :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',不得掺 Serif
同文件字体一致性 :同一 CSS 内多处 font-family 声明必须用同一套英文 fallback(如 :44 和 :558 一处 'Inter' 一处 'Poppins' 算真 bug,通常是焕新时遗漏)
grep -rn "#0B0E11\|#0ECB81\|#F6465D\|#00B42A\|#F53F3F" .claude/skills/*/assets/*.css 2>/dev/null
同一语义色(success/danger)在不同文件中 hex 是否一致
深色板 vs 浅色板是否有混用(prototype 双色系已白名单)
grep -rn "375\|812\|width.*px" .claude/skills/*/SKILL.md 2>/dev/null
App 壳、Web 框的宽高在各 SKILL.md 中是否与 tokens.css @audit-spec 一致
grep -rnE ">\s*200\s*行|200\s*行.*HTML|HTML.*200\s*行|脚本生成" CLAUDE.md .claude/runbooks/ .claude/skills/*/SKILL.md 2>/dev/null
"> 200 行必须脚本" 在各处表述是否统一
收紧正则避免误命中 "tab 80-200 行 / < 200 段" 等非 HTML 行数表达
grep -rn "自动修复.*次\|失败.*停\|静默.*跳过" CLAUDE.md .claude/runbooks/ .claude/skills/*/SKILL.md 2>/dev/null
"最多自动修复 2 次" 各处是否一致;有无 Skill 写了不同策略
grep -rn "优先级\|Layer\|层级" CLAUDE.md .claude/runbooks/ README.md workspace-context.md 2>/dev/null
9. 安全 & 泄露扫描 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
判断匹配项是否为真正的明文密钥
.mcp.json 是否在 .gitignore 中
本工作区双层脱敏,判断"是否会泄露"时必须同时查:
Layer 1 .gitignore — 不进 private git。覆盖真 secret / 本机配置:.mcp.json / .env / node_modules/ / .claude/session-state.md / projects/ / references/ / deliverables/
Layer 2 sync_public.sh --exclude 列表 — 进 private git 但不同步到 public repo。覆盖个人偏好 / 战略主线 / 项目内容:workspace-context.md / .claude/runbooks/(含对话风格 human-voice-rules.md §⓪)/ .claude/skills/data-report/ 等(战略层 projects/product-lines.md 由 projects/ 整体排除自动覆盖)
grep -- '--exclude' sync_public.sh
判定规则:文件在 Layer 1 或 Layer 2 任一层即为"已脱敏",不算泄露。只有既不在 .gitignore 又不在 sync_public.sh exclude 列表里的敏感内容才报 🔴。
git ls-files | xargs ls -la 2>/dev/null | sort -k5 -n -r | head -20
有无 >500KB 的文件不合理地进入 git tracked
10. 工程健壮性
hook 是否调用 audit.sh 且覆盖范围正确(当前应为 1,2,3,4,7,12,13,14,15,16,17,19,20,21)
退出码机制是否正确
cat package.json
cat requirements.txt
依赖列表是否只含必要项
Python 实际使用的第三方包是否都在 requirements.txt 中
11. 瘦身与优化建议 对 Phase 1 Cat5 报告中 >10K token 的 Skill:
references/ 中是否有文件可改为 Step B 按需加载
有无重复内容可提取为 quickref
有无过时注释/示例可删除
Step 3:输出报告
核心输出规范 # Workspace Audit Report
审计时间:{日期}
审计范围:类别 {用户选的编号}
## 总览
| 类别 | 结果 | 问题数 |
|------|------|--------|
| 1. 文件完整性 | ✅/❌ | N |
| ... |
**总计**:N/12 通过,M 个问题
## 需要修复的问题(按严重度排序)
1. 🔴 {严重问题} — {文件:行号}
2. 🟡 {中等问题} — {文件:行号}
3. 🟢 {建议优化} — {文件:行号}
保存到 deliverables/audit-{日期}.md。
如果在某个项目上下文中运行,保存到 projects/{项目名}/deliverables/audit-{日期}.md
如果不在项目上下文中,保存到仓库根目录 deliverables/audit-{日期}.md
注意事项
季度规则瘦身 review(独立流程,不进默认 Cat) 触发 :每 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
python3 .claude/skills/workspace-audit/scripts/rules-review.py --model sonnet-4.7 --dry-run
输出 deliverables/rules-review-{date}.md:规则清单 + hook 触发统计(30/60/90d)+ 空白「候选评估」列。
先看「模型补丁」分类(补偿旧模型的规则,新模型可能不需要)
其次看 90d 0 触发 hook 对应规则(数据稀疏 ≠ 该删,但是问题信号)
逐条填「候选评估」列:保留 / 简化 / 删除 + 理由
单独 commit 收尾,commit message 引用本 review 文件
为何不进 audit.sh 默认 Cat :节奏不匹配(季度级 vs pre-commit 每次跑)+ 输出形态不同(可编辑 md vs 终端 ✅/❌)。
自检清单