AI 分析

PCU 集成了 AI CLI 工具,提供智能依赖分析、安全评估和更新建议。

概述

AI 分析通过以下方式增强 PCU 的功能:

  • 影响分析:了解更新如何影响您的代码库
  • 安全评估:获取 AI 驱动的安全漏洞分析
  • 兼容性检查:检测潜在的破坏性变更
  • 更新建议:接收安全更新的智能建议

支持的 AI 提供商

PCU 自动检测并按以下优先级顺序使用可用的 AI CLI 工具:

提供商优先级能力
Gemini100影响、安全、兼容性、建议
Claude80影响、安全、兼容性、建议
Codex60影响、兼容性、建议
Cursor40影响、建议

命令

检查可用的 AI 提供商

查看系统上可用的 AI 工具:

pcu ai

此命令显示:

  • 系统上检测到的可用 AI CLI 工具
  • 每个提供商的版本信息
  • 将用于分析的最佳可用提供商

AI 命令选项

  • Name
    --status
    Type
    boolean
    Description

    显示所有 AI 提供商的状态(默认行为)

  • Name
    --test
    Type
    boolean
    Description

    使用示例请求测试 AI 分析以验证提供商连接

  • Name
    --cache-stats
    Type
    boolean
    Description

    显示 AI 分析缓存统计信息,包括命中率和大小

  • Name
    --clear-cache
    Type
    boolean
    Description

    清除 AI 分析缓存以释放空间或重置缓存响应

pcu ai
pcu ai --status

AI 驱动的更新

使用 AI 驱动的分析更新依赖:

pcu update --ai
pcu u --ai

AI 增强更新提供:

  • 每个更新的智能风险评估
  • 带说明的破坏性变更检测
  • 安全漏洞识别
  • 建议的更新顺序

AI 驱动的分析

使用 AI 辅助分析特定包更新:

pcu analyze react
pcu a lodash

分析类型

影响分析

评估依赖更新将如何影响您的项目:

  • 识别使用该依赖的所有工作区包
  • 分析版本之间的 API 变更
  • 估算所需的迁移工作量
  • 建议测试重点区域

安全分析

提供以安全为重点的评估:

  • 识别当前版本中的已知漏洞
  • 检查新版本中的安全修复
  • 评估与安全相关的包更新
  • 推荐安全最佳实践

兼容性分析

检查潜在的兼容性问题:

  • 检测破坏性 API 变更
  • 识别对等依赖冲突
  • 检查 Node.js 版本兼容性
  • 验证 TypeScript 兼容性

建议

生成可操作的建议:

  • 建议最优更新顺序
  • 推荐版本范围
  • 识别应一起更新的包
  • 提供回滚策略

回退行为

当 AI 提供商不可用时,PCU 使用内置的基于规则的分析引擎:

基于规则的分析功能

  • 版本跳跃评估:根据语义化版本变更评估风险
  • 已知破坏模式:检测流行包(React、TypeScript、ESLint 等)的破坏性变更
  • 安全敏感包:标记与安全相关的包以进行仔细审查
  • 工作量估算:提供迁移工作量估算

风险级别

级别描述
补丁更新,通常可安全应用
次要更新或较大的次要版本跳跃
带有破坏性变更的主要版本更新
关键多个主要版本跳跃或预发布版本

配置

环境变量

  • Name
    GEMINI_PATH
    Type
    string
    Description

    Gemini CLI 可执行文件的自定义路径

  • Name
    CLAUDE_PATH
    Type
    string
    Description

    Claude CLI 可执行文件的自定义路径

  • Name
    CODEX_PATH
    Type
    string
    Description

    Codex CLI 可执行文件的自定义路径

  • Name
    CURSOR_PATH
    Type
    string
    Description

    Cursor CLI 可执行文件的自定义路径

检测方法

PCU 使用多种策略检测 AI 提供商:

  1. 环境变量:检查自定义路径变量
  2. PATH 查找:使用 which 命令查找可执行文件
  3. 已知路径:检查常见安装位置
  4. 应用程序路径:检查 GUI 应用程序(如 Cursor.app)

使用示例

安全更新工作流

# 使用 AI 分析检查更新
pcu check

# 分析特定高风险更新
pcu analyze react 19.0.0
pcu analyze typescript 5.5.0

# 执行 AI 引导的交互式更新
pcu update --ai --interactive --create-backup

CI/CD 集成

# 在 CI 中运行 AI 分析并输出 JSON
pcu update --ai --dry-run --format json > ai-analysis.json

# 检查高风险更新
pcu analyze default typescript --format json | jq '.riskLevel'

批量分析

# 使用 AI 建议更新所有包
pcu update --ai --target minor

# 使用 AI 分析审查主要更新
pcu update --ai --target latest --confirm-major

最佳实践

何时使用 AI 分析

  • 主要版本更新:始终对主要版本升级使用 AI 分析
  • 安全敏感包:用于认证、加密和会话包
  • 大型代码库:AI 帮助识别跨 monorepo 的受影响区域
  • 破坏性变更检测:AI 提供详细的破坏性变更解释

性能考虑

  • 与标准更新相比,AI 分析会增加处理时间
  • 使用 --dry-run 预览 AI 建议而不应用变更
  • 当 AI 不是关键时,考虑对更快的 CI/CD 流水线使用基于规则的回退

与其他功能结合

# AI 分析与安全扫描
pcu update --ai && pcu security

# AI 分析与备份
pcu update --ai --create-backup

# AI 分析与特定目标
pcu update --ai --target minor --exclude "*-dev"

此页面对您有帮助吗?