返回顶部
p

postme-deploy部署到PostMe

Deploy local HTML/frontend files to PostMe (dele.fun) and get a live URL

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.3
安全检测
已通过
136
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

postme-deploy

技能名称: postme-deploy

详细描述:

PostMe 部署技能

概述

该技能允许AI代理(OpenClaw、Cursor、Claude等)将生成的HTML文件或前端项目文件夹自动部署到PostMe(https://www.dele.fun)——一个静态网站托管平台。它会返回一个可分享给用户的实时URL。

必需的环境变量

变量描述
POSTMEAPIKEY必需。 你的PostMe API密钥,用于身份验证。可在 https://www.dele.fun/api-keys 获取
POSTMEAPIURL
可选。默认为 https://www.dele.fun/api/upload |

前置条件

  1. 1. PostMe API密钥:在 https://www.dele.fun/api-keys 生成一个API密钥,然后将其设置为环境变量:
env POSTMEAPIKEY=your-secret-agent-key
  1. 2. Python依赖:该技能需要 requests 库。
bash pip install requests

代理使用说明

当用户要求你部署、发布或分享你刚刚创建的Web应用(如HTML文件或前端项目文件夹)时,你应该使用此技能。
  1. 1. 确定生成的文件夹或文件的绝对路径(targetpath)。
  2. 为应用创建一个合适的、URL友好的名称(appname)。它只能包含小写字母、数字和连字符。
  3. 使用这些参数调用 postme_deploy 技能。
  4. 将生成的URL呈现给用户。

示例

如果你在 /tmp/workspace/my-app 生成了一个项目,你应该使用以下参数调用该技能:
  • - targetpath:/tmp/workspace/my-app
  • appname:my-app-v1

该技能将返回一条包含实时URL的成功消息,例如:部署成功!URL:https://www.dele.fun/app/my-app-v1/。

工具定义

json
{
name: postme_deploy,
description: 将本地文件夹或HTML文件部署到PostMe系统以获取实时Web URL。,
parameters: {
type: object,
properties: {
target_path: {
type: string,
description: 要部署的文件夹或HTML文件的本地路径。
},
app_name: {
type: string,
description: 应用的唯一、URL友好名称(仅限小写字母、数字和连字符)。
},
api_url: {
type: string,
description: PostMe /api/upload 端点的完整URL。默认为 https://www.dele.fun/api/upload
},
api_key: {
type: string,
description: 用于身份验证的API密钥(POSTMEAPIKEY)。
},
app_desc: {
type: string,
description: 应用功能的简短描述。
}
},
required: [
target_path,
app_name
]
}
}

Python实现(postme_deploy.py)

python
import os
import requests
import re
from typing import Optional

def execute(
target_path: str,
app_name: str,
api_url: str = https://www.dele.fun/api/upload,
api_key: Optional[str] = None,
app_desc: Optional[str] = None
) -> str:

将本地文件夹或HTML文件部署到PostMe系统。

if not os.path.exists(target_path):
return f错误:目标路径 {target_path} 不存在。

if not re.match(r^[a-z0-9-]+$, app_name):
return 错误:app_name 只能包含小写字母、数字和连字符。

filestoupload = []

if os.path.isfile(target_path):
filestoupload.append((targetpath, os.path.basename(targetpath)))
elif os.path.isdir(target_path):
for root, , files in os.walk(targetpath):
for file in files:
file_path = os.path.join(root, file)
relpath = os.path.relpath(filepath, target_path).replace(os.sep, /)
filestoupload.append((filepath, relpath))
else:
return f错误:{target_path} 既不是文件也不是目录。

if not filestoupload:
return 错误:未找到要上传的文件。

multipartdata = [(appName, (None, appname))]
if app_desc:
multipartdata.append((appDesc, (None, appdesc)))

file_handles = []
try:
for filepath, relpath in filestoupload:
f = open(file_path, rb)
file_handles.append(f)
multipartdata.append((files, (os.path.basename(filepath), f)))
multipartdata.append((paths, (None, relpath)))

headers = {}
if api_key:
headers[Authorization] = fBearer {api_key}
headers[x-agent-user] = openclaw-agent

response = requests.post(apiurl, files=multipartdata, headers=headers)

if response.status_code in (200, 201):
data = response.json()
baseurl = apiurl.replace(/api/upload, )
return f部署成功!URL:{baseurl}{data.get(url, f/app/{appname}/)}
else:
try:
err_msg = response.json().get(error, response.text)
except:
err_msg = response.text
return f部署失败(状态码 {response.statuscode}):{errmsg}

except Exception as e:
return f部署期间出错:{str(e)}
finally:
for f in file_handles:
f.close()

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 postme-deploy-1775945304 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 postme-deploy-1775945304 技能

通过命令行安装

skillhub install postme-deploy-1775945304

下载

⬇ 下载 postme-deploy v1.0.3(免费)

文件大小: 2.64 KB | 发布时间: 2026-4-12 11:03

v1.0.3 最新 2026-4-12 11:03
- Added a skill metadata header (YAML frontmatter) specifying name, description, allowed-tools, and environment variables.
- No changes made to the code or usage instructions.
- Environment variable requirements now clearly listed in the metadata section at the top.
- No functional changes in this version; documentation and metadata update only.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部