📦 Universal AutostartCross Platform — 通用自动启动,跨平台

v1.0.0

Windows 与 macOS 的自动启动服务管理器,支持安装、卸载、启动、停止及自动监控服务。

1· 4·0 当前·0 累计
by @ahao2001 (steam2001)
下载技能包
最后更新
2026/4/20
0
安全扫描
VirusTotal
可疑
查看报告
OpenClaw
可疑
medium confidence
该技能大体符合 service-manager 的用途,但所包含的代码(未被 SKILL.md 引用)中硬编码了 API key,并带有可外传文件的上传例程,还存在若干跨平台编码问题,因此整个包不一致,需谨慎对待。
评估建议
该包实现了一个看似合理的自启动/服务管理器,其安装脚本会创建系统级任务(Windows:以 SYSTEM 身份运行的 schtasks;macOS:launchd plist),需要管理员权限——这是预期行为。但请注意: 1) 仓库中包含 publish_textonly.py,其中硬编码了 API key,并带有上传例程,会将本地文件 POST 到外部 SkillHub 端点。该文件与运行或安装服务无关,若被执行可能泄露文件。请勿运行任何不理解的脚本。 2) 在管理员/sudo 运行安装脚本前,请检查 universal_service.py 及安装脚本中是否有网络调用或指向敏感目录的路径。 3) 若打算本地保留这些文件,请删除或清理 publish_textonly.py(至少清除 API key);除非有意发布,否则不要运行它。 4) 先在隔离环境或虚拟机测试;在验证行为前,勿在生产机安装系统级任务。如需,我可指出硬编码密钥与上传调用的具体行,并检查 universal_service.py 其余部分是否有额外网络或文件访问(该文件部分被截断)。...
详细分析 ▾
用途与能力
名称、描述、SKILL.md 和安装脚本均与跨平台自启动/服务管理器一致,确实需要 python 和管理员权限。但仓库中还包含 publish_textonly.py,它执行无关的网络上传并嵌入了硬编码的 SKILLHUB API 密钥——该凭据及上传行为并非声明功能所需,也未作说明。
指令范围
SKILL.md 仅说明安装服务所需的行政操作(创建系统任务 / launchd plist),该范围符合预期。文档未要求用户运行 publish_textonly.py,但该文件存在于包内,可将本地技能文件发送至外部端点;因其存在,即使 SKILL.md 未提及,也扩大了攻击面。
安装机制
没有 install spec(仅含指令的 skill),安装脚本为本地 shell/batch 脚本(install_macos.sh、uninstall_macos.sh,建议提供 install.bat)。不使用远程下载或归档解压,降低供应链风险。用户解压或安装 skill 时,所含文件将写入磁盘;这是仅含指令的包附带 helper 脚本的正常行为。
凭证需求
该技能未声明任何必需的环境变量,这是合理的。但 publish_textonly.py 中硬编码了 API 密钥(SKILLHUB_API_KEY)并包含 SkillHub 上传流程——将密钥打包进程序并具备向外部服务 POST 本地文件的能力,与“服务管理器”这一用途不相称且缺乏正当性。此外,某些操作(以 SYSTEM 身份在 Windows 上创建系统任务)需要提升权限——这对系统级自启动管理器是预期行为,但需留意。
持久化与权限
该 skill 在安装时确实需要并指示提升权限(安装脚本会调用 sudo / 要求以管理员身份运行,且 Windows 任务被设为以 SYSTEM 身份运行)。always:false 已设置(正常)。默认允许自主调用模型;结合其安装系统服务的能力,若 agent 拥有无限制的自主权则会增加风险,但这属于平台层面的考量,而非 skill 本身的缺陷。
安全有层次,运行前请审查代码。

运行时依赖

无特殊依赖

版本

latestv1.0.02026/4/20

Universal-autostart v1.0.0 – 首个跨平台自启动服务管理器,支持 Windows 与 macOS。 - 安装、卸载、启动、停止及监控后台服务 - 服务崩溃后自动重启 - 借助 sc/schtasks(Windows)或 launchd(macOS)实现重启后仍保持的持久化服务配置

可疑

安装命令

点击复制
官方npx clawhub@latest install universal-autostart
镜像加速npx clawhub@latest install universal-autostart --registry https://cn.longxiaskill.com

技能文档

# Universal AutoStart Service Manager v1.1 跨平台自启动服务管理器,支持 Windows 和 macOS。可安装、卸载、启动、停止、监控服务,并支持自动重启。 ## 🚀 快速开始 ### Windows 安装 创建 install_windows.bat(纯文本,UTF-8 保存): ``batch @echo off chcp 65001 >nul echo ============================================================ echo 通用自启动服务 - 安装工具 v1.1 echo ============================================================ :: 检查管理员权限 net session >nul 2>&1 if %errorLevel% neq 0 ( echo [ERROR] 请以管理员身份运行! pause exit /b 1 ) echo [OK] 已获取管理员权限 :: 查找配置文件 set CONFIG_FILE=%~dp0service_config.json if not exist "%CONFIG_FILE%" ( set CONFIG_FILE=%~dp0qwenpaw_service_config.json ) if not exist "%CONFIG_FILE%" ( echo [ERROR] 未找到配置文件! pause exit /b 1 ) :: 安装服务 python "%~dp0universal_service.py" install "%CONFIG_FILE%" --no-check-admin if %errorLevel% equ 0 ( echo [OK] 安装完成!服务将在下次开机自动启动 ) else ( echo [ERROR] 安装失败! ) pause ` 右键 install_windows.bat以管理员身份运行 ### macOS 安装 使用自带 install_macos.sh`bash sudo ./install_macos.sh ` ## 📋 核心功能 | 功能 | 描述 | |------|------| | 跨平台 | Windows (sc + schtasks)、macOS (launchd) | | 自动重启 | 崩溃后自动重启(可设最大次数) | | 日志 | 实时输出,支持轮转 | | 健康检查 | 端口/进程检测,确保存活 | | 优雅退出 | 支持 SIGTERM/SIGINT | | 环境变量 | 支持加载 .env | ## 🔧 用法 ### 命令行 `bash # 安装自启动(不立即运行) python universal_service.py install [config.json] [--no-check-admin] # 卸载自启动 python universal_service.py uninstall [config.json] [--no-check-admin] # 手动启动 python universal_service.py start [config.json] # 停止 python universal_service.py stop [config.json] # 查看状态 python universal_service.py status [config.json] # 直接运行(带自启动) python universal_service.py [config.json] ` ### 双击脚本 - Windows: install.bat / uninstall.bat - macOS: install_macos.sh / uninstall_macos.sh ## ⚙️ 配置 ### QwenPaw 标准 (qwenpaw_service_config.json) `json { "service_name": "QwenPawService", "display_name": "QwenPaw 智能助手服务", "program": { "type": "python", "path": "python", "arguments": "-m qwenpaw.cli", "working_dir": "C:/Users/Administrator/.copaw/workspaces/default" }, "environment": { "load_dotenv": true, "variables": {} }, "log": { "enabled": true, "level": "INFO", "dir": ".logs", "max_size_mb": 10, "backup_count": 5, "console": true }, "health_check": { "enabled": true, "type": "port", "port": 8765, "interval_seconds": 30, "timeout_seconds": 5, "max_failures": 3 }, "restart": { "auto_restart": true, "max_restarts": 5, "restart_delay": 30 } } ` ### 通用示例 (service_config.example.json) `json { "service_name": "MyCustomService", "display_name": "我的自定义服务", "program": { "type": "python", "path": "python3", "arguments": "app.py", "working_dir": "/path/to/app" }, "environment": { "load_dotenv": false, "variables": { "NODE_ENV": "production" } }, "log": { "enabled": true, "level": "DEBUG", "dir": "./logs" }, "health_check": { "enabled": true, "type": "port", "port": 3000, "interval_seconds": 10 }, "restart": { "auto_restart": true, "max_restarts": 3, "restart_delay": 60 } } ` ### 字段说明 | 字段 | 类型 | 说明 | |------|------|------| | service_name | string | 服务内部唯一名 | | display_name | string | 显示名 | | program.type | string | 类型:python / node / binary / shell | | program.path | string | 可执行文件路径 | | program.arguments | string | 启动参数 | | program.working_dir | string | 工作目录 | | environment.load_dotenv | bool | 是否加载 .env | | environment.variables | object | 额外环境变量 | | log.enabled | bool | 是否启用日志 | | log.level | string | 级别:DEBUG/INFO/WARNING/ERROR | | log.dir | string | 日志目录 | | log.max_size_mb | int | 单文件上限 (MB) | | log.backup_count | int | 保留份数 | | log.console | bool | 是否输出控制台 | | health_check.enabled | bool | 是否开启健康检查 | | health_check.type | string | 类型:port / process | | health_check.port | int | 端口号 | | health_check.interval_seconds | int | 检查间隔 | | health_check.timeout_seconds | int | 超时 | | health_check.max_failures | int | 最大失败次数 | | restart.auto_restart | bool | 是否自动重启 | | restart.max_restarts` | int

数据来源ClawHub ↗ · 中文优化:龙虾技能库