Mohamedsalem-fn/logiclens-_semantic_code_review_-_risk_analyzer
GitHub: Mohamedsalem-fn/logiclens-_semantic_code_review_-_risk_analyzer
一个基于语义分析和 OpenAI 的 GitHub Action,用于在 PR 层面识别安全与逻辑风险并生成报告。
Stars: 0 | Forks: 0
# LogicLens: 语义化代码审查与风险分析器
[](https://opensource.org/licenses/MIT)
[](https://github.com/marketplace/actions/logiclens-semantic-code-review)
LogicLens 是一个高级的 GitHub Action,用于对拉取请求执行深度语义分析。与仅检查语法和风格的常规 linter 不同,LogicLens 理解业务逻辑上下文,识别潜在的安全缺陷、逻辑竞态条件,并在 PR 上生成一份全面的风险报告作为评论。
## 功能
- **语义化代码分析**:理解超出语法层面的代码上下文
- **安全漏洞检测**:识别潜在的安全风险
- **逻辑竞态条件检测**:发现并发问题
- **业务逻辑验证**:检查逻辑不一致性
- **全面的风险报告**:直接发布详细分析到 PR
- **多语言支持**:适用于多种编程语言
## 安装
将以下内容添加到你的 `.github/workflows/logiclens.yml`:
```
name: LogicLens Code Review
on:
pull_request:
types: [opened, synchronize, reopened]
jobs:
logiclens:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: LogicLens Analysis
uses: your-org/logiclens@v1.0.0
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
openai-api-key: ${{ secrets.OPENAI_API_KEY }}
languages: "python,javascript,typescript"
severity-threshold: "medium"
```
## 配置
LogicLens 可通过以下输入进行配置:
| 输入 | 描述 | 必填 | 默认值 |
|------|------|------|--------|
| `github-token` | 用于 API 访问的 GitHub 令牌 | 是 | - |
| `openai-api-key` | 用于语义分析的 OpenAI API 密钥 | 是 | - |
| `languages` | 要分析的语言列表(逗号分隔) | 否 | 全部支持 |
| `severity-threshold` | 报告的最小严重级别(low、medium、high) | 否 | medium |
| `max-files` | 要分析的最大文件数 | 否 | 10 |
| `max-lines` | 每个文件要分析的最大行数 | 否 | 500 |
## 用法
安装后,LogicLens 将自动分析每个拉取请求,并发布包含以下内容的评论:
- 整体风险评分
- 发现的安全漏洞
- 检测到的逻辑问题
- 改进建议
## 开发
### 前置条件
- Python 3.9+
- Docker
- OpenAI API 密钥
### 本地测试
```
# 安装依赖
pip install -r requirements.txt
# 运行测试
pytest tests/
# 本地运行
python main.py --pr-url --github-token --openai-key
```
### 构建 Docker 镜像
```
docker build -t logiclens:latest .
```
## 许可证
MIT 许可证 - 详情见 LICENSE 文件。
## 支持
如有问题和疑问,请在 GitHub 上打开 issue。
标签:GitHub Action, IPv6支持, Petitpotam, 上下文理解, 业务逻辑验证, 二进制发布, 云安全监控, 代码审查, 多语言支持, 安全审查, 安全测试框架, 安全漏洞检测, 并发问题, 开源工具, 自动化分析, 语义代码分析, 请求拦截, 赛道:人工智能, 赛道:安全, 赛道:开发者工具, 跨站脚本, 软件质量, 逆向工具, 逻辑竞态条件, 静态分析, 风险评估报告