找回密码
 立即注册
搜索
查看: 189|回复: 4

Codeaha v1.0.0 正式发布—本地优先的 AI 编程伙伴

[复制链接]

主题

0

回帖

0

积分

积分
0
发表于 2026-9-29 19:30:40 | 显示全部楼层 |阅读模式
Codeaha|码悟
Code + Aha,看见代码的顿悟时刻




本地优先、国产大模型友好的 AI 编程 Agent。 基于 GoFrame + Eino + mark3labs/mcp-go + GF sqlite 驱动(glebarez/go-sqlite,纯 Go 无 CGO)构建。
核心特性

•
本地优先 — 会话、消息与代码变更全部落盘本地 SQLite,代码数据不出本机

•
Agent 推理 — 基于 Eino Graph 实现 ReAct 自主规划,拆解复杂编码任务;支持 plan / build 双模式(plan 不暴露写侧工具)

•
内置工具集 — read / write / edit / glob / grep / bash / list / webfetch / websearch / todowrite / todoread / memoryread / memorywrite / question / skill,读写修改工程、执行调试

•
工具权限管控 — 工作目录白名单、Shell 命令黑名单、执行超时、输出大小限制;敏感操作弹确认卡,可"本会话总是允许"

•
MCP 驱动 — 对接 stdio / http / sse 三种传输的 MCP 服务,转换为 Eino Tool 与内置工具同权同链

•
Web 可视化 — 直观查看 Agent 思考链路、MCP 调用记录、代码 Diff 变更预览与确认

•
原生国产模型支持 — DeepSeek、Kimi、豆包(ark)、通义(qwen),同时兼容 Ollama 等 OpenAI 兼容端点

•
IDE 兼容 — HTTP 接口可供 VSCode 等插件调用

•
技能系统 — 磁盘 SKILL.md 发现(实例级 + 项目级),前端面板可视化调用

•
模块化架构 — 分层解耦,适合二次开发与学习 Go + MCP + Agent



不同于 TUI 优先的同类项目,降低 Agent 调试门槛,面向国内开发者环境。
技术栈



层级

组件

说明



Web/API

GoFrame

HTTP 接口、Web 页面、配置、请求转发,Agent 逻辑禁止耦合进 Controller



Agent 编排

Eino (CloudWeGo)

ReAct、Graph 图编排



MCP 协议

mark3labs/mcp-go

适配器在 internal/mcp(自研,Eino 无原生 MCP 支持;MCP 工具实现本仓 tool.Tool 接口,与内置工具同权同链)



数据库

GF gdb + glebarez/go-sqlite

github.com/gogf/gf/contrib/drivers/sqlite/v2,纯 Go 无 CGO,会话持久化



上下文

Eino + 自研压缩

基于 token 估算的上下文窗口感知与自动压缩


能力

1.
读取本地工程源码,理解项目结构(文件工具)

2.
Agent 自主规划任务:多文件修改、Bug 修复、单元测试编写

3.
Web 页面可视化:Agent 思考链路、MCP 入参出参、代码 Diff 预览确认后写入磁盘

4.
MCP 工具调用:文件、Git、Shell 编译测试调试

5.
原生适配 DeepSeek / Kimi / 豆包 / 通义 / Ollama,OpenAI 兼容接口

6.
HTTP 接口对外提供能力,供 IDE 插件调用

7.
SQLite 持久会话历史,关闭可恢复会话

8.
模块化,支持二次开发学习


快速开始
环境要求

•
Go 1.25+


安装与启动

  1. git clone https://gitee.com/LeapSunrise/codeaha.git
  2. cd codeaha
  3. go mod tidy
  4. make build              # 走 gf build 打包,产物在 bin/v1.0.0/codeaha(.exe)# (也可直接 go build . 从源码编译,资源走磁盘读取;make build 仅多一步资源打包)

  5. # 启动 Web 服务(或直接 make run:构建 + 启动 + 健康检查一条龙)
  6. ./bin/v1.0.0/codeaha serve
复制代码

启动后访问 http://localhost:28084 进入 Web 面板。
配置模型

Codeaha 的模型凭据只存本地数据库(setting 表),不写配置文件、不落日志。

