我造了一个 AI 智能合约工坊:输入中文需求,自动生成+审计+部署 Solidity 合约

  • CodeMan
  • 发布于 18 小时前
  • 阅读 39

我造了一个AI智能合约工坊:输入中文需求,自动生成+审计+部署Solidity合约缘起两个月前,一个朋友找我:"我想发个ERC20代币,但我不会写Solidity。"我给他推荐了工具链:Hardhat配置环境→学Solidity语法→抄OpenZeppelin代

我造了一个 AI 智能合约工坊:输入中文需求,自动生成+审计+部署 Solidity 合约

缘起

两个月前,一个朋友找我:"我想发个 ERC20 代币,但我不会写 Solidity。"

我给他推荐了工具链:Hardhat 配置环境 → 学 Solidity 语法 → 抄 OpenZeppelin 代码 → 改参数 → 找审计 → 部署。他听完说:"算了,我花钱找人写吧。"

这件事让我意识到:智能合约开发的门槛不在"写代码",而在整个工具链的复杂度。

所以当 Kupasi 黑客松开始,我毫不犹豫选了"智能合约自动生成"赛道。2天后,ContractCraft 诞生了。

它解决了什么?

传统开发一个合约,至少需要跨过三道坎:

1. 语言门槛 — 学 Solidity 平均 2-4 周,还要熟悉 OpenZeppelin、Hardhat 工具链 2. 审计门槛 — 第三方审计公司报价几千到几万美元,排队数天到数周 3. 环境门槛 — 配节点、领测试网 ETH、调试工具,新手上路 1-2 天

ContractCraft 的目标就是:把这些门槛全部抹掉。你只需要说"我要什么",剩下的交给 AI。

它是怎么工作的?

背后是一个四阶段的 Agentic Pipeline:

第一步:感知层 — 听懂你的需求

你说:"多签钱包,10 个管理员,至少 5 人签名才能交易。"

系统自动解析出:{ contract_type: "multisig", owners: 10, required: 5 }

除了自然语言,还支持上传 PRD 文档(.md/.txt/.docx/.pdf),自动提炼需求。

第二步:决策层 — 模板还是 AI?

这是我最得意的设计——双轨生成引擎

  • 模板模式:遇到标准合约(ERC20、NFT、多签、锁仓、质押),用预编译的 f-string 模板,< 1 秒输出
  • AI 模式:遇到自定义需求(众筹、拍卖、空投),交给 LLM 带着安全约束生成

两者互补,不是替代关系。

第三步:执行层 — 审计 + 修复

生成代码后自动跑安全审计。内置 20+ 静态分析规则,覆盖重入攻击、未授权访问、整数溢出等常见漏洞。如果安装了 Slither,还会自动启用工业级引擎。

评分低于 80?一键自动修复。修复后再审计,直到分数满意。

第四步:部署

安全评分 ≥ 50 自动触发部署到本地 Hardhat 网络。自动处理构造函数参数推导、OpenZeppelin 版本兼容——用户看到的就是合约地址和 Gas 消耗。

一个有意思的设计决策

项目里有个细节我觉得值得分享:非合约输入引导

如果用户输入"今天天气怎么样",系统不会盲目生成代码,而是显示:"请输入合约相关需求"并展示示例。

这看起来简单,但解决了一个真实问题——LLM 在有压力的情况下会 hallucinate,给非合约输入硬生成一个合约。与其让用户拿到垃圾结果,不如主动引导。

技术亮点

  • 零配置可用:没有 API Key?自动降级 Mock 模式,基于规则匹配,所有功能完整可用
  • 多 LLM 支持:DeepSeek / OpenAI / SiliconFlow / 自定义,运行时动态切换
  • 对话记忆:说"加上增发功能"→ 识别为迭代修改;说"重新生成"→ 识别为新建,不会混淆
  • 4 种 LLM 供应商标配适配器模式:统一接口屏蔽差异,新增提供商只需实现一个类

一些数据

  • 支持 6 种标准合约模板(ERC20 / ERC721 / ERC1155 / 多签 / Vesting / Staking)
  • 安全审计 20+ 规则,评分卡:基础 100 - 高危×30 - 中危×10 - 低危×3
  • 模板模式 < 1 秒,AI 模式 5-15 秒
  • 支持 4 种文档格式解析

开源地址 & 下一步

项目已github开源:合约工坊 contract-craft

本地启动只需三步:

pip install -r backend/requirements.txt
cd contracts && npm install && cd ..
cd backend && python -m uvicorn main:app --host 0.0.0.0 --port 8080

打开 本地8080端口 即可使用。不需要 API Key,不需要 Node,不需要 ETH。


如果你对 AI + 区块链交叉领域感兴趣,欢迎 Star、提 Issue、或直接来 PR。这个项目才刚开始,路线图上还有多链部署、可视化编排、VSCode 插件等计划。

让智能合约开发从"专家手艺"变成"标准化流水线"——这是 ContractCraft 的目标。


这篇帖子最初发布于 Kupasi 黑客松 2026 赛后,也是项目开源的起点。

点赞 0
收藏 1
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
CodeMan
CodeMan
codeman