Skip to content

Latest commit

 

History

History
101 lines (81 loc) · 2.37 KB

File metadata and controls

101 lines (81 loc) · 2.37 KB

请实现一个环境检测模块(env_detector),用于在运行时判断:

  1. 操作系统:

    • Windows / macOS / Linux
  2. Python环境:

    • Python版本
    • 是否在 virtualenv / venv 中
  3. Shell环境:

    • bash / zsh / powershell / cmd

要求:

  • 提供统一接口: get_os() get_python_version() is_venv() get_shell()

  • 结果缓存,避免重复检测

后续所有系统操作必须依赖该模块,不允许硬编码系统逻辑 然后想实现一个“本地 AI 工作台”的第一阶段功能,请你创建一个最小可运行项目。

目标: 第一阶段只做“软件扫描与基础控制”。 功能包括:

  1. 扫描电脑上已安装的软件
  2. 将软件分类
  3. 支持打开指定软件
  4. 支持关闭指定软件

当前边界:

  • 暂时不做 GUI 自动化
  • 暂时不做管理员权限提升
  • 暂时不做安装/卸载
  • 暂时不做系统设置修改
  • 暂时不做全盘文件扫描
  • 暂时不做复杂前端界面
  • 先做 CLI 版本

环境:

  • 根据上面的环境检测模块得到
  • 项目可以从零开始创建

功能要求:

  1. 扫描已安装软件

    • 尽量获取软件名称、可执行路径、安装来源、启动命令
    • 输出为结构化 JSON
  2. 软件分类

    • 请你根据扫描的结果进行分类并命名

    分类规则请放到单独配置文件中,便于后续维护。

  3. 打开软件

    • 支持通过名称打开软件
    • 如果匹配多个结果,返回候选项,不要直接执行
  4. 关闭软件

    • 支持通过名称关闭普通用户态应用
    • 不要关闭系统关键进程
    • 增加 denylist 保护高风险系统程序

CLI 设计:

  • scan:扫描并输出 JSON
  • list:以表格形式展示软件列表
  • open :打开指定软件
  • close :关闭指定软件

数据结构: 每个软件至少包含以下字段:

  • id
  • name
  • category
  • install_source
  • executable_path
  • launch_command
  • closable
  • system_app

安全要求:

  • 不要默认使用管理员权限
  • 对危险目标加 denylist
  • 所有操作打印日志
  • 遇到歧义时要求用户确认

交付要求:

  1. 创建完整项目结构
  2. 提供 README.md
  3. 提供依赖文件
  4. 提供基础测试
  5. 提供一个示例输出文件
  6. 在 README 中写清如何运行 scan/list/open/close

请先给出:

  1. 目录结构设计
  2. 核心模块划分
  3. 实现计划 然后再开始写代码。