superlab 0.1.13 → 0.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -3
- package/README.zh-CN.md +15 -3
- package/bin/superlab.cjs +38 -0
- package/lib/auto_contracts.cjs +7 -3
- package/lib/auto_runner.cjs +33 -52
- package/lib/auto_state.cjs +27 -21
- package/lib/context.cjs +15 -0
- package/lib/i18n.cjs +122 -37
- package/lib/install.cjs +1 -0
- package/package-assets/claude/commands/lab/auto.md +3 -0
- package/package-assets/claude/commands/lab/write.md +1 -1
- package/package-assets/claude/commands/lab.md +15 -0
- package/package-assets/codex/prompts/lab-auto.md +3 -0
- package/package-assets/codex/prompts/lab-write.md +1 -1
- package/package-assets/codex/prompts/lab.md +15 -0
- package/package-assets/shared/lab/.managed/templates/final-report.md +12 -0
- package/package-assets/shared/lab/.managed/templates/main-tables.md +37 -0
- package/package-assets/shared/lab/config/workflow.json +3 -1
- package/package-assets/shared/lab/context/auto-mode.md +8 -1
- package/package-assets/shared/lab/context/auto-outcome.md +3 -0
- package/package-assets/shared/skills/lab/SKILL.md +6 -2
- package/package-assets/shared/skills/lab/references/paper-writing/abstract.md +7 -1
- package/package-assets/shared/skills/lab/references/paper-writing/examples/abstract/template-a.md +21 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/abstract/template-b.md +34 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/abstract/template-c.md +28 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/abstract-examples.md +13 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/index.md +21 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/novel-task-challenge-decomposition.md +18 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/pipeline-not-recommended-abstract-only.md +30 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/pipeline-version-1-one-contribution-multi-advantages.md +30 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/pipeline-version-2-two-contributions.md +34 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/pipeline-version-3-new-module-on-existing-pipeline.md +18 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/pipeline-version-4-observation-driven.md +16 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/technical-challenge-version-1-existing-task.md +32 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/technical-challenge-version-2-existing-task-insight-backed-by-traditional.md +33 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/technical-challenge-version-3-novel-task.md +21 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/version-1-task-then-application.md +14 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/version-2-application-first.md +10 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/version-3-general-to-specific-setting.md +14 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction/version-4-open-with-challenge.md +20 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/introduction-examples.md +25 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/example-of-the-three-elements.md +67 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/method-writing-common-issues-note.md +10 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/module-design-instant-ngp.md +55 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/module-motivation-patterns.md +15 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/module-triad-neural-body.md +19 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/neural-body-annotated-figure-text.md +66 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/overview-template.md +30 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/pre-writing-questions.md +17 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method/section-skeleton.md +9 -0
- package/package-assets/shared/skills/lab/references/paper-writing/examples/method-examples.md +24 -0
- package/package-assets/shared/skills/lab/references/paper-writing/introduction.md +7 -1
- package/package-assets/shared/skills/lab/references/paper-writing/method.md +6 -2
- package/package-assets/shared/skills/lab/references/paper-writing-integration.md +26 -0
- package/package-assets/shared/skills/lab/stages/auto.md +29 -1
- package/package-assets/shared/skills/lab/stages/report.md +5 -1
- package/package-assets/shared/skills/lab/stages/write.md +16 -1
- package/package.json +1 -1
package/lib/i18n.cjs
CHANGED
|
@@ -61,7 +61,7 @@ const ZH_CONTENT = {
|
|
|
61
61
|
[path.join(".codex", "prompts", "lab-write.md")]: codexPrompt(
|
|
62
62
|
"把验证过的研究工件转成论文 section,并按小步方式修订",
|
|
63
63
|
"section or writing target",
|
|
64
|
-
"使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:write`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:write` 阶段。它必须先有来自 `/lab:framing` 的已批准 framing artifact,再读取 `.codex/skills/lab/references/paper-writing/` 下与当前 section
|
|
64
|
+
"使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:write`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:write` 阶段。它必须先有来自 `/lab:framing` 的已批准 framing artifact,再读取 `.codex/skills/lab/references/paper-writing/` 下与当前 section 对应的参考文件;如果当前是 `abstract`、`introduction` 或 `method`,还必须继续读取 `.codex/skills/lab/references/paper-writing/examples/index.md`、对应的 examples index,以及 1-2 个具体 example 文件。然后结合 `paper-review.md` 与 `does-my-writing-flow-source.md`,先写 mini-outline,再只修改一个 section。第一次进入会产出论文 `.tex` 的路径时,如果 `paper_template_root` 为空,必须先问一次:继续使用默认 LaTeX scaffold,还是先接入模板目录。"
|
|
65
65
|
),
|
|
66
66
|
[path.join(".claude", "commands", "lab", "idea.md")]: claudeCommand(
|
|
67
67
|
"LAB: Idea",
|
|
@@ -109,7 +109,7 @@ const ZH_CONTENT = {
|
|
|
109
109
|
"LAB: Write",
|
|
110
110
|
"把验证过的研究工件转成论文 section,并按小步方式修订",
|
|
111
111
|
"workflow, research, writing",
|
|
112
|
-
"使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:write`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:write` 阶段。它必须先有来自 `/lab:framing` 的已批准 framing artifact,再读取 `.claude/skills/lab/references/paper-writing/` 下与当前 section
|
|
112
|
+
"使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:write`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:write` 阶段。它必须先有来自 `/lab:framing` 的已批准 framing artifact,再读取 `.claude/skills/lab/references/paper-writing/` 下与当前 section 对应的参考文件;如果当前是 `abstract`、`introduction` 或 `method`,还必须继续读取 `.claude/skills/lab/references/paper-writing/examples/index.md`、对应的 examples index,以及 1-2 个具体 example 文件。然后结合 `paper-review.md` 与 `does-my-writing-flow-source.md`,先写 mini-outline,再只修改一个 section。第一次进入会产出论文 `.tex` 的路径时,如果 `paper_template_root` 为空,必须先问一次:继续使用默认 LaTeX scaffold,还是先接入模板目录。"
|
|
113
113
|
),
|
|
114
114
|
};
|
|
115
115
|
|
|
@@ -291,8 +291,10 @@ const ZH_SKILL_FILES = {
|
|
|
291
291
|
## 必要输出
|
|
292
292
|
|
|
293
293
|
- 方法概述
|
|
294
|
+
- 选定指标摘要
|
|
294
295
|
- 实验设置
|
|
295
296
|
- 已验证主结果
|
|
297
|
+
- 位于 \`<deliverables_root>/main-tables.md\` 的受管主表工件
|
|
296
298
|
- 消融
|
|
297
299
|
- 失败尝试
|
|
298
300
|
- 局限性
|
|
@@ -317,13 +319,15 @@ const ZH_SKILL_FILES = {
|
|
|
317
319
|
- 每个主要 claim 都要指向已记录的 summary 或 iteration artifact。
|
|
318
320
|
- 主表结构、gate 和最终结果 framing 必须对齐已批准的评估协议。
|
|
319
321
|
- 不要凭记忆重述指标定义、baseline 行为或对比方法实现;直接引用评估协议里记录的来源。
|
|
322
|
+
- 必须把已批准的主指标、次级指标和必要终局证据明确写进 \`report.md\` 与受管的 \`main-tables.md\`。
|
|
320
323
|
- 如果报告依赖了对原始指标或原始实现的偏差,必须明确写出这个偏差。
|
|
324
|
+
- 如果 workflow language 是中文,\`report.md\` 和 \`<deliverables_root>/main-tables.md\` 也应使用中文,除非文件路径、代码标识符或字面指标名必须保持原样。
|
|
321
325
|
- 解释优先保守,不要写成营销文案。
|
|
322
326
|
- 要给 \`/lab:write\` 留下清晰 handoff,尤其是 section draft 可以直接引用的证据链接。
|
|
323
327
|
|
|
324
328
|
## 交互约束
|
|
325
329
|
|
|
326
|
-
- 开始前先简洁说明:campaign outcome
|
|
330
|
+
- 开始前先简洁说明:campaign outcome、选定的主指标和次级指标、最强已支撑 claim、最大的报告风险。
|
|
327
331
|
- 如果某个未决前提会改变报告解释,一次只问一个问题。
|
|
328
332
|
- 如果存在多种报告 framing,先给 2-3 个方案、trade-offs 和推荐项,优先最忠于证据的 framing。
|
|
329
333
|
- 如果某种 framing 会实质影响后续论文 claim,要保留 approval gate。
|
|
@@ -679,27 +683,78 @@ const ZH_SKILL_FILES = {
|
|
|
679
683
|
- 方差和显著性问题是否交代清楚?
|
|
680
684
|
`,
|
|
681
685
|
[path.join(".lab", ".managed", "templates", "final-report.md")]:
|
|
682
|
-
`#
|
|
686
|
+
`# 最终报告
|
|
683
687
|
|
|
684
688
|
## 目标
|
|
685
689
|
|
|
686
690
|
- 本轮研究目标:
|
|
687
691
|
- 是否达标:
|
|
688
692
|
|
|
693
|
+
## 选定指标
|
|
694
|
+
|
|
695
|
+
- 主指标:
|
|
696
|
+
- 次级指标:
|
|
697
|
+
- 必要终局证据:
|
|
698
|
+
|
|
699
|
+
## 主表工件
|
|
700
|
+
|
|
701
|
+
- 受管主表路径:\`<deliverables_root>/main-tables.md\`
|
|
702
|
+
- 最终表现摘要:
|
|
703
|
+
- 主表覆盖情况:
|
|
704
|
+
|
|
689
705
|
## 主要结果
|
|
690
706
|
|
|
691
|
-
-
|
|
692
|
-
-
|
|
707
|
+
- 主要发现 1:
|
|
708
|
+
- 主要发现 2:
|
|
693
709
|
|
|
694
710
|
## 失败尝试与局限
|
|
695
711
|
|
|
696
|
-
-
|
|
697
|
-
-
|
|
712
|
+
- 失败尝试:
|
|
713
|
+
- 局限:
|
|
698
714
|
|
|
699
715
|
## 仍需加强的 claims
|
|
700
716
|
|
|
701
|
-
- Claim
|
|
702
|
-
-
|
|
717
|
+
- Claim:
|
|
718
|
+
- 缺失支持:
|
|
719
|
+
`,
|
|
720
|
+
[path.join(".lab", ".managed", "templates", "main-tables.md")]:
|
|
721
|
+
`# 主表工件
|
|
722
|
+
|
|
723
|
+
## 选定指标
|
|
724
|
+
|
|
725
|
+
- 主指标:
|
|
726
|
+
- 次级指标:
|
|
727
|
+
- 必要终局证据:
|
|
728
|
+
|
|
729
|
+
## 最终表现摘要
|
|
730
|
+
|
|
731
|
+
- 主要结果摘要:
|
|
732
|
+
- 最重要数字:
|
|
733
|
+
- 报告边界:
|
|
734
|
+
|
|
735
|
+
## Table 1
|
|
736
|
+
|
|
737
|
+
- 作用:
|
|
738
|
+
- 使用指标:
|
|
739
|
+
- 最强支撑 claim:
|
|
740
|
+
|
|
741
|
+
## Table 2
|
|
742
|
+
|
|
743
|
+
- 作用:
|
|
744
|
+
- 使用指标:
|
|
745
|
+
- 最强支撑 claim:
|
|
746
|
+
|
|
747
|
+
## Table 3
|
|
748
|
+
|
|
749
|
+
- 作用:
|
|
750
|
+
- 使用指标:
|
|
751
|
+
- 最强支撑 claim:
|
|
752
|
+
|
|
753
|
+
## Table 4
|
|
754
|
+
|
|
755
|
+
- 作用:
|
|
756
|
+
- 使用指标:
|
|
757
|
+
- 最强支撑 claim:
|
|
703
758
|
`,
|
|
704
759
|
[path.join(".lab", ".managed", "templates", "paper-plan.md")]:
|
|
705
760
|
`# 论文计划
|
|
@@ -829,7 +884,9 @@ const ZH_SKILL_FILES = {
|
|
|
829
884
|
"results_root": "results",
|
|
830
885
|
"figures_root": "figures",
|
|
831
886
|
"deliverables_root": "docs/research",
|
|
832
|
-
"paper_template_root": ""
|
|
887
|
+
"paper_template_root": "",
|
|
888
|
+
"paper_template_decision": "unconfirmed",
|
|
889
|
+
"paper_template_final_reminder_acknowledged": false
|
|
833
890
|
}`,
|
|
834
891
|
[path.join(".lab", "context", "mission.md")]:
|
|
835
892
|
`# 研究主线
|
|
@@ -934,12 +991,16 @@ const ZH_SKILL_FILES = {
|
|
|
934
991
|
|
|
935
992
|
- Objective:
|
|
936
993
|
- Autonomy level: L2
|
|
994
|
+
- Autonomy level 只表示执行权限级别,不表示论文 layer 或 table 编号。
|
|
995
|
+
- 如果你想表达论文层、实验 phase 或主表,请明确写成 \`paper layer\`、\`phase\` 或 \`table\`。
|
|
937
996
|
- Approval status: draft
|
|
938
997
|
- Allowed stages: run, iterate, review, report
|
|
939
998
|
- Success criteria:
|
|
940
999
|
- Terminal goal type:
|
|
941
1000
|
- Terminal goal target:
|
|
942
1001
|
- Required terminal artifact:
|
|
1002
|
+
- 如果 workflow language 是中文,摘要、清单条目、任务标签和进度更新都应使用中文。
|
|
1003
|
+
- 示例 Objective: 推进 paper layer 3 的 organizer enforcement,完成一轮 bounded protocol、测试、最小实现和一轮小规模结果。
|
|
943
1004
|
|
|
944
1005
|
## 循环预算
|
|
945
1006
|
|
|
@@ -950,6 +1011,9 @@ const ZH_SKILL_FILES = {
|
|
|
950
1011
|
|
|
951
1012
|
## 阶段命令
|
|
952
1013
|
|
|
1014
|
+
- Rung 的 \`Command\` 应该绑定真实的长任务命令,由它产出最终实验结果。
|
|
1015
|
+
- 短 watcher 只用于查看进度;当真实实验还在运行时,不要把短 watcher 当成 stage 或 rung 的主命令。
|
|
1016
|
+
- 当真实实验进程还活着时,只记录进度更新并继续等待。
|
|
953
1017
|
- Run command:
|
|
954
1018
|
- Iterate command:
|
|
955
1019
|
- Review command:
|
|
@@ -988,30 +1052,33 @@ const ZH_SKILL_FILES = {
|
|
|
988
1052
|
|
|
989
1053
|
## 目标
|
|
990
1054
|
|
|
991
|
-
-
|
|
992
|
-
-
|
|
993
|
-
-
|
|
994
|
-
-
|
|
995
|
-
-
|
|
996
|
-
-
|
|
997
|
-
-
|
|
998
|
-
-
|
|
999
|
-
-
|
|
1000
|
-
-
|
|
1001
|
-
-
|
|
1055
|
+
- 目标:
|
|
1056
|
+
- 主指标:
|
|
1057
|
+
- 次级指标:
|
|
1058
|
+
- 必要终局证据:
|
|
1059
|
+
- 实验阶梯:
|
|
1060
|
+
- 指标释义:
|
|
1061
|
+
- 指标来源论文:
|
|
1062
|
+
- 指标实现来源:
|
|
1063
|
+
- 对比方法来源论文:
|
|
1064
|
+
- 对比方法实现来源:
|
|
1065
|
+
- 与原始实现的偏差:
|
|
1066
|
+
- 终止目标类型:
|
|
1067
|
+
- 终止目标目标值:
|
|
1068
|
+
- 必要终止工件:
|
|
1002
1069
|
|
|
1003
1070
|
## 结果
|
|
1004
1071
|
|
|
1005
|
-
-
|
|
1006
|
-
-
|
|
1007
|
-
-
|
|
1008
|
-
-
|
|
1009
|
-
-
|
|
1010
|
-
-
|
|
1011
|
-
-
|
|
1012
|
-
-
|
|
1013
|
-
-
|
|
1014
|
-
-
|
|
1072
|
+
- 状态: idle
|
|
1073
|
+
- 目标是否达成: 否
|
|
1074
|
+
- 停止原因:
|
|
1075
|
+
- 是否已升格: 否
|
|
1076
|
+
- 最终工件:
|
|
1077
|
+
- 最终 rung:
|
|
1078
|
+
- 已执行阶段:
|
|
1079
|
+
- 已完成迭代数: 0
|
|
1080
|
+
- 开始时间:
|
|
1081
|
+
- 结束时间:
|
|
1015
1082
|
`,
|
|
1016
1083
|
[path.join(".lab", "context", "auto-status.md")]:
|
|
1017
1084
|
`# 自动模式状态
|
|
@@ -1292,8 +1359,15 @@ ZH_CONTENT[path.join(".codex", "skills", "lab", "stages", "write.md")] = `# \`/l
|
|
|
1292
1359
|
- 最终稿必须是 LaTeX。
|
|
1293
1360
|
- 如果配置了 \`paper_template_root\`,先检查该模板目录,再按其结构起草论文。
|
|
1294
1361
|
- 已接入的模板目录可能包含用户或上游修改,默认不要改模板文件。
|
|
1295
|
-
-
|
|
1362
|
+
- 如果没有配置模板且 \`paper_template_decision\` 是 \`unconfirmed\`,在第一次起草 \`.tex\` 之前必须先追问一次:继续使用默认 LaTeX scaffold,还是先接入模板目录。
|
|
1363
|
+
- 如果用户选择默认 scaffold,就把该决定持久化到 \`.lab/config/workflow.json\`,写成 \`paper_template_decision: default-scaffold\`。
|
|
1364
|
+
- 如果用户选择接入模板,就停止当前写作回合,先转到 \`superlab paper attach-template --path <dir>\`。
|
|
1365
|
+
- 如果 \`paper_template_decision\` 已经是 \`default-scaffold\`,就使用交付目录下的默认 LaTeX scaffold。
|
|
1366
|
+
- 如果当前是最终导出或最终定稿轮次、\`paper_template_root\` 仍为空、\`paper_template_decision\` 是 \`default-scaffold\`,且 \`paper_template_final_reminder_acknowledged\` 是 \`false\`,就在最终定稿前再提醒一次是否切到模板。
|
|
1367
|
+
- 如果用户在最终提醒里仍确认继续使用默认 scaffold,就把 \`paper_template_final_reminder_acknowledged\` 持久化为 \`true\`。
|
|
1296
1368
|
- 只加载当前 section guide,不要一次加载全部章节参考。
|
|
1369
|
+
- 如果当前 section 是 \`abstract\`、\`introduction\` 或 \`method\`,还必须继续读取本地 example bank:\`references/paper-writing/examples/index.md\`、对应的 examples index,以及 1-2 个具体 example 文件。
|
|
1370
|
+
- 例子只能复用结构、段落角色和句法逻辑,不能直接复用原句。
|
|
1297
1371
|
- 先写 mini-outline 再写 prose。
|
|
1298
1372
|
- 如果缺少 framing artifact,不要继续写作,直接回到 \`/lab:framing\`。
|
|
1299
1373
|
- 如果某个 claim 没有证据支撑,就削弱或删除。
|
|
@@ -1383,7 +1457,7 @@ ZH_CONTENT[path.join(".lab", ".managed", "templates", "framing.md")] = `# 论文
|
|
|
1383
1457
|
ZH_CONTENT[path.join(".codex", "prompts", "lab.md")] = codexPrompt(
|
|
1384
1458
|
"查看 /lab 研究工作流总览并选择合适阶段",
|
|
1385
1459
|
"workflow question 或 stage choice",
|
|
1386
|
-
"# `/lab` for Codex\n\n`/lab` 是严格的研究工作流命令族。每次都使用同一套仓库工件和阶段边界。\n\n## 子命令\n\n- `/lab:idea`\n 调研 idea,定义问题与 failure case,归类 contribution 与 breakthrough level,对比现有方法,收束三个一眼就有意义的点,并在实现前保留 approval gate。\n\n- `/lab:data`\n 把已批准的 idea 转成数据集与 benchmark 方案,记录数据集年份、使用过该数据集的论文、下载来源、许可或访问限制,以及 classic-public、recent-strong-public、claim-specific 三类 benchmark 的纳入理由,和 canonical baselines、strong historical baselines、recent strong public methods、closest prior work 四类对比方法的纳入理由。\n\n- `/lab:auto`\n 在不改变 mission、framing 和核心 claims 的前提下,读取 eval-protocol 与 auto-mode 契约并自动编排 `run`、`iterate`、`review`、`report`,必要时扩展数据集、benchmark 和 comparison methods,并在满足升格策略时自动升级 primary package。启动前必须选定 autonomy level、声明 terminal goal,并显式批准契约。\n\n- `/lab:framing`\n 通过审计当前领域与相邻领域的术语,锁定 paper-facing 的方法名、模块名、论文题目和 contribution bullets,并在 section 起草前保留 approval gate。\n\n- `/lab:spec`\n 把已批准的 idea 转成 `.lab/changes/<change-id>/` 下的一个 lab change 目录,并在其中写出 `proposal`、`design`、`spec`、`tasks`。\n\n- `/lab:run`\n 执行最小有意义验证运行,登记 run,并生成第一版标准化评估摘要。\n\n- `/lab:iterate`\n 在冻结 mission、阈值、verification commands 与 `completion_promise` 的前提下执行有边界的实验迭代。\n\n- `/lab:review`\n 以 reviewer mode 审查文档或结果,先给短摘要,再输出 findings、fatal flaws、fix priority 和 residual risks。\n\n- `/lab:report`\n 从 runs 和 iterations 工件生成最终研究报告。\n\n- `/lab:write`\n 使用已安装 `lab` skill 下 vendored 的 paper-writing references,把稳定 report 工件转成论文 section。\n\n## 调度规则\n\n- 始终使用 `skills/lab/SKILL.md` 作为工作流合同。\n- 用户显式调用 `/lab:<stage>` 时,要立刻执行该 stage,而不是只推荐别的 `/lab` stage。\n- 先给简洁摘要,再决定是否写工件,最后回报输出路径和下一步。\n- 如果歧义会影响结论,一次只问一个问题;如果有多条可行路径,先给 2-3 个方案再收敛。\n- `/lab:spec` 前应已有经批准的数据集与 benchmark 方案。\n- `/lab:run`、`/lab:iterate`、`/lab:auto`、`/lab:report` 都应遵循 `.lab/context/eval-protocol.md`。\n- `.lab/context/eval-protocol.md` 不只定义主指标和主表,也应定义指标释义、实验阶梯,以及指标和对比实现的来源。\n- `/lab:auto` 只编排已批准边界内的执行阶段,不替代手动的 idea/data/framing/spec 决策。\n- `/lab:write` 前必须已有经批准的 `/lab:framing` 工件。\n"
|
|
1460
|
+
"# `/lab` for Codex\n\n`/lab` 是严格的研究工作流命令族。每次都使用同一套仓库工件和阶段边界。\n\n## 子命令\n\n- `/lab:idea`\n 调研 idea,定义问题与 failure case,归类 contribution 与 breakthrough level,对比现有方法,收束三个一眼就有意义的点,并在实现前保留 approval gate。\n\n- `/lab:data`\n 把已批准的 idea 转成数据集与 benchmark 方案,记录数据集年份、使用过该数据集的论文、下载来源、许可或访问限制,以及 classic-public、recent-strong-public、claim-specific 三类 benchmark 的纳入理由,和 canonical baselines、strong historical baselines、recent strong public methods、closest prior work 四类对比方法的纳入理由。\n\n- `/lab:auto`\n 在不改变 mission、framing 和核心 claims 的前提下,读取 eval-protocol 与 auto-mode 契约并自动编排 `run`、`iterate`、`review`、`report`,必要时扩展数据集、benchmark 和 comparison methods,并在满足升格策略时自动升级 primary package。启动前必须选定 autonomy level、声明 terminal goal,并显式批准契约。\n\n- `/lab:framing`\n 通过审计当前领域与相邻领域的术语,锁定 paper-facing 的方法名、模块名、论文题目和 contribution bullets,并在 section 起草前保留 approval gate。\n\n- `/lab:spec`\n 把已批准的 idea 转成 `.lab/changes/<change-id>/` 下的一个 lab change 目录,并在其中写出 `proposal`、`design`、`spec`、`tasks`。\n\n- `/lab:run`\n 执行最小有意义验证运行,登记 run,并生成第一版标准化评估摘要。\n\n- `/lab:iterate`\n 在冻结 mission、阈值、verification commands 与 `completion_promise` 的前提下执行有边界的实验迭代。\n\n- `/lab:review`\n 以 reviewer mode 审查文档或结果,先给短摘要,再输出 findings、fatal flaws、fix priority 和 residual risks。\n\n- `/lab:report`\n 从 runs 和 iterations 工件生成最终研究报告。\n\n- `/lab:write`\n 使用已安装 `lab` skill 下 vendored 的 paper-writing references,把稳定 report 工件转成论文 section。\n\n## 调度规则\n\n- 始终使用 `skills/lab/SKILL.md` 作为工作流合同。\n- 用户显式调用 `/lab:<stage>` 时,要立刻执行该 stage,而不是只推荐别的 `/lab` stage。\n- 先给简洁摘要,再决定是否写工件,最后回报输出路径和下一步。\n- 如果歧义会影响结论,一次只问一个问题;如果有多条可行路径,先给 2-3 个方案再收敛。\n- `/lab:spec` 前应已有经批准的数据集与 benchmark 方案。\n- `/lab:run`、`/lab:iterate`、`/lab:auto`、`/lab:report` 都应遵循 `.lab/context/eval-protocol.md`。\n- `.lab/context/eval-protocol.md` 不只定义主指标和主表,也应定义指标释义、实验阶梯,以及指标和对比实现的来源。\n- `/lab:auto` 只编排已批准边界内的执行阶段,不替代手动的 idea/data/framing/spec 决策。\n- `/lab:write` 前必须已有经批准的 `/lab:framing` 工件。\n\n## 如何输入 `/lab:auto`\n\n- 把 `Autonomy level L1/L2/L3` 视为执行权限级别,不要和论文里的 layer、phase、table 编号混用。\n- 把 `paper layer`、`phase`、`table` 视为实验目标。例如 `paper layer 3` 或 `Phase 1 reviewer fidelity` 不是 `Autonomy level L3`。\n- 一条好的 `/lab:auto` 输入应至少说清:objective、自治级别、terminal goal、scope、allowed modifications。\n- 如果 workflow language 是中文,摘要、清单条目、任务标签和进度更新都应使用中文,除非文件路径、代码标识符或字面指标名必须保持原样。\n- 示例:`/lab:auto 自治级别 L2。目标:推进 paper layer 3 的 organizer enforcement。终止条件:完成 bounded protocol、测试、最小实现和一轮小规模结果。允许修改:evaluator prompt registry、ingestion、parser。`\n"
|
|
1387
1461
|
);
|
|
1388
1462
|
|
|
1389
1463
|
ZH_CONTENT[path.join(".codex", "prompts", "lab-data.md")] = codexPrompt(
|
|
@@ -1395,14 +1469,14 @@ ZH_CONTENT[path.join(".codex", "prompts", "lab-data.md")] = codexPrompt(
|
|
|
1395
1469
|
ZH_CONTENT[path.join(".codex", "prompts", "lab-auto.md")] = codexPrompt(
|
|
1396
1470
|
"在已批准边界内编排自动实验循环",
|
|
1397
1471
|
"auto mode objective",
|
|
1398
|
-
"使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:auto`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:auto` 阶段。它必须读取 `.lab/context/eval-protocol.md`、`.lab/context/auto-mode.md`、`.lab/context/auto-status.md` 与 `.lab/context/auto-outcome.md`,先确认 autonomy level、approval status 与 terminal goal schema,再把 eval-protocol 里的指标释义、主表计划、来源约束与结构化实验阶梯当作执行依据,在不修改 mission、framing 和核心 claims 的前提下编排已批准的 `run`、`iterate`、`review`、`report`,轮询长任务完成情况;如果声明了 rung,就保持会话活着并按 rung
|
|
1472
|
+
"使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:auto`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:auto` 阶段。它必须读取 `.lab/context/eval-protocol.md`、`.lab/context/auto-mode.md`、`.lab/context/auto-status.md` 与 `.lab/context/auto-outcome.md`,先确认 autonomy level、approval status 与 terminal goal schema,再把 eval-protocol 里的指标释义、主表计划、来源约束与结构化实验阶梯当作执行依据,在不修改 mission、framing 和核心 claims 的前提下编排已批准的 `run`、`iterate`、`review`、`report`,轮询长任务完成情况;如果声明了 rung,就保持会话活着并按 rung 转移继续推进。\n如果仓库的 workflow language 是中文,摘要、清单条目、任务标签和进度更新都必须使用中文,除非某个文件路径、代码标识符或字面指标名必须保持原样。\n把 `Layer 3`、`Phase 1`、`Table 2` 这类表达视为论文范围目标;只有显式写成 `Autonomy level L3` 或 `自治级别 L3` 时,才把它当成执行权限级别。\n不要用 `sleep 30`、单次 `pgrep` 或一次性的 `metrics.json` 探针来代替真实长任务命令;当真实实验进程还活着时,只允许发进度更新并继续等待。"
|
|
1399
1473
|
);
|
|
1400
1474
|
|
|
1401
1475
|
ZH_CONTENT[path.join(".claude", "commands", "lab.md")] = claudeCommand(
|
|
1402
1476
|
"LAB",
|
|
1403
1477
|
"查看 /lab 研究工作流总览并选择合适阶段",
|
|
1404
1478
|
"workflow, research, overview",
|
|
1405
|
-
"# `/lab` for Claude\n\n`/lab` 是严格的研究工作流命令族。每次都使用同一套仓库工件和阶段边界。\n\n## 子命令\n\n- `/lab:idea`\n 调研 idea,定义问题与 failure case,归类 contribution 与 breakthrough level,对比现有方法,收束三个一眼就有意义的点,并在实现前保留 approval gate。\n\n- `/lab:data`\n 把已批准的 idea 转成数据集与 benchmark 方案,记录数据集年份、使用过该数据集的论文、下载来源、许可或访问限制,以及 classic-public、recent-strong-public、claim-specific 三类 benchmark 的纳入理由,和 canonical baselines、strong historical baselines、recent strong public methods、closest prior work 四类对比方法的纳入理由。\n\n- `/lab:auto`\n 在不改变 mission、framing 和核心 claims 的前提下,读取 eval-protocol 与 auto-mode 契约并自动编排 `run`、`iterate`、`review`、`report`,必要时扩展数据集、benchmark 和 comparison methods,并在满足升格策略时自动升级 primary package。启动前必须选定 autonomy level、声明 terminal goal,并显式批准契约。\n\n- `/lab:framing`\n 通过审计当前领域与相邻领域的术语,锁定 paper-facing 的方法名、模块名、论文题目和 contribution bullets,并在 section 起草前保留 approval gate。\n\n- `/lab:spec`\n 把已批准的 idea 转成 `.lab/changes/<change-id>/` 下的一个 lab change 目录,并在其中写出 `proposal`、`design`、`spec`、`tasks`。\n\n- `/lab:run`\n 执行最小有意义验证运行,登记 run,并生成第一版标准化评估摘要。\n\n- `/lab:iterate`\n 在冻结 mission、阈值、verification commands 与 `completion_promise` 的前提下执行有边界的实验迭代。\n\n- `/lab:review`\n 以 reviewer mode 审查文档或结果,先给短摘要,再输出 findings、fatal flaws、fix priority 和 residual risks。\n\n- `/lab:report`\n 从 runs 和 iterations 工件生成最终研究报告。\n\n- `/lab:write`\n 使用已安装 `lab` skill 下 vendored 的 paper-writing references,把稳定 report 工件转成论文 section。\n\n## 调度规则\n\n- 始终使用 `skills/lab/SKILL.md` 作为工作流合同。\n- 用户显式调用 `/lab:<stage>` 时,要立刻执行该 stage,而不是只推荐别的 `/lab` stage。\n- 先给简洁摘要,再决定是否写工件,最后回报输出路径和下一步。\n- 如果歧义会影响结论,一次只问一个问题;如果有多条可行路径,先给 2-3 个方案再收敛。\n- `/lab:spec` 前应已有经批准的数据集与 benchmark 方案。\n- `/lab:run`、`/lab:iterate`、`/lab:auto`、`/lab:report` 都应遵循 `.lab/context/eval-protocol.md`。\n- `.lab/context/eval-protocol.md` 不只定义主指标和主表,也应定义指标释义、实验阶梯,以及指标和对比实现的来源。\n- `/lab:auto` 只编排已批准边界内的执行阶段,不替代手动的 idea/data/framing/spec 决策。\n- `/lab:write` 前必须已有经批准的 `/lab:framing` 工件。\n"
|
|
1479
|
+
"# `/lab` for Claude\n\n`/lab` 是严格的研究工作流命令族。每次都使用同一套仓库工件和阶段边界。\n\n## 子命令\n\n- `/lab:idea`\n 调研 idea,定义问题与 failure case,归类 contribution 与 breakthrough level,对比现有方法,收束三个一眼就有意义的点,并在实现前保留 approval gate。\n\n- `/lab:data`\n 把已批准的 idea 转成数据集与 benchmark 方案,记录数据集年份、使用过该数据集的论文、下载来源、许可或访问限制,以及 classic-public、recent-strong-public、claim-specific 三类 benchmark 的纳入理由,和 canonical baselines、strong historical baselines、recent strong public methods、closest prior work 四类对比方法的纳入理由。\n\n- `/lab:auto`\n 在不改变 mission、framing 和核心 claims 的前提下,读取 eval-protocol 与 auto-mode 契约并自动编排 `run`、`iterate`、`review`、`report`,必要时扩展数据集、benchmark 和 comparison methods,并在满足升格策略时自动升级 primary package。启动前必须选定 autonomy level、声明 terminal goal,并显式批准契约。\n\n- `/lab:framing`\n 通过审计当前领域与相邻领域的术语,锁定 paper-facing 的方法名、模块名、论文题目和 contribution bullets,并在 section 起草前保留 approval gate。\n\n- `/lab:spec`\n 把已批准的 idea 转成 `.lab/changes/<change-id>/` 下的一个 lab change 目录,并在其中写出 `proposal`、`design`、`spec`、`tasks`。\n\n- `/lab:run`\n 执行最小有意义验证运行,登记 run,并生成第一版标准化评估摘要。\n\n- `/lab:iterate`\n 在冻结 mission、阈值、verification commands 与 `completion_promise` 的前提下执行有边界的实验迭代。\n\n- `/lab:review`\n 以 reviewer mode 审查文档或结果,先给短摘要,再输出 findings、fatal flaws、fix priority 和 residual risks。\n\n- `/lab:report`\n 从 runs 和 iterations 工件生成最终研究报告。\n\n- `/lab:write`\n 使用已安装 `lab` skill 下 vendored 的 paper-writing references,把稳定 report 工件转成论文 section。\n\n## 调度规则\n\n- 始终使用 `skills/lab/SKILL.md` 作为工作流合同。\n- 用户显式调用 `/lab:<stage>` 时,要立刻执行该 stage,而不是只推荐别的 `/lab` stage。\n- 先给简洁摘要,再决定是否写工件,最后回报输出路径和下一步。\n- 如果歧义会影响结论,一次只问一个问题;如果有多条可行路径,先给 2-3 个方案再收敛。\n- `/lab:spec` 前应已有经批准的数据集与 benchmark 方案。\n- `/lab:run`、`/lab:iterate`、`/lab:auto`、`/lab:report` 都应遵循 `.lab/context/eval-protocol.md`。\n- `.lab/context/eval-protocol.md` 不只定义主指标和主表,也应定义指标释义、实验阶梯,以及指标和对比实现的来源。\n- `/lab:auto` 只编排已批准边界内的执行阶段,不替代手动的 idea/data/framing/spec 决策。\n- `/lab:write` 前必须已有经批准的 `/lab:framing` 工件。\n\n## 如何输入 `/lab:auto`\n\n- 把 `Autonomy level L1/L2/L3` 视为执行权限级别,不要和论文里的 layer、phase、table 编号混用。\n- 把 `paper layer`、`phase`、`table` 视为实验目标。例如 `paper layer 3` 或 `Phase 1 reviewer fidelity` 不是 `Autonomy level L3`。\n- 一条好的 `/lab:auto` 输入应至少说清:objective、自治级别、terminal goal、scope、allowed modifications。\n- 如果 workflow language 是中文,摘要、清单条目、任务标签和进度更新都应使用中文,除非文件路径、代码标识符或字面指标名必须保持原样。\n- 示例:`/lab:auto 自治级别 L2。目标:推进 paper layer 3 的 organizer enforcement。终止条件:完成 bounded protocol、测试、最小实现和一轮小规模结果。允许修改:evaluator prompt registry、ingestion、parser。`\n"
|
|
1406
1480
|
);
|
|
1407
1481
|
|
|
1408
1482
|
ZH_CONTENT[path.join(".claude", "commands", "lab", "data.md")] = claudeCommand(
|
|
@@ -1416,7 +1490,7 @@ ZH_CONTENT[path.join(".claude", "commands", "lab", "auto.md")] = claudeCommand(
|
|
|
1416
1490
|
"LAB: Auto",
|
|
1417
1491
|
"在已批准边界内编排自动实验循环",
|
|
1418
1492
|
"workflow, research, auto",
|
|
1419
|
-
"使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:auto`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:auto` 阶段。它必须读取 `.lab/context/eval-protocol.md`、`.lab/context/auto-mode.md`、`.lab/context/auto-status.md` 与 `.lab/context/auto-outcome.md`,先确认 autonomy level、approval status 与 terminal goal schema,再把 eval-protocol 里的指标释义、主表计划、来源约束与结构化实验阶梯当作执行依据,在不修改 mission、framing 和核心 claims 的前提下编排已批准的 `run`、`iterate`、`review`、`report`,轮询长任务完成情况;如果声明了 rung,就保持会话活着并按 rung
|
|
1493
|
+
"使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:auto`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:auto` 阶段。它必须读取 `.lab/context/eval-protocol.md`、`.lab/context/auto-mode.md`、`.lab/context/auto-status.md` 与 `.lab/context/auto-outcome.md`,先确认 autonomy level、approval status 与 terminal goal schema,再把 eval-protocol 里的指标释义、主表计划、来源约束与结构化实验阶梯当作执行依据,在不修改 mission、framing 和核心 claims 的前提下编排已批准的 `run`、`iterate`、`review`、`report`,轮询长任务完成情况;如果声明了 rung,就保持会话活着并按 rung 转移继续推进。\n如果仓库的 workflow language 是中文,摘要、清单条目、任务标签和进度更新都必须使用中文,除非某个文件路径、代码标识符或字面指标名必须保持原样。\n把 `Layer 3`、`Phase 1`、`Table 2` 这类表达视为论文范围目标;只有显式写成 `Autonomy level L3` 或 `自治级别 L3` 时,才把它当成执行权限级别。\n不要用 `sleep 30`、单次 `pgrep` 或一次性的 `metrics.json` 探针来代替真实长任务命令;当真实实验进程还活着时,只允许发进度更新并继续等待。"
|
|
1420
1494
|
);
|
|
1421
1495
|
|
|
1422
1496
|
ZH_CONTENT[path.join(".codex", "skills", "lab", "SKILL.md")] = `---
|
|
@@ -1939,6 +2013,17 @@ ZH_CONTENT[path.join(".codex", "skills", "lab", "stages", "auto.md")] = `# \`/la
|
|
|
1939
2013
|
- 如果契约本身不完整,一次只追问一个问题。
|
|
1940
2014
|
- 如果存在多个可信的下一动作,先给 2-3 个 bounded 方案和推荐项,再启动长任务。
|
|
1941
2015
|
- 只有当下一步会离开已批准的 exploration envelope、超出选定 autonomy level,或实质改变 frozen core 时,才保留人工 approval gate。
|
|
2016
|
+
- 先做输入归一化:把 \`Autonomy level L1/L2/L3\` 视为执行权限级别,把 \`Layer 3\`、\`Phase 1\`、\`Table 2\` 视为论文范围目标。
|
|
2017
|
+
- 如果用户同时提了论文层、实验 phase 和自治级别,先用一句话重述:objective、自治级别、terminal goal、scope、allowed modifications。
|
|
2018
|
+
- 如果 workflow language 是中文,摘要、清单条目、任务标签和进度更新都应使用中文,除非文件路径、代码标识符或字面指标名必须保持原样。
|
|
2019
|
+
- 当循环即将进入 \`write\`,且 \`paper_template_root\` 为空时:
|
|
2020
|
+
- 如果 \`paper_template_decision\` 是 \`unconfirmed\`,必须先追问一次:继续使用默认 scaffold,还是先接入模板目录
|
|
2021
|
+
- 如果用户选择默认 scaffold,就持久化 \`paper_template_decision: default-scaffold\`
|
|
2022
|
+
- 如果用户选择模板,就停止当前循环并转到 \`superlab paper attach-template --path <dir>\`
|
|
2023
|
+
- 如果当前是最终导出或最终定稿、\`paper_template_decision\` 是 \`default-scaffold\`,且 \`paper_template_final_reminder_acknowledged\` 是 \`false\`,就在最终定稿前再提醒一次
|
|
2024
|
+
- 如果用户在最终提醒里仍确认继续使用默认 scaffold,就持久化 \`paper_template_final_reminder_acknowledged: true\`
|
|
2025
|
+
- 不要把 \`sleep 30\`、单次 \`pgrep\` 或一次性的 \`metrics.json\` 探针当成 rung 主命令;这些只能算进度检查。
|
|
2026
|
+
- 当真实实验进程还活着时,只允许发进度更新并继续等待,不能把这一 rung 当作已经完成。
|
|
1942
2027
|
`;
|
|
1943
2028
|
|
|
1944
2029
|
ZH_CONTENT[path.join(".claude", "skills", "lab", "stages", "auto.md")] =
|
package/lib/install.cjs
CHANGED
|
@@ -538,6 +538,7 @@ function localizeInstalledAssets(targetDir, lang, { newlyCreatedProjectOwnedPath
|
|
|
538
538
|
path.join(".lab", ".managed", "templates", "iteration-report.md"),
|
|
539
539
|
path.join(".lab", ".managed", "templates", "review-checklist.md"),
|
|
540
540
|
path.join(".lab", ".managed", "templates", "final-report.md"),
|
|
541
|
+
path.join(".lab", ".managed", "templates", "main-tables.md"),
|
|
541
542
|
path.join(".lab", ".managed", "templates", "paper-plan.md"),
|
|
542
543
|
path.join(".lab", ".managed", "templates", "paper-section.md"),
|
|
543
544
|
path.join(".lab", ".managed", "templates", "write-iteration.md"),
|
|
@@ -9,3 +9,6 @@ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
|
|
|
9
9
|
|
|
10
10
|
Execute the requested `/lab:auto` stage against the user's argument now. Do not only recommend another lab stage. If a blocking prerequisite is missing, say exactly what is missing and ask at most one clarifying question.
|
|
11
11
|
This command runs the `/lab:auto` stage. It must read `.lab/context/eval-protocol.md`, `.lab/context/auto-mode.md`, `.lab/context/auto-status.md`, and `.lab/context/auto-outcome.md`, enforce the declared terminal goal schema, orchestrate approved run, iterate, review, and report stages inside that contract, poll long-running work until completion or stop conditions, and write progress plus the final outcome back into `.lab/context/auto-status.md` and `.lab/context/auto-outcome.md`.
|
|
12
|
+
When the repository workflow language is Chinese, summaries, checklist items, task labels, and progress updates should be written in Chinese unless a literal identifier must stay unchanged.
|
|
13
|
+
Treat `Layer 3`, `Phase 1`, or `Table 2` as paper-scope targets. Treat `Autonomy level L3` as the execution permission level.
|
|
14
|
+
Do not replace the real long-running experiment command with a short watcher such as `sleep 30`, `pgrep`, or a one-shot `metrics.json` probe. While the real experiment process is still alive, emit only a progress update and keep waiting.
|
|
@@ -8,4 +8,4 @@ tags: [workflow, research, writing]
|
|
|
8
8
|
Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
|
|
9
9
|
|
|
10
10
|
Execute the requested `/lab:write` stage against the user's argument now. Do not only recommend another lab stage. If a blocking prerequisite is missing, say exactly what is missing and ask at most one clarifying question.
|
|
11
|
-
This command runs the `/lab:write` stage. It requires an approved framing artifact from `/lab:framing`, must read the matching section reference from `.claude/skills/lab/references/paper-writing/`, plus `paper-review.md` and `does-my-writing-flow-source.md`, build a mini-outline, and
|
|
11
|
+
This command runs the `/lab:write` stage. It requires an approved framing artifact from `/lab:framing`, must read the matching section reference from `.claude/skills/lab/references/paper-writing/`, and for `abstract`, `introduction`, or `method` it must also read `.claude/skills/lab/references/paper-writing/examples/index.md` plus the matching examples index and 1-2 concrete example files. Then it should run `paper-review.md` and `does-my-writing-flow-source.md`, build a mini-outline, and revise only one section.
|
|
@@ -40,6 +40,7 @@ tags: [workflow, research, overview]
|
|
|
40
40
|
|
|
41
41
|
- `/lab:write`
|
|
42
42
|
Turn stable report artifacts into paper sections through small, evidence-bound writing rounds using the vendored paper-writing references under the installed `lab` skill.
|
|
43
|
+
On the first manuscript-writing round, if `paper_template_root` is empty, explicitly ask once whether to stay on the managed default LaTeX scaffold or attach a template directory first; persist the user's default-scaffold choice before continuing.
|
|
43
44
|
|
|
44
45
|
## Dispatch Rules
|
|
45
46
|
|
|
@@ -54,3 +55,17 @@ tags: [workflow, research, overview]
|
|
|
54
55
|
- `/lab:run`, `/lab:iterate`, `/lab:auto`, and `/lab:report` should all follow `.lab/context/eval-protocol.md`, including its recorded sources for metrics and comparison implementations.
|
|
55
56
|
- `/lab:write` requires an approved framing artifact from `/lab:framing`.
|
|
56
57
|
- `/lab:write` requires stable report artifacts, a mini-outline, the active section guide, `paper-review.md`, and `does-my-writing-flow-source.md`, and should only change one section per round.
|
|
58
|
+
|
|
59
|
+
## How to Ask for `/lab:auto`
|
|
60
|
+
|
|
61
|
+
- Treat `Autonomy level L1/L2/L3` as the execution privilege level, not as a paper layer, phase, or table number.
|
|
62
|
+
- Treat `paper layer`, `phase`, and `table` as experiment targets. For example, `paper layer 3` or `Phase 1 reviewer fidelity` should not be interpreted as `Autonomy level L3`.
|
|
63
|
+
- A good `/lab:auto` request should name:
|
|
64
|
+
- the objective
|
|
65
|
+
- the autonomy level
|
|
66
|
+
- the terminal goal
|
|
67
|
+
- the scope or phase to advance
|
|
68
|
+
- the allowed modifications
|
|
69
|
+
- If the repository workflow language is Chinese, summaries, checklist items, task labels, and progress updates should be written in Chinese unless a code identifier or file path must stay literal.
|
|
70
|
+
- Good example:
|
|
71
|
+
- `/lab:auto Autonomy level L2. Objective: advance paper layer 3 organizer enforcement. Terminal goal: task-completion. Scope: bounded protocol, tests, minimal implementation, and one small run. Allowed modifications: evaluator prompt registry, ingestion, and parser only.`
|
|
@@ -7,3 +7,6 @@ Use the installed `lab` skill at `.codex/skills/lab/SKILL.md`.
|
|
|
7
7
|
|
|
8
8
|
Execute the requested `/lab:auto` stage against the user's argument now. Do not only recommend another lab stage. If a blocking prerequisite is missing, say exactly what is missing and ask at most one clarifying question.
|
|
9
9
|
This command runs the `/lab:auto` stage. It must read `.lab/context/eval-protocol.md`, `.lab/context/auto-mode.md`, `.lab/context/auto-status.md`, and `.lab/context/auto-outcome.md`, enforce the declared terminal goal schema, orchestrate approved run, iterate, review, and report stages inside that contract, poll long-running work until completion or stop conditions, and write progress plus the final outcome back into `.lab/context/auto-status.md` and `.lab/context/auto-outcome.md`.
|
|
10
|
+
When the repository workflow language is Chinese, summaries, checklist items, task labels, and progress updates should be written in Chinese unless a literal identifier must stay unchanged.
|
|
11
|
+
Treat `Layer 3`, `Phase 1`, or `Table 2` as paper-scope targets. Treat `Autonomy level L3` as the execution permission level.
|
|
12
|
+
Do not replace the real long-running experiment command with a short watcher such as `sleep 30`, `pgrep`, or a one-shot `metrics.json` probe. While the real experiment process is still alive, emit only a progress update and keep waiting.
|
|
@@ -6,4 +6,4 @@ argument-hint: section or writing target
|
|
|
6
6
|
Use the installed `lab` skill at `.codex/skills/lab/SKILL.md`.
|
|
7
7
|
|
|
8
8
|
Execute the requested `/lab:write` stage against the user's argument now. Do not only recommend another lab stage. If a blocking prerequisite is missing, say exactly what is missing and ask at most one clarifying question.
|
|
9
|
-
This command runs the `/lab:write` stage. It requires an approved framing artifact from `/lab:framing`, must read the matching section reference from `.codex/skills/lab/references/paper-writing/`, plus `paper-review.md` and `does-my-writing-flow-source.md`, build a mini-outline, and
|
|
9
|
+
This command runs the `/lab:write` stage. It requires an approved framing artifact from `/lab:framing`, must read the matching section reference from `.codex/skills/lab/references/paper-writing/`, and for `abstract`, `introduction`, or `method` it must also read `.codex/skills/lab/references/paper-writing/examples/index.md` plus the matching examples index and 1-2 concrete example files. Then it should run `paper-review.md` and `does-my-writing-flow-source.md`, build a mini-outline, and revise only one section.
|
|
@@ -38,6 +38,7 @@ argument-hint: workflow question or stage choice
|
|
|
38
38
|
|
|
39
39
|
- `/lab:write`
|
|
40
40
|
Turn stable report artifacts into paper sections through small, evidence-bound writing rounds using the vendored paper-writing references under the installed `lab` skill.
|
|
41
|
+
On the first manuscript-writing round, if `paper_template_root` is empty, explicitly ask once whether to stay on the managed default LaTeX scaffold or attach a template directory first; persist the user's default-scaffold choice before continuing.
|
|
41
42
|
|
|
42
43
|
## Dispatch Rules
|
|
43
44
|
|
|
@@ -52,3 +53,17 @@ argument-hint: workflow question or stage choice
|
|
|
52
53
|
- `/lab:run`, `/lab:iterate`, `/lab:auto`, and `/lab:report` should all follow `.lab/context/eval-protocol.md`, including its recorded sources for metrics and comparison implementations.
|
|
53
54
|
- `/lab:write` requires an approved framing artifact from `/lab:framing`.
|
|
54
55
|
- `/lab:write` requires stable report artifacts, a mini-outline, the active section guide, `paper-review.md`, and `does-my-writing-flow-source.md`, and should only change one section per round.
|
|
56
|
+
|
|
57
|
+
## How to Ask for `/lab:auto`
|
|
58
|
+
|
|
59
|
+
- Treat `Autonomy level L1/L2/L3` as the execution privilege level, not as a paper layer, phase, or table number.
|
|
60
|
+
- Treat `paper layer`, `phase`, and `table` as experiment targets. For example, `paper layer 3` or `Phase 1 reviewer fidelity` should not be interpreted as `Autonomy level L3`.
|
|
61
|
+
- A good `/lab:auto` request should name:
|
|
62
|
+
- the objective
|
|
63
|
+
- the autonomy level
|
|
64
|
+
- the terminal goal
|
|
65
|
+
- the scope or phase to advance
|
|
66
|
+
- the allowed modifications
|
|
67
|
+
- If the repository workflow language is Chinese, summaries, checklist items, task labels, and progress updates should be written in Chinese unless a code identifier or file path must stay literal.
|
|
68
|
+
- Good example:
|
|
69
|
+
- `/lab:auto Autonomy level L2. Objective: advance paper layer 3 organizer enforcement. Terminal goal: task-completion. Scope: bounded protocol, tests, minimal implementation, and one small run. Allowed modifications: evaluator prompt registry, ingestion, and parser only.`
|
|
@@ -4,6 +4,12 @@
|
|
|
4
4
|
|
|
5
5
|
Summarize the method and overall outcome.
|
|
6
6
|
|
|
7
|
+
## Selected Metrics
|
|
8
|
+
|
|
9
|
+
- Primary metrics:
|
|
10
|
+
- Secondary metrics:
|
|
11
|
+
- Required terminal evidence:
|
|
12
|
+
|
|
7
13
|
## Experiment Setup
|
|
8
14
|
|
|
9
15
|
- Datasets:
|
|
@@ -11,6 +17,12 @@ Summarize the method and overall outcome.
|
|
|
11
17
|
- Baselines:
|
|
12
18
|
- Metrics:
|
|
13
19
|
|
|
20
|
+
## Main Tables
|
|
21
|
+
|
|
22
|
+
- Managed main tables artifact: `<deliverables_root>/main-tables.md`
|
|
23
|
+
- Final performance summary:
|
|
24
|
+
- Table coverage:
|
|
25
|
+
|
|
14
26
|
## Main Results
|
|
15
27
|
|
|
16
28
|
Summarize validated iteration outcomes.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Main Tables
|
|
2
|
+
|
|
3
|
+
## Selected Metrics
|
|
4
|
+
|
|
5
|
+
- Primary metrics:
|
|
6
|
+
- Secondary metrics:
|
|
7
|
+
- Required terminal evidence:
|
|
8
|
+
|
|
9
|
+
## Final Performance Summary
|
|
10
|
+
|
|
11
|
+
- Main result summary:
|
|
12
|
+
- Most important numbers:
|
|
13
|
+
- Reporting caveat:
|
|
14
|
+
|
|
15
|
+
## Table 1
|
|
16
|
+
|
|
17
|
+
- Purpose:
|
|
18
|
+
- Metrics used:
|
|
19
|
+
- Strongest supported claim:
|
|
20
|
+
|
|
21
|
+
## Table 2
|
|
22
|
+
|
|
23
|
+
- Purpose:
|
|
24
|
+
- Metrics used:
|
|
25
|
+
- Strongest supported claim:
|
|
26
|
+
|
|
27
|
+
## Table 3
|
|
28
|
+
|
|
29
|
+
- Purpose:
|
|
30
|
+
- Metrics used:
|
|
31
|
+
- Strongest supported claim:
|
|
32
|
+
|
|
33
|
+
## Table 4
|
|
34
|
+
|
|
35
|
+
- Purpose:
|
|
36
|
+
- Metrics used:
|
|
37
|
+
- Strongest supported claim:
|
|
@@ -6,14 +6,18 @@ If `eval-protocol.md` declares structured rung entries, auto mode follows those
|
|
|
6
6
|
|
|
7
7
|
## Objective
|
|
8
8
|
|
|
9
|
-
- Objective:
|
|
9
|
+
- Objective:
|
|
10
10
|
- Autonomy level: L2
|
|
11
|
+
- Autonomy level controls execution privilege, not paper layer or table number.
|
|
12
|
+
- If you mean a paper layer, phase, or table, spell it explicitly as `paper layer`, `phase`, or `table`.
|
|
11
13
|
- Approval status: draft
|
|
12
14
|
- Allowed stages: run, iterate, review, report
|
|
13
15
|
- Success criteria:
|
|
14
16
|
- Terminal goal type:
|
|
15
17
|
- Terminal goal target:
|
|
16
18
|
- Required terminal artifact:
|
|
19
|
+
- If the workflow language is Chinese, keep summaries, checklist items, task labels, and progress updates in Chinese.
|
|
20
|
+
- Example objective: advance paper layer 3 organizer enforcement through one bounded protocol, tests, minimal implementation, and one small run.
|
|
17
21
|
|
|
18
22
|
## Loop Budget
|
|
19
23
|
|
|
@@ -24,6 +28,9 @@ If `eval-protocol.md` declares structured rung entries, auto mode follows those
|
|
|
24
28
|
|
|
25
29
|
## Stage Commands
|
|
26
30
|
|
|
31
|
+
- Rung `Command` should be the real long-running command that owns the experiment result.
|
|
32
|
+
- A short watcher is only a progress probe. Do not use a short watcher as the stage or rung command when the real experiment is still running.
|
|
33
|
+
- While the real experiment process is still alive, only record a progress update and keep waiting.
|
|
27
34
|
- Run command:
|
|
28
35
|
- Iterate command:
|
|
29
36
|
- Review command:
|
|
@@ -151,7 +151,7 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
|
|
|
151
151
|
- Read `.lab/context/eval-protocol.md` before choosing tables, thresholds, or final result framing.
|
|
152
152
|
- Keep metric definitions, comparison semantics, and implementation references anchored to the approved evaluation protocol instead of re-deriving them during reporting.
|
|
153
153
|
- Aggregate them with `.lab/.managed/scripts/summarize_iterations.py`.
|
|
154
|
-
- Write the final document with `.lab/.managed/templates/final-report.md`.
|
|
154
|
+
- Write the final document with `.lab/.managed/templates/final-report.md` and the managed table summary with `.lab/.managed/templates/main-tables.md`.
|
|
155
155
|
- Keep failed attempts and limitations visible.
|
|
156
156
|
- Update `.lab/context/state.md` and `.lab/context/evidence-index.md` with report-level handoff notes.
|
|
157
157
|
|
|
@@ -160,13 +160,16 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
|
|
|
160
160
|
- Start only after `report` artifacts are stable enough to support paper claims.
|
|
161
161
|
- Start only after an approved framing artifact exists at `.lab/writing/framing.md`.
|
|
162
162
|
- Read `.lab/config/workflow.json` before drafting and enforce its `paper_language` and `paper_format`.
|
|
163
|
+
- If `paper_template_root` is empty and `paper_template_decision` is `unconfirmed`, ask once whether to continue with the managed default scaffold or attach a template directory first; persist the answer before drafting `.tex`.
|
|
164
|
+
- If the project is still on the default scaffold at a final export or final-draft boundary and `paper_template_final_reminder_acknowledged` is `false`, ask one final reminder question before finalizing.
|
|
163
165
|
- Read `.lab/context/mission.md`, `.lab/context/decisions.md`, `.lab/context/evidence-index.md`, and `.lab/context/data-decisions.md` before drafting.
|
|
164
166
|
- Write one paper section or one explicit subproblem per round.
|
|
165
167
|
- Bind each claim to evidence from `report`, iteration reports, or normalized summaries.
|
|
166
168
|
- Write planning artifacts with `.lab/.managed/templates/paper-plan.md`, `.lab/.managed/templates/paper-section.md`, and `.lab/.managed/templates/write-iteration.md`.
|
|
167
169
|
- Write final manuscript artifacts with `.lab/.managed/templates/paper.tex` and `.lab/.managed/templates/paper-section.tex`.
|
|
168
170
|
- Use the vendored paper-writing references under `skills/lab/references/paper-writing/`.
|
|
169
|
-
-
|
|
171
|
+
- For `abstract`, `introduction`, and `method`, also use the vendored example-bank files under `skills/lab/references/paper-writing/examples/`.
|
|
172
|
+
- Load only the current section guide, the matching examples index when one exists, 1-2 matching concrete example files, plus `paper-review.md` and `does-my-writing-flow-source.md`.
|
|
170
173
|
- Build a compact mini-outline before prose.
|
|
171
174
|
- For each subsection, explicitly cover motivation, design, and technical advantage when applicable.
|
|
172
175
|
- Keep terminology stable across rounds and sections.
|
|
@@ -203,6 +206,7 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
|
|
|
203
206
|
- Write stage guide: `.codex/skills/lab/stages/write.md` or `.claude/skills/lab/stages/write.md`
|
|
204
207
|
- Paper-writing integration: `.codex/skills/lab/references/paper-writing-integration.md` or `.claude/skills/lab/references/paper-writing-integration.md`
|
|
205
208
|
- Vendored paper-writing references: `.codex/skills/lab/references/paper-writing/{abstract,introduction,related-work,method,experiments,conclusion,paper-review,does-my-writing-flow-source}.md` or `.claude/skills/lab/references/paper-writing/{abstract,introduction,related-work,method,experiments,conclusion,paper-review,does-my-writing-flow-source}.md`
|
|
209
|
+
- Vendored paper-writing example bank: `.codex/skills/lab/references/paper-writing/examples/{index,abstract-examples,introduction-examples,method-examples}.md` or `.claude/skills/lab/references/paper-writing/examples/{index,abstract-examples,introduction-examples,method-examples}.md`, plus the matching section subdirectories
|
|
206
210
|
- Command adapters: the installed `/lab:*` command assets
|
|
207
211
|
- Shared workflow config: `.lab/config/workflow.json`
|
|
208
212
|
- Shared project context: `.lab/context/{mission,state,decisions,evidence-index,open-questions,data-decisions,eval-protocol,auto-mode,auto-status}.md`
|
|
@@ -77,7 +77,13 @@ Version 3: When there are multiple technical contributions, describe each contri
|
|
|
77
77
|
|
|
78
78
|
## Usage Note
|
|
79
79
|
|
|
80
|
-
This vendored guide
|
|
80
|
+
This vendored guide should be paired with the local abstract example bank:
|
|
81
|
+
|
|
82
|
+
- `references/examples/index.md`
|
|
83
|
+
- `references/examples/abstract-examples.md`
|
|
84
|
+
- one matching file under `references/examples/abstract/`
|
|
85
|
+
|
|
86
|
+
Use the structures and checklists here first, then use the example files to choose a concrete abstract shape and sentence logic. Reuse structure, not wording.
|
|
81
87
|
|
|
82
88
|
## Abstract Quality Checklist
|
|
83
89
|
|
package/package-assets/shared/skills/lab/references/paper-writing/examples/abstract/template-a.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Abstract Template A Examples (Challenge -> Contribution)
|
|
2
|
+
|
|
3
|
+
Source scope: your original notes, "Version 1".
|
|
4
|
+
|
|
5
|
+
```latex
|
|
6
|
+
\section{Abstract}
|
|
7
|
+
% Task
|
|
8
|
+
% Technical challenge for previous methods (discuss around the technical challenge that we solved)
|
|
9
|
+
% Introduce the technical contribution for solving the challenge in one to two sentences (usually mention the technical term/name only, without describing every detailed step. The term should be easy to understand and should not create a jump in reading. This ability is very important for writing a good abstract.)
|
|
10
|
+
% Introduce the benefits of the technical contribution
|
|
11
|
+
% Experiment
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Reusable skeleton
|
|
15
|
+
|
|
16
|
+
1. `[Task sentence]`
|
|
17
|
+
2. `However, previous methods suffer from [technical challenge].`
|
|
18
|
+
3. `To solve this challenge, we propose [technical contribution name].`
|
|
19
|
+
4. `[One more contribution sentence if needed].`
|
|
20
|
+
5. `This contribution brings [technical benefit].`
|
|
21
|
+
6. `Experiments show [main result].`
|