Skip to content

API 参考

AI Code Reviewer 的完整 TypeScript/Node.js API。

核心函数

函数说明返回类型
collectDiff()解析 git diff 为结构化数据ParsedDiff[]
collectCommitDiff()单个 commit 的 diffParsedDiff[]
detectProject()检测项目类型和框架ProjectInfo
formatFinding()格式化单个发现为 Markdownstring
formatReviewReport()生成完整 Markdown 报告string
mergeConfig()合并用户配置与默认配置ReviewerConfig
loadConfigFile()加载 .ai-code-reviewer-plus.ymlPartial<ReviewerConfig>

常用模式

基础 Diff 采集

typescript
import { collectDiff, detectProject } from 'ai-code-reviewer-plus'

const diffs = await collectDiff({
  root: process.cwd(),
  targetBranch: 'main'
})

console.log(`变更文件: ${diffs.length}`)

for (const diff of diffs) {
  console.log(`${diff.file}: +${diff.additions}/-${diff.deletions}`)
}

项目检测

typescript
import { detectProject } from 'ai-code-reviewer-plus'

const project = await detectProject(process.cwd())

console.log(`类型: ${project.type}`)
console.log(`框架: ${project.framework || '无'}`)
console.log(`语言: ${project.language}`)
console.log(`包管理器: ${project.packageManager || '无'}`)

配置管理

typescript
import { mergeConfig, loadConfigFile } from 'ai-code-reviewer-plus'

const userConfig = loadConfigFile(process.cwd())
const config = mergeConfig(userConfig)

console.log(`启用规则: ${config.rules.enabled.length}`)
console.log(`排除路径: ${config.excludePaths.length}`)

错误处理

typescript
import { GitCommandError, ConfigError } from 'ai-code-reviewer-plus'

try {
  const diffs = await collectDiff({ root, targetBranch })
} catch (error) {
  if (error instanceof GitCommandError) {
    console.error(`Git 命令失败: ${error.message}`)
  } else if (error instanceof ConfigError) {
    console.error(`配置错误: ${error.message}`)
  }
}

类型安全

所有 API 都提供完整的 TypeScript 类型:

typescript
import type {
  ParsedDiff,
  ProjectInfo,
  ReviewerConfig,
  ReviewFinding,
  SeverityLevel,
} from 'ai-code-reviewer-plus'

详见 类型定义

基于 MIT 许可发布