用途
该技能用于帮助智能体使用 Netlify CLI 将 Web 项目部署到 Netlify,重点关注安全预览、正确的站点链接和准确的构建配置。适用于用户希望发布站点、连接代码仓库或配置构建等场景。
主要能力
- 验证 Netlify CLI 是否可用以及用户是否已认证
- 检查项目的框架、构建命令和发布目录
- 将本地项目链接到已有 Netlify 站点或创建新站点
- 优先执行预览部署,再按需推广到生产环境
- 在配置缺失或错误时调整 netlify.toml
使用方式
技能要求按顺序执行以下工作流:
-
先检查项目:在部署前确定框架和构建形态。检查 package.json、lockfiles 和 netlify.toml(如存在),识别可能的构建命令和发布目录,确认是静态站点、SPA、SSR 应用、monorepo 应用还是其他模式。按需使用捆绑的参考文档(CLI 命令、部署模式、netlify.toml 指南)。
-
验证 Netlify 工具与认证:检查 Netlify CLI 是否可用以及用户是否已认证:
npx netlify --version npx netlify status若 CLI 访问或认证缺失,应停止并改用 references/setup.md,而不是猜测。
-
确定站点链接状态:使用
npx netlify status判断本地目录是否已链接到站点。若未链接,优先链接到已有站点而非创建新站点。当项目由 Git 支持时,先检查远程:git remote show origin npx netlify link --git-remote-url <REMOTE_URL>若因不存在匹配站点而失败,则初始化新站点:
npx netlify init -
部署前确认构建输入:确保项目可在本地构建。如需,使用项目包管理器安装依赖,然后验证或细化构建命令和发布目录:
npm install若存在 netlify.toml,检查它;若缺失或错误,仅在需要时创建或更新。
-
优先执行预览部署:除非用户明确要求生产部署或任务明确需要,否则先执行预览部署:
npx netlify deploy仅当目标配置已理解且用户希望正式上线时才使用生产部署:
npx netlify deploy --prod若环境阻止出站网络访问,在可用时以宿主的提权或不受限网络模式重新运行。
-
报告确切的部署结果:返回部署 URL、相关时的生产 URL、检测到或应用的构建设置、所做的任何配置更改以及仍需要的后续操作。
适用场景
- 需要将 Web 项目发布到 Netlify
- 需要将本地项目链接到已有或新建 Netlify 站点
- 需要配置或修正构建命令、发布目录与 netlify.toml
- 需要先预览再上线的安全部署流程
限制与前提
- 当前环境需能运行终端命令
- Netlify CLI 可用,通常通过 npx netlify
- 用户能够认证到 Netlify
- 工作目录包含可部署的 Web 项目
- 若 Netlify CLI 缺失或认证未就绪,应先阅读 references/setup.md
错误处理
常见问题与解决方案:
- “Not logged in” → 运行
npx netlify login或使用基于 token 的认证 - “No site linked” → 运行
npx netlify link或npx netlify init - “Build failed” → 检查 netlify.toml 或 CLI 提示中的构建命令和发布目录;验证依赖已安装;查看构建日志获取具体错误
- “Publish directory not found” → 验证构建命令成功运行;检查发布目录路径是否正确
环境变量
关于机密与配置:
- 绝不将机密提交到 Git
- 在 Netlify 面板设置:Site Settings → Environment Variables
- 在构建中通过
process.env.VARIABLE_NAME访问
提示
- 先使用
netlify deploy(不带 --prod)在生产前测试 - 运行
netlify open在 Netlify 面板查看站点 - 运行
netlify logs查看函数日志(如使用 Netlify Functions) - 使用
netlify dev在本地开发并使用 Netlify Functions
外部文档
- Netlify CLI 文档:https://docs.netlify.com/cli/get-started/
- netlify.toml 参考:https://docs.netlify.com/configure-builds/file-based-configuration/