[ 09 / 16 ] · Monad课程

第 09 课:Monskills

9 分钟400 XP

踏上构建生产级应用的旅程。

你的 AI 编码助手很聪明,但它也很泛化。它什么都懂一点,却没有特别专精的领域——这意味着当你让它构建具体的东西,比如在 Monad 上做一个应用时,它就会靠猜。它会编造合约地址,回退到通用的 EVM 模式,挑错的库。

Skills(技能)解决的就是这个问题。

一个 skill 能把你那个泛化的 AI 助手变成专才。一条命令,它就立刻了解你的技术栈、你的规范、你的地址、你的部署流程。它不再靠猜,而是开始正确地构建。

完成本课时你将:

  • 理解什么是 skills 以及它们如何工作
  • 安装 Monskills——一套让你的 AI 变成 Monad 专家的技能集
  • 用它在 Monad 上构建并发布一个真实的应用

开始吧。


第 1 部分:什么是 Skill?

一个 skill 是一份 markdown 文件,用来教你的 AI 助手把某件事做好。你只写一次,每当用得上时,助手就会自动加载——不需要在每次对话里反复粘贴同样的指令。

可以这样理解:与其在每段对话开头都解释一遍你的编码规范,不如把规范写下来一次。助手在需要时自己去读。这就是一个 skill。

一个最简化的 skill 长这样:

---
name: explain-code
description: Explains code with visual diagrams and analogies. Use when the user asks "how does this work?"
---

When explaining code, always:

1. Start with an analogy
2. Draw a diagram
3. Walk through the code step by step
4. Highlight a common gotcha

两个部分:一段简短的头部,告诉助手何时使用这个 skill;以及一段正文,告诉它怎么做。就这么简单。

助手怎么知道什么时候该用某个 skill

当你发出一条消息时,助手会检查它能访问到的每个 skill 的描述。如果你的请求匹配上了——比如你问「这个函数是怎么工作的?」,而恰好有一个 skill 的描述是「用可视化图示讲解代码」——它就会加载那个 skill 并按指令执行。

你不需要记住有哪些 skill 存在。你只描述自己想要什么,合适的 skill 就会自动启动。

为什么这很强大

一个 skill 是有用的。聚焦在同一个领域里的一整套 skills 则是一种超能力。把覆盖某个特定技术栈每个环节的 skills 都加载上——项目搭建、库、地址、部署——你的 AI 助手就会从「也许懂一点的通用助手」升级成「一次就能做对的专家」。

这正是 Monskills 为 Monad 所做的事。

快速检查:skill 的主要任务是什么?

  • 把你的 AI 助手替换成更好的那个
  • 教你的 AI 助手把某件具体的事做好,让它别再靠猜
  • 让你的助手运行得更快

第 2 部分:认识 Monskills

Monskills 是一套 skills,能让你的 AI 编码助手成为在 Monad 上构建应用的专家。

开箱情况下,你的助手并不了解 Monad 特有的东西,比如:

  • Monad 主网上有哪些合约地址
  • 如何为 Monad 的链接入钱包连接
  • 如何利用 Monad 的 400ms 出块时间和 800ms 终局性
  • 如何通过 Safe 多签安全地部署
  • 如何在不安装 Vercel CLI 的情况下让前端上线

Monskills 把这些都覆盖了。它由六个 skills 组成,每一个聚焦于构建 Monad 应用的一个环节:

  • scaffold——一份有明确主张、循序渐进的构建指南,从项目结构 → 链上/链下决策 → 合约部署 → 前端接线 → 上线
  • why-monad——教你的助手做出对 Monad 友好的决策:何时使用 useSendTransactionSync、为什么单一的整体合约也是可以的、如何围绕 400ms 出块时间和 800ms 终局性来设计 UX
  • addresses——经过验证的主网与测试网地址:Multicall3、Permit2、Safe、USDC、WETH、WBTC、ERC-8004 智能体标准。指示助手永远不要凭空猜地址
  • wallet——通过 Foundry 的 cast 创建一个加密的开发钱包,并把每一笔交易都通过 Safe 多签提交给你审批。你的私钥永远不会以明文形式被存储
  • wallet-integration——RainbowKit + Wagmi v3 + viem,并预先为 monadmonadTestnet 两条链配置了正确的 RPC 端点
  • vercel-deploy——用一条 shell 脚本把你的前端发布到 Vercel。无需安装 CLI,也无需登录

重要:这些 skills 本身并不构建任何东西。 它们只是一些装满了 Monad 特定知识的 markdown 文件。真正负责构建的是你的 AI 助手——skills 只是确保它把事情做对。

你不需要记住每个 skill 是干什么的。助手会根据你的请求挑选合适的那些。


第 3 部分:安装 Monskills

你需要在打算构建应用的项目文件夹里运行一条命令。如果你是直接从上一课过来的,请使用同一个项目。

打开你 Repl 里的 Shell 标签页并运行:

npx skills add therealharpaljadeja/monskills

