Skip to content

CodeStyle(码蜂)是一款企业级代码知识库工具,通过"官网在线制模 + 轻量化 MCP 插件检索"的创新架构,让 AI 精准理解并复用团队的代码基因。

License

Notifications You must be signed in to change notification settings

itxaiohanglover/codestyle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CodeStyle(码蜂)

CodeStyle Logo

让历史代码活起来,让 AI 写的更对味!

License Java Spring Boot Vue GitHub Stars CI

官网 | 文档 | 快速开始 | 贡献指南 | 问题反馈


📖 项目简介

CodeStyle(码蜂) 是一款企业级代码知识库管理系统,通过"官网在线制模 + 轻量化 MCP 插件检索"的创新架构,让 AI 精准理解并复用团队的代码基因。

核心理念

致力于构建企业级代码资产库,通过标准化的代码风格模板和智能检索能力,实现代码资产的有效管理和复用,同时解决 AI 代码生成风格不一致的问题,让 AI 成为团队开发的得力助手。

相关项目

项目 作用 关联说明
mcp-codestyle-server MCP Server & Claude Skill 实现 提供 MCP 协议接入,让 AI IDE(Cursor、Windsurf 等)能够调用 CodeStyle 检索能力
continew-start-skill ContiNew Admin 项目初始化工具 自动化项目初始化,支持自定义品牌和配置,快速搭建基于 ContiNew Admin 的项目
codestyle-repository 代码模板仓库 存储各类代码模板(CRUD、接口、组件等),供 CodeStyle 检索和使用
continew-template 项目模板库 提供完整的项目模板,包含最佳实践和常见避坑指南

🎯 核心痛点与解决方案

痛点一:模型成本高昂 💰

现状

  • Claude 等 SOTA 模型效果优秀但成本昂贵
  • 企业大规模使用成本压力大

需求

  • 使用国产平替模型(如 GLM、Doubao-Seed)降低成本
  • 同时保持代码生成质量

CodeStyle 方案:通过经验降低模型门槛

  • 将"框架最佳实践"和"常见避坑指南"沉淀为 Codestyle 模板
  • 通过 RAG 检索提供精准上下文,降低对模型能力的依赖
  • 让低成本模型也能生成高质量代码

痛点二:模型输出不稳定 📉

现状

  • 代码模型输出质量波动大
  • 某次效果差时无法追溯和改进

需求

  • 将完整调用链路总结为经验,强化后续使用
  • 收集失败案例用于微调团队内部模型

CodeStyle 方案:经验收集

  • 记录每次代码生成的完整上下文和结果
  • 将成功案例沉淀为模板,失败案例用于改进
  • 支持团队内部模型的持续优化

痛点三:团队能力差异悬殊 👥

现状

  • 使用 AI 编程时,团队效率差异巨大
  • 有人提示词写得好,3 次迭代就出结果
  • 有人盲目试错,10 次还不行

需求

  • 让能力强的使用者经验,赋能到能力差的使用者

CodeStyle 方案:经验共享

  • 将优秀开发者的经验沉淀为模板
  • 通过 RAG 检索自动召回相关经验
  • 用 MCP 协议 / Skill 接入 IDE,无缝集成开发流程

💡 根本差距:有没有复用过往成功经验

CodeStyle 的核心价值

  1. 将"框架最佳实践"和"常见避坑指南"沉淀为 Codestyle 模板
  2. 通过 RAG 检索,在编码时自动召回相关经验
  3. 用 MCP 协议 / Skill 接入 IDE,无缝集成开发流程

✨ 核心特性

  • 🚀 3 分钟接入 - 零配置即插即用,不改造现有开发流程
  • 🔒 本地组装安全 - 模板与代码在本地组装,企业代码零外泄风险
  • 🎨 可视化制模 - 官网在线制作风格模板,支持 CRUD、接口、组件等场景
  • 🔌 多 IDE 支持 - 支持 Cursor、Windsurf、Trae、Cline 等主流 AI IDE
  • 👥 多租户架构 - 支持团队/企业级多租户隔离,满足大型组织需求
  • 📚 智能检索 - 基于 Elasticsearch 的全文检索,快速定位历史代码
  • 🔧 代码生成器 - 自动生成符合团队风格的前后端代码
  • 🌐 多语言支持 - 支持 Java、JavaScript、TypeScript、Python 等
  • 📊 数据分析 - 提供代码资产使用情况分析
  • 🔍 风格检查 - 自动检测代码风格偏差,确保团队代码风格统一

🏗️ 系统架构

整体架构图

┌─────────────────────────────────────────────────────────────┐
│                      AI IDE 层                               │
│  Cursor / Windsurf / Trae / Cline / Claude Desktop          │
└─────────────────────────────────────────────────────────────┘
                            ↓ MCP 协议 / Skill
┌─────────────────────────────────────────────────────────────┐
│                   MCP Server 层                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  mcp-codestyle-server (Spring AI)                    │   │
│  │  - 接收检索请求                                       │   │
│  │  - 渐进式召回策略                                     │   │
│  │  - 结果返回                                           │   │
│  └──────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────┘
                            ↓ HTTP API
