Token导航 LogoToken导航TokenDH.com
Db Coder logo
开发工具stdio官方级别未说明来源级核验

Db Coder

MCP Server

DB-Coder是一个全自动AI编码系统,通过智能决策→分析→执行→验证→代码审查→决策→反思的循环持续改进目标项目,适用于软件开发自动化优化场景。

工具数

0

提示词数

0

GitHub Stars

2

资源数

0
AI编程助手TypeScriptClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

freshman-db

提供方

freshman-db

最后核验

2026/5/17 20:19

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -d --name dev-postgres \

详细介绍

DB编码器

自主AI编码代理 --持续扫描代码库,计划改进,自动执行和审查代码更改。

中文文档

______________________________________________________________________

概述

DB Coder是一个完全自主的AI编码系统,通过 大脑决定→ \[分析M/L/XL\]→ 工人执行→ 硬验证→ 代码审查→ 大脑决策→ 反映 循环。它使用只读的“大脑”会话进行决策,使用基于RuntimeAdapter的worker进行执行,并使用自动选择的交叉审阅者进行质量门控。每个阶段都可以通过以下方式独立选择其运行时间和模型 routing 配置。

核心能力

  • 自主巡逻 --全脑决定→ \[分析M/L/XL\]→ 工人执行→ 硬验证→ 代码审查→ 大脑决策→ 反映循环,通过Web UI启动/停止
  • 多运行时架构 --RuntimeAdapter接口,具有可插拔实现(ClaudeSdkRuntime、CodexSdkRuntime、CodexCliRuntime);每个阶段都可以通过以下方式独立配置 routing
  • 大脑驱动的决策 --大脑输出自由形式 directive 直接发送给工人(无需模板重组) resource_request 对于预算/超时, verification_plan,以及 strategy_note
  • 硬验证 --TypeScript错误计数与基线比较可防止合并降级代码
  • 自然进化 --大脑通过写课来反思(经验);CLAUDE.md由单独的周期性维护 claudeMdMaintenance 阶段,无数字评分
  • Web用户界面 --实时任务监控、日志流、成本跟踪、巡逻控制
  • Git安全 --所有更改均已隔离 db-coder/* 分支,在合并到main之前进行验证

建筑

┌──────────────────────────────────────────────────────────────┐
│                    MainLoop Orchestrator                      │
│  brainDecide → [analyze M/L/XL] → workerExecute → hardVerify │
│    → codeReview → brainReviewDecision → [fix loop] → merge   │
├──────────────────────────────────────────────────────────────┤
│                    RuntimeAdapter Layer                       │
│  ┌─────────────────┐ ┌───────────────┐ ┌──────────────────┐ │
│  │ ClaudeSdkRuntime │ │ CodexSdkRuntime│ │ CodexCliRuntime  │ │
│  │ (Agent SDK)      │ │ (@openai/codex)│ │ (codex exec)    │ │
│  └─────────────────┘ └───────────────┘ └──────────────────┘ │
├──────────────────────────────────────────────────────────────┤
│  Phase Routing (routing config)                              │
│  brain / plan / execute / review / reflect / scan            │
│  Each phase → independent runtime + model selection          │
├──────────────────────────────────────────────────────────────┤
│  CLAUDE.md + claude-mem          TaskStore (PostgreSQL)       │
│  (rules / experience)           (tasks / logs / costs)       │
├──────────────────────────────────────────────────────────────┤
│                HTTP Server (:18801)                           │
│         REST API + Web SPA + SSE Streaming                   │
└──────────────────────────────────────────────────────────────┘

项目结构

src/
├── index.ts                         # CLI entry (commander)
├── core/
│   ├── MainLoop.ts                  # Orchestration loop
│   ├── phases/                      # BrainPhase, WorkerPhase, ReviewPhase, MaintenancePhase
│   ├── PersonaLoader.ts             # Persona loading + worker prompt building
│   ├── CycleEventBus.ts             # Typed event bus for cycle lifecycle
│   ├── ModeManager.ts               # PatrolManager (patrol start/stop)
│   ├── TaskQueue.ts                 # Task queue from DB
│   ├── guards/                      # BudgetGuard, ConcurrencyGuard, EmptyDiffGuard, etc.
│   ├── observers/                   # CycleMetricsCollector, NotificationObserver, etc.
│   └── strategies/                  # DynamicPriority, FailureLearning, TaskQuality
├── runtime/
│   ├── RuntimeAdapter.ts            # Interface + capabilities + RunOptions / RunResult
│   ├── ClaudeSdkRuntime.ts          # Claude Code Agent SDK wrapper
│   ├── CodexSdkRuntime.ts           # @openai/codex-sdk Thread API wrapper
│   ├── CodexCliRuntime.ts           # Codex CLI subprocess wrapper
│   └── runtimeFactory.ts           # Config → runtime instance registry
├── bridges/
│   ├── ClaudeCodeSession.ts         # Claude Code Agent SDK query() wrapper
│   ├── sdkMessageCollector.ts       # SDK stream event collection + error synthesis
│   ├── buildSdkOptions.ts           # SDK options builder
│   ├── hooks.ts                     # Programmatic PreToolUse/PostToolUse hooks
│   ├── pluginDiscovery.ts           # Auto-discover plugins from ~/.claude/plugins/cache
│   ├── ReviewTypes.ts               # ReviewResult / ReviewIssue interfaces
│   └── CodexBridge.ts               # Codex CLI subprocess (used by CodexCliRuntime)
├── memory/
│   ├── TaskStore.ts                 # PostgreSQL: tasks / logs / costs / plans / personas
│   ├── GlobalMemory.ts              # PostgreSQL: global memory (legacy, phasing out)
│   └── ProjectMemory.ts             # claude-mem HTTP client
├── server/
│   ├── Server.ts                    # HTTP server (API + static files + security headers)
│   ├── routes.ts                    # REST API routes
│   └── rateLimit.ts                 # Rate limiting
├── config/
│   ├── Config.ts                    # Config loading (global + project-level)
│   └── types.ts                     # Config types (PhaseRouting, RoutingConfig, etc.)
├── utils/                           # Git, cost tracking, process, logging, validation, etc.
└── web/                             # SPA frontend (HTML/CSS/JS + marked.js)

快速开始

先决条件

安装

# Clone repository
git clone https://github.com/freshman-db/DB-Coder.git
cd DB-Coder

# Install dependencies
npm install

# Start PostgreSQL (Docker)
docker run -d --name dev-postgres \
  -e POSTGRES_USER=db -e POSTGRES_PASSWORD=db -e POSTGRES_DB=db_coder \
  -p 5432:5432 postgres:16

# Enable pg_trgm extension
docker exec -i dev-postgres psql -U db -d db_coder -c "CREATE EXTENSION IF NOT EXISTS pg_trgm;"

# Build
npm run build

配置

全局配置: ~/.db-coder/config.json

{
  "routing": {
    "brain":   { "runtime": "claude-sdk", "model": "claude-opus-4-6" },
    "plan":    { "runtime": "claude-sdk", "model": "claude-opus-4-6" },
    "execute": { "runtime": "claude-sdk", "model": "claude-opus-4-6" },
    "review":  { "runtime": "codex-cli",  "model": "gpt-5.3-codex" },
    "reflect": { "runtime": "claude-sdk", "model": "claude-opus-4-6" },
    "scan":    { "runtime": "claude-sdk", "model": "claude-opus-4-6" }
  },
  "claude": { "maxTaskBudget": 10.0, "maxTurns": 200 },
  "codex": { "tokenPricing": { "inputPerMillion": 1.75, "cachedInputPerMillion": 0.175, "outputPerMillion": 14 } },
  "budget": { "maxPerTask": 20.0, "maxPerDay": 300.0 },
  "memory": {
    "pgConnectionString": "postgresql://db:db@localhost:5432/db_coder"
  },
  "server": { "port": 18801, "host": "127.0.0.1" }
}

运行时别名: "claude" 正常化为 "claude-sdk", "codex""codex-sdk" (使用CLI回退)。

项目级覆盖: /.db-coder.json

开始

# Run as service (relative paths are resolved automatically)
node dist/index.js serve --project .

# Or with absolute path
db-coder serve --project /path/to/your/project

# Production: use the supervisor script for auto-restart
nohup bash supervisor.sh > logs/nohup.out 2>&1 &

打开 http://127.0.0.1:18801 在浏览器中。API令牌显示在启动日志中,或在中找到 ~/.db-coder/config.json.

命令行命令

db-coder serve -p 
    # Start service
db-coder status              # Show status
db-coder add "description"   # Add a task
db-coder queue               # Show task queue
db-coder scan [--deep]       # Trigger scan
db-coder logs -f             # Follow logs
db-coder cost                # Show costs
db-coder pause / resume      # Pause / Resume

Web用户界面

  • 仪表盘 --系统状态、巡逻控制、快速行动
  • 巡逻 --通过顶栏按钮启动/停止;实时状态显示(扫描、执行、查看等)
  • 任务清单 --使用分页查看、筛选和管理任务
  • 日志 --带级别过滤的实时SSE日志流
  • 设置 --项目信息、系统状态、成本跟踪

API

服务器运行在 http://127.0.0.1:18801。所有API都需要承载令牌身份验证。

方法端点描述
得到/api/status服务状态
得到/api/status/streamSSE实时状态
得到/api/metrics运营指标
获取/发布/api/tasks列出/创建任务
得到/api/tasks/:id任务详细信息
得到/api/tasks/pending-review待审核任务
职位/api/tasks/:id/approve批准任务
职位/api/tasks/:id/skip跳过任务
职位/api/control/pause暂停循环
职位/api/control/resume恢复循环
职位/api/control/scan触发扫描
职位/api/patrol/start开始巡逻
职位/api/patrol/stop停止巡逻
得到/api/logs?follow=trueSSE日志流
得到/api/cost成本明细
得到/api/cycle/metrics循环性能指标
得到/api/cycle/entries循环历史记录条目
得到/api/personas列出人物角色
PUT/api/personas/:name更新角色内容
得到/api/plans列出计划草案
职位/api/plans/:id/approve批准计划
职位/api/plans/:id/reject拒绝计划

运作原理

脑驱动+运行时适配器模式

编排器(MainLoop)驱动大脑会话、基于RuntimeAdapter的工作器和跨运行时审阅器。每个阶段通过以下方式选择其运行时间和模型 routing 配置。

  1. 大脑决策 (只读)——Brain使用自己的工具自由探索代码库,输出结构化的 directive (工人的自由形式指令), resource_request (预算/超时), verification_plan,以及 strategy_note.没有模板重组——指令按原样传递给工人。
  1. 分析阶段 (仅限M/L/XL任务)--Worker执行只读代码分析→ 跨运行时审阅者检查提案→ 大脑综合并批准/拒绝该计划。S任务跳过此阶段。
  1. 工人执行 (通过RuntimeAdapter)--使用中配置的运行时在隔离的Git分支上执行任务 routing.execute工人直接接受大脑的指令,辅以项目规则和验证计划。
  1. 硬验证 --跑步 tsc 并将误差计数与基线进行比较。新错误会触发修复周期。
  1. 代码审查 (跨运行时)--Review使用以下运行时 routing.review,这应该不同于 routing.execute 以避免自我验证偏见。
  1. 大脑决策 --Brain分析审查结果并做出五方面的决定: 修复 (送工人修理), 忽略 (尽管有问题,但合并), (停止), 重写 (新方法),或 分裂 (合并部分任务+创建后续任务)。
  1. 脑反射 --大脑输出多段 reflection, strategy_update, retrieval_lesson,可选 orchestrator_feedback.将经验教训保存给克劳德纪念馆以备将来参考(确实如此 编辑CLAUDE.md;由单独的周期性事件处理 claudeMdMaintenance 阶段)。

自然进化

该系统不是通过数字评分(在v1中被证明是无效的),而是通过以下方式进化:

  • CLAUDE.md维护:周期性 claudeMdMaintenance 阶段审核并根据实际代码更新CLAUDE.md,保持规则准确简洁
  • 克劳德·梅姆写道:大脑反思将课程保存为语义体验,在未来的决策中通过相关性检索
  • Git历史记录: git log CLAUDE.md 显示了完整的进化时间线

技术栈

组件技术
语言TypeScript/Node.js(ESM)
运行时层运行时适配器接口(ClaudeSdkRuntime、CodexSdkRuntime、CodexCliRuntime)
BrainClaude代码代理SDK(只读,结构化输出)
工人可通过以下方式按阶段配置 routing.execute
审阅者可通过以下方式按阶段配置 routing.review (默认情况下为跨运行时)
数据库PostgreSQL+ pg_trgm 通过 postgres (门票)
经验CLAUDE.md+CLAUDE-mem HTTP API
Web UI普通HTML/CSS/JS SPA+marked.JS
HTTP服务器Node.js http 模块

许可证

麻省理工学院

目录标签

目录标签

AI编程助手TypeScriptClaude本地部署代码自动优化多运行时架构Git安全管理自主决策系统

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP