writing-skills
writing-skills
Use when creating new skills, editing existing skills, or verifying skills work before deployment
vercel-deployTRIGGER WHEN: 用户要求"部署网页"、"发布到 Vercel"、"做个工具页面并上线"时。 处理 Web 项目的安全部署,支持非交互式 Token 验证及通用宿主项目管理。
Independent GitHub snapshot · Automated classification · Original documentation governs
本技能用于将静态页面或 Web 应用快速部署至 Vercel 环境。
凭证文件优先级(按顺序查找,命中即停):
~/.ethan/.secrets/vercel.env(推荐,独立密钥文件)~/.ethan/.env(统一 env 文件)需要以下环境变量:
VERCEL_TOKEN —— Vercel API 访问令牌(必填)VERCEL_ORG_ID —— 组织 ID(首次 vercel link 后由本地 .vercel/ 写入,可选)VERCEL_PROJECT_ID —— 项目 ID(首次 vercel link 后由本地 .vercel/ 写入,可选)加载方式(执行部署前必须 source):
[ -f ~/.ethan/.secrets/vercel.env ] && source ~/.ethan/.secrets/vercel.env \
|| ([ -f ~/.ethan/.env ] && source ~/.ethan/.env)
严禁在 SKILL.md 或终端输出中明文写入 Token 值。
默认将页面存入 ~/.ethan/web/tools/ 子目录,统一部署 ~/.ethan/web 根项目以减少 Vercel 项目数。
非交互式部署:
npx vercel --prod --yes --token "$VERCEL_TOKEN" --cwd "$HOME/.ethan/web"
部署完成后必须提取并返回 https://...vercel.app 链接。
用户偏好 pnpm。对于 pnpm 项目:
# 1. 构建
pnpm install --frozen-lockfile && pnpm build
# 2. 部署构建产物(如 dist/ 或 build/)
npx vercel deploy --prod --yes --token "$VERCEL_TOKEN" --cwd ./dist
# 3. 若需显式传递组织/项目(覆盖 .vercel/ 本地配置)
VERCEL_ORG_ID="$VERCEL_ORG_ID" \
VERCEL_PROJECT_ID="$VERCEL_PROJECT_ID" \
npx vercel --prod --yes --token "$VERCEL_TOKEN"
--cwd(~ 不会被 vercel CLI 展开,需用 $HOME 或实际路径)。--force 参数或提示用户运行 vercel link。npx vercel 而非全局安装的 vercel,避免版本污染。package.json 中 packageManager 字段为 pnpm@<version>,以触发 Vercel 的 pnpm 自动检测。