name: 静态网站托管 - Static.app
description: 将静态网站部署到 Static.app 托管平台。当用户想要在 Static.app 上部署、上传或托管静态站点时使用。触发短语包括“deploy to static.app”、“upload to static”、“host on static.app”、“static.app deploy”或当用户使用 Static.app 托管服务时。
直接从 OpenClaw 将静态网站和应用程序部署到 Static.app 托管平台。
工作区中所有 Static.app 操作都使用专用的文件夹结构:
workspace/
└── staticapp/ # 所有 Static.app 操作的主文件夹
├── new-site/ # 本地创建的新站点
└── {pid}/ # 下载的现有站点(按 PID)
staticapp/ 子文件夹中staticapp/{pid}/ 以供编辑Static.app 会自动根据您的文件名生成简洁的 URL:
| 文件 | URL |
|---|---|
index.html |
/ (首页) |
about.html |
/about |
portfolio.html |
/portfolio |
contact.html |
/contact |
无需子目录! 只需在根文件夹中创建 .html 文件。
my-site/
├── index.html # 首页 → /
├── about.html # 关于页面 → /about
├── portfolio.html # 作品集 → /portfolio
├── contact.html # 联系 → /contact
├── style.css # 样式表
├── js/ # JavaScript 文件
│ ├── main.js
│ └── utils.js
└── images/ # 图片文件夹
├── logo.png
└── photo.jpg
对于 JS 应用,先构建,然后部署 dist(或 build)文件夹:
# 构建您的应用
npm run build
# 部署 dist 文件夹
node scripts/deploy.js ./dist
sk_ 开头)STATIC_APP_API_KEY 环境变量中# 创建页面
echo '<h1>首页</h1>' > index.html
echo '<h1>关于</h1>' > about.html
echo '<h1>作品集</h1>' > portfolio.html
# 部署
node scripts/deploy.js
node scripts/deploy.js ./my-site
node scripts/deploy.js . --pid olhdscieyr
node scripts/list.js
node scripts/files.js YOUR_PID
选项:
- --raw — 输出原始 JSON
- -k <key> — 指定 API 密钥
node scripts/delete.js YOUR_PID
选项:
- -f, --force — 跳过确认提示
- -k <key> — 指定 API 密钥
将现有站点下载到您的工作区进行编辑:
node scripts/download.js YOUR_PID
这将:
1. 从 Static.app API 获取下载 URL
2. 下载站点归档文件
3. 将其解压到 staticapp/{pid}/
选项:
- -p, --pid — 要下载的站点 PID
- -o, --output — 自定义输出目录(默认:./staticapp/{pid})
- -k <key> — 指定 API 密钥
- --raw — 输出原始 JSON 响应
示例:
# 下载站点到默认位置
node scripts/download.js abc123
# 下载到自定义文件夹
node scripts/download.js abc123 -o ./my-site
node scripts/deploy.js [SOURCE_DIR] [OPTIONS]
参数:
SOURCE_DIR 要部署的目录(默认:当前目录)
选项:
-k, --api-key API 密钥(或设置 STATIC_APP_API_KEY 环境变量)
-p, --pid 项目 PID,用于更新现有站点
-e, --exclude 逗号分隔的排除模式
--keep-zip 部署后保留 zip 归档文件
以下内容会自动从部署中排除:
- node_modules
- .git, .github
- *.md
- package*.json
- .env
- .openclaw
.html 页面images/ 文件夹或根目录js/ 文件夹或根目录npm run build 后部署 dist/ 或 build/ 文件夹# 1. 构建您的 React/Vue/Angular 应用
npm run build
# 2. 部署构建输出
node scripts/deploy.js ./dist --pid YOUR_PID
POST https://api.static.app/v1/sites/ziparchive(zip 文件)和可选 pid 的多部分表单数据GET https://api.static.app/v1/sitesAccept: application/jsonGET https://api.static.app/v1/sites/files/{pid}Accept: application/jsonDELETE https://api.static.app/v1/sites/{pid}Accept: application/jsonGET https://api.static.app/v1/sites/download/{pid}Accept: application/jsonarchiver — 创建 zip 归档文件form-data — 多部分表单编码node-fetch — HTTP 请求adm-zip — 解压 zip 文件安装:cd scripts && npm install
成功时,脚本输出:
✅ 部署成功!
🌐 站点 URL:https://xyz.static.app
📋 PID:abc123
STATIC_APP_URL=https://xyz.static.app
STATIC_APP_PID=abc123
STATIC_APP_API_KEY 环境变量或 --api-key