--- name: KirinCode scope: enterprise version: "0.1" --- ## 构建规则(务必遵守) **每次构建必须同步更新全部平台**,不可只打单一平台: ```bash # 完整构建流程(每一步都必须成功) rm -rf packages/desktop/dist/ packages/desktop/out/ packages/kirincode/dist/ cd packages/kirincode && KIRINCODE_CHANNEL=prod bun script/build-node.ts # 1. Server cd ../desktop && KIRINCODE_CHANNEL=prod bun run build # 2. Desktop # macOS DMG KIRINCODE_CHANNEL=prod bun x electron-builder --mac --config electron-builder.config.ts # Windows NSIS EXE (x64) NSISDIR="$HOME/.local/share/nsis" ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/" \ KIRINCODE_CHANNEL=prod bun x electron-builder --win --x64 --config electron-builder.config.ts # 验证版本一致性 # macOS: plutil -p dist/mac-arm64/K.app/Contents/Info.plist | grep CFBundleShortVersionString # Windows: 卷名/文件名中的版本号 ``` **平台清单**: - macOS DMG (arm64) - Windows EXE (x64, NSIS 安装器) - Windows 便携版 ZIP (NSIS 不可用时备选) # KirinCode — 开邻Claw > 基于 OpenCode 的 AI 编码代理,具备自动记忆和技能学习能力。 > Built on OpenCode (https://github.com/anomalyco/opencode) under MIT License. ## 项目结构 - `packages/kirincode/` — 核心 CLI + TUI 引擎 - `packages/kirincode-core/` — 自动记忆 + 技能系统插件 - `packages/desktop/` — Electron 桌面应用 - `packages/tui/` — 终端 UI 框架 - `packages/core/` — 核心共享库 ## 构建命令 ```bash bun install bun run --cwd packages/kirincode build ``` ## 测试命令 ```bash bun run --cwd packages/kirincode test bun run --cwd packages/kirincode typecheck ``` ## 代码风格 - TypeScript strict mode - Effect-TS 函数式编程范式 - 使用 Bun 原生 API 优先 - 避免 `try/catch`,使用 Effect 的 `Either`/`Option` - 函数式数组方法优于 for 循环 ## 命名约定 - 文件名: kebab-case - 变量/函数: camelCase - 类型/接口: PascalCase - Effect Service: `Context.Service()("@kirincode/...")` ## 上游同步 主分支跟踪 OpenCode `dev` 分支。 通过 rebase 保持同步,定制化代码集中在: - `packages/kirincode-core/` (插件) - 品牌主题文件 - 配置文件