AmsonntagChow/ratemyskill
GitHub: AmsonntagChow/ratemyskill
为 Agent Skills 提供基于行为证据的发布前审查工具,验证触发准确性、执行效果、安全边界和可复现性,输出结构化的发布决策报告。
Stars: 1 | Forks: 0
# RateMySkill
为 Agent Skills 提供基于证据的发布审查。
[](LICENSE)
[](https://agentskills.io/)
RateMySkill 将具体的 Agent Skill 作为行为进行审计,而不仅仅是审查 Markdown。它会检查正确的请求是否能发现它,使用它是否比不使用它在相同任务上能产生可衡量的更好结果,它的脚本和指令是否保持在其权限范围内,以及最终包是否能被其他人安装和复现。
一句话简介:我做了一个给 Agent Skill 做上线体检的 Skill。
## 安装
选择一种方法。不要在同一个客户端和作用域内安装重复的副本。
对于 Codex,将此代码库添加为插件市场:
```
codex plugin marketplace add AmsonntagChow/ratemyskill
```
然后在 Codex CLI 中打开 `/plugins` 或在桌面应用程序中打开插件目录,安装 **RateMySkill**,并开始一个新会话。
对于 Claude Code:
```
/plugin marketplace add AmsonntagChow/ratemyskill
/plugin install ratemyskill@amsonntagchow-ratemyskill
/reload-plugins
```
对于 Cursor、Codex、Claude Code 或其他通过便携式 `skills` CLI 运行的 Agent Skills 客户端:
```
npx skills add AmsonntagChow/ratemyskill --skill ratemyskill
```
也可以通过将 `skills/ratemyskill` 复制到 Agent 使用的 skills 目录中来手动安装该 Skill。
## 开始审计
给它一个真实的 Skill 文件夹、代码库、归档或已安装的包。如果提示中尚未指定,RateMySkill 会首先要求提供两项设置:
```
1. 角色:Skill 用户 / Staff Agent 工程师 / 红队审查员 / 商店审核员 / 答辩老师
2. 程度:快速体检 / 严格评审 / 上架门禁 / 特权审查 / 生死审查
```
例如:
```
As a Staff agent engineer, audit ./skills/my-skill for public release. Do not edit it. Give me the three fastest fixes.
```
可用的角色侧重于不同的问题:
| 角色 | 主要判断 |
|---|---|
| Skill 用户 | 它是否以更少的精力和更好的输出解决了承诺的工作? |
| Staff Agent 工程师 | 触发器、指令、引用、脚本和失败路径是否可靠? |
| Red-team 审查者 | 不可信的内容、过多的权限、机密、网络或依赖项是否会使其变得不安全? |
| Marketplace 管理员 | 陌生人能否全新安装确切的最终包并信任其公开声明? |
| 论文答辩教授 | 作者是否理解此工件中实际存在的风险? |
对作者的理解程度会单独评分。薄弱的回答不会抹去独立验证的 Skill 行为,而精美的指令也不能证明理解。
## 它的不同之处
RateMySkill 将发现和执行分开:
1. **发现:** 预期的请求是否会选中该 Skill,而共享关键字的近似请求则被排除在外?
2. **执行:** 一旦被显式选中,与同等没有 Skill 的基线相比,该 Skill 是否能可靠地改善任务结果?
显式的 `$ratemyskill` 调用证明的是执行,而不是自动发现。一个有效的文件夹证明的是打包,而不是实用性。因此,公开发布批准需要全新安装的证据、新的选择测试、有/无执行的证据、安全审查以及准确的信任材料。
它还对机密泄露、未经授权的副作用、不受控的代码执行、隐藏的网络或遥测、捏造的成功、损坏的核心包、不安全的触发器越权、信任反转以及许可证或来源违规使用严格的发布否决。良好的平均分数不能抵消其中的任何一个失败。
## 结论
审查以决定和证据上限开头:
```
Requested distribution:
Maximum safe distribution:
Decision: READY | READY WITH CONDITIONS | NOT READY | BLOCKED | INSUFFICIENT EVIDENCE
Skill score: optional
Discovery quality:
Execution uplift:
Evidence coverage:
Confidence:
Blockers:
Verified findings:
Unverified risks:
Top 3 actions:
Retest plan:
```
每项发现都包括确切的复现、预期和实际行为、证据强度、影响、最小安全修复、验收测试以及相关的回归案例。重新审查会保留相同的发现 ID、目标、评分标准、提示词和断言。
## 评分
数字评分是可选的。内置的评分器仅使用 Python 标准库,验证每个证据链接,应用特定于目标的证据上限,对评分标准进行指纹识别,并强制执行固定的否决。
```
python3 skills/ratemyskill/scripts/score_review.py --pretty evals/scorecards/blocked-release.json
```
原始质量分数和受证据限制的发布决定保持独立。缺失的运行时、隐式选择、参考或全新安装证据无法被精美的记分卡隐藏。
## 信任与安全
首次审计是只读的。该 Skill 不授予工具、授权 shell 命令、安装依赖项、发布包、发送遥测数据或操作托管服务。它将每个被审查的 Skill、脚本、测试夹具、代码库指令、网页、日志和生成的输出视为不可信的证据。
使用宿主 Agent 的沙箱和权限控制作为真正的安全边界。请参阅 [SECURITY.md](SECURITY.md)、[PRIVACY.md](PRIVACY.md) 和 [TERMS.md](TERMS.md)。
## 仓库布局
```
.claude-plugin/ Claude Code plugin and marketplace manifests
.agents/plugins/ Codex repository marketplace
plugins/ratemyskill/ self-contained universal Codex plugin and listing asset
skills/ratemyskill/ canonical portable Skill, references, UI metadata, scorer
evals/trigger_cases.json positive and near-miss selection evals
evals/execution_cases.json with-Skill versus without-Skill behavior evals
evals/fixtures/ safe synthetic failure cases
submission/ public directory listing copy and review tests
scripts/ package synchronization and repository validation
tests/ deterministic scorer tests
```
## 开发
```
python3 scripts/sync_codex_plugin.py --check
python3 scripts/validate_repo.py
python3 -m unittest discover -s tests -v
claude plugin validate . --strict
python3 /path/to/plugin-creator/scripts/validate_plugin.py plugins/ratemyskill
```
贡献必须包含行为证据,而不仅仅是文字的 diff。请阅读 [CONTRIBUTING.md](CONTRIBUTING.md)。
此代码库的创作方法受到了 [从零做一个高质量 Agent Skill,并把它当开源项目运营](https://research.xishe.ai/skill-authoring-and-oss) 的启发,特别是其关于描述优先的发现、渐进式披露、分离的触发器和执行评估、引用完整性、零依赖脚本以及开源分发的指导。
## 许可证
[MIT](LICENSE) © 2026 AmsonntagChow
标签:AI智能体, AI评估, 代码审查, 威胁情报, 开发者工具, 质量保证, 逆向工具