Avoid common Solidity mistakes — reentrancy, gas traps, storage collisions, and security pitfalls.
数据来源:ClawHub。 在 ClawSkills 查看
选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install solidity或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install solidity⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/solidity/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: Solidity description: Avoid common Solidity mistakes — reentrancy, gas traps, storage collisions, and security pitfalls. metadata: {"clawdbot":{"emoji":"⟠","os":["linux","darwin","win32"]}} ---
ReentrancyGuard from OpenZeppelin — use nonReentrant modifier on vulnerable functionstransfer() and send() have 2300 gas limit — but don't rely on this for securityunchecked {} blocks bypass this5 / 2 = 2, no decimalstype(uint256).max for max value — don't hardcode large numbersdelete refunds gas but has limits — refund capped, don't rely on itinternal — not private, derived contracts see themprivate doesn't mean hidden — all blockchain data is public, just not accessible from other contractstx.origin is original sender — use msg.sender, tx.origin enables phishing attacksexternal can't be called internally — use public or this.func() (wastes gas)payable required to receive ether — non-payable functions reject etherselfdestruct sends ether bypassing fallback — contract can receive ether without receive functionsend() — returns false on failure, doesn't revertcall{value: x}("") preferred over transfer() — forward all gas, check return valuestorage persists, memory is temporary — storage costs gas, memory doesn't persistmemory — explicit storage to modify statecalldata for external function inputs — read-only, cheaper than memoryinitialize() with initializer modifierselfdestruct implementation — breaks all proxies pointing to itdelegatecall uses caller's storage — impl contract storage layout must match proxyrequire for user errors, assert for invariants — assert failures indicate bugs== doesn't work — use keccak256(abi.encodePacked(a)) == keccak256(abi.encodePacked(b))indexed for efficient filtering安装 Solidity 后,可以对 AI 说这些话来触发它
Help me get started with Solidity
Explains what Solidity does, walks through the setup, and runs a quick demo based on your current project
Use Solidity to avoid common Solidity mistakes — reentrancy, gas traps, storage col...
Invokes Solidity with the right parameters and returns the result directly in the conversation
What can I do with Solidity in my finance & investment workflow?
Lists the top use cases for Solidity, with example commands for each scenario
将技能文件夹放到 ~/.claude/skills/solidity/ 目录(个人级,所有项目可用),或 .claude/skills/solidity/(项目级)。重启 AI 客户端后,用 /solidity 主动调用,或让 AI 根据上下文自动发现并使用。
Solidity 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
Solidity 可免费安装使用。请查阅仓库了解许可证信息。
Avoid common Solidity mistakes — reentrancy, gas traps, storage collisions, and security pitfalls.
Solidity 属于「Finance & Investment」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。
Automate my finance & investment tasks using Solidity
Identifies repetitive steps in your workflow and sets up Solidity to handle them automatically