muhsinelcicek/archlens
GitHub: muhsinelcicek/archlens
一款集代码架构静态分析与分布式系统排队论仿真于一体的可视化工具,帮助团队理解、评估和模拟复杂系统在负载下的行为。
Stars: 1 | Forks: 0
# ArchLens
代码架构分析 + 分布式系统模拟。
分析任何代码库,可视化架构,模拟其在负载下的行为。
[](#testing)
[](#supported-languages)
[](LICENSE)
## 功能介绍
1. **指向一个代码库**(本地文件夹或 GitHub URL)
2. **解析与分析** — 模块、依赖、质量、安全、死代码、技术债务
3. **交互式探索** — 星座图、请求流、洞察
4. **模拟** — 排队论引擎、混沌工程、故障检测
## 截图
 Architecture — ConstellationGraph with glowing nodes and flowing particles |
 Simulator — drag-drop canvas with live metrics and incident badges |
 Dashboard — health score, pulse bars, action items |
 Insights — narrative findings from all analyzers |
 Quality — score, patterns, coupling, consistency |
 Flows — request chains from endpoint to database |
## 快速开始
```
npm install -g archlens-studio
cd your-project
archlens-studio analyze .
archlens-studio serve
# → http://localhost:4848
```
或者导入一个 GitHub 仓库:
```
archlens-studio add https://github.com/dotnet/eShop
archlens-studio serve
```
## 功能特性
### 分析
- **8 种语言** — TypeScript, JavaScript, Python, Go, Java, Swift, Rust, C#
- **15+ 框架** — Express, NestJS, Next.js, FastAPI, Flask, Django, Spring Boot, gin, Actix, Vapor 等等
- **10 种 ORM** — EF Core, JPA, Prisma, TypeORM, SQLAlchemy, Django ORM, GORM, Diesel, Fluent, Sequelize
- **20 个分析器** — 质量、耦合度、安全性、死代码、热点、技术债务、模式、一致性
- Tree-sitter AST 解析,基于 SHA-256 缓存的增量分析
### 可视化
- **ConstellationGraph** — 带有发光节点和持续流动粒子的分层布局
- 请求流追踪 — endpoint → handler → dependencies → database
- 影响分析 — 爆炸半径可视化
- 风险/质量叠加开关
### 模拟器
- M/M/c 排队论引擎
- 16 种节点类型(Client, LB, API, Service, DB, Cache, Queue, CDN, Lambda, Gateway, Auth, Broker, Storage, DNS, Container, Monitoring)
- 断路器(closed/open/half-open 状态机)
- 自动扩缩容策略、重试逻辑
- 6 种流量模式 — 恒定、突发、爬升、尖峰、周期、噪声
- 5 个场景模板 — 电子商务、微服务、事件驱动、CDN+Origin、数据管道
- 混沌工程 — 随机终止、延迟注入、AZ 故障
- 15 种故障类型 — SPOF, CASCADE, OVERLOAD, 502 BAD GATEWAY, TOPOLOGY PRESSURE 等。
- 成本建模 — $/副本/小时,月度估算
- FIX 按钮 — 一键修复
- Markdown 报告导出
### AI 集成
- 带有 7 个工具的 MCP server,适用于 Claude Code, Cursor, Windsurf
- 工具:`architecture`, `process`, `impact`, `onboard`, `drift`, `sequence`, `explain`
## 架构
```
packages/
├── core/ Analysis engine (20 analyzers, 8 parsers, framework detector)
├── cli/ CLI + HTTP API server (9 commands)
├── mcp/ Model Context Protocol server (7 tools)
└── web/ React dashboard (Vite + Tailwind + React Query)
```
## 支持的语言
| 语言 | Endpoints | ORM | 质量规则 |
|----------|-----------|-----|---------------|
| TypeScript | Express, NestJS, Next.js, Fastify | Prisma, TypeORM, Sequelize | 5 |
| JavaScript | Express, Koa, Hono | Sequelize | 3 |
| Python | FastAPI, Flask, Django, DRF | SQLAlchemy, Django ORM | 5 |
| Java | Spring Boot, JAX-RS | JPA | 3 |
| Go | gin, echo, chi, fiber, gorilla/mux | GORM | 3 |
| C# | ASP.NET Core | EF Core | 5 |
| Rust | Actix-web, Axum, Rocket | Diesel | 2 |
| Swift | Vapor | Fluent | 1 |
## CLI 命令
| 命令 | 描述 |
|---------|-------------|
| `archlens-studio analyze
` | 分析项目 |
| `archlens-studio serve` | 启动 Web 仪表板 |
| `archlens-studio add ` | 克隆并分析 GitHub 仓库 |
| `archlens-studio list` | 列出已分析的项目 |
| `archlens-studio remove ` | 移除项目 |
| `archlens-studio export ` | 导出为 JSON 或 SVG |
| `archlens-studio review` | 在终端打印架构审查 |
| `archlens-studio mcp` | 启动 MCP server |
| `archlens-studio setup` | 为 Claude Code / Cursor 配置 MCP |
## MCP 集成
```
{
"mcpServers": {
"archlens": {
"command": "npx",
"args": ["archlens-studio", "mcp"]
}
}
}
```
## 测试
4 个测试套件中共有 205 个测试:
```
pnpm test # 189 unit tests
pnpm test:e2e # 16 Playwright E2E tests
```
## 开发
```
git clone https://github.com/muhsinelcicek/archlens.git
cd archlens
pnpm install
pnpm build
pnpm test
pnpm dev
```
## 路线图
- [ ] VS Code 扩展
- [ ] CI/CD 集成(在出现违规时中断构建)
- [ ] 模拟器对比模式(A 对比 B)
- [ ] 更多特定语言的质量规则
- [ ] 针对 10K+ 文件项目的性能基准测试
## 许可证
[MIT 许可证](LICENSE) — 版权所有 (c) 2026 Muhsin Elçiçek
可自由使用、修改和分发。标签:CMS安全, DevSecOps, GNU通用公共许可证, IP 地址批量处理, JavaScript, MITM代理, Mutation, Node.js, WebSocket, 上游代理, 交互式图表, 代码安全, 代码架构分析, 仪表盘, 依赖分析, 健康评分, 分布式系统模拟, 前端工具, 可视化, 微服务架构, 技术债务, 指标监控, 排队论, 星座图, 架构可视化, 死代码检测, 混沌工程, 源码解析, 漏洞枚举, 特征检测, 系统性能, 自动化攻击, 请求流, 软件质量评估, 错误基检测, 静态代码分析