Project report / GitHub evidence

Devika: AI 软件工程师

这是可索引项目报告证据页:它保留 Devika: AI 软件工程师 的源材料入口、机制线索和限制提醒;正文仍需 reader/editor 与 academic public-copy review 后才能当作最终结论引用。

Devika: AI 软件工程师

基本信息

字段内容
GitHubhttps://github.com/stitionai/devika
Star22k+
技术栈Python, Flask, Socket.IO, Playwright, BERT, Ollama
许可证MIT
开发者Stition AI
特点多 LLM 支持(OpenAI/Claude/Gemini/Ollama 等)

项目简介

Devika 是一个开源的AI 软件工程师,能够理解人类需求、规划方案、编写代码并修复 Bug。与 Devin 类似但完全开源。

核心理念:多 Agent 流水线 + 专业模块化 — 将软件开发分解为规划、研究、编码、修复等专业 Agent 的协作。

目录结构

devika/
├── src/
│   ├── agents/                  # ★ 多 Agent 系统
│   │   ├── agent.py             # Agent 基类
│   │   ├── planner/             # 计划 Agent(任务分解)
│   │   ├── researcher/          # 研究 Agent(信息搜集)
│   │   ├── coder/               # 编码 Agent(代码生成)
│   │   ├── action/              # 动作 Agent
│   │   ├── answer/              # 回答 Agent
│   │   ├── decision/            # 决策 Agent
│   │   ├── feature/             # 特性 Agent
│   │   ├── formatter/           # 格式化 Agent
│   │   ├── internal_monologue/  # 内心独白 Agent
│   │   ├── patcher/             # 补丁 Agent(代码修复)
│   │   ├── reporter/            # 报告 Agent
│   │   └── runner/              # 运行 Agent(代码执行)
│   ├── llm/                     # ★ 多 LLM 支持
│   │   ├── llm.py               # LLM 统一接口
│   │   ├── openai_client.py     # OpenAI
│   │   ├── claude_client.py     # Anthropic Claude
│   │   ├── gemini_client.py     # Google Gemini
│   │   ├── ollama_client.py     # Ollama(本地模型)
│   │   ├── mistral_client.py    # Mistral
│   │   ├── groq_client.py       # Groq
│   │   └── lm_studio_client.py  # LM Studio
│   ├── memory/                  # 记忆系统
│   ├── browser/                 # 浏览器自动化(Playwright)
│   ├── sandbox/                 # 沙箱环境
│   ├── documenter/              # 文档生成
│   ├── experts/                 # 专家系统
│   ├── filesystem/              # 文件系统操作
│   ├── bert/                    # BERT 模型(意图识别)
│   ├── apis/                    # API 接口
│   ├── services/                # 服务层
│   ├── project.py               # 项目管理
│   ├── state.py                 # 状态管理
│   └── config.py                # 配置
├── ui/                          # 前端 UI
├── benchmarks/                  # 基准测试
└── docs/                        # 文档

核心模块分析

1. 多 Agent 流水线

Devika 将软件开发分解为专业 Agent 的流水线:

用户输入

[Planner Agent] ──任务分解──> 开发计划

[Researcher Agent] ──信息搜集──> 技术资料

[Decision Agent] ──技术决策──> 架构方案

[Coder Agent] ──代码生成──> 源代码

[Runner Agent] ──执行测试──> 测试结果

[Patcher Agent] ──修复 Bug──> 修复后代码

[Reporter Agent] ──生成报告──> 项目报告

2. 多 LLM 统一接口

llm/llm.py 提供统一的 LLM 接口,支持 8+ 种后端:

3. BERT 意图识别

bert/ 模块使用 BERT 模型进行用户意图识别,辅助 Agent 决策。

4. 浏览器自动化

browser/ 使用 Playwright 进行网页浏览和信息搜集。

5. 项目管理

project.py 管理项目状态、文件结构和开发进度。

技术亮点

  1. 多 Agent 流水线:规划→研究→决策→编码→测试→修复→报告
  2. 多 LLM 支持:8+ 种 LLM 后端统一接口
  3. 完全开源:Devin 的开源替代
  4. BERT 增强:意图识别辅助决策
  5. 浏览器集成:Playwright 网页自动化

与 Self-Evolve 关联

维度Devika 贡献
多 Agent专业 Agent 流水线协作模式
代码生成规划→编码→测试→修复的完整循环
多 LLM统一接口支持多种 LLM 后端
沙箱安全的代码执行环境
启示流水线式 Agent 协作可参考于自我进化的迭代改进流程

参考资料

GitNexus 深度架构分析