架构
一句话
jj-flow = 项目族编排协议:init 接入地图、same 迁移、ralph 任务闭环、dispatch 多项目调度。 可选会话引擎:team-coordinate / team-lifecycle / team-swarm(不推进 checkpoint)。
产品中心是编排与证据门禁,不是重写外部 coding agent。
三条主路径
text
same: 源证据 → 目标差异 → 原生架构实施 → 验证 → 同步检查点
ralph: 需求 → 计划 → 实施/验证 → 验收 → 归档 → 能力地图
dispatch: plane → tick → host actions → receipts → 下一检查点可选(会话执行/搜索,非交付真相):
text
coordinate: 动态多角色 → TC-* artifacts(可引用进 evidence)
lifecycle: 固定 SDLC → TLV4-* spec/plan/artifacts
swarm: 对抗搜索 → TAS-* best-solution模块(定位)
| 区域 | 职责 |
|---|---|
skills/jj-* | 对话协议 SSOT(多端 install) |
src/dispatch*.mjs | 控制面状态机、tick、CAS、host 契约 |
src/ralph.mjs + src/ralph/ | 任务机械步骤(门面 + state/gates/map/context/knowledge/archive/migrate) |
src/end.mjs + endCli.mjs | Git 收尾批量 runner(end preview / execute) |
src/installSkill.mjs | 五端(codex / claude / qoder / grok / agents)安装、卸载与 ownership |
src/jjInit.mjs | 全局地图接入与知识建库 |
src/taskRegistry.mjs | task.json 任务索引、脚手架与分配展示 |
src/memoryHotLayer.mjs / memoryRetrieve.mjs / memoryExtract.mjs / portfolioKnowledge.mjs | 用户级记忆热层、检索注入与知识库 |
src/scenarioRunner.mjs / dispatchTrace.mjs | 可重放场景与纯 replay |
src/hostTrialRunner.mjs | 半真实 Host trial |
src/grokHostAdapter.mjs / grokHostTrialRunner.mjs | Grok session bind + 真试跑(Wave 2 / A2 已关;JSON 不得自关) |
src/claudeHostAdapter.mjs | Claude Code Mode S 会话绑定(host_id=claude-code;不关闭 Wave 2) |
src/harnessGc.mjs / check-harness.mjs | 仓库 Harness 门禁与熵扫描 |
docs/ | 用户文档 SSOT → npm run docs:build |
代码级地图:仓库根 ARCHITECTURE.md。
不变量(摘要)
- 只有持久证据推进状态
- 控制面单写者;worker 回报 receipt
task_key可恢复;临时 subagent 不是身份- Reviewer 只读;Developer 仅在获批写工作区
- 外部副作用归宿主;runtime 无 daemon、不自动 merge
- Grok 真 Host 已验收:
max_unattended_level = A2(default_level仍 A1;A3/A4 关闭)
成熟度边界
| 已关闭 | 仍 open |
|---|---|
M6 / M7 半真实 / H5 GC / Mode S 日常 / Mode W 机械 isolation worktree、Mode P 机械 opt-in 子会话、Grok Wave 2 / A2、AI-native SDLC 翻译、机械实验场(lab:check 进 verify;evidence_class 硬门;lab-harness gym host) | A3/A4、Codex App 并列试跑、evaluated 完整 LLM 回放闭环、实验场 Live Agent、Mode P live 多会话 |