Files
heicode/docs/onboarding/local-dev.md
T

3.4 KiB
Raw Blame History

本地联调指引

把仓库内三块跑起来:cc-haha(客户端)、heicode(Manager)、website(站点)。下面命令以 macOS / Linux 为主,Windows 仅在差异点提示。

命令以仓库当前 README 与 package.json 为准;如出现冲突,以代码为最终事实。 客户端工程级别的更细约定在 ../../cc-haha/AGENTS.md。

一、前置依赖

依赖 用途 检查命令
Bun ≥ 1.x 客户端 / 站点 / Tauri 前端构建 bun --version
Node 22 仅 docs 工作流(CI 用 npm) node --version
Rust toolchain Tauri 桌面端 cargo --version
Docker / Docker Compose 起 Manager 与站点容器 docker compose version
Go 1.22+ 直接跑 Manager 源码(可选) go version

Bun 安装:curl -fsSL https://bun.sh/install | bash(Windows 用 PowerShell irm bun.sh/install.ps1 | iex)。 Rust 安装:curl --proto '=https' https://sh.rustup.rs | sh(如遇 HTTP/2 报错,去掉 --http2 重试)。

二、最小开发闭环

# 1. 安装客户端依赖
cd cc-haha && bun install

# 2. 终端 A:本地 API(桌面端依赖)
bun run src/server/index.ts

# 3. 终端 B:桌面端
cd cc-haha/desktop
bun run tauri dev

服务默认监听 http://127.0.0.1:3456(可用 SERVER_PORT 覆盖)。

三、联调本机 Manager(heicode)

# 1. 起 Manager(heicode)
cd heicode
docker compose -f docker-compose.yml -f docker-compose.override.yml up --build -d

# 2. 让客户端把 TaijiAICloud 指向本地 Manager
cd ../cc-haha
HEICODE_TAIJIAICLOUD_BASE_URL=http://localhost:3000 bun run src/server/index.ts

完整可用变量见 env-variables.md。

四、桌面端常见排错

现象 原因 / 解决
error: script "tauri" exited with code 1 提示 cargo metadata 找不到 缺 Rust toolchain;安装后重开终端
Could not resolve: "grammy" / @larksuiteoapi/node-sdk 客户端依赖未装;cd cc-haha && bun install
Cannot find module 'lodash-es/sumBy.js' 同上,bun install 后再启动
端口 3456 被占 用 SERVER_PORT=3457 bun run src/server/index.ts

五、跑客户端测试

cd cc-haha/desktop
bun run test       # Vitest 单测
bun run lint       # tsc --noEmit

桌面端构建产物:bun run build 或针对平台用 bun run build:macos-arm64 / bun run build:windows-x64。

六、Manager(heicode)开发

简版命令以 heicode/CLAUDE.md 为准,本节只列联调相关:

# 用本地 source 构建(覆盖镜像)
cd heicode
docker compose -f docker-compose.yml -f docker-compose.override.yml up --build -d

# 看日志
docker compose logs -f heicode

启动后访问 http://localhost:3000,注册管理员,再测试客户端登录链路。

七、站点(website)

cd website
pnpm install
pnpm dev

或用根目录 docker-compose.yml 起静态预览镜像(端口 8888):

docker compose up -d --build heicode-www

八、回归三件套

每次大改前后至少回归:

  1. 客户端登录(API Key 粘贴 + 浏览器登录二选一)
  2. 拉取模型列表(应来自 Provider API,不是硬编码)
  3. 发起一次对话或 Anthropic Messages 请求

后续端到端闭环以 ../saas-manager-agnet-architecture-plan.md 的 P0-P5 为准。