superlab 0.1.15 → 0.1.16

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 CHANGED
@@ -45,7 +45,7 @@ This writes:
45
45
 
46
46
  - `.codex/prompts/lab-*.md`
47
47
  - `.codex/skills/lab/`
48
- - `.claude/commands/lab/*.md`
48
+ - `.claude/commands/lab*.md`
49
49
  - `.claude/skills/lab/`
50
50
  - `AGENTS.md`
51
51
  - `CLAUDE.md`
@@ -250,6 +250,11 @@ Stages should follow that file rather than guess language locally.
250
250
 
251
251
  ## Command Set
252
252
 
253
+ Codex and Claude use different slash-entry syntax:
254
+
255
+ - Codex: `/lab:idea`, `/lab:auto`, `/lab:write`
256
+ - Claude Code: `/lab idea ...` or `/lab-idea`; `/lab auto ...` or `/lab-auto`; `/lab write ...` or `/lab-write`
257
+
253
258
  - `/lab:idea` researches an idea, critiques it, and writes the initial research framing.
254
259
  - `/lab:data` turns the approved idea into a dataset and benchmark package with years, paper usage, source audit, download plans, explicit benchmark-role rationale for classic-public, recent-strong-public, and claim-specific benchmarks, and explicit comparison rationale for canonical baselines, strong historical baselines, recent strong public methods, and closest prior work.
255
260
  - `/lab:framing` locks paper-facing method names, module names, titles, and contribution wording before drafting.
