百积木文档
开发指南

选择工作区并获取项目

确认工作区、项目和环境边界,通过百积木 CLI 检出平台项目的 Codex 开发分支。

开发开始前必须确定源码属于哪个工作区和项目。对于百积木平台项目,平台项目 Git 是源事实,本地目录只是开发检出;不要用一个本地目录代替平台项目生命周期。

确认工作区和项目

先回读默认工作区,再列出该工作区的项目:

baijimu workspace current
baijimu project list <workspaceId>
baijimu project get <projectId>

核对项目名称、项目类型和工作区归属。不要根据目录名猜测项目 ID,也不要把测试工作区中的同名项目当成生产项目。

检出平台项目

使用 CLI 检出平台 canonical Git 仓库,并创建当前用户可写的 Codex 分支:

baijimu project checkout <projectId> \
  --workspace-id <workspaceId> \
  --directory <projectDirectory>

目标目录必须尚不存在,CLI 不会覆盖现有目录。检出成功后进入输出中的目录,核对工作树和分支:

cd <projectDirectory>
git status
git branch --show-current
git remote -v

平台项目的 main 是受保护分支。project checkout 会创建当前用户专属分支,开发者或 Codex 应在该分支提交并推送,不要尝试直接更新 main

打开项目前检查

确认以下信息后再启动 Codex:

对象必须确认的事实
工作区baijimu workspace current 返回目标工作区。
项目baijimu project get <projectId> 返回预期项目及类型。
本地目录当前目录是刚检出的项目,不是另一个同名仓库。
Git 分支当前分支属于 CLI 创建的个人开发分支。
环境开发、测试或生产目标由项目自己的发布流程明确选择。
项目规则阅读仓库根目录及当前子目录适用的 AGENTS.md

本地仓库与平台项目不是同一个状态

切换 CLI 默认工作区不会改变已经检出的仓库。切换项目时应打开对应目录;切换工作区后继续使用旧目录前,必须核对仓库配置、项目归属和目标环境。

提交并合并平台项目

完成开发和验证后,先查看差异,再提交并推送当前个人分支:

git status
git diff
git add <files>
git commit -m "<message>"
git push

回读远端分支并通过平台的原子合并接口更新受保护的 main

baijimu project branches <projectId> --workspace-id <workspaceId>
baijimu project merge <projectId> <sourceBranch> \
  --workspace-id <workspaceId> \
  --expected-main <mainCommit>

参数以本机 baijimu project merge --help 为准。合并只更新项目 Git,并不等于构建、发布、安装或正式环境验证;后续动作必须按项目类型执行。

下一步阅读使用 Codex 开发

本页内容