┌─────────────────────────────────────────────────────────────┐
│                   CodeStyle 核心层                           │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐      │
│  │  检索插件     │  │  Wiki 插件    │  │  代码生成器   │      │
│  │  (Search)    │  │  (Wiki)      │  │  (Generator) │      │
│  └──────────────┘  └──────────────┘  └──────────────┘      │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐      │
│  │  多租户       │  │  任务调度     │  │  开放能力     │      │
│  │  (Tenant)    │  │  (Schedule)  │  │  (Open)      │      │
│  └──────────────┘  └──────────────┘  └──────────────┘      │
└─────────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────────┐
│                   数据存储层                                 │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐      │
│  │  MySQL       │  │  Redis       │  │ Elasticsearch │      │
│  │  (业务数据)   │  │  (缓存)      │  │  (全文检索)   │      │
│  └──────────────┘  └──────────────┘  └──────────────┘      │
└─────────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────────┐
│                   模板仓库层                                 │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  codestyle-repository (Git)                          │   │
│  │  - 代码模板(CRUD、接口、组件)                       │   │
│  │  - meta.json 索引                                    │   │
│  │  - 最佳实践和避坑指南                                 │   │
│  └──────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────┘

核心模块说明

🔍 检索插件(codestyle-plugin-search)

功能:基于 Elasticsearch 的渐进式 RAG 检索系统

核心特性

  • ✅ 两阶段召回策略(轻量预览 → 详细加载)
  • ✅ meta.json 索引机制(避免频繁 I/O)
  • ✅ 关键词和向量混合检索
  • ✅ SPI 扩展机制

实现细节

阶段一:轻量预览
├─ 查询 meta.json 索引
├─ 返回 description 列表(轻量)
└─ 用户在 IDE 中选择目标

阶段二:详细加载
├─ 异步同步缺失文件到本地
└─ 返回完整模板内容

收益:减少 80% 无效上下文消耗,提升准确率

技术文档

📚 知识库插件(codestyle-plugin-wiki)

功能:代码知识库管理系统

核心特性

  • ✅ Markdown 文档管理
  • ✅ 代码片段存储和检索
  • ✅ 版本控制和历史追溯
  • ✅ 协作编辑和评论

实现细节

  • 基于 Git 的版本控制
  • 支持 Markdown 渲染和代码高亮
  • 提供 RESTful API 接口

技术文档

meta.json 索引设计

借鉴 Maven 坐标体系,集中管理元信息:

{
  "groupId": "RuoYI",
  "artifactId": "CRUD",
  "version": "1.0",
  "files": [{
    "filePath": "src/main/java/controller",
    "filename": "Controller.java.ftl",
    "description": "CRUD 控制器模板",
    "sha256": "722f185c...",
    "inputVariables": [
      {
        "variableName": "packageName",
        "variableType": "String",
        "variableComment": "项目根包名",
        "example": "com.air.order"
      }
    ]
  }]
}

设计要点

  • version + sha256:版本控制和完整性校验
  • inputVariables:模板需要的参数(类型、说明、示例)
  • description:快速预览,减少 I/O

🚀 快速开始

环境要求

软件 版本要求
JDK 17+
Node.js 18+
MySQL 8.0+
Redis 5.0+
Elasticsearch 8.x

安装步骤

  1. 克隆项目

    git clone https://github.com/codestyle-team/codestyle.git
    cd codestyle
  2. 配置数据库

    # 创建数据库
    mysql -u root -p
    CREATE DATABASE codestyle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    
    # 导入初始化脚本
    mysql -u root -p codestyle < docs/sql/init.sql
  3. 配置应用

    # 修改后端配置
    cd codestyle-admin/codestyle-server/src/main/resources
    cp application-dev.yml.example application-dev.yml
    # 编辑 application-dev.yml,配置数据库、Redis、ES 连接信息
  4. 启动后端

    cd codestyle-admin
    mvn clean package -DskipTests
    java -jar codestyle-server/target/codestyle-server.jar
  5. 启动前端

    cd codestyle-admin-web
    pnpm install
    pnpm dev
  6. 访问应用

Docker 部署

cd codestyle-admin/docker
docker-compose up -d

📚 文档


🛠️ 技术栈

后端

  • 框架: Spring Boot 3.x + ContiNew Starter 2.14.0
  • ORM: MyBatis-Plus
  • 数据库: MySQL 8.0 + Redis 5.0
  • 搜索: Elasticsearch 8.x
  • 安全: Sa-Token
  • 构建: Maven

前端

  • 框架: Vue 3.5 + TypeScript 5.0
  • UI: Arco Design 2.57
  • 构建: Vite 5.1
  • 状态管理: Pinia 2.0
  • 路由: Vue Router 4.3
  • 包管理: pnpm 8

🤝 参与贡献

我们欢迎所有形式的贡献!请查看 贡献指南 了解详情。

贡献者

感谢所有为 CodeStyle 做出贡献的开发者!


📄 许可证

本项目采用 Apache 2.0 许可证


🌟 Star History

Star History Chart


💬 交流与支持


如果这个项目对您有帮助,请给我们一个 ⭐️ Star!

Made with ❤️ by CodeStyle Team

About

CodeStyle(码蜂)是一款企业级代码知识库工具,通过"官网在线制模 + 轻量化 MCP 插件检索"的创新架构,让 AI 精准理解并复用团队的代码基因。

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors