一个按需启用的 Codex 软件项目生产工作流:从原始想法开始,经过需求冻结、架构、实现、审查和完整验收,最后通过 Git Delivery Gate 安全交付。
插件默认不接管普通开发请求。只有用户明确输入以下任一方式时才启动:
使用项目工作流
/project-factory
需求访谈结束后,只有收到精确回复 确认需求 才会冻结需求并继续。再次启动时,先读取目标项目的 AGENTS.md、workflow/state.json、当前计划、Git 状态和历史,从上次事实状态恢复。
INIT
→ REQUIREMENT_ANALYSIS
→ REQUIREMENT_INTERVIEW
→ WAITING_FOR_USER
→ REQUIREMENT_FROZEN
→ REFERENCE_RESEARCH
→ ARCHITECTURE
→ PLAN_REVIEW
→ IMPLEMENTATION
→ MODULE_ACCEPTANCE
→ FULL_ACCEPTANCE
→ RELEASE_PREPARATION
→ GIT_DELIVERY
→ FINAL_DELIVERY
→ DONE
每个阶段都有独立 Skill、输入、输出和门禁。项目事实写入目标仓库,不依赖聊天记录。
Full Acceptance 通过后仍需满足以下条件才能进入 DONE:
- Build、核心 Unit、Integration 和核心 E2E 通过
- 核心需求覆盖率为 100%
- P0/P1 缺陷为 0
- Secret Scan、Commit Plan、历史验证、最终测试和 Remote Verify 通过
- 当前远程、分支、Upstream 和目标仓库明确
Git Delivery 会检查工作区、生成逻辑提交计划、按明确文件分组提交、重新运行最终测试,并在验证远程 HEAD 后 Push。它不会默认执行 git add .、历史重写、强制 Push 或破坏性清理。
目标项目在 Git Delivery 阶段需要已有 Git 仓库:
- 无 Git 仓库:进入
WAITING_FOR_REPOSITORY - 有 Git、无
origin:进入WAITING_FOR_GIT_REMOTE - 认证失败:进入
WAITING_FOR_GIT_AUTH - 网络 Push 失败:进入
PUSH_FAILED,保留本地提交并支持恢复
远程仓库创建、凭据、生产环境和不可逆操作需要用户确认。公开 GitHub 参考仓库只读、隔离在 references/repos/,不会自动执行其中的脚本或安装依赖。
要求:已安装 Codex CLI。首次使用先登录:
codex login-
添加这个仓库提供的 marketplace:
codex plugin marketplace add https://github.com/Changxin-YR/Project-workflow.git --ref main
-
确认 marketplace 已被 Codex 识别:
codex plugin marketplace list
-
安装插件。命令行方式最直接:
codex plugin add codex-project-factory@project-workflow
也可以在 Codex Desktop 的 Plugins Directory 中选择
Project Workflow,安装Codex Project Factory。 -
确认插件已经安装:
codex plugin list --marketplace project-workflow
-
打开一个软件项目仓库,在 Codex 对话中输入:
使用项目工作流或:
/project-factory -
需求访谈结束后,检查生成的
docs/requirements/REQUIREMENTS_FROZEN.md,确认无误时回复:确认需求
更新仓库后,在 Codex CLI 执行:
codex plugin marketplace upgrade project-workflow然后重启 Codex Desktop,确保使用最新版本。
git clone https://github.com/Changxin-YR/Project-workflow.git
codex plugin marketplace add .\Project-workflow
codex plugin add codex-project-factory@project-workflow
codex plugin list --marketplace project-workflow这种方式适合需要审阅或修改 Skill 的团队。修改仓库后重新执行 codex plugin marketplace upgrade project-workflow,再重启 Codex Desktop。
Codex 当前没有把 npm registry 作为原生插件安装源。npm 安装完成后,需要把安装目录注册为 Codex marketplace,再安装插件。下面命令使用独立临时目录,不会修改你的软件项目:
PowerShell:
$installRoot = Join-Path $env:TEMP "codex-project-factory-npm"
Remove-Item -Recurse -Force $installRoot -ErrorAction SilentlyContinue
New-Item -ItemType Directory -Force $installRoot | Out-Null
npm install --prefix $installRoot github:Changxin-YR/Project-workflow
codex plugin marketplace add (Join-Path $installRoot "node_modules\codex-project-factory")
codex plugin add codex-project-factory@project-workflow
codex plugin list --marketplace project-workflowmacOS/Linux:
install_root="$(mktemp -d)"
npm install --prefix "$install_root" github:Changxin-YR/Project-workflow
codex plugin marketplace add "$install_root/node_modules/codex-project-factory"
codex plugin add codex-project-factory@project-workflow
codex plugin list --marketplace project-workflow如果你需要离线保存 tarball 或交给团队内部镜像,可以用 npm pack 下载并解包。无需 npm 账号即可执行:
$installRoot = Join-Path $env:TEMP "codex-project-factory-install"
Remove-Item -Recurse -Force $installRoot -ErrorAction SilentlyContinue
New-Item -ItemType Directory -Force $installRoot | Out-Null
Push-Location $installRoot
$archive = npm pack github:Changxin-YR/Project-workflow --silent
tar -xzf $archive
codex plugin marketplace add (Join-Path $installRoot "package")
codex plugin add codex-project-factory@project-workflow
codex plugin list --marketplace project-workflow
Pop-LocationmacOS/Linux:
install_root="$(mktemp -d)"
cd "$install_root"
archive=$(npm pack github:Changxin-YR/Project-workflow --silent)
tar -xzf "$archive"
codex plugin marketplace add "$install_root/package"
codex plugin add codex-project-factory@project-workflow
codex plugin list --marketplace project-workflow这条路径中,npm 负责下载和解包源码,codex plugin marketplace add 负责把解包目录注册给 Codex。仓库已经包含 package.json,也可以在仓库目录执行 npm pack 生成可分发的 tarball。
更新插件时,重新执行对应下载步骤,然后执行:
codex plugin marketplace upgrade project-workflow
codex plugin list --marketplace project-workflowCodex 插件目录、manifest 和 marketplace 的官方说明见:Package your plugin - OpenAI Developers。
在插件根目录执行:
python scripts/test_project_factory.py
python scripts/test_git_delivery.py
python scripts/test_package.py
python -m compileall -q scripts
python C:\Users\27363\.codex\skills\.system\plugin-creator\scripts\validate_plugin.py .查看 Git Delivery 的只读结果:
python scripts/git_delivery.py inspect --repo <target>
python scripts/git_delivery.py scan --repo <target>
python scripts/git_delivery.py deliver --repo <target> --state <target>\workflow\state.json --dry-run--dry-run 只生成检测、扫描、提交和 Push 计划,不执行 Commit 或 Push。
目标项目模板位于 templates/project/,包括:
workflow/state.json:唯一工作流状态源workflow/progress.md:阶段进度workflow/failures.md:失败与根因记录workflow/last-good-state.md:最近一次可恢复状态workflow/git-commit-plan.md:逻辑提交计划docs/requirements/、docs/research/、docs/architecture/、docs/acceptance/
冻结后的需求、验收标准、安全规则、权限规则和架构决策不能被静默改写。
主项目可以自动安装已声明依赖、运行测试、构建和迁移。密钥、令牌、密码、生产凭据、远程创建、付费资源和不可逆操作需要人工确认。日志和状态输出只保存路径、规则和结果,不输出凭据值。
本仓库包含 Project Factory V1 的插件骨架、阶段 Skills、状态/Git 核心、目标项目模板和可重复测试。验收记录见 docs/acceptance/project-factory-v1.md。