📌 项目地址:github.com/rauchg/gdp-ts | 星数:705+ | 语言:TypeScript | 协议:MIT | 出品:Guillermo Rauch(Vercel CEO)
『这个用户能读这个资源吗』——授权 bug 是 web 应用最常见也最贵的安全洞。Vercel CEO Guillermo Rauch 把学术界的 Ghosts of Departed Proofs(GDP)验证体系搬进 TypeScript:库 + linter + AI skill 三合一,让越权类 bug 在类型检查期就写不出来——人和 AI 编码代理都跑不掉。要求 TypeScript 5.4+。TypeScript 生态的配套工具见 Whirl全栈聊天应用,AI 编码代理的技能见 Claude Code自定义Skills。
| 特性 | 说明 |
|---|---|
| 编译期拦截 | 授权/权益 bug 在类型检查期报错,上线前就堵死 |
| 零运行时开销 | 仅一个 id 包装器,无额外查询与依赖 |
| 类型检查便宜 | 每授权调用点约 0.3ms(冷 TS7),随使用频率而非代码库规模增长 |
| 增量采用 | 任何 TS 代码库与运行时可用,不改 I/O 写法 |
| 易用-严格滑杆 | 证明细度按风险偏好自定,skill 附 where-to-stop 建议 |
| AI skill 内置 | 教编码代理正确使用——AI 写的代码也逃不过类型检查 |
# 装 AI skill(教编码代理)
npx skills add rauchg/gdp-ts
# 装核心库
pnpm add @gdp-ts/core
# 要求:TypeScript 5.4+
rauchg(Vercel CEO Guillermo Rauch)开源的『Ghosts of Departed Proofs』TypeScript 实现(705 星,MIT):库 + linter + AI skill 三合一,把『这个用户能读这个资源吗』这类授权/权益 bug 堵在编译(类型检查)期——对人和 AI 编码代理都生效,运行时开销趋近于零。
运行时只多一个 id 包装器(安全来自类型检查器本身);类型检查成本约每个授权调用点 0.3ms(冷启动 TypeScript 7),成本随使用频率增长而非随代码库规模增长。官方附带基准。
两条命令:npx skills add rauchg/gdp-ts(装 AI skill 教编码代理用法)+ pnpm add @gdp-ts/core(装核心库),要求 TypeScript 5.4+。易用-严格是个滑杆:证明到多细由各代码库的风险偏好决定,skill 自带 where-to-stop 建议文档。增量采用,不改变现有 I/O 写法。