PinMe Deploy
by @yz6214589-hash
一键部署前端静态网站到 IPFS 网络。使用场景:(1) 用户需要部署静态网站、HTML页面、前端项目 (2) 用户提到pinme、IPFS部署、静态网站托管 (3) 用户需要快速预览或分享前端作品 (4) 用户要求发布、上传、部署静态页面。支持自动识别项目类型、构建并上传到 IPFS 网络,返回可访问的 URL。
clawhub install pinme-deploy📖 About This Skill
name: pinme-deploy version: 1.0.0 description: 一键部署前端静态网站到 IPFS 网络。使用场景:(1) 用户需要部署静态网站、HTML页面、前端项目 (2) 用户提到pinme、IPFS部署、静态网站托管 (3) 用户需要快速预览或分享前端作品 (4) 用户要求发布、上传、部署静态页面。支持自动识别项目类型、构建并上传到 IPFS 网络,返回可访问的 URL。 metadata: openclaw: emoji: "🚀" tags: ["deployment", "ipfs", "static", "frontend", "hosting"] requires: env: - PINATA_API_KEY - PINATA_SECRET_KEY bins: - curl primaryEnv: PINATA_API_KEY
PinMe Deploy
一键部署前端静态网站到 IPFS 网络,获得永久可访问的去中心化 URL。
功能特性
使用方法
快速部署
# 部署当前目录
skill pinme-deploy部署指定路径
skill pinme-deploy /path/to/project部署并自动打开
skill pinme-deploy --open
完整命令
skill pinme-deploy [path] [options]Options:
--open, -o 部署后自动在浏览器打开
--watch, -w 监听文件变化自动重新部署
--port, -p 本地预览端口 (默认: 3000)
--help, -h 显示帮助信息
工作流程
1. 项目检测与分析
执行以下步骤识别项目类型:
# 检测项目类型(任选其一)
ls -la
PowerShell:
Get-ChildItem
根据文件/目录结构判断:
2. 构建准备
检测需要构建的项目:
# 如果是框架项目(存在 package.json)且没有构建目录(dist/build),先执行构建
npm install
npm run build
优化 HTML:
3. 执行上传
使用 Bash 工具执行部署脚本:
curl -X POST https://api.pinata.cloud/pinning/pinFileToIPFS \
-H "pinata_api_key: YOUR_API_KEY" \
-H "pinata_secret_api_key: YOUR_SECRET_KEY" \
-F "file=@/index.html"
4. 生成访问 URL
IPFS Gateway URL 格式:
https://ipfs.io/ipfs/{CID}#app.html
本地预览 URL:
http://localhost:3000
项目类型支持
HTML 项目
React 项目
# 自动构建命令
npm run build
输出目录: build/
Vue 项目
# 自动构建命令
npm run build
输出目录: dist/
静态资源
输出示例
🚀 Starting deployment...
📁 Project: /Users/user/my-project
📦 Type: React (Create React App)
🔨 Building: npm run build
✅ Build complete: build/ directory📤 Uploading to IPFS...
✨ CID: QmXxxXxxXxxXxxXxxXxxXxxXxxXxxXxxXxx
🌐 IPFS URL: https://ipfs.io/ipfs/QmXxxXxx/index.html
📱 Mobile URL: https://ipfs.io/ipfs/QmXxxXxx/index.html#app
📊 Statistics: 12 files, 2.4MB
🎉 Deploy complete! Opening in browser...
高级功能
增量更新
# 只上传变更的文件
pinme-deploy --incremental
自定义域名
# 绑定 ENS 域名
pinme-deploy --ens myname.eth
团队协作
# 生成团队分享链接
pinme-deploy --team-share
故障排除
构建失败
上传失败
访问问题
最佳实践
1. 优化构建配置 - 启用资源压缩 - 使用 CDN 资源 - 优化图片大小
2. SEO 优化 - 添加 meta 标签 - 配置 sitemap - 使用语义化 HTML
3. 性能优化 - 启用 gzip 压缩 - 使用懒加载 - 预加载关键资源
API 集成
Pinata API 密钥配置
# 设置环境变量
export PINATA_API_KEY="your_api_key"
export PINATA_SECRET_KEY="your_secret_key"
PowerShell:
$env:PINATA_API_KEY="your_api_key"
$env:PINATA_SECRET_KEY="your_secret_key"
自定义 API 端点
# 使用自定义 IPFS 节点
pinme-deploy --gateway https://my-ipfs-node.com