{"_id":"@asthestarslept/ai-cr","_rev":"2-f594b31823127196ebe8b73993b8954d","name":"@asthestarslept/ai-cr","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@asthestarslept/ai-cr","version":"1.0.0","keywords":["ai","code-review","cli","typescript","git","static-analysis","code-quality","automation","developer-tools","qwen","dashscope"],"author":{"name":"AI-CR Team"},"license":"MIT","_id":"@asthestarslept/ai-cr@1.0.0","maintainers":[{"name":"asthestarslept","email":"seemoon3055@gmail.com"}],"homepage":"https://github.com/your-username/ai-cr#readme","bugs":{"url":"https://github.com/your-username/ai-cr/issues"},"bin":{"cr":"dist/cli.js","ai-cr":"dist/cli.js","ai-code-review":"dist/cli.js"},"dist":{"shasum":"db4452257d7344bfda952a179d8ac7785732c389","tarball":"https://registry.npmjs.org/@asthestarslept/ai-cr/-/ai-cr-1.0.0.tgz","fileCount":66,"integrity":"sha512-IRZz6PmJMP3Iy4ywQBWEDAL40CO6/by2amaLx4hi5VT6bJqyYTpUy+oK58b8vt2WVA7668lYua/e/o97uqvZMw==","signatures":[{"sig":"MEUCIQDbg8HYn/WWP6GxLSmk2s+//3Vt06xUBg9WRTh39btE8AIgBBSZMaCHhWET2GZ8JCKdO5blqg76q1Dfc2e2xN871d0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322530},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"38f9038b497ac41c5b5cf3278a984a71abc46120","scripts":{"dev":"tsx src/cli.ts","test":"echo \"Error: no test specified\" && exit 1","build":"tsc --project tsconfig.prod.json && cp src/rules/*.json dist/rules/","clean":"rm -rf dist","start":"node dist/cli.js","dev:lib":"tsx src/index.ts","package":"npm run clean && npm run build && npm pack","build:dev":"tsc","type-check":"tsc --noEmit","prepublishOnly":"npm run build","type-check:prod":"tsc --project tsconfig.prod.json --noEmit"},"_npmUser":{"name":"asthestarslept","email":"seemoon3055@gmail.com"},"repository":{"url":"git+https://github.com/your-username/ai-cr.git","type":"git"},"_npmVersion":"10.8.2","description":"AI-powered code review tool with intelligent analysis and automated reporting","directories":{},"_nodeVersion":"20.19.2","dependencies":{"tsx":"^4.20.4","dayjs":"^1.11.13","dotenv":"^17.2.1","openai":"^5.12.2","remark":"^15.0.1","unified":"^11.0.5","inquirer":"^12.9.2","commander":"^14.0.0","remark-gfm":"^4.0.1","typescript":"^5.9.2","@types/node":"^24.2.1","markdown-it":"^14.1.0","@types/mdast":"^4.0.4","@types/unist":"^3.0.3","remark-parse":"^11.0.0","mdast-builder":"^1.1.1","unist-builder":"^4.0.0","remark-stringify":"^11.0.0","unist-util-visit":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.33.0","prettier":"^3.6.2","@types/markdown-it":"^14.1.2"},"_npmOperationalInternal":{"tmp":"tmp/ai-cr_1.0.0_1758125234924_0.6023808542748528","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@asthestarslept/ai-cr","version":"1.0.1","type":"module","main":"dist/index.js","bin":{"ai-code-review":"dist/cli.js","ai-cr":"dist/cli.js","cr":"dist/cli.js"},"scripts":{"build":"tsc --project tsconfig.prod.json && cp src/rules/*.json dist/rules/","build:dev":"tsc","start":"node dist/cli.js","dev":"tsx src/cli.ts","dev:lib":"tsx src/index.ts","type-check":"tsc --noEmit","type-check:prod":"tsc --project tsconfig.prod.json --noEmit","prepublishOnly":"npm run build","package":"npm run clean && npm run build && npm pack","clean":"rm -rf dist","test":"echo \"Error: no test specified\" && exit 1"},"keywords":["ai","code-review","cli","typescript","git","static-analysis","code-quality","automation","developer-tools","qwen","dashscope"],"author":{"name":"AI-CR Team"},"license":"MIT","description":"AI-powered code review tool with intelligent analysis and automated reporting","homepage":"https://github.com/your-username/ai-cr#readme","repository":{"type":"git","url":"git+https://github.com/your-username/ai-cr.git"},"bugs":{"url":"https://github.com/your-username/ai-cr/issues"},"engines":{"node":">=16.0.0"},"dependencies":{"@types/mdast":"^4.0.4","@types/node":"^24.2.1","@types/unist":"^3.0.3","commander":"^14.0.0","dayjs":"^1.11.13","dotenv":"^17.2.1","inquirer":"^12.9.2","markdown-it":"^14.1.0","mdast-builder":"^1.1.1","openai":"^5.12.2","remark":"^15.0.1","remark-gfm":"^4.0.1","remark-parse":"^11.0.0","remark-stringify":"^11.0.0","tsx":"^4.20.4","typescript":"^5.9.2","unified":"^11.0.5","unist-builder":"^4.0.0","unist-util-visit":"^5.0.0"},"devDependencies":{"@types/markdown-it":"^14.1.2","eslint":"^9.33.0","prettier":"^3.6.2"},"_id":"@asthestarslept/ai-cr@1.0.1","gitHead":"05d2a055e7fe759fbe55a9c34ee34afe513f4fd6","types":"./dist/index.d.ts","_nodeVersion":"20.19.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-H8TSYTXRVDdy0tPDx9SnaPnJNQHR5h2GMo0L9jupW8id7wveCisqgFx+ewNvQ6ddcrmOXkTlM1qksPR0mOfhVg==","shasum":"84e39f457d99cd6366d5063b6c683cb5a4901046","tarball":"https://registry.npmjs.org/@asthestarslept/ai-cr/-/ai-cr-1.0.1.tgz","fileCount":66,"unpackedSize":323621,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD53sPk0q4RMOtYAhVlzD++71eiWv9bi3fVZ0v1qJJQQgIhAN4OoCvL0bTHkc980KHEQcPA9lig+BS/yfE4RiVFmSOq"}]},"_npmUser":{"name":"asthestarslept","email":"seemoon3055@gmail.com"},"directories":{},"maintainers":[{"name":"asthestarslept","email":"seemoon3055@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ai-cr_1.0.1_1758125742975_0.4079465861778784"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-17T16:07:14.789Z","modified":"2025-09-17T16:15:43.393Z","1.0.0":"2025-09-17T16:07:15.163Z","1.0.1":"2025-09-17T16:15:43.227Z"},"bugs":{"url":"https://github.com/your-username/ai-cr/issues"},"author":{"name":"AI-CR Team"},"license":"MIT","homepage":"https://github.com/your-username/ai-cr#readme","keywords":["ai","code-review","cli","typescript","git","static-analysis","code-quality","automation","developer-tools","qwen","dashscope"],"repository":{"type":"git","url":"git+https://github.com/your-username/ai-cr.git"},"description":"AI-powered code review tool with intelligent analysis and automated reporting","maintainers":[{"name":"asthestarslept","email":"seemoon3055@gmail.com"}],"readme":"# AI Code Review 系统\n\n一个高性能、智能化的代码审查系统，基于AI技术提供深度代码分析、智能上下文理解和自动化报告生成。\n\n## 🚀 最新增强功能\n\n### ⚡ 性能优化\n\n- **并行处理**: 支持多Worker并行审查，显著提升处理速度\n- **智能缓存**: 基于内容哈希的缓存机制，避免重复分析\n- **错误重试**: 智能重试和降级策略，提升系统稳定性\n\n### 🔧 增强体验\n\n- **统计报告**: 详细的性能统计和质量评分\n- **配置灵活**: 支持命令行参数和配置文件\n- **实时反馈**: 实时进度显示和缓存命中提示\n\n## ✨ 核心特性\n\n### 🧠 智能上下文分析\n\n- **多维度判断**：基于文件大小、变更比例、依赖关系等多个维度选择最优上下文策略\n- **5种上下文策略**：从简单的diff到完整文件分析，根据情况智能选择\n- **依赖感知**：自动分析文件间的import/export关系，提供更准确的上下文\n\n### ⚡ 高性能处理\n\n- **智能队列**：优先级队列和批处理，合理分配处理资源\n- **并行处理**：基于Worker线程的并行架构，充分利用多核CPU\n- **增量缓存**：基于内容哈希的智能缓存，避免重复分析\n\n### 📊 全面报告\n\n- **多格式输出**：支持Markdown、HTML、JSON等多种报告格式\n- **详细指标**：代码质量、安全性、性能等多维度分析\n- **趋势分析**：对比历史数据，展示代码质量变化趋势\n\n### 🛡️ 健壮性设计\n\n- **多级错误处理**：完善的错误捕获、重试和降级机制\n- **自动恢复**：智能降级策略，确保系统在异常情况下仍能工作\n- **监控告警**：实时监控系统状态，及时发现问题\n\n## 🚀 快速开始\n\n### 安装\n\n#### 全局安装（推荐）\n```bash\nnpm install -g @asthestarslept/ai-cr\n```\n\n#### 使用 npx（无需安装）\n```bash\nnpx @asthestarslept/ai-cr\n```\n\n#### 项目级安装\n```bash\nnpm install --save-dev @asthestarslept/ai-cr\n```\n\n### 基本使用\n\n#### 命令行使用\n\n```bash\n# 基础使用（可使用任意命令别名）\nai-cr\n# 或\nai-code-review\n# 或\ncr\n\n# 启用并行处理 (4个Worker)\nai-cr --parallel 4\n\n# 禁用缓存\nai-cr --no-cache\n\n# 显示详细统计\nai-cr --stats --verbose\n\n# 仅AI审查模式\nai-cr --mode ai\n\n# 使用自定义配置\nai-cr --config ./ai-cr.config.json\n\n# 组合使用\nai-cr --mode full --parallel 8 --stats --verbose\n```\n\n#### 编程接口\n\n```typescript\nimport { AICRSystem } from '@asthestarslept/ai-cr';\n\n// 创建系统实例\nconst aiCR = new AICRSystem();\n\n// 初始化\nawait aiCR.initialize();\n\n// 执行代码审查\nconst result = await aiCR.reviewCode({\n  files: ['src/example.ts'],\n  outputPath: './report.md'\n});\n\nconsole.log(`发现 ${result.metadata.totalIssues} 个问题`);\n```\n\n## 📋 配置说明\n\n### 基础配置文件 (`ai-cr.config.json`)\n\n```json\n{\n  \"project\": {\n    \"name\": \"我的项目\",\n    \"rootDir\": \".\",\n    \"outputDir\": \"./ai-cr-reports\"\n  },\n  \"ai\": {\n    \"provider\": \"openai\",\n    \"model\": \"gpt-4-turbo-preview\",\n    \"temperature\": 0.3,\n    \"maxTokens\": 4000\n  },\n  \"rules\": {\n    \"enabled\": [\"security\", \"performance\", \"codeQuality\", \"architecture\"],\n    \"severity\": {\n      \"error\": [\"security\", \"critical-bugs\"],\n      \"warning\": [\"performance\", \"maintainability\"],\n      \"info\": [\"style\", \"suggestions\"]\n    }\n  },\n  \"performance\": {\n    \"enableCache\": true,\n    \"parallelProcessing\": true,\n    \"maxWorkers\": 4\n  }\n}\n```\n\n### 环境变量配置\n\n```bash\n# AI服务配置\nexport AI_CR_AI_PROVIDER=openai\nexport AI_CR_AI_API_KEY=your-api-key\nexport AI_CR_AI_MODEL=gpt-4-turbo-preview\n\n# 性能配置\nexport AI_CR_MAX_WORKERS=8\nexport AI_CR_ENABLE_CACHE=true\n\n# 项目配置\nexport AI_CR_PROJECT_NAME=\"My Project\"\nexport AI_CR_OUTPUT_DIR=\"./reports\"\n```\n\n## 🏗️ 系统架构\n\n```\n┌─────────────────────────────────────────────────────────────┐\n│                    AI Code Review System                    │\n├─────────────────────────────────────────────────────────────┤\n│  ConfigManager  │  ErrorHandler  │  CacheManager  │  ...    │\n├─────────────────────────────────────────────────────────────┤\n│                     Core Components                         │\n│  ┌─────────────────┐  ┌─────────────────┐  ┌──────────────┐ │\n│  │ DependencyAnalyzer │  │ ContextExpander  │  │ SmartQueue   │ │\n│  └─────────────────┘  └─────────────────┘  └──────────────┘ │\n├─────────────────────────────────────────────────────────────┤\n│                 Processing Layer                            │\n│  ┌─────────────────┐  ┌─────────────────┐  ┌──────────────┐ │\n│  │ ParallelProcessor │  │   AI Service    │  │ ReportGenerator │ │\n│  └─────────────────┘  └─────────────────┘  └──────────────┘ │\n└─────────────────────────────────────────────────────────────┘\n```\n\n## 📦 核心模块\n\n### 🔍 依赖分析器 (DependencyAnalyzer)\n\n- 分析文件间的import/export关系\n- 检测循环依赖\n- 识别孤立文件和入口点\n\n### 🧠 上下文扩展器 (EnhancedContextExpander)\n\n- 5种智能上下文策略\n- 基于多维度分析的策略选择\n- 语义复杂度评估\n\n### ⚡ 智能队列 (SmartCRQueue)\n\n- 优先级队列管理\n- 智能批处理\n- 负载均衡\n\n### 📊 报告生成器 (SmartReportGenerator)\n\n- 多格式报告输出\n- 详细的指标分析\n- 趋势对比功能\n\n### 💾 缓存管理器 (SmartCacheManager)\n\n- 基于内容哈希的增量缓存\n- 多种淘汰策略 (LRU/LFU/TTL)\n- 自动清理和优化\n\n### 🚀 并行处理器 (ParallelProcessor)\n\n- Worker线程池管理\n- 自动扩缩容\n- 任务负载均衡\n\n### 🛡️ 错误处理器 (RobustErrorHandler)\n\n- 多级错误处理\n- 智能重试机制\n- 降级策略\n\n## 🔧 高级用法\n\n### 自定义规则\n\n```typescript\n// 注册自定义分析规则\nconst customRules = {\n  checkAsyncAwait: {\n    severity: 'warning',\n    check: (code) => {\n      // 检查异步代码模式\n      return code.includes('await') && !code.includes('try');\n    },\n    message: '建议为async/await添加错误处理'\n  }\n};\n\naiCR.registerCustomRules(customRules);\n```\n\n### 批量处理\n\n```typescript\n// 批量审查多个分支\nconst branches = ['feature/auth', 'feature/payment', 'bugfix/validation'];\nconst results = await aiCR.batchReview(\n  branches.map(branch => ({ branch }))\n);\n```\n\n### 集成CI/CD\n\n```yaml\n# .github/workflows/ai-cr.yml\nname: AI Code Review\non:\n  pull_request:\n    branches: [main]\n\njobs:\n  ai-review:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v3\n      - name: Setup Node.js\n        uses: actions/setup-node@v3\n        with:\n          node-version: '18'\n      \n      - name: Install dependencies\n        run: npm install\n      \n      - name: Run AI Code Review\n        run: npx @asthestarslept/ai-cr --base-branch origin/main --output review.md\n        env:\n          AI_CR_AI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n      \n      - name: Comment PR\n        uses: actions/github-script@v6\n        with:\n          script: |\n            const fs = require('fs');\n            const report = fs.readFileSync('review.md', 'utf8');\n            github.rest.issues.createComment({\n              issue_number: context.issue.number,\n              owner: context.repo.owner,\n              repo: context.repo.repo,\n              body: `## 🤖 AI Code Review\\n\\n${report}`\n            });\n```\n\n## 📈 性能优化\n\n### Token使用优化\n\n- **智能策略选择**：根据文件特征选择最优上下文策略，减少60-70% token使用\n- **增量分析**：只分析变更的文件，避免重复处理\n- **缓存机制**：相同内容复用分析结果\n\n### 处理性能优化\n\n- **并行处理**：多Worker并行分析，提升40-50%处理速度\n- **智能队列**：优先级排序和批处理，合理分配资源\n- **内存管理**：自动清理和垃圾回收，避免内存泄漏\n\n## 🚨 故障排除\n\n### 常见问题\n\n**Q: Token超出限制怎么办？**\n\n```bash\n# 调整上下文策略\nexport AI_CR_CONTEXT_STRATEGY=aggressive\n# 或者限制单文件token数\nexport AI_CR_MAX_TOKENS_PER_FILE=2000\n```\n\n**Q: 处理速度太慢？**\n\n```bash\n# 启用并行处理\nexport AI_CR_MAX_WORKERS=8\nexport AI_CR_ENABLE_CACHE=true\n```\n\n**Q: API调用失败？**\n\n```bash\n# 检查API配置\nai-cr --health-check\n\n# 查看详细日志\nexport AI_CR_LOG_LEVEL=debug\n```\n\n### 日志分析\n\n```bash\n# 查看处理日志\ntail -f logs/ai-cr.log\n\n# 分析性能指标\nai-cr --stats\n\n# 导出缓存统计\nai-cr --cache-stats\n```\n\n## 🤝 贡献指南\n\n1. Fork 项目\n2. 创建特性分支 (`git checkout -b feature/amazing-feature`)\n3. 提交更改 (`git commit -m 'Add some amazing feature'`)\n4. 推送分支 (`git push origin feature/amazing-feature`)\n5. 创建 Pull Request\n\n### 开发环境设置\n\n```bash\n# 克隆项目\ngit clone https://github.com/your-username/ai-cr.git\ncd ai-cr\n\n# 安装依赖\nnpm install\n\n# 运行测试\nnpm test\n\n# 运行示例\nnpm run example\n\n# 构建项目\nnpm run build\n\n# 本地测试\nnpm link\nai-cr --help\n```\n\n## 📄 许可证\n\nMIT License - 详见 [LICENSE](LICENSE) 文件\n\n## 🙏 致谢\n\n感谢所有贡献者和以下开源项目：\n\n- OpenAI GPT API\n- TypeScript\n- Node.js Worker Threads\n\n## 📦 NPM 包信息\n\n- **包名**: [@asthestarslept/ai-cr](https://www.npmjs.com/package/@asthestarslept/ai-cr)\n- **版本**: 1.0.0\n- **许可证**: MIT\n- **主页**: https://github.com/your-username/ai-cr\n\n---\n\n**🚀 让AI助力代码质量提升，让开发更高效！**\n\n安装使用：`npm install -g @asthestarslept/ai-cr`\n\n","readmeFilename":"README.md"}