脚本本体放在 public/ 下,构建后发布到站点根路径。所有脚本都是幂等的, 重复执行不会破坏已有环境。执行前建议先去掉管道看一眼内容。
系统分发器,在 macOS / Linux 终端里不确定该跑哪个脚本时用它。检测当前系统后转交给对应脚本: macOS 交给 mac.sh;Linux 暂无通用基线脚本,会指向 /commands/linux/ 的手动步骤并提示 clash.sh 的用法; 在 Windows 的 POSIX 兼容层下会提示改用 win.ps1。它本身只检测和分发,不改动任何东西。 加 HUB_DRY_RUN=1 可以预览:只打印将要执行的命令,不下载也不执行。
curl -fsSL https://hub.skillnav.dev/setup.sh | sh
查看源文件 /setup.shmacOS 基线环境:检查 Xcode Command Line Tools,缺少 Homebrew 就装上, 随后只在 git / jq / ripgrep / fd / tree 确实不存在时才安装它们。 只安装,不卸载、不删除,也不写任何 shell 配置文件。 加 HUB_DRY_RUN=1 可以预览:每一步只打印命令而不执行。
curl -fsSL https://hub.skillnav.dev/mac.sh | sh
查看源文件 /mac.shWindows 基线环境:用 winget 逐个检查 Git.Git / Microsoft.PowerShell / 7zip.7zip, 只在确实缺失时安装。只安装,不卸载、不改注册表,也不碰开发者模式等系统设置。 先设 $env:HUB_DRY_RUN = '1' 可以预览:每一步只打印命令而不执行。
irm https://hub.skillnav.dev/win.ps1 | iex
查看源文件 /win.ps1Ubuntu 上的 Clash Verge Rev 安装与配置,必须带子命令: install 按架构下载 .deb 并用 apt 安装,再装上 TUN 所需的 clash-verge-service; settings 改写 verge.yaml 的 20 个键并写入 dns_config.yaml(要求 app 已退出, 服务没装时 enable_tun_mode 会如实写成 false); rules 把直连规则(Tailscale / 飞书 / 微信 / 内网 / 中国大陆)装进全局脚本增强, 对所有订阅生效;sub 需要 CLASH_SUB_URL 环境变量,订阅地址不落盘、日志里也会打码; check 输出 PASS/FAIL/SKIP 体检表;all 按顺序跑完上面五步。 改动前会先备份原文件,重复跑两次结果一致。加 HUB_DRY_RUN=1 只打印不执行。
curl -fsSL https://hub.skillnav.dev/clash.sh | CLASH_SUB_URL='https://你的订阅地址' sh -s -- all
查看源文件 /clash.sh连上 Wi-Fi 却上不了网时的分层诊断:从网卡、SSID、IPv4、静态/DHCP 配置、网关、 公网 IP、DNS 配置与解析一路探到 HTTP 和 HTTPS,最后才看 IPv6, 外加代理、hosts、MTU 三项旁证,输出 PASS/FAIL/SKIP 体检表, 并只针对最底层那个 FAIL 给出结论和对应命令。 路由器禁 ping 但 DNS 与 HTTP 都通时,网关那行记 SKIP 而不是 FAIL, 避免把「能上网但不回 ping」误判成故障。 默认全程只读。加 --fix 只做一件无副作用的事:刷 DNS 缓存。 续租 DHCP 不自动执行——macOS 上唯一的那条 ipconfig set 命令会先拆掉接口上 已有的 IPv4 服务(见 ipconfig(8)),所以只打印不执行。 改回自动 IP/DNS、忘记 Wi-Fi、关 IPv6 这类会覆盖现有配置的操作同样只打印命令。 加 HUB_DRY_RUN=1 预览 --fix 的动作。
curl -fsSL https://hub.skillnav.dev/net.sh | sh
查看源文件 /net.shnet.sh 的 Windows 版,检查项一一对应,另外多一项 MAC 随机化检测 (当前地址与硬件地址不一致时报出来,这正是路由器放行别人却拦住这台机器的常见原因)。 同样默认只读,同样只在最底层的 FAIL 上给结论,同样在路由器禁 ping 但上层通时记 SKIP。 Win11 未授予定位权限时读不到 SSID,该行记 SKIP 而不是误判成「未连接」。 因为 irm | iex 传不了参数,修复开关是 $env:HUB_FIX = '1',只做两件事:刷 DNS 缓存, 以及只对本次选中的那一块网卡、且确认它处于 DHCP 时才续租 (续租需要管理员 PowerShell,没权限时只打印命令)。 先设 $env:HUB_DRY_RUN = '1' 可以预览修复动作。
irm https://hub.skillnav.dev/net.ps1 | iex
查看源文件 /net.ps1Claude 导出 ZIP 的离线整理工具,需要 Python 3.8+,无第三方依赖。 build 保留原始导出和完整对话/项目 JSON,生成 Markdown、索引与校验报告; search 按关键词定位正文;bundle 将资料合并成供手动上传的分卷。 无变化时跳过转换,人工修改的生成文件会被保护,旧分片保留并标记。 不调用模型或网络,不自动上传。详细步骤见 /commands/claude-migrate/。
curl -fsSL https://hub.skillnav.dev/claude-migrate.py | python3 - --help
查看源文件 /claude-migrate.py使用 Python 3.9+ 标准库,只读查询官方 Claude Code 发布元数据,输出具体版本、平台、 下载地址、大小和 SHA-256;可选核对本地文件。不安装或执行客户端、不写文件, 不验证 GPG 清单签名。定制 skill 与固定版本源配方见 /commands/claude-code-customization/。
curl -fsSL https://hub.skillnav.dev/skills/claude-code-customization/scripts/release_info.py | python3 - --version latest --platform darwin-arm64
查看源文件 /skills/claude-code-customization/scripts/release_info.pyUbuntu 上的微信输入法,基于社区项目 yu1745/wetype-ime-linux(非腾讯官方),必须带子命令: fcitx 只在缺失时装 Fcitx 5 及 GTK/Qt 前端,~/.xinputrc 还没选 fcitx5 时才跑 im-config(原文件先备份为 .hub-bak); install 检查 glibc ≥ 2.38 与 Fcitx 5.1.x(即 Ubuntu 24.04+,不满足就停下并指向源码构建), 按架构下载 AppImage 装进 ~/.local,首次会从腾讯服务器下载约 214 MB 的 APK, 装完把 APK 备份到 ~/.local/share/wetype-ime-backup,以后可用 WETYPE_APK 离线重装; check 输出 PASS/FAIL/SKIP 体检表;all 按顺序跑完三步。 已装过就跳过,重复跑结果一致;不卸载、不删除。最后一步「在 Fcitx 5 配置里添加微信拼音」需手动完成。 加 HUB_DRY_RUN=1 只打印不执行。
curl -fsSL https://hub.skillnav.dev/wetype.sh | sh -s -- all
查看源文件 /wetype.sh