defi-protocol-templates
作者 wshobsondefi-protocol-templates 是一个 GitHub skill,可帮助快速搭建 DeFi 合约模板,涵盖 staking、AMMs、governance、lending 和 flash loans。它更适合作为 Solidity 设计与提示生成的起点,而不是经过审计、可直接用于生产环境的框架。
该技能评分为 66/100,达到收录门槛,但更应被视为模板库,而不是可直接落地的完整工作流。目录用户大概率可以用它生成常见的 DeFi 合约模式,但应预期自行补齐部署、测试以及协议层面的具体决策。
- 触发范围清晰:描述和用例明确覆盖 staking、AMMs、governance、lending、flash loans 和 yield farming。
- 包含相当充实的实际内容,而非占位符;内联了较长的 Solidity 模板,可为代理提供具体可用的起点。
- 在起草标准 DeFi 协议合约时,比通用提示更有实用价值,因为它将多种常见协议模式整合进一个 skill 中。
- 操作层面的指引较弱:没有 install command,没有配套支持文件,关于如何安全改造这些模板的工作流或约束说明也较少。
- 可信度和采用信号有限:从仓库可见信息来看,缺少 tests、references、resources,以及与这些合约模式相关的实现说明。
defi-protocol-templates 技能概览
defi-protocol-templates 实际能提供什么
defi-protocol-templates 技能本质上是一个面向常见 DeFi 合约模式的代码生成与脚手架辅助工具,覆盖 staking、AMM、governance、lending,以及 flash-loan 风格的基础构件。它的核心价值在于提速:你不用从空白 Solidity 文件起步,而是直接从熟悉的协议结构出发,先拿到核心状态、事件和主要函数流程的骨架。
这个技能最适合谁
这个 defi-protocol-templates skill 最适合已经明确要做什么产品、但需要一个可靠合约架构起点的 Web3 开发者。比较适合:
- 正在原型验证协议机制的 Solidity 开发者
- 用 AI 辅助编写 DeFi MVP 的工作流
- 在正式定制前先对比基线实现方案的团队
- 需要快速产出首版草稿的 hackathon 或内部 R&D 项目
它真正解决的是什么问题
大多数用户并不是抽象地需要“模板”,而是需要把类似“单币 staking + 线性奖励”或“带 delegation 的简易治理 token”这种模糊协议想法,落成具体实现方案和起步合约。defi-protocol-templates 擅长的正是这一步“从想法到结构化实现”的转换。
defi-protocol-templates 和通用 Prompt 有什么不同
通用 Prompt 当然也能描述一个 DeFi 协议,但当你希望模型始终围绕已知的 DeFi 合约类别来输出时,这个技能通常更好用。这样可以减少歧义,在 reward accounting、pool math、governance token mechanics 这类常见场景里,往往也能得到更成型、更有结构的结果。
安装前必须知道的限制
从仓库信息来看,这个技能本质上几乎就是一个带内嵌示例的 SKILL.md,并不是一个包含 tests、scripts、audit 结果或 deployment tooling 的完整框架。这意味着 defi-protocol-templates for Web3 更适合作为起步工具和设计辅助,而不是可直接上线的生产级包。生成出来的代码不能当作 audit-ready 代码看待。
如何使用 defi-protocol-templates 技能
defi-protocol-templates 的安装方式
在支持 GitHub 托管技能的 AI coding 环境里,使用 defi-protocol-templates install。常见安装方式如下:
npx skills add https://github.com/wshobson/agents --skill defi-protocol-templates
如果你的客户端支持直接从 GitHub 加载 skill,就添加该仓库,并指向 skill slug:defi-protocol-templates。
先读这个文件
先看:
plugins/blockchain-web3/skills/defi-protocol-templates/SKILL.md
这里没有额外暴露出来的配套 README、resources、rules 或辅助脚本,所以几乎所有有价值的指导都集中在这一个文件里。正式提问前先读一遍,确认这个技能默认覆盖了哪些协议家族。
先弄清楚这个技能覆盖什么
当你的需求能清晰映射到以下模式之一时,这个 skill 的表现会最好:
- staking rewards
- AMM contracts
- governance tokens or voting structures
- lending and borrowing logic
- flash-loan-related protocol mechanics
如果你的设计涉及 cross-chain、重度依赖 oracle、复杂 liquidation,或者对 gas 优化要求很高,那么这个技能更适合作为首版草稿辅助,而不是完整方案。
提问前至少准备这些输入
想获得高质量的 defi-protocol-templates usage,至少要给模型这些信息:
- protocol type
- token standard assumptions
- chain 或 EVM compatibility target
- reward、fee 或 interest model
- admin 和 upgrade assumptions
- security constraints
- 你希望生成什么:仅 contract、interfaces、tests、docs,还是全部
弱输入:
Build a DeFi protocol
强输入:
Use the defi-protocol-templates skill to draft a Solidity staking rewards contract for an ERC-20 token on Ethereum. Users stake one token and earn rewards in another token at a fixed per-second rate. Include pause controls, owner-funded rewards, events, reward accounting comments, and a list of security risks that still require review.
如何把模糊目标变成高质量 Prompt
一个实用的 defi-protocol-templates guide Prompt,通常包含四部分:
- 说明协议原型类别
- 说清经济规则
- 说明运行约束
- 要求返回“产物”,而不只是代码
示例:
Use defi-protocol-templates to generate a minimal AMM pair contract and factory outline for an EVM chain. Assume constant-product pricing, 0.3% fee, ERC-20 pairs only, no fee-on-transfer support, and no upgradeability. Return: architecture summary, core Solidity contracts, edge cases, and a checklist for testing swaps, liquidity add/remove, and reserve sync behavior.
明确要求模型写出假设
这个技能落地时最大的阻碍,通常不是代码能力,而是“隐藏假设”。如果你强制模型明确写出以下内容,DeFi 输出通常会明显更好:
- trust model
- price source assumptions
- token behavior assumptions
- reentrancy 和 access control assumptions
- 数学处理是为了便于理解做了简化,还是按部署场景来写
这样可以避免你误收下一个“看起来像样”,但实际悄悄漏掉关键协议规则的合约。
适合真实项目的使用流程
一个比较稳妥的 defi-protocol-templates for Web3 工作流如下:
- 在
SKILL.md里先选最接近的协议模板 - 第一轮先让它生成最小可行版本
- 审查其中的假设和缺失的不变量
- 再要求补 tests 和 adversarial cases
- 只有到这一步之后,再加入 fee、admin controls、upgrade patterns 等功能
- 在技能之外自行做 static analysis 和人工审查
相比一次性要求“完整生产级 DeFi 协议”,这种分阶段方式更安全。
第一轮最值得要的内容
第一次生成时,优先要求这些内容:
- contract architecture summary
- state variable explanations
- 带 access control 标注的 function list
- event design
- 已知 attack surfaces
- 哪些部分是刻意省略的
这样在花时间审 Solidity 细节之前,你会先得到一个更容易检查的设计层。
实际的仓库阅读路径
因为这个技能真正有内容的文件只有一个,所以阅读路径很简单:
- 先扫一遍
When to Use This Skill - 找出哪个内嵌模板和你的协议最接近
- 对照示例结构,看它是否匹配你的 token flow
- 提示模型去“adapt”相关部分,而不是直接照抄
这一步很重要,因为模板选错是低质量输出的常见来源。比如拿 staking 模板去改 vesting,或拿简单 AMM 去套 concentrated liquidity,通常误导会大于帮助。
要尽早识别的不匹配场景
如果你需要以下能力,就不要只依赖 defi-protocol-templates usage:
- audited production contracts
- deployment scripts 和环境配置
- 协议级经济模拟
- liquidation engine design
- oracle integration 细节
- formal verification artifacts
- 非 EVM 实现
这类场景里,这个技能最多适合提供初始结构;真正落地还得结合专门工具或经过审计的参考实现。
defi-protocol-templates 技能 FAQ
defi-protocol-templates 适合初学者吗?
部分适合。它有助于你理解常见 DeFi 合约的大致形态,但单独使用并不算 beginner-safe。如果你还不能自己审查 Solidity 里的 access control、算术处理和 token interaction 风险,那就应该把所有输出都视为教学性质的草稿代码。
这比直接让 AI 写 DeFi 代码更好吗?
通常是的,尤其在常见协议类型上更明显,因为 defi-protocol-templates 会把任务约束在已知的 DeFi 类别里,往往能提升结构性和相关性。但对于非常规协议设计,它并不一定更好。
defi-protocol-templates 自带部署或测试工具吗?
根据当前可见的仓库信息,没有。这里没有暴露 scripts、resources 或 test harness 文件。部署、测试和 CI 步骤,通常需要你自己生成或自行补齐。
我可以直接用 defi-protocol-templates 生成生产环境合约吗?
不能直接用。更合理的方式是把它用于加速设计和首轮实现,然后再补上:
- comprehensive tests
- invariant checks
- static analysis
- gas review
- 外部安全审查或 audit
哪类协议想法最适合它?
最匹配的是这些相对直观的变体:
- staking rewards
- basic AMMs
- governance token patterns
- simple lending/borrowing flows
- flash loan primitives
越接近新型 tokenomics 或复杂市场设计,模板驱动生成的可靠性通常越低。
什么情况下不建议安装这个技能?
如果你主要需要的是 turnkey protocol repo、经过实战验证的集成能力,或可直接继承的 audited base,那么可以跳过 defi-protocol-templates install。这个技能最强的定位是 AI 提示辅助,而不是端到端开发工具包。
如何提升 defi-protocol-templates 技能的使用效果
给出协议规则,不要只报协议名称
想提升 defi-protocol-templates 输出质量,最快的办法就是把规则说具体:
- 谁可以 deposit
- rewards 如何累计
- 用户什么时候可以 withdraw
- 谁能更新 rate
- 有哪些 fees
- failure cases 发生时怎么处理
“Build lending” 太弱。
“Build overcollateralized lending with ERC-20 collateral, fixed interest, owner-set parameters, and liquidation hooks left as stubs” 就好得多。
要求模型区分模板代码和定制逻辑
一个很好用的 Prompt 模式是:
Use defi-protocol-templates and clearly label which parts are generic template structure and which parts are specific to my protocol requirements.
这样你可以更快定位风险更高的定制部分。
生成后强制再做一轮安全审查
第一版输出后,再补一轮要求:
- reentrancy risks
- access control gaps
- accounting edge cases
- fee manipulation paths
- token compatibility assumptions
- griefing vectors
很多时候,这第二轮比初始代码草稿本身更关键。
用明确的输出格式提升结果质量
可以要求固定响应结构,例如:
- assumptions
- architecture
- Solidity code
- missing protections
- test checklist
- audit questions
结构化输出能降低 defi-protocol-templates skill 只给代码、却不给足够审查上下文的概率。
重点盯住这些常见失败模式
这个技能所在领域里,常见问题包括:
- reward accounting 不完整
- 缺少 access restrictions
- 不安全的外部 token 调用
- 漏掉 reserve 或 balance sync logic
- 不现实的 flash loan repayment checks
- governance model 忽略 delegation 或 vote snapshots
如果这些点恰好是你协议的核心,就要在 Prompt 里明确要求,不要默认模板一定已经覆盖。
迭代时一次只收紧一个变量
不要一次改所有东西。第一版出来后,每轮只调整一个维度,效果通常更好:
- add upgradeability
- add emergency pause
- change fee model
- add multi-token rewards
- add test coverage
- replace owner model with roles
这样更容易看出设计到底是在哪一步开始出问题的。
把你的内部标准一起喂给技能
实际使用中,提升 defi-protocol-templates for Web3 效果的最好办法,是把你自己的 house rules 一并提供出来:Solidity version、是否使用 OpenZeppelin、event naming、NatSpec 要求、upgrade pattern、testing framework 等。这个技能能给你一个起步结构,而真正让它可用的,是你自己的工程标准。
