Skip to content

核心概览

MyDeskBot 是一个强大的 AI 辅助开发平台,提供全面的开发支持。

核心概念

AI 助手

MyDeskBot 的核心是智能 AI 助手,它可以:

  • 🧠 理解代码 - 深度理解您的代码库
  • 📝 生成代码 - 智能生成高质量代码
  • 🔍 代码审查 - 实时代码质量检查
  • 💡 提供建议 - 基于最佳实践的建议
  • 🎯 上下文感知 - 理解整个项目上下文

模型提供商

MyDeskBot 支持多种 AI 模型提供商:

  • OpenAI - GPT-4, GPT-3.5 Turbo
  • Anthropic - Claude 3 Opus, Sonnet, Haiku
  • Google - Gemini Pro
  • 开源模型 - 通过 Ollama 使用本地模型

工具和插件

丰富的工具和插件生态:

  • MCP 工具 - Model Context Protocol 集成
  • IDE 插件 - 集成到您喜爱的编辑器
  • 桌面应用 - 独立的 AI 助手应用
  • 命令行工具 - 终端中的 AI 辅助

架构概览

┌─────────────────────────────────────────────────┐
│                   用户界面                       │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐     │
│  │ IDE 插件  │  │ 桌面应用 │  │ CLI 工具 │     │
│  └──────────┘  └──────────┘  └──────────┘     │
└─────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────┐
│               MyDeskBot 核心                      │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐     │
│  │ 上下文引擎│  │ 提示词系统│  │ 规则系统 │     │
│  └──────────┘  └──────────┘  └──────────┘     │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐     │
│  │ 模型适配器│  │ 缓存管理 │  │ 错误处理 │     │
│  └──────────┘  └──────────┘  └──────────┘     │
└─────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────┐
│               模型提供商                         │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐     │
│  │  OpenAI  │  │ Anthropic│  │ 其他提供商│    │
│  └──────────┘  └──────────┘  └──────────┘     │
└─────────────────────────────────────────────────┘

主要组件

1. 上下文引擎

负责理解和分析您的代码库:

mermaid
graph LR
    A[代码扫描] --> B[语法分析]
    B --> C[符号提取]
    C --> D[依赖分析]
    D --> E[模式识别]
    E --> F[知识图谱]

功能:

  • 索引代码库
  • 理解代码结构
  • 识别代码模式
  • 维护依赖关系

2. 提示词系统

智能生成和管理提示词:

功能:

  • 自动生成提示词
  • 提示词模板管理
  • 上下文注入
  • 提示词优化

3. 规则系统

配置化规则和约束:

功能:

  • 代码风格规则
  • 安全规则
  • 性能规则
  • 自定义规则

4. 模型适配器

统一的模型接口:

支持:

  • OpenAI API
  • Anthropic API
  • Azure OpenAI
  • 本地模型(Ollama)
  • 自定义端点

5. MCP 工具集成

Model Context Protocol 工具集成:

集成工具:

  • GitHub
  • Notion
  • Supabase
  • Sentry
  • Netlify
  • 等等...

工作流程

1. 代码补全流程

用户输入

上下文收集

提示词生成

模型推理

结果过滤

展示建议

2. 代码审查流程

选择代码

静态分析

规则检查

AI 审查

生成报告

展示建议

3. 计划模式流程

描述任务

需求分析

生成计划

用户确认

分步执行

结果验证

核心特性

智能感知

  • 项目感知 - 理解整个项目结构
  • 模式学习 - 学习您的编码风格
  • 上下文相关 - 基于整个代码库

高度可配置

  • 模型选择 - 支持多种 AI 模型
  • 自定义规则 - 配置化规则系统
  • 插件扩展 - 丰富的插件生态

隐私安全

  • 本地处理 - 敏感操作可在本地完成
  • 数据加密 - 传输和存储加密
  • 可控范围 - 控制发送的数据

高性能

  • 智能缓存 - 减少重复请求
  • 流式输出 - 快速响应用户
  • 增量索引 - 高效的代码库索引

使用场景

日常开发

  • 代码补全
  • 快速修复
  • 代码解释
  • 文档生成

代码审查

  • 质量检查
  • 安全审查
  • 性能优化
  • 最佳实践

学习辅助

  • 技术学习
  • 代码示例
  • 概念解释
  • 最佳实践

自动化

  • 脚本生成
  • CI/CD 配置
  • 测试生成
  • 文档自动化

技术栈

后端

  • Node.js - 运行时
  • TypeScript - 主要语言
  • Rust - 性能关键组件

前端

  • React - UI 框架
  • Electron - 桌面应用
  • Tauri - 新一代桌面应用

AI/ML

  • OpenAI API - 模型服务
  • Anthropic API - Claude 模型
  • LangChain - AI 应用框架

扩展性

插件系统

  • IDE 插件(IntelliJ, VS Code, Neovim)
  • MCP 工具集成
  • 自定义规则

API 集成

  • REST API
  • GraphQL API
  • WebSocket(实时通信)

本地部署

  • Docker 支持
  • Kubernetes 支持
  • 私有部署

配置管理

配置文件

yaml
# config.yaml
name: 我的 MyDeskBot 配置
version: 0.0.1
schema: v1

models:
  - name: "gpt-4"
    provider: "openai"
    model: "gpt-4"
    apiKey: "${{ secrets.OPENAI_API_KEY }}"
    roles:
      - chat
      - edit
      - apply

  - name: "claude-3-sonnet"
    provider: "anthropic"
    model: "claude-3-sonnet"
    apiKey: "${{ secrets.ANTHROPIC_API_KEY }}"
    roles:
      - chat
      - autocomplete

  - name: "local-llama"
    provider: "ollama"
    model: "llama2"
    apiBase: "http://localhost:11434"
    roles:
      - chat

环境变量

bash
# ~/.mydeskbot/.env
OPENAI_API_KEY=your-openai-key
ANTHROPIC_API_KEY=your-anthropic-key