开源 AI 编码助手,采用 Browser-Server 架构(Hono + SSE 后端 / React 前端 / PGLite 本地数据库 / CLI)。
- Browser-Server 架构:Hono 后端通过 SSE 推送 LLM 流式响应;React 前端单页应用。
- 本地优先:会话与索引存储在 PGLite(浏览器/进程内 PostgreSQL),数据随用随取。
- 多项目:工作区隔离的多项目管理,每个项目独立会话历史与配置。
- 工具系统:内置文件读写、bash、grep、glob、编辑等工具,可按需启用/禁用。
- 权限模式:
default/yolo等授权模式,控制工具执行前是否需用户确认。 - 会话可恢复:会话快照序列化/反序列化,支持进程重启后无缝恢复。
- 无感知热更新:后台定期检查新版本,序列化当前会话 → npm 自更新 → 端口 handoff 接管,用户无感升级。
- Web 搜索:内置 websearch 工具,支持多搜索引擎。
- 斜杠命令:
/compact、/model、/clear等可配置的斜杠命令。 - 主题与多语言:亮/暗主题,简体中文 / English。
# 全局安装(推荐)
npm install -g c0de-agent
# 或用 pnpm / yarn
pnpm add -g c0de-agent要求 Node.js >= 22.0.0。
# 在项目目录启动
c0de serve
# 指定端口并自动打开浏览器
c0de serve --port 3000 --open
# 从快照恢复会话
c0de serve --restore snapshot.json
# 打印模式(单次问答,不启动服务)
c0de chat "解释这段代码"
# 更新检查
c0de update --check启动后访问 http://localhost:3000。
# 安装依赖
pnpm install
# 启动开发服务器(前端热更新)
pnpm dev
# 类型检查
pnpm typecheck # 后端
pnpm typecheck:web # 前端
# 测试
pnpm test
# 构建
pnpm build # 编译 CLI/后端到 dist/
pnpm build:web # 构建前端到 dist-web/
# 代码检查与格式化
pnpm lint
pnpm formatsrc/
├── cli/ # CLI 入口与命令(serve / chat / update)
├── core/ # 配置、agent 注册、权限、工具注册
├── llm/ # LLM provider 抽象与调用
├── server/ # Hono HTTP 服务、SSE 流、路由、handoff
├── session/ # 会话上下文与消息转换
├── shared/ # 前后端共享类型
├── tools/ # 内置工具实现
├── update/ # 版本检查、热更新调度器、会话快照
└── web/ # React 前端(组件、视图、服务、hooks)
采用 semantic-release 自动化发布,基于 conventional commits(feat:、fix:、refactor: 等)自动计算版本号、生成 changelog 并发布到 npm。
main分支推送触发.github/workflows/release.yml- 通过 GitHub Actions OIDC trusted publishing 发布(无需 NPM_TOKEN)
- 发布产物带 npm provenance(可验证来源)