@@ -281,15 +286,15 @@ See the source command docs in [commands/codex/lab.md](/Users/zhouhao119/coding/
281
286
 
282
287
  ## Typical Flow
283
288
 
284
- 1. Run `/lab:idea` to produce the initial idea artifact.
285
- 2. Run `/lab:data` to lock the approved dataset package, source hierarchy, benchmark-class coverage, and the rationale for each comparison-method class.
286
- 3. Run `/lab:spec` to convert the idea into one self-contained lab change directory.
287
- 4. Run `/lab:run` to verify the experiment path and register the first run.
288
- 5. Run `/lab:iterate` to improve against fixed targets using bounded iterations.
289
- 6. Run `/lab:review` whenever you need reviewer-grade critique.
290
- 7. Run `/lab:report` to synthesize the final report.
291
- 8. Run `/lab:framing` to lock naming, title, and contribution wording.
292
- 9. Run `/lab:write` to draft paper sections from stable report evidence.
289
+ 1. In Codex, run `/lab:idea`; in Claude Code, run `/lab idea ...` or `/lab-idea`.
290
+ 2. In Codex, run `/lab:data`; in Claude Code, run `/lab data ...` or `/lab-data`.
291
+ 3. In Codex, run `/lab:spec`; in Claude Code, run `/lab spec ...` or `/lab-spec`.
292
+ 4. In Codex, run `/lab:run`; in Claude Code, run `/lab run ...` or `/lab-run`.
293
+ 5. In Codex, run `/lab:iterate`; in Claude Code, run `/lab iterate ...` or `/lab-iterate`.
294
+ 6. In Codex, run `/lab:review`; in Claude Code, run `/lab review ...` or `/lab-review`.
295
+ 7. In Codex, run `/lab:report`; in Claude Code, run `/lab report ...` or `/lab-report`.
296
+ 8. In Codex, run `/lab:framing`; in Claude Code, run `/lab framing ...` or `/lab-framing`.
297
+ 9. In Codex, run `/lab:write`; in Claude Code, run `/lab write ...` or `/lab-write`.
293
298
 
294
299
  `/lab:write` writes final manuscript output under the configured `deliverables_root` (default: `docs/research`):
295
300
 
package/README.zh-CN.md CHANGED
@@ -43,7 +43,7 @@ npx github:zhouhaoUCAS/superlab init
43
43
 
44
44
  - `.codex/prompts/lab-*.md`
45
45
  - `.codex/skills/lab/`
46
- - `.claude/commands/lab/*.md`
46
+ - `.claude/commands/lab*.md`
47
47
  - `.claude/skills/lab/`
48
48
  - `AGENTS.md`
49
49
  - `CLAUDE.md`
@@ -248,6 +248,11 @@ superlab init --lang en
248
248
 
249
249
  ## 命令集合
250
250
 
251
+ Codex 和 Claude 的命令入口不一样:
252
+
253
+ - Codex:`/lab:idea`、`/lab:auto`、`/lab:write`
254
+ - Claude Code:`/lab idea ...` 或 `/lab-idea`;`/lab auto ...` 或 `/lab-auto`;`/lab write ...` 或 `/lab-write`
255
+
251
256
  - `/lab:idea` 调研 idea、文献、数据集、指标和 baseline,并输出初始方案。
252
257
  - `/lab:data` 把已批准的 idea 收敛成数据集与 benchmark 方案,要求记录年份、使用论文、来源审计、下载计划,并明确 classic-public、recent-strong-public、claim-specific 三类 benchmark 的纳入理由,以及 canonical baselines、strong historical baselines、recent strong public methods、closest prior work 四类对比方法的纳入理由。
253
258
  - `/lab:framing` 在正式写作前收紧方法名、模块名、论文题目和 contribution wording。
@@ -266,15 +271,15 @@ superlab init --lang en
266
271
  ## 使用流程
267
272
 
268
273
  1. 在目标项目执行 `superlab init`。
269
- 2. 在 Codex Claude 中直接调用 `/lab:idea`。
270
- 3. 经确认后执行 `/lab:data`,锁定数据集、下载来源、benchmark 类别覆盖,以及各类对比方法的纳入理由。
271
- 4. 再执行 `/lab:spec`。
272
- 5. 用 `/lab:run` 打通最小实验链路。
273
- 6. 用 `/lab:iterate` 进行多轮迭代。
274
- 7. 在关键节点运行 `/lab:review`。
275
- 8. 最后用 `/lab:report` 产出总报告。
276
- 9. 用 `/lab:framing` 收紧题目、命名和 contribution wording。
277
- 10. 用 `/lab:write` 把稳定结果写成论文各 section。
274
+ 2. 在 Codex 中调用 `/lab:idea`;在 Claude Code 中调用 `/lab idea ...` 或 `/lab-idea`。
275
+ 3. 经确认后,在 Codex 中执行 `/lab:data`,或在 Claude Code 中执行 `/lab data ...` / `/lab-data`,锁定数据集、下载来源、benchmark 类别覆盖,以及各类对比方法的纳入理由。
276
+ 4. 再执行 `/lab:spec`,或在 Claude Code 中执行 `/lab spec ...` / `/lab-spec`。
277
+ 5. 用 `/lab:run`,或在 Claude Code 中用 `/lab run ...` / `/lab-run` 打通最小实验链路。
278
+ 6. 用 `/lab:iterate`,或在 Claude Code 中用 `/lab iterate ...` / `/lab-iterate` 进行多轮迭代。
279
+ 7. 在关键节点运行 `/lab:review`,或在 Claude Code 中运行 `/lab review ...` / `/lab-review`。
280
+ 8. 最后用 `/lab:report`,或在 Claude Code 中用 `/lab report ...` / `/lab-report` 产出总报告。
281
+ 9. 用 `/lab:framing`,或在 Claude Code 中用 `/lab framing ...` / `/lab-framing` 收紧题目、命名和 contribution wording。
282
+ 10. 用 `/lab:write`,或在 Claude Code 中用 `/lab write ...` / `/lab-write` 把稳定结果写成论文各 section。
278
283
 
279
284
  `/lab:write` 会把最终可交付物写到 `deliverables_root` 指定的目录,默认是 `docs/research`:
280
285
 
package/lib/i18n.cjs CHANGED
@@ -10,12 +10,11 @@ ${body}
10
10
  `;
11
11
  }
12
12
 
13
- function claudeCommand(name, description, tags, body) {
13
+ function claudeCommand(name, description, argumentHint, body) {
14
14
  return `---
15
15
  name: "${name}"
16
16
  description: ${description}
17
- category: 工作流
18
- tags: [${tags}]
17
+ argument-hint: ${argumentHint}
19
18
  ---
20
19
 
21
20
  ${body}
@@ -63,53 +62,53 @@ const ZH_CONTENT = {
63
62
  "section or writing target",
64
63
  "使用已安装的 `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
64
  ),
66
- [path.join(".claude", "commands", "lab", "idea.md")]: claudeCommand(
67
- "LAB: Idea",
65
+ [path.join(".claude", "commands", "lab-idea.md")]: claudeCommand(
66
+ "lab-idea",
68
67
  "在进入规格前调研并打磨论文或实验想法",
69
- "workflow, research, idea",
70
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:idea`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:idea` 阶段。它必须先用清晰简洁的话定义问题与失败场景,说明现有方法哪里不够、我们的想法为何更好,再做 idea classification、contribution category、breakthrough level 的归类,并收束出至少三个一眼就有意义的点,最后保留进入 `/lab:spec` 前的 approval gate。"
68
+ "idea research problem",
69
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `idea` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `idea` 阶段。它必须先用清晰简洁的话定义问题与失败场景,说明现有方法哪里不够、我们的想法为何更好,再做 idea classification、contribution category、breakthrough level 的归类,并收束出至少三个一眼就有意义的点,最后保留进入 `spec` 前的 approval gate。"
71
70
  ),
72
- [path.join(".claude", "commands", "lab", "framing.md")]: claudeCommand(
73
- "LAB: Framing",
71
+ [path.join(".claude", "commands", "lab-framing.md")]: claudeCommand(
72
+ "lab-framing",
74
73
  "在写作前收紧方法名、模块名、论文题目和 contribution framing",
75
- "workflow, research, framing",
76
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:framing`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:framing` 阶段。它必须围绕 paper-facing framing,收紧方法名、模块名、题目和 contribution bullets,审查当前领域与相邻领域的术语是否 canonical、对象是否明确,并在进入 `/lab:write` 前保留 approval gate。"
74
+ "naming、title contribution framing target",
75
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `framing` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `framing` 阶段。它必须围绕 paper-facing framing,收紧方法名、模块名、题目和 contribution bullets,审查当前领域与相邻领域的术语是否 canonical、对象是否明确,并在进入 `write` 前保留 approval gate。"
77
76
  ),
78
- [path.join(".claude", "commands", "lab", "spec.md")]: claudeCommand(
79
- "LAB: Spec",
77
+ [path.join(".claude", "commands", "lab-spec.md")]: claudeCommand(
78
+ "lab-spec",
80
79
  "把已批准的 idea 转成统一的 lab change 目录",
81
- "workflow, research, spec",
82
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:spec`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:spec` 阶段。它必须围绕一个 change id,在 `.lab/changes/<change-id>/` 下生成 proposal/design/spec/tasks,并让这个 change 成为后续 run 和 iterate 的统一入口。"
80
+ "approved idea context",
81
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `spec` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `spec` 阶段。它必须围绕一个 change id,在 `.lab/changes/<change-id>/` 下生成 proposal/design/spec/tasks,并让这个 change 成为后续 run 和 iterate 的统一入口。"
83
82
  ),
84
- [path.join(".claude", "commands", "lab", "run.md")]: claudeCommand(
85
- "LAB: Run",
83
+ [path.join(".claude", "commands", "lab-run.md")]: claudeCommand(
84
+ "lab-run",
86
85
  "执行最小可行实验并标准化输出",
87
- "workflow, research, run",
88
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:run`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:run` 阶段。它必须从最小实验开始,登记 run,生成标准化评估摘要,并验证结果格式。"
86
+ "run context",
87
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `run` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `run` 阶段。它必须从最小实验开始,登记 run,生成标准化评估摘要,并验证结果格式。"
89
88
  ),
90
- [path.join(".claude", "commands", "lab", "iterate.md")]: claudeCommand(
91
- "LAB: Iterate",
89
+ [path.join(".claude", "commands", "lab-iterate.md")]: claudeCommand(
90
+ "lab-iterate",
92
91
  "在固定成功标准下执行有边界的实验迭代",
93
- "workflow, research, iterate",
94
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:iterate`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:iterate` 阶段。它必须冻结 mission、声明 completion_promise、只做小步改动、每轮生成评估和 iteration report;若风险连续两轮升高则切 diagnostic mode,并在失败结束时记录 blockers 与 next actions。"
92
+ "iteration mission",
93
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `iterate` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `iterate` 阶段。它必须冻结 mission、声明 completion_promise、只做小步改动、每轮生成评估和 iteration report;若风险连续两轮升高则切 diagnostic mode,并在失败结束时记录 blockers 与 next actions。"
95
94
  ),
96
- [path.join(".claude", "commands", "lab", "review.md")]: claudeCommand(
97
- "LAB: Review",
95
+ [path.join(".claude", "commands", "lab-review.md")]: claudeCommand(
96
+ "lab-review",
98
97
  "以审稿人模式审查研究方案或结果",
99
- "workflow, research, review",
100
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:review`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:review` 阶段。它必须先给简洁摘要,再按 findings -> fatal flaws -> fix priority -> residual risks 的顺序输出,优先检查方法学漏洞、对照公平性、数据泄漏、统计不足和 unsupported claims。"
98
+ "artifact or result to review",
99
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `review` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `review` 阶段。它必须先给简洁摘要,再按 findings -> fatal flaws -> fix priority -> residual risks 的顺序输出,优先检查方法学漏洞、对照公平性、数据泄漏、统计不足和 unsupported claims。"
101
100
  ),
102
- [path.join(".claude", "commands", "lab", "report.md")]: claudeCommand(
103
- "LAB: Report",
101
+ [path.join(".claude", "commands", "lab-report.md")]: claudeCommand(
102
+ "lab-report",
104
103
  "基于验证后的迭代工件生成最终报告",
105
- "workflow, research, report",
106
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:report`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:report` 阶段。它必须汇总标准化摘要、保留失败尝试和局限,并生成最终实验报告。"
104
+ "report context",
105
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `report` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `report` 阶段。它必须汇总标准化摘要、保留失败尝试和局限,并生成最终实验报告。"
107
106
  ),
108
- [path.join(".claude", "commands", "lab", "write.md")]: claudeCommand(
109
- "LAB: Write",
107
+ [path.join(".claude", "commands", "lab-write.md")]: claudeCommand(
108
+ "lab-write",
110
109
  "把验证过的研究工件转成论文 section,并按小步方式修订",
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 对应的参考文件;如果当前是 `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,还是先接入模板目录。"
110
+ "section or writing target",
111
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `write` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `write` 阶段。它必须先有来自 `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
112
  ),
114
113
  };
115
114
 
@@ -1473,24 +1472,24 @@ ZH_CONTENT[path.join(".codex", "prompts", "lab-auto.md")] = codexPrompt(
1473
1472
  );
1474
1473
 
1475
1474
  ZH_CONTENT[path.join(".claude", "commands", "lab.md")] = claudeCommand(
1476
- "LAB",
1475
+ "lab",
1477
1476
  "查看 /lab 研究工作流总览并选择合适阶段",
1478
- "workflow, research, overview",
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"
1477
+ "[stage] [target]",
1478
+ "# `/lab` for Claude\n\n`/lab` 是 Claude Code 里的 lab 工作流分发入口。调用方式有两种:\n\n- `/lab <stage> ...`\n- `/lab-idea`、`/lab-data`、`/lab-auto`、`/lab-framing`、`/lab-spec`、`/lab-run`、`/lab-iterate`、`/lab-review`、`/lab-report`、`/lab-write`\n\n## 阶段别名\n\n- `/lab idea ...` `/lab-idea`\n- `/lab data ...` `/lab-data`\n- `/lab auto ...` `/lab-auto`\n- `/lab framing ...` `/lab-framing`\n- `/lab spec ...` `/lab-spec`\n- `/lab run ...` `/lab-run`\n- `/lab iterate ...` `/lab-iterate`\n- `/lab review ...` `/lab-review`\n- `/lab report ...` `/lab-report`\n- `/lab write ...` `/lab-write`\n\n## 调度规则\n\n- 始终使用 `skills/lab/SKILL.md` 作为工作流合同。\n- 用户显式调用 `/lab <stage> ...` `/lab-<stage>` 时,要立刻执行该 stage,而不是只推荐别的阶段。\n- 先给简洁摘要,再决定是否写工件,最后回报输出路径和下一步。\n- 如果歧义会影响结论,一次只问一个问题;如果有多条可行路径,先给 2-3 个方案再收敛。\n- `spec` 前应已有经批准的数据集与 benchmark 方案。\n- `run`、`iterate`、`auto`、`report` 都应遵循 `.lab/context/eval-protocol.md`。\n- `auto` 只编排已批准边界内的执行阶段,不替代手动的 idea/data/framing/spec 决策。\n- `write` 前必须已有经批准的 `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"
1480
1479
  );
1481
1480
 
1482
- ZH_CONTENT[path.join(".claude", "commands", "lab", "data.md")] = claudeCommand(
1483
- "LAB: Data",
1481
+ ZH_CONTENT[path.join(".claude", "commands", "lab-data.md")] = claudeCommand(
1482
+ "lab-data",
1484
1483
  "在进入规格前锁定数据集、下载来源和 benchmark 组合",
1485
- "workflow, research, data",
1486
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:data`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:data` 阶段。它必须把已批准的 idea 转成数据集与 benchmark 方案,记录每个候选数据集的年份、使用过它的论文、下载来源、许可或访问限制,以及 classic-public、recent-strong-public、claim-specific 三类 benchmark 的纳入理由,和 canonical baselines、strong historical baselines、recent strong public methods、closest prior work 四类对比方法的纳入理由。"
1484
+ "dataset benchmark target",
1485
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `data` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `data` 阶段。它必须把已批准的 idea 转成数据集与 benchmark 方案,记录每个候选数据集的年份、使用过它的论文、下载来源、许可或访问限制,以及 classic-public、recent-strong-public、claim-specific 三类 benchmark 的纳入理由,和 canonical baselines、strong historical baselines、recent strong public methods、closest prior work 四类对比方法的纳入理由。"
1487
1486
  );
1488
1487
 
1489
- ZH_CONTENT[path.join(".claude", "commands", "lab", "auto.md")] = claudeCommand(
1490
- "LAB: Auto",
1488
+ ZH_CONTENT[path.join(".claude", "commands", "lab-auto.md")] = claudeCommand(
1489
+ "lab-auto",
1491
1490
  "在已批准边界内编排自动实验循环",
1492
- "workflow, research, auto",
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` 探针来代替真实长任务命令;当真实实验进程还活着时,只允许发进度更新并继续等待。"
1491
+ "auto mode objective",
1492
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `auto` 阶段,不要只推荐别的 lab 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 lab workflow 的 `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` 探针来代替真实长任务命令;当真实实验进程还活着时,只允许发进度更新并继续等待。"
1494
1493
  );
1495
1494
 
1496
1495
  ZH_CONTENT[path.join(".codex", "skills", "lab", "SKILL.md")] = `---
package/lib/install.cjs CHANGED
@@ -326,6 +326,8 @@ function detectLegacyPlatform(targetDir) {
326
326
  fs.existsSync(path.join(targetDir, ".codex", "prompts")) ||
327
327
  fs.existsSync(path.join(targetDir, ".codex", "skills", "lab"));
328
328
  const hasClaude =
329
+ fs.existsSync(path.join(targetDir, ".claude", "commands", "lab.md")) ||
330
+ fs.existsSync(path.join(targetDir, ".claude", "commands", "lab-idea.md")) ||
329
331
  fs.existsSync(path.join(targetDir, ".claude", "commands", "lab")) ||
330
332
  fs.existsSync(path.join(targetDir, ".claude", "skills", "lab"));
331
333
 
@@ -366,6 +368,7 @@ function detectLegacyLanguage(targetDir) {
366
368
 
367
369
  const probeFiles = [
368
370
  path.join(targetDir, ".codex", "prompts", "lab-idea.md"),
371
+ path.join(targetDir, ".claude", "commands", "lab-idea.md"),
369
372
  path.join(targetDir, ".claude", "commands", "lab", "idea.md"),
370
373
  path.join(targetDir, ".lab", ".managed", "templates", "idea.md"),
371
374
  path.join(targetDir, ".superlab", "templates", "idea.md"),
@@ -494,16 +497,16 @@ function localizeInstalledAssets(targetDir, lang, { newlyCreatedProjectOwnedPath
494
497
  path.join(".codex", "prompts", "lab-report.md"),
495
498
  path.join(".codex", "prompts", "lab-write.md"),
496
499
  path.join(".claude", "commands", "lab.md"),
497
- path.join(".claude", "commands", "lab", "idea.md"),
498
- path.join(".claude", "commands", "lab", "data.md"),
499
- path.join(".claude", "commands", "lab", "auto.md"),
500
- path.join(".claude", "commands", "lab", "framing.md"),
501
- path.join(".claude", "commands", "lab", "spec.md"),
502
- path.join(".claude", "commands", "lab", "run.md"),
503
- path.join(".claude", "commands", "lab", "iterate.md"),
504
- path.join(".claude", "commands", "lab", "review.md"),
505
- path.join(".claude", "commands", "lab", "report.md"),
506
- path.join(".claude", "commands", "lab", "write.md"),
500
+ path.join(".claude", "commands", "lab-idea.md"),
501
+ path.join(".claude", "commands", "lab-data.md"),
502
+ path.join(".claude", "commands", "lab-auto.md"),
503
+ path.join(".claude", "commands", "lab-framing.md"),
504
+ path.join(".claude", "commands", "lab-spec.md"),
505
+ path.join(".claude", "commands", "lab-run.md"),
506
+ path.join(".claude", "commands", "lab-iterate.md"),
507
+ path.join(".claude", "commands", "lab-review.md"),
508
+ path.join(".claude", "commands", "lab-report.md"),
509
+ path.join(".claude", "commands", "lab-write.md"),
507
510
  path.join(".codex", "skills", "lab", "SKILL.md"),
508
511
  path.join(".codex", "skills", "lab", "stages", "idea.md"),
509
512
  path.join(".codex", "skills", "lab", "stages", "data.md"),
@@ -0,0 +1,13 @@
1
+ ---
2
+ name: "lab-auto"
3
+ description: Orchestrate approved lab execution stages inside a bounded autonomous loop
4
+ argument-hint: autonomous campaign target
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-auto` command 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.
10
+ This command runs the `auto` stage of the lab workflow. 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`.
11
+ 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.
12
+ Treat `Layer 3`, `Phase 1`, or `Table 2` as paper-scope targets. Treat `Autonomy level L3` as the execution permission level.
13
+ 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.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "lab-data"
3
+ description: Select datasets and benchmark packages with explicit source, year, and paper-usage audit
4
+ argument-hint: dataset or benchmark selection target
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-data` command 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.
10
+ This command runs the `data` stage of the lab workflow. It must turn the approved idea into an approved dataset package with dataset year, papers that used each dataset, source audit, download plan, explicit benchmark-role rationale for classic-public, recent-strong-public, and claim-specific benchmarks, and explicit comparison rationale for canonical baselines, strong historical baselines, recent strong public methods, and closest prior work.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "lab-framing"
3
+ description: Lock paper-facing naming, title, and contribution framing before drafting
4
+ argument-hint: naming, title, or contribution framing target
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-framing` command 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.
10
+ This command runs the `framing` stage of the lab workflow. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "lab-idea"
3
+ description: Research and refine a paper or experiment idea before specification
4
+ argument-hint: idea or research problem
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-idea` command 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.
10
+ This command runs the `idea` stage of the lab workflow. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "lab-iterate"
3
+ description: Run bounded Ralph-style experiment iterations with fixed success criteria
4
+ argument-hint: iteration mission
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-iterate` command 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.
10
+ This command runs the `iterate` stage of the lab workflow. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "lab-report"
3
+ description: Produce the final report from validated iteration artifacts
4
+ argument-hint: report context
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-report` command 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.
10
+ This command runs the `report` stage of the lab workflow. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "lab-review"
3
+ description: Review a research plan or result in reviewer mode
4
+ argument-hint: artifact or result to review
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-review` command 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.
10
+ This command runs the `review` stage of the lab workflow. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "lab-run"
3
+ description: Execute the smallest meaningful experiment and normalize its output
4
+ argument-hint: run context
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-run` command 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.
10
+ This command runs the `run` stage of the lab workflow. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "lab-spec"
3
+ description: Convert an approved idea into a lab change directory
4
+ argument-hint: approved idea context
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-spec` command 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.
10
+ This command runs the `spec` stage of the lab workflow. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "lab-write"
3
+ description: Turn validated research artifacts into paper sections with small evidence-bound revisions
4
+ argument-hint: section or writing target
5
+ ---
6
+
7
+ Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
8
+
9
+ Execute the requested `/lab-write` command 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.
10
+ This command runs the `write` stage of the lab workflow. It requires an approved framing artifact from the `framing` stage, 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.
@@ -1,66 +1,70 @@
1
1
  ---
2
- name: "LAB"
3
- description: Overview of the /lab research workflow and stage selection
4
- category: Workflow
5
- tags: [workflow, research, overview]
2
+ name: "lab"
3
+ description: Overview and dispatcher for the lab research workflow in Claude Code
4
+ argument-hint: [stage] [target]
6
5
  ---
7
6
 
8
7
  # `/lab` for Claude
9
8
 
10
- `/lab` is a strict research workflow command family. Use the same repository artifacts and stage boundaries every time.
9
+ `/lab` is the Claude Code dispatcher for the strict lab research workflow. In Claude Code, use either:
11
10
 
12
- ## Subcommands
11
+ - `/lab <stage> ...` for the root dispatcher
12
+ - `/lab-idea`, `/lab-data`, `/lab-auto`, `/lab-framing`, `/lab-spec`, `/lab-run`, `/lab-iterate`, `/lab-review`, `/lab-report`, `/lab-write` for direct stage aliases
13
13
 
14
- - `/lab:idea`
14
+ Use the same repository artifacts and stage boundaries every time.
15
+
16
+ ## Stage Aliases
17
+
18
+ - `/lab idea ...` or `/lab-idea`
15
19
  Research the idea, define the problem and failure case, classify the contribution and breakthrough level, compare against existing methods, end with three meaningful points, and keep an explicit approval gate before any implementation.
16
20
 
17
- - `/lab:data`
21
+ - `/lab data ...` or `/lab-data`
18
22
  Turn the approved idea into an approved dataset and benchmark package with dataset years, papers that used each dataset, source audit, download plan, classic-public versus recent-strong-public versus claim-specific benchmark roles, and explicit rationale for canonical baselines, strong historical baselines, recent strong public methods, and closest prior work.
19
23
 
20
- - `/lab:auto`
24
+ - `/lab auto ...` or `/lab-auto`
21
25
  Run a bounded orchestration loop over approved execution stages. Use an auto-mode contract plus live auto-status to drive `run`, `iterate`, `review`, `report`, and optionally `write` without changing the frozen mission or framing. Choose an autonomy level, declare a concrete terminal goal, explicitly approve the contract before starting, and treat `.lab/context/eval-protocol.md` as the source of truth for metrics, metric glossary, source-backed comparison semantics, tables, and structured experiment-ladder rungs.
22
26
 
23
- - `/lab:framing`
27
+ - `/lab framing ...` or `/lab-framing`
24
28
  Lock paper-facing method name, module names, paper title, and contribution bullets by auditing current-field and adjacent-field terminology, then keep an approval gate before any section drafting.
25
29
 
26
- - `/lab:spec`
30
+ - `/lab spec ...` or `/lab-spec`
27
31
  Convert the approved idea into one lab change directory under `.lab/changes/<change-id>/`, then draft `proposal`, `design`, `spec`, and `tasks` inside that directory.
28
32
 
29
- - `/lab:run`
33
+ - `/lab run ...` or `/lab-run`
30
34
  Execute the smallest useful validation run, register it, and produce the first normalized evaluation summary.
31
35
 
32
- - `/lab:iterate`
36
+ - `/lab iterate ...` or `/lab-iterate`
33
37
  Run bounded Ralph Wiggum style experiment loops with a frozen mission, explicit thresholds, deterministic verification commands, `completion_promise`, and per-round reports.
34
38
 
35
- - `/lab:review`
39
+ - `/lab review ...` or `/lab-review`
36
40
  Audit documents or results in reviewer mode. Start with a short summary, then output findings, fatal flaws, fix priority, and residual risks.
37
41
 
38
- - `/lab:report`
42
+ - `/lab report ...` or `/lab-report`
39
43
  Generate the final research report from accumulated runs and iteration artifacts.
40
44
 
41
- - `/lab:write`
45
+ - `/lab write ...` or `/lab-write`
42
46
  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
47
  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.
44
48
 
45
49
  ## Dispatch Rules
46
50
 
47
51
  - Always use `skills/lab/SKILL.md` as the workflow contract.
48
- - When the user explicitly invokes `/lab:<stage>`, execute that stage now against the provided argument instead of only recommending another `/lab` stage.
52
+ - When the user explicitly invokes `/lab <stage> ...` or a direct `/lab-<stage>` alias, execute that stage now against the provided argument instead of only recommending another lab stage.
49
53
  - Start by giving the user a concise summary, then decide whether to write artifacts, then report the output path and next step.
50
54
  - When ambiguity matters, ask one clarifying question at a time; when multiple paths are viable, present 2-3 approaches before converging.
51
- - `/lab:spec` is not complete until the approved change is frozen under `.lab/changes/<change-id>/`.
52
- - `/lab:spec` should inherit the approved dataset package from `.lab/context/data-decisions.md`.
53
- - Never skip directly from `/lab:idea` to code.
54
- - `/lab:iterate` requires a normalized summary from `scripts/eval_report.py`.
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.
56
- - `/lab:write` requires an approved framing artifact from `/lab:framing`.
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.
55
+ - `spec` is not complete until the approved change is frozen under `.lab/changes/<change-id>/`.
56
+ - `spec` should inherit the approved dataset package from `.lab/context/data-decisions.md`.
57
+ - Never skip directly from `idea` to code.
58
+ - `iterate` requires a normalized summary from `scripts/eval_report.py`.
59
+ - `run`, `iterate`, `auto`, and `report` should all follow `.lab/context/eval-protocol.md`, including its recorded sources for metrics and comparison implementations.
60
+ - `write` requires an approved framing artifact from the `framing` stage.
61
+ - `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
62
 
59
- ## How to Ask for `/lab:auto`
63
+ ## How to Ask for `/lab auto`
60
64
 
61
65
  - Treat `Autonomy level L1/L2/L3` as the execution privilege level, not as a paper layer, phase, or table number.
62
66
  - 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:
67
+ - A good `/lab auto` request should name:
64
68
  - the objective
65
69
  - the autonomy level
66
70
  - the terminal goal
@@ -68,4 +72,4 @@ tags: [workflow, research, overview]
68
72
  - the allowed modifications
69
73
  - 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
74
  - 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.`
75
+ - `/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.`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "superlab",
3
- "version": "0.1.15",
3
+ "version": "0.1.16",
4
4
  "description": "Strict /lab research workflow installer for Codex and Claude",
5
5
  "keywords": [
6
6
  "codex",
@@ -1,14 +0,0 @@
1
- ---
2
- name: "LAB: Auto"
3
- description: Orchestrate approved lab execution stages inside a bounded autonomous loop
4
- category: Workflow
5
- tags: [workflow, research, auto]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
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
- 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.
@@ -1,11 +0,0 @@
1
- ---
2
- name: "LAB: Data"
3
- description: Select datasets and benchmark packages with explicit source, year, and paper-usage audit
4
- category: Workflow
5
- tags: [workflow, research, data]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
10
- Execute the requested `/lab:data` 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:data` stage. It must turn the approved idea into an approved dataset package with dataset year, papers that used each dataset, source audit, download plan, explicit benchmark-role rationale for classic-public, recent-strong-public, and claim-specific benchmarks, and explicit comparison rationale for canonical baselines, strong historical baselines, recent strong public methods, and closest prior work.
@@ -1,11 +0,0 @@
1
- ---
2
- name: "LAB: Framing"
3
- description: Lock paper-facing naming, title, and contribution framing before drafting
4
- category: Workflow
5
- tags: [workflow, research, framing]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
10
- Execute the requested `/lab:framing` 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:framing` stage. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -1,11 +0,0 @@
1
- ---
2
- name: "LAB: Idea"
3
- description: Research and refine a paper or experiment idea before specification
4
- category: Workflow
5
- tags: [workflow, research, idea]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
10
- Execute the requested `/lab:idea` 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:idea` stage. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -1,11 +0,0 @@
1
- ---
2
- name: "LAB: Iterate"
3
- description: Run bounded Ralph-style experiment iterations with fixed success criteria
4
- category: Workflow
5
- tags: [workflow, research, iterate]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
10
- Execute the requested `/lab:iterate` 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:iterate` stage. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -1,11 +0,0 @@
1
- ---
2
- name: "LAB: Report"
3
- description: Produce the final report from validated iteration artifacts
4
- category: Workflow
5
- tags: [workflow, research, report]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
10
- Execute the requested `/lab:report` 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:report` stage. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -1,11 +0,0 @@
1
- ---
2
- name: "LAB: Review"
3
- description: Review a research plan or result in reviewer mode
4
- category: Workflow
5
- tags: [workflow, research, review]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
10
- Execute the requested `/lab:review` 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:review` stage. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -1,11 +0,0 @@
1
- ---
2
- name: "LAB: Run"
3
- description: Execute the smallest meaningful experiment and normalize its output
4
- category: Workflow
5
- tags: [workflow, research, run]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
10
- Execute the requested `/lab:run` 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:run` stage. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -1,11 +0,0 @@
1
- ---
2
- name: "LAB: Spec"
3
- description: Convert an approved idea into a lab change directory
4
- category: Workflow
5
- tags: [workflow, research, spec]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
10
- Execute the requested `/lab:spec` 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:spec` stage. Follow the installed skill, stage guide, and the project assets under `.lab/`.
@@ -1,11 +0,0 @@
1
- ---
2
- name: "LAB: Write"
3
- description: Turn validated research artifacts into paper sections with small evidence-bound revisions
4
- category: Workflow
5
- tags: [workflow, research, writing]
6
- ---
7
-
8
- Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
-
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/`, 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.