DevFlow Agent — 可靠、诚实、可控的 AI 开发助手 CLI 工具。
核心目标:完全模拟人类开发者的思维方式和工作流程
--fallback)tools pipe "shell() | text() | json()" 组合工具devflow data export/importnpm install -g @devflow/agent
# 克隆仓库
git clone https://github.com/badhope/DevFlow-Agent.git
cd DevFlow-Agent
# 安装依赖(会自动编译)
npm install
# 全局链接(可选)
npm link
要求 Node.js >= 18.0.0
# 1. 配置 API Key
devflow config provider set-key aliyun sk-xxxxx
devflow config set-default aliyun
# 2. 开始聊天
devflow chat ask "你好,介绍一下你自己"
# 3. 指定模型(支持模糊匹配)
devflow chat ask "写一个冒泡排序" -m qwen-max
# 4. 启用自动切换
devflow chat ask "你好" -m qwen-plus --fallback
# 5. 交互式多轮对话
devflow chat start
devflow chat — AI 对话devflow chat start # 交互式多轮对话
devflow chat ask <问题> # 单轮快速提问
devflow chat ask <问题> -m <模型> --fallback # 自动切换模型
devflow chat models -p aliyun # 列出平台模型
devflow config — 配置管理devflow config init # 交互式配置向导
devflow config list # 查看所有配置
devflow config provider set-key <平台> <API Key>
devflow config provider detect-key <API Key> # 根据 Key 自动检测平台
devflow config set-default <平台>
devflow config test <平台> # 测试平台连接
devflow tools — 工具调用devflow tools list # 列出所有工具
devflow tools shell "git status" # 执行 Shell
devflow tools run read_file p=src/index.ts
devflow tools pipe "shell(cmd=dir) | text(action=sort)"
devflow data — 数据管理devflow data export -o backup.json # 导出所有数据
devflow data import -i backup.json # 导入数据
devflow data reset --confirm "DELETE ALL DATA" # 重置数据
devflow review — 代码审查devflow review file <文件路径> # 审查单个文件
devflow review dir <目录路径> # 审查整个目录
devflow review file <文件> -c security # 仅安全审查
src/
├── cli.ts # CLI 入口
├── core.ts # Agent 核心执行器
├── commands/ # CLI 命令
│ ├── ai.ts # AI 平台管理
│ ├── chat.ts # 聊天功能
│ ├── config.ts # 配置管理
│ ├── data.ts # 数据管理
│ ├── review.ts # 代码审查
│ └── tools.ts # 工具调用
├── providers/ # AI 平台适配器
│ ├── openai.ts
│ ├── anthropic.ts
│ ├── aliyun.ts
│ └── ...
├── agent/ # Agent 系统
│ ├── core.ts # 主执行器
│ ├── context-builder.ts # 上下文构建
│ ├── experience-store.ts # 经验学习
│ ├── personality.ts # 人格系统
│ ├── emotional-state.ts # 情绪状态
│ ├── autonomous-goals.ts # 自主目标
│ ├── trust.ts # 信任评估
│ ├── circuit-breaker.ts # 熔断器
│ └── llm-caller.ts # LLM 调用封装
├── memory/ # 记忆系统
│ ├── manager.ts # 记忆管理器
│ ├── knowledgeGraph.ts # 知识图谱
│ ├── memoryGraph.ts # 记忆图谱
│ ├── rag.ts # RAG 检索
│ └── consolidation.ts # 记忆整合
├── tools/ # 工具系统
│ ├── registry.ts # 工具注册表
│ ├── security.ts # 安全检查
│ └── definitions/ # 工具定义
├── config/ # 配置管理
│ ├── manager.ts
│ ├── schemas.ts # Zod 验证
│ ├── defaults.ts # 默认配置
│ └── validation.ts
├── services/ # 服务层
│ ├── logger.ts # 结构化日志
│ ├── compression-service.ts
│ └── chat-service.ts
├── di/ # 依赖注入
│ ├── container.ts
│ └── tokens.ts
└── utils/ # 工具函数
├── async-lock.ts # 异步锁
├── errors.ts # 错误类
└── ...
validatePath 检查| 平台 | 类型 | API 格式 | Key 格式 | 模型搜索 |
|---|---|---|---|---|
| OpenAI | 云端 | OpenAI | sk-... |
支持 |
| Anthropic | 云端 | Anthropic | sk-ant-... |
支持 |
| Google Gemini | 云端 | AI... |
支持 | |
| DeepSeek | 云端 | OpenAI 兼容 | sk-... |
支持 |
| 硅基流动 | 云端 | OpenAI 兼容 | sk-... |
支持 |
| 阿里云百炼 | 云端 | OpenAI 兼容 | sk-... |
支持 (239个模型) |
| 智谱AI | 云端 | OpenAI 兼容 | 32位十六进制 | 支持 |
| 百度千帆 | 云端 | 自定义 | <appId>.<secretKey> |
内置列表 |
| Ollama | 本地 | Ollama | 无需 | 支持 |
| LM Studio | 本地 | OpenAI 兼容 | 无需 | 支持 |
在 .devflow/config.json 中配置:
{
"circuitBreaker": {
"failureThreshold": 5,
"resetTimeout": 60000,
"halfOpenMaxCalls": 3
}
}
failureThreshold — 触发熔断的连续失败次数(默认 5)resetTimeout — 熔断器重置超时时间,单位毫秒(默认 60000)halfOpenMaxCalls — 半开状态下允许的最大测试调用数(默认 3)# 安装依赖
npm install
# 开发模式(热重载)
npm run dev
# 构建
npm run build
# 测试
npm test
# 代码检查
npm run lint
/web — React Web 界面/sdk — JavaScript SDK/vscode — VSCode 扩展MIT