ComputerTool 是一个纯 Python 3、零依赖、跨平台的命令行实用工具,旨在发现、组织并启动 Windows、Linux 和 macOS 上的原生系统管理、诊断和配置工具。它将平台特定的二进制文件、控制面板 URI 和终端执行模型抽象为统一的面向对象框架,提供交互式、彩色化菜单系统,支持动态工具发现、实时系统遥测和智能终端路由。 该应用将特定于操作系统的工具注册表隔离到提供程序类中(WindowsToolProvider、LinuxToolProvider、MacOSToolProvider)。SystemInfo 和 ToolMenu 根据运行时操作系统检测动态实例化组件,工具执行委托给 Tool.launch(),后者根据 run_in_terminal 标志路由到操作系统特定的终端包装器或直接 subprocess.Popen 调用。 运行时,ComputerTool 打印 ASCII 横幅,实例化 SystemInfo,并执行环境扫描。它检测操作系统系列、内核版本、桌面环境、Linux 发行版、内存和磁盘使用情况,然后调用相应的 ToolProvider 构建分类的 Tool 实例,并通过 shutil.which 过滤不可用的工具。它支持 Python 3.6+ 以及 Windows 10+、macOS 10.14+ 和 Linux(systemd 和非 systemd)。 ComputerTool 默认以当前用户完整性级别运行。需要提升权限的工具通过 Colors.RED 以 [ADMIN] 视觉标记,但未实现内置权限提升。输入字符串从不被求值;所有命令均为静态定义或作为列表参数传递。
团队使用 ComputerTool 发现并启动 Windows、Linux 和 macOS 上的原生系统管理、诊断和配置工具。
用户使用 ComputerTool 查看系统遥测信息,例如操作系统系列、内核版本、桌面环境、Linux 发行版、内存和磁盘使用情况。
用户使用 ComputerTool 从命令行打印静态工具清单。
用户使用 ComputerTool 仅显示系统遥测信息,而不进入交互式菜单。
用户使用 ComputerTool 在操作系统原生终端中启动工具,并使用持久 shell 以便查看输出。
开发者使用 ComputerTool 通过扩展相应提供程序的 get_tools() 方法来添加新工具。
开发者使用 ComputerTool 通过创建新的 ToolProvider 类来添加对新平台的支持。