跳到主要内容
知仓学习社ZHICANG

web-to-app

网页开发工程师当需要将任意网页URL封装为独立桌面客户端时,使用此技能可一键生成体积仅约5MB的跨平台(Win/Mac/Linux)原生应用安装包。支持自定义图标与高级配置,助你快速交付轻量级桌面端产品。

执行命令严重 0 · 高危 4anbeime/skill

它会碰到什么

扫了多少4 个文本文件,20 KB
它会碰到什么执行命令
命中总数4 处
命中统计严重 0 · 高 4 · 中 0 · 低 0
逐条看命中(4 条严重或高危)
  • scripts/build_app.py:148exec-spawn
    result = subprocess.run(
  • scripts/install_pake.py:13exec-spawn
    result = subprocess.run(
  • scripts/install_pake.py:40exec-spawn
    result = subprocess.run(
  • scripts/install_pake.py:70exec-spawn
    result = subprocess.run(

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Web to App

任务目标

  • 本 Skill 用于:将任意网页 URL 打包成原生桌面应用
  • 能力包含:
  1. 自动检测并安装 pake-cli 工具
  2. 支持自定义应用名称、图标、窗口尺寸等配置
  3. 生成 macOS/Windows/Linux 平台的应用安装包
  4. 支持高级配置(隐藏标题栏、多实例、代理等)
  • 触发条件:用户提出"将网页打包成应用"、"制作桌面应用"等需求

前置准备

环境要求

  • Node.js:版本 ≥ 18.0.0(推荐 22.0+)
  • Rust:≥ 1.85.0(首次使用会自动安装)
  • 系统工具
  • macOS/Linux:需要 curlwgetfiletar
  • Windows:自动处理依赖

安装依赖

首次使用前,需要安装 pake-cli 工具:

npm install -g pake-cli
# 或使用 pnpm(推荐)
pnpm install -g pake-cli

操作步骤

标准流程

  1. 收集需求
  • 确认网页 URL(必需)
  • 应用名称(建议英文)
  • 目标平台(自动检测当前系统)
  • 自定义需求(图标、窗口大小等)
  1. 环境准备
  • 调用 scripts/install_pake.py 检查并安装 pake-cli
  • 验证 Node.js 和 Rust 环境
  1. 执行打包
  • 根据用户需求生成配置参数
  • 调用 scripts/build_app.py 执行打包
  • 监控执行进度和错误信息
  1. 输出验证
  • 确认生成的应用安装包
  • 提供安装和使用说明

可选分支

  • 当需要自定义图标
  • 提供图标文件路径(支持本地或远程 URL)
  • 自动转换为平台特定格式(.icns/.ico/.png)
  • 当需要高级配置
  • 参考 [references/parameter-guide.md](references/parameter-guide.md)
  • 添加对应参数(如 --hide-title-bar--multi-instance
  • 当打包失败
  • 检查网络连接(需要下载依赖)
  • 验证 Node.js 和 Rust 版本
  • 使用 --debug 参数查看详细日志

资源索引

必要脚本

  • [scripts/install_pake.py](scripts/install_pake.py)
  • 用途:检查并安装 pake-cli 工具
  • 参数:无
  • 返回:安装状态和版本信息
  • [scripts/build_app.py](scripts/build_app.py)
  • 用途:执行网页打包命令
  • 参数:
  • url:网页 URL(必需)
  • name:应用名称
  • icon:图标路径
  • width:窗口宽度
  • height:窗口高度
  • options:其他可选参数(字典格式)
  • 返回:生成的应用文件路径

领域参考

  • [references/parameter-guide.md](references/parameter-guide.md)
  • 何时读取:需要配置高级选项时
  • 内容:完整的参数说明和使用示例

注意事项

  • 首次打包较慢:需要下载和编译 Rust 依赖,后续打包会快很多
  • 📦 输出位置:默认在当前工作目录(./)生成应用安装包
  • 🖥️ 平台适配
  • macOS:生成 .dmg 安装包(设置 PAKE_CREATE_APP=1 可生成 .app
  • Windows:生成 .msi 安装包
  • Linux:生成 .deb.AppImage
  • 🚀 调试模式:遇到问题时添加 --debug 参数查看详细日志
  • 🔐 证书问题:如果是内网或自签名证书,使用 --ignore-certificate-errors

使用示例

示例 1:基础打包

功能说明:将 GitHub 网页打包成应用

执行方式:脚本调用

from scripts.build_app import build_app

result = build_app(
    url="https://github.com",
    name="GitHub"
)
# 输出:GitHub.dmg / GitHub_x64.msi / GitHub_x86_64.deb

示例 2:自定义配置

功能说明:自定义窗口大小和图标

执行方式:脚本调用

result = build_app(
    url="https://chat.openai.com",
    name="ChatGPT",
    icon="https://example.com/icon.png",
    width=1400,
    height=900,
    options={
        "hide-title-bar": True,
        "always-on-top": False
    }
)

示例 3:多实例应用

功能说明:允许同时打开多个应用窗口

执行方式:脚本调用

result = build_app(
    url="https://example.com",
    name="MyApp",
    options={
        "multi-instance": True,
        "activation-shortcut": "CmdOrControl+Shift+P"
    }
)

快捷键说明

生成的应用内置以下快捷键:

| 操作 | macOS | Windows/Linux |

|------|-------|---------------|

| 刷新页面 | ⌘ + R | Ctrl + R |

| 隐藏窗口 | ⌘ + W | Ctrl + W |

| 放大/缩小 | ⌘ + +/- | Ctrl + +/- |

| 重置缩放 | ⌘ + 0 | Ctrl + 0 |

| 复制 URL | ⌘ + L | Ctrl + L |

| 返回首页 | ⌘ + Shift + H | Ctrl + Shift + H |

| 开发者工具 | ⌘ + Option + I | Ctrl + Shift + I(仅调试模式) |

| 清除缓存重启 | ⌘ + Shift + Delete | Ctrl + Shift + Delete |

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。