首页龙虾技能列表 › Deno Deploy — 直接部署到 Deno Deploy

Deno Deploy — 直接部署到 Deno Deploy

v0.1.0

使用 Deno Deploy REST API 直接部署简单网页和 HTML 应用到互联网。适用于用户需要使内容“上线”、“托管”、“分享 URL”、“部署”或“在线访问”时触发, 无需 Deno MCP 工具,完全独立使用 Deno API。

0· 397·0 当前·0 累计
by @hosainnet·MIT-0
下载技能包
License
MIT-0
最后更新
2026/2/28
安全扫描
VirusTotal
可疑
查看报告
OpenClaw
安全
medium confidence
该技能通过捆绑的 Python 脚本和组织访问令牌上传代码到 Deno Deploy,但包元数据未声明配置文件要求,源头未知。使用前请审查凭证和来源。
评估建议
["验证来源(官方 Deno 源或信任仓库)","检查脚本(已可检查)并仅在信任时运行","使用最小权限访问令牌和专用子主机组织","注意 SKILL.md/清单不匹配:技能实际需要本地凭证文件","安全存储令牌(限制文件系统权限)并考虑使用短期令牌","如果不确定,使用沙盒环境或自信任工具重现 HTTP 调用"]...
详细分析 ▾
用途与能力
技能的声明目的(部署到 Deno Deploy)与代码和指令匹配:脚本调用 https://api.deno.com/v1 创建项目和部署。然而,包元数据未声明所需的配置路径或凭证,而 SKILL.md 和 scripts/deploy.py 需要在 ~/.config/deno-deploy 下保存的凭证(access_token 和 org_id)。元数据中的此遗漏是一个不一致。
指令范围
SKILL.md 和脚本坚持在声明的范围内:它们指示创建一个组织,在本地配置目录中存储令牌和组织 ID,写入 TypeScript 代码到一个文件,并调用 Deno REST API。指令不请求其他系统文件、无关的环境变量,或超出 deno.com 和最终 deno.dev 项目 URL 之外的意外外部端点。
安装机制
未提供安装步骤(仅指令,带有捆绑的 Python 脚本)。没有从任意 URL 下载或存档提取。该安装配置文件风险低。
凭证需求
技能所需的唯一敏感工件是 Deno Subhosting 的访问令牌和组织 ID,这与任务成比例。但清单未声明所需的配置路径或凭证;相反,脚本期望在 ~/.config/deno-deploy 中找到凭证。SKILL.md 建议将令牌存储在明文文件中,这是预期的,但这是用户应考虑的敏感做法(使用最小权限令牌并保护文件)。
持久化与权限
技能不请求始终在线的存在,不修改其他技能或系统范围的配置,并且仅从用户配置目录读取凭证文件。它根据部署的要求进行 Deno API 的网络调用。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv0.1.02026/2/28
● 可疑

安装命令 点击复制

官方npx clawhub@latest install deno-subhosting-deploy-skill
镜像加速npx clawhub@latest install deno-subhosting-deploy-skill --registry https://cn.clawhub-mirror.com

技能文档

使用捆绑的 Python 脚本将简单的网页和 HTML 应用部署到 Deno Deploy,该脚本直接调用 Deno REST API。无需 MCP 工具。


凭据设置(首次使用)

在部署之前,用户必须创建 Deno Subhosting 组织 并获取凭据:

然后将它们保存到 ~/.config/deno-deploy/ 下的配置文件中:

mkdir -p ~/.config/deno-deploy
echo "your_token_here" > ~/.config/deno-deploy/access_token
echo "your_org_id_here" > ~/.config/deno-deploy/org_id

如果这些文件不存在,部署脚本将打印清晰的错误和设置说明。引导用户访问 dash.deno.com/subhosting/new_auto 开始使用。


步骤 1:规划应用

在编写代码之前,请考虑:

  • 需要哪些 HTML/CSS/JS?
  • 是否需要外部库?(使用 CDN 链接 — 无需 npm 安装)
  • 是纯静态的,还是需要一个简单的后端(例如 API 路由)?

对于简单的页面:从单个 main.ts 文件提供所有内容,使用内联 HTML。


步骤 2:编写兼容 Deno 的优质代码

标准模式

所有 Deno Deploy 应用必须导出一个 fetch 处理器:

export default {
  async fetch(req: Request): Promise {
    const html = 


  
  
  My App


  

;
    return new Response(html, {
      headers: { "Content-Type": "text/html; charset=utf-8" },
    });
  },
};

关键规则

  • 不要使用 Node.js API — 不要使用 require()fspath
  • 不要使用 npm 包 — 使用 CDN 链接(例如 https://cdn.tailwindcss.com
  • 单文件 — 将所有 HTML、CSS、JS 作为模板字面量内联在 main.ts
  • 始终设置 Content-Type — 为 HTML 响应包含 charset=utf-8
  • 路由 — 对于多路由应用,使用 new URL(req.url).pathname

有用的 CDN 库

用途URL
Tailwind CSShttps://cdn.tailwindcss.com
Alpine.jshttps://cdn.jsdelivr.net/npm/alpinejs@3/dist/cdn.min.js
Chart.jshttps://cdn.jsdelivr.net/npm/chart.js
Marked (markdown)https://cdn.jsdelivr.net/npm/marked/marked.min.js

步骤 3:将代码保存到文件

将 TypeScript 代码写入临时文件,例如 /tmp/main.ts

cat > /tmp/main.ts << 'EOF'
export default {
  async fetch(req: Request): Promise {
    ...
  },
};
EOF

步骤 4:使用脚本部署

运行捆绑的部署脚本:

python scripts/deploy.py \
  --name  \
  --code /tmp/main.ts

项目命名建议:

  • 使用主题/用途:birthday-cardsales-dashboardquiz-game
  • 仅使用小写字母和连字符,最多约 30 个字符
  • 避免使用通用名称如 apptest

脚本将:

  • 创建新的 Deno Deploy 项目
  • 上传代码
  • 打印实时 URL

步骤 5:验证部署

部署脚本运行后,您必须验证部署是否成功:

  • 检查脚本输出 — 查看脚本打印的部署响应 JSON:
- "status" 不应该是 "failed"。如果是,则代码有错误 — 修复并重新部署。 - 如果状态是 "pending",请等待几秒钟,然后继续下一步检查。

  • Curl 实时 URL 确认它是否正确提供内容:
   curl -s -o /dev/null -w "%{http_code}" https://.deno.dev
   
- 200 = 成功,页面已上线 - 404500 = 出错了 — 检查脚本打印的部署日志 URL - 任何其他错误 = 部署可能仍在传播,等待 5 秒后重试一次

  • 如果部署失败,请检查以下常见原因:
- TypeScript 代码中的语法错误(缺少大括号、未闭合的模板字面量) - 缺少 export default { fetch } 处理器 - 使用了 Node.js API(requirefs 等) - 修复代码文件中的问题并重新部署

在通过 curl 确认之前,不要告诉用户部署成功。


步骤 6:分享结果

验证部署成功后,始终:

  • 突出显示实时 URL 作为可点击的链接
  • 简要说明 用户打开它时会看到什么

示例:

您的页面已在 https://your-project.deno.dev 上线
>
它显示 [简要描述]。如果您想更改任何内容,请告诉我!

常见陷阱

  • 不要忘记 — 没有它浏览器可能会以 quirks 模式渲染
  • 不要在模板字面量内部使用反引号而不转义它们
  • 不要忘记 export default { fetch } — 没有它应用将无法启动
  • 如果项目名称已被占用,请尝试更具体的名称或添加后缀
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制

免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制

了解定制服务