2.8 KiB
2.8 KiB
aide-program-env
路径:aide-program/aide/env/ 最后更新:2025-12-15
概述
环境检测模块,提供模块化的开发环境检测和修复功能。支持多种语言和工具,以及模块实例化(多项目场景)。
文件清单
| 文件 | 说明 |
|---|---|
__init__.py |
模块初始化 |
manager.py |
环境管理器(~374 行) |
registry.py |
模块注册表(~55 行) |
modules/base.py |
模块基类定义(~90 行) |
modules/python.py |
Python 检测模块 |
modules/uv.py |
uv 包管理器检测 |
modules/venv.py |
Python 虚拟环境检测 |
modules/requirements.py |
Python 依赖检测 |
modules/rust.py |
Rust 工具链检测 |
modules/node.py |
Node.js 检测 |
modules/flutter.py |
Flutter SDK 检测 |
modules/android.py |
Android SDK 检测 |
modules/node_deps.py |
Node.js 项目依赖检测 |
核心组件
EnvManager
- 职责:环境检测和修复的入口
- 位置:
manager.py:53 - 关键方法:
list_modules()- 列出所有可用模块ensure(runtime_only, modules, check_only, verbose)- 检测并修复环境set_modules(module_names)- 设置启用的模块列表set_module_config(module_name, key, value)- 设置模块配置
ModuleRegistry
- 职责:模块注册表,管理所有可用的环境检测模块
- 位置:
registry.py:8 - 关键方法:
register(module)- 注册模块get(name)- 获取模块names()- 获取所有模块名称
BaseModule(抽象基类)
- 职责:定义模块接口
- 位置:
modules/base.py:37 - 关键方法:
info- 返回模块元信息check(config, root)- 检测环境ensure(config, root)- 修复环境(可选)validate_config(config)- 验证配置
数据类
CheckResult- 检测/修复结果ModuleInfo- 模块元信息(名称、描述、能力、配置需求)
接口说明
# CLI 入口
aide env list # 列出可用模块
aide env ensure # 检测启用的模块
aide env ensure --runtime # 仅检测运行时
aide env ensure --modules python,node # 指定模块
aide env ensure --all # 检测所有(仅报告)
aide env set modules python,uv,venv # 设置启用模块
aide env set venv.path .venv # 设置模块配置
模块分类
| 类型 | 模块 | 需要配置 | 支持修复 |
|---|---|---|---|
| A | python, uv, rust, node, flutter, android | 否 | 否 |
| B | venv, requirements, node_deps | 是 | 是 |
依赖关系
- 依赖:core(output, config)
- 被依赖:main.py
注意事项
- 支持模块实例化命名:
模块类型:实例名(如node_deps:frontend) - 类型B模块必须配置路径才能检测
- 启用模块失败时会停止检测