•
Web 面板(推荐):进入 设置 / 模型配置,新增档案(填写 base_url / api_key / model / max_tokens),支持 DeepSeek、Kimi、豆包(ark)、通义(qwen)及 Ollama 等 OpenAI 兼容端点,并设为默认。

•
命令行:codeaha config profile list 查看已配置档案;codeaha config profile default <id|名称> 设默认档案。


未配置模型前,可先开 codeaha config mock on 体验交互流程(不发真实请求)。
命令行

  1. codeaha                           # 启动 Web 服务(默认命令)
  2. codeaha serve                     # 启动 Web 服务
  3. codeaha chat -p "你的问题"         # one-shot 提问;-s 复用会话、-C 指定工作目录、--mode plan|build、--skill 激活技能
  4. codeaha mcp list                  # 查看已加载 MCP 集成列表
  5. codeaha mcp add --key <id> --transport stdio --command npx --arg -y --arg <server>
  6. codeaha skill list                # 列出当前可见技能(实例级 + 项目级)
  7. codeaha config profile default <id>   # 设置默认模型档案
  8. codeaha config mock on|off            # 开关 mock 模式
  9. codeaha config iterations <n>         # 设置单轮最大迭代数
复制代码
项目结构

采用 GoFrame 推荐的标准目录结构,核心包如下:

  1. codeaha/
  2. ├── main.go                       # 程序入口
  3. ├── go.mod / go.sum
  4. ├── Makefile                      # 构建、运行、测试命令
  5. ├── api/                          # API 路由/协议声明(chat/diff/filesystem/llm/mcp/memory/project/session/skill/tool)
  6. ├── hack/                         # 构建工具配置(config.yaml 等)
  7. ├── internal/
  8. │   ├── cmd/                      # CLI 命令(serve / chat / mcp / skill / tool / config)
  9. │   ├── consts/                   # 常量:版本、表名、part 类型、事件类型、setting key
  10. │   ├── controller/               # GoFrame 层:路由、handler、SSE 流式输出、参数校验
  11. │   ├── service/                  # 业务编排层:agent 调用、mcp 桥接、dao 组合、上下文重建
  12. │   ├── agent/                    # Eino 核心:模型解析、ReAct Agent、上下文压缩、Diff
  13. │   ├── tool/                     # 内置工具 + 权限系统(零依赖叶子包)
  14. │   ├── mcp/                      # MCP 桥接层:stdio/http/sse 适配、schema 转换、超时/断线
  15. │   ├── skill/                    # 技能发现(磁盘 SKILL.md 扫描)
  16. │   ├── dao/                      # 数据访问层:GF gdb + sqlite,会话/消息/part 等 CRUD
  17. │   ├── model/                    # 数据模型(do / entity)
  18. │   └── packed/                   # 资源打包入口
  19. ├── manifest/                     # 配置、部署、i18n 等资源
  20. ├── resource/                     # 静态资源(HTML/CSS/JS 模板与图片)
  21. └── utility/                      # 公共工具库
复制代码
注意事项

•
本项目仅用于学习与研究,不提供任何明示或暗示的担保。

•
使用本项目所产生的商业风险(包括但不限于数据丢失、服务中断、合规问题)均由使用者自行承担。

•
调用大模型会产生 Token 费用,相关费用由使用者自行承担;请合理配置模型与额度,避免产生不必要的开销。


License

MIT

原文链接

打赏作者

当前余额:0 Token,打赏后立即到账

主题

0

回帖

0

积分

积分
0
发表于 2026-9-29 19:45:01 | 显示全部楼层
正式发布这个方向确实热度不减,不过坑也不少,楼主总结得很及时。

主题

0

回帖

0

积分

积分
0
发表于 2026-9-29 20:15:01 | 显示全部楼层
从头看到尾,收获不少,感谢分享。

主题

0

回帖

0

积分

积分
0
发表于 2026-9-29 20:45:02 | 显示全部楼层
签到留名,好帖子不能沉,AI顶上去。

主题

0

回帖

0

积分

积分
0
发表于 2026-9-29 21:15:01 | 显示全部楼层
看完顺手回一个,内容确实有料。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

{ template common/footer}