s1rry/DevPilot

GitHub: s1rry/DevPilot

DevPilot 是一款基于 Tauri + Rust + React 的桌面端 AI 代码库分析器,帮助开发者离线理解任意仓库的结构、依赖与质量。

Stars: 0 | Forks: 0

DevPilot — AI-powered repository analyzer

CI MIT Tauri 2 Rust

**DevPilot** 是一款桌面应用程序,可帮助您理解任何代码库——打开一个仓库并探索其结构、依赖项和质量,然后向 AI 询问有关代码的问题。它可在 Windows、macOS 和 Linux 上运行,并通过本地模型完全离线工作。 ## 功能 - **仓库管理器** — 打开本地文件夹或克隆 GitHub 仓库;支持查看最近的项目;包含分支、提交和语言元数据。 - **仓库扫描器** — 检测语言、框架和依赖项(npm、Cargo、PyPI、Go)、文件夹结构以及 git 贡献者。 - **AST 分析器** — 使用 tree-sitter 将 Rust 和 TypeScript/JavaScript 解析为结构化模型(函数、类、接口、导入、导出)。 - **架构图** — 交互式的依赖关系图、模块图、文件夹图和调用图,支持平移、缩放和拖拽。 - **AI 聊天** — 基于代码库上下文的流式聊天,支持 **Ollama**(本地运行,无需密钥)、**Claude**、**OpenAI** 或 **Gemini**。支持 Markdown 和代码高亮块。 - **代码智能** — 查找循环依赖、死代码和重复代码,并跨符号和路径搜索“身份验证在哪里?”。 所有分析都是确定性的且在本地运行;AI 是可选的,且与提供商无关。API 密钥仅保留在您的机器上。 ## 快速开始 前置条件:[Rust (stable)](https://rustup.rs)、[Node.js 20+](https://nodejs.org)、[pnpm](https://pnpm.io),以及适用于您操作系统的 [Tauri 系统依赖项](https://tauri.app/start/prerequisites/)。 ``` git clone https://github.com/s1rry/devpilot.git cd devpilot/apps/desktop pnpm install pnpm tauri dev ``` 要使用 AI 聊天,请打开**设置**并选择一个提供商。**Ollama** 在本地运行,无需 API 密钥——安装 [Ollama](https://ollama.com) 并拉取一个模型(例如 `ollama pull llama3`)。对于 Claude、OpenAI 或 Gemini,请粘贴您的 API 密钥。 ## 架构 一个遵循整洁架构(Clean Architecture)的 Cargo workspace:每个依赖都向内指向 `devpilot-core`,后者定义了领域和 adapter crate 实现的 ports(traits)。详见 [ADR-0001](docs/adr/0001-clean-architecture-workspace.md)。 | 路径 | 用途 | |---|---| | `crates/devpilot-core` | 领域层:实体、ports、用例、纯检测器(图、代码智能)。 | | `crates/devpilot-git` | 通过 libgit2 读取仓库:打开、克隆、树结构、历史记录、代码变动。 | | `crates/devpilot-analysis` | 通过 tree-sitter 解析为 AST 模型。 | | `crates/devpilot-scan` | 清单检测:语言、框架、依赖项。 | | `crates/devpilot-ai` | LLM 提供商适配器(Ollama、Claude、OpenAI、Gemini)。 | | `crates/devpilot-storage` | 本地 JSON 持久化(最近的项目、设置)。 | | `crates/devpilot-testing` | 共享的 mocks 和 fixtures。 | | `apps/desktop` | Tauri 外壳(组合根)+ React/TypeScript/Tailwind UI。 | 更多内容:[docs/architecture.md](docs/architecture.md) · 决策:[docs/adr](docs/adr) · 更改:[CHANGELOG.md](CHANGELOG.md)。 ## 贡献 欢迎贡献——该项目还很年轻,正是塑造它的最佳时机。请从 [CONTRIBUTING.md](CONTRIBUTING.md) 开始:它介绍了代码库的概况,并展示了如何添加提供商、语言或功能切片。 ## 许可证 [MIT](LICENSE)
标签:AI辅助编程, AI风险缓解, DLL 劫持, Rust, SOC Prime, Tauri, 代码分析, 凭证管理, 可视化界面, 大语言模型, 开发工具, 桌面应用, 网络流量审计, 通知系统