# 码汇 **Repository Path**: deepin20/codenexus ## Basic Information - **Project Name**: 码汇 - **Description**: 码汇 CodeNexus —— 统一代码托管聚合客户端 | All repos. One nexus. - **Primary Language**: Python - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-12 - **Last Updated**: 2026-09-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 码汇 CodeNexus **统一代码托管聚合平台** —— 一码汇聚,全域搜索 / All repos. One nexus. 将 Gitee、GitHub、GitLab、AtomGit、GitCode、Gitea 等多个代码托管平台的仓库、 Issue、PR/MR、搜索与 AI 助手整合到一个桌面客户端中。 > 当前状态:**完整项目骨架(v0.1.0)**。目录结构与分层架构已就绪, > Gitee 适配器为首批接入平台(接口已定义,网络请求待 MVP 阶段实现)。 > 完整产品与技术方案见 [docs/开发方案.md](docs/开发方案.md)。 ## 技术栈 - **语言**: Python 3.10+(仅依赖 `requests`,其余全标准库) - **UI**: Tkinter(三栏式布局:左导航 + 主内容 + 右侧上下文面板) - **本地缓存**: SQLite(离线秒搜,性能目标 < 100ms) - **平台接入**: 适配器模式 + 注册表(`IPlatformAdapter`) ## 目录结构 ``` CodeNexus/ ├── codenexus/ # 主包 │ ├── core/ # 领域模型 + 平台适配器抽象接口 │ │ ├── models.py # User / Repository / Issue / PullRequest / SearchResult │ │ └── interfaces.py # IPlatformAdapter、ListOptions、PlatformError │ ├── platforms/ # 平台适配器 │ │ ├── __init__.py # PlatformRegistry 注册表 │ │ └── gitee/ # Gitee 适配器(首批) │ ├── sync/ # 同步服务(全量 + 增量 + Webhook 规划) │ ├── search/ # 搜索服务(查询语法解析 + 全文/正则/结构化/语义规划) │ ├── storage/ # 本地 SQLite 缓存(建表 SQL 已就绪) │ ├── auth/ # Token 存储(Base64+0600,多实例支持) │ ├── ai/ # AI 助手(可插拔 Provider:Qwen API / Ollama) │ ├── ui/ # Tkinter 桌面端(三栏式主窗口骨架) │ └── __main__.py # python -m codenexus 入口 ├── config/ # 配置示例(config.example.json) ├── docs/ # 开发方案等文档 ├── scripts/ # 开发与构建脚本 ├── tests/ # 单元测试(骨架完整性) ├── pyproject.toml └── requirements.txt ``` ## 快速开始 ```bash # 安装依赖 pip install -r requirements.txt # 启动桌面端 python -m codenexus # 运行测试 python -m unittest discover tests -v # 打包 deb(产 dist/codenexus_版本_all.deb) ./build_deb.sh ``` ## 更新日志 ### v0.1.1(2026-09-12) - 修复 Gitee 仓库列表接口 visibility/type 参数互斥导致的 422 错误 - 修复 Gitee 新式 Issue 字符串编号(如 ICK440)解析崩溃,编号模型放宽为 int/str - Gitee 真实 Token 全链路联调验证:72 仓库同步、增量早停、1352 Issue/579 PR 映射、离线搜索 ### v0.1.0(2026-09-12) - 首个可用版本:Gitee / GitHub / GitLab / Gitea / AtomGit / GitCode 六平台聚合接入 - 仓库 / Issue / PR 统一浏览与过滤,本地 SQLite 缓存离线秒搜(支持 lang: / platform: 等过滤语法) - 仪表盘统计、平台 Token 管理(多实例、自建实例地址)、增量同步 - 浅色 / 深色 / 跟随系统主题,数据备份导出导入 - 批量打项目标签、批量创建合并请求(Gitee 系平台) - 181 项单元测试全部通过 ## 平台接入指南 新增平台只需两步: 1. 在 `codenexus/platforms//adapter.py` 实现 `IPlatformAdapter`; 2. 在 `codenexus.platforms.load_builtin_adapters()` 中注册。 搜索查询语法(已实现解析): ``` lang:python platform:gitee 关键词 # 支持 repo: / lang: / platform: / owner: / state: 过滤 ``` ## 路线图(摘自开发方案 §11) | 阶段 | 目标 | |---|---| | Phase 1: MVP | 桌面端基础框架,接入 Gitee 等平台,仓库/Issue/PR 浏览,本地缓存,基础搜索 | | Phase 2: 搜索增强 | 代码级搜索、正则、结构化、语法高亮、符号搜索 | | Phase 3: AI 与协作 | AI 助手、批量操作、通知、自动化工作流 | | Phase 4: 多端与私有化 | 移动端、Web 端、私有化部署 | | Phase 5: 生态 | 插件市场、MCP 集成、更多平台 | ## 品牌规范 - 主色: 科技蓝 `#1F6FEB`;辅助: 青绿 `#00C2A8`;强调: 橙 `#FF7A45` - Slogan: 一码汇聚,全域搜索 / All repos. One nexus.