就这样。你 Repl 的 AI 面板现在已经能访问 Monskills 中的每一个 skill。它会根据你的构建需求自动加载需要的那些。

关于信任

Skills 之所以强大,正是因为它们告诉你的 AI 助手该做什么。但同样的特性也意味着:一旦你装错了,它就会很危险。

一个 skill 只是一份 markdown 文件——但你的助手会认真地执行其中的指令。一个恶意的 skill 可以让助手泄露你的私钥、部署一份带后门的合约、把你项目中的代码外传,或运行一段几乎能做任何事的 shell 脚本。如果你不会随手把网上看到的脚本粘到终端里执行,那你也不应该随便安装一个陌生的 skill。

在安装任何 skill 集之前,请先确认:

  • 是谁做的? 看一下 GitHub 组织或作者。是你认识的项目或团队吗?
  • 是开源的吗? 在运行前,你应该能直接读到那些 skill 文件。如果做不到,就不要装。
  • 社区在用它吗? 仓库的 stars、forks 和活跃度都是比较合理的信号。
  • 直接读一读这些 skill。 它们就是 markdown,打开几个翻一翻。如果有哪一段写着「从某个随机 URL 运行这段脚本」或「把这些数据发到某处」,那就是危险信号。

Monskills 由 Harpal Jadeja 维护,每一个 skill 都可以在 github.com/therealharpaljadeja/monskills 上直接阅读——运行之前先去看一眼。这是一个值得养成的习惯。


第 4 部分:动手构建

是时候让它派上用场了。从下面这些 prompt 中挑一个(或者自己想一个 Monad 应用的点子),把它交给你的 AI 助手:

NFT 铸造应用:

Read skills.devnads.com and build me an NFT minting app on Monad.

代币兑换 UI:

Read skills.devnads.com and build a swap UI on Monad for MON ↔ USDC.

链上投票应用:

Read skills.devnads.com and build a DAO voting app where members can create proposals and vote on-chain.

按下回车,看着它跑。如果你选的是 NFT 应用,下面是助手在背后做的事:

  1. scaffold 最先加载——规划项目:用 Foundry 写合约,前端用 Next.js + Shadcn。决定铸造逻辑放在链上;NFT 的元数据和图片放到 IPFS,链上只存哈希
  2. addresses——为前端可能需要的批量读取查询 Monad 上的 Multicall3 地址
  3. wallet——检查是否已有 keystore(没有就创建一个),随后通过 Safe 多签部署一份 OpenZeppelin ERC-721。在任何东西落到链上之前,它会暂停下来,给你一个二维码以审批部署
  4. wallet-integration——在 web/ 里搭好 RainbowKit + Wagmi,使用 useWriteContractuseSendTransactionSync 接好铸造按钮,让 UI 在交易落块后约 400ms 内确认
  5. vercel-deploy——提交改动,运行部署脚本,把一个预览 URL 和一个领取 URL 交到你手上

全都来自一条 prompt。这就是一套好 skill 集的力量——你的助手从「我大概知道怎么在 Monad 上构建」一跃变成「这是你的实时 dapp,到这个 URL 来领取」。

提醒: 在上主网之前,永远要审查 AI 生成的智能合约代码。Skills 加快的是开发速度,不能替代安全审计。

迭代

和上一课同样的循环——看看构建出了什么,然后告诉助手要改什么:

Make the mint button bigger and add a connected wallet indicator in the top right
Show a success toast with the transaction hash after minting
Add a gallery view so users can see NFTs they've minted

不停迭代,直到你满意。


第 5 部分:发布上线

当你准备上线时,告诉你的助手:

Deploy this to Vercel

vercel-deploy skill 会启动。助手会打包项目、上传、等待构建完成,然后给你两个 URL:

  • 一个预览 URL——你的应用,正在互联网上活着
  • 一个领取 URL——用它把这次部署转移到你自己的 Vercel 账号下

在手机上打开这个预览 URL。连上钱包,试一试你的应用。你刚刚在 Monad 上构建并发布了一个真正的 dapp。


你刚刚做了什么

花一秒钟好好品味一下这件事。你:

  • 学习了什么是 skills,以及为什么它们重要
  • 用一条命令安装了 Monskills
  • 构建了一个真实的 Monad 应用,全程不需要知道该用哪些合约地址、挑哪个钱包库、怎么配置链
  • 把它发布到了一个真实可访问的 URL

如果没有 skills,要把这一切做对意味着翻 Monad 文档、追查地址、调试钱包配置、研究部署流程。是你的助手把这些都做了——因为你给了它正确的上下文。

这就是关键。Skills 把你那个泛化的 AI 变成你所在意的任何技术栈中的专家。 Monskills 在 Monad 上扮演的就是这个角色。

为什么 Monskills 比直接让 AI「构建一个 Monad 应用」效果更好?


接下来是什么

你已经把 AI 助手变成了 Monad 专家。接下来是 Monad 的网络层(Monad's Network Layer)——看看那个决定整个技术栈所有性能数字天花板的部分。

Resources

0/1 正确

0% — 全部答对即可完成

注册以记录进度