superlab 0.1.8 → 0.1.9

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/lib/i18n.cjs CHANGED
@@ -23,6 +23,11 @@ ${body}
23
23
  }
24
24
 
25
25
  const ZH_CONTENT = {
26
+ [path.join(".codex", "prompts", "lab.md")]: codexPrompt(
27
+ "查看 /lab 研究工作流总览并选择合适阶段",
28
+ "workflow question 或 stage choice",
29
+ "# `/lab` for Codex\n\n`/lab` 是严格的研究工作流命令族。每次都使用同一套仓库工件和阶段边界。\n\n## 子命令\n\n- `/lab:idea`\n 调研 idea,定义问题与 failure case,归类 contribution 与 breakthrough level,对比现有方法,收束三个一眼就有意义的点,并在实现前保留 approval gate。\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:write` 前必须已有经批准的 `/lab:framing` 工件。\n"
30
+ ),
26
31
  [path.join(".codex", "prompts", "lab-idea.md")]: codexPrompt(
27
32
  "在进入规格前调研并打磨论文或实验想法",
28
33
  "idea 或 research problem",
@@ -31,7 +36,7 @@ const ZH_CONTENT = {
31
36
  [path.join(".codex", "prompts", "lab-framing.md")]: codexPrompt(
32
37
  "在写作前收紧方法名、模块名、论文题目和 contribution framing",
33
38
  "naming、title 或 contribution framing target",
34
- "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:framing`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:framing` 阶段。它必须围绕 paper-facing framing,收紧方法名、模块名、题目和 contribution bullets,审查术语是否 canonical、对象是否明确,并在进入 `/lab:write` 前保留 approval gate。"
39
+ "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n立刻针对用户当前给出的参数执行 `/lab:framing`,不要只推荐别的 `/lab` 阶段。只有在缺少阻塞性前提时,才明确指出缺什么,并且一次最多追问一个问题。\n\n本命令运行 `/lab:framing` 阶段。它必须围绕 paper-facing framing,收紧方法名、模块名、题目和 contribution bullets,审查当前领域与相邻领域的术语是否 canonical、对象是否明确,并在进入 `/lab:write` 前保留 approval gate。"
35
40
  ),
36
41
  [path.join(".codex", "prompts", "lab-spec.md")]: codexPrompt(
37
42
  "把已批准的 idea 转成统一的 lab change 目录",
@@ -69,11 +74,17 @@ const ZH_CONTENT = {
69
74
  "workflow, research, idea",
70
75
  "使用已安装的 `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。"
71
76
  ),
77
+ [path.join(".claude", "commands", "lab.md")]: claudeCommand(
78
+ "LAB",
79
+ "查看 /lab 研究工作流总览并选择合适阶段",
80
+ "workflow, research, overview",
81
+ "# `/lab` for Claude\n\n`/lab` 是严格的研究工作流命令族。每次都使用同一套仓库工件和阶段边界。\n\n## 子命令\n\n- `/lab:idea`\n 调研 idea,定义问题与 failure case,归类 contribution 与 breakthrough level,对比现有方法,收束三个一眼就有意义的点,并在实现前保留 approval gate。\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:write` 前必须已有经批准的 `/lab:framing` 工件。\n"
82
+ ),
72
83
  [path.join(".claude", "commands", "lab", "framing.md")]: claudeCommand(
73
84
  "LAB: Framing",
74
85
  "在写作前收紧方法名、模块名、论文题目和 contribution framing",
75
86
  "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。"
87
+ "使用已安装的 `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。"
77
88
  ),
78
89
  [path.join(".claude", "commands", "lab", "spec.md")]: claudeCommand(
79
90
  "LAB: Spec",
@@ -1189,7 +1200,8 @@ ZH_CONTENT[path.join(".lab", "context", "terminology-lock.md")] = `# 已批准
1189
1200
 
1190
1201
  ## Source Audit
1191
1202
 
1192
- - 查阅过的近期学术论文:
1203
+ - 查阅过的当前领域来源:
1204
+ - 查阅过的相邻领域来源:
1193
1205
  - 查阅过的 primary sources:
1194
1206
  - 为什么当前 wording 可以接受:
1195
1207
  `;
@@ -1247,18 +1259,24 @@ ZH_CONTENT[path.join(".codex", "skills", "lab", "stages", "framing.md")] = `# \`
1247
1259
  - \`.lab/context/mission.md\`
1248
1260
  - \`.lab/context/decisions.md\`
1249
1261
  - \`.lab/context/evidence-index.md\`
1262
+ - \`.lab/context/terminology-lock.md\`
1250
1263
 
1251
1264
  ## 上下文写回
1252
1265
 
1253
1266
  - \`.lab/context/state.md\`
1254
1267
  - \`.lab/context/decisions.md\`
1268
+ - \`.lab/context/terminology-lock.md\`
1255
1269
 
1256
1270
  ## 必要工件
1257
1271
 
1258
1272
  - \`.lab/writing/framing.md\`
1273
+ - \`.lab/context/terminology-lock.md\`
1259
1274
 
1260
1275
  ## 命名审计规则
1261
1276
 
1277
+ - 锁定不熟悉术语前,先查当前领域近期论文和其他 primary sources。
1278
+ - 如果当前领域没有稳定 canonical term,或相邻领域有可平移的表达,再查相邻领域。
1279
+ - 记录术语来源日志,说明看过哪些当前领域来源、哪些相邻领域来源,以及为何接受最终 wording。
1262
1280
  - 术语要说明是 canonical、adapted 还是 newly coined。
1263
1281
  - 尽量把对象说清楚:到底在 calibrate、rank、estimate 什么。
1264
1282
  - 不要用 acronym-first 命名。
@@ -1333,11 +1351,13 @@ ZH_CONTENT[path.join(".lab", ".managed", "templates", "framing.md")] = `# 论文
1333
1351
 
1334
1352
  ## Canonical Terminology Audit
1335
1353
 
1336
- - 应复用的标准术语:
1354
+ - 当前领域应优先复用的术语:
1355
+ - 相邻领域可借用的术语:
1337
1356
  - 可接受的改写术语:
1338
1357
  - 需要谨慎的新造术语:
1339
1358
  - 必须说清楚的对象:
1340
1359
  - 应避免的术语:
1360
+ - 术语来源日志:
1341
1361
 
1342
1362
  ## Candidate Framing Packs
1343
1363
 
package/lib/install.cjs CHANGED
@@ -22,8 +22,8 @@ const ASSET_GROUPS = {
22
22
  ],
23
23
  claude: [
24
24
  {
25
- from: path.join(REPO_ROOT, "package-assets", "claude", "commands", "lab"),
26
- to: path.join(".claude", "commands", "lab"),
25
+ from: path.join(REPO_ROOT, "package-assets", "claude", "commands"),
26
+ to: path.join(".claude", "commands"),
27
27
  },
28
28
  {
29
29
  from: path.join(REPO_ROOT, "package-assets", "shared", "skills", "lab"),
@@ -439,6 +439,7 @@ function localizeInstalledAssets(targetDir, lang, { newlyCreatedProjectOwnedPath
439
439
  }
440
440
 
441
441
  const relativePaths = [
442
+ path.join(".codex", "prompts", "lab.md"),
442
443
  path.join(".codex", "prompts", "lab-idea.md"),
443
444
  path.join(".codex", "prompts", "lab-framing.md"),
444
445
  path.join(".codex", "prompts", "lab-spec.md"),
@@ -447,6 +448,7 @@ function localizeInstalledAssets(targetDir, lang, { newlyCreatedProjectOwnedPath
447
448
  path.join(".codex", "prompts", "lab-review.md"),
448
449
  path.join(".codex", "prompts", "lab-report.md"),
449
450
  path.join(".codex", "prompts", "lab-write.md"),
451
+ path.join(".claude", "commands", "lab.md"),
450
452
  path.join(".claude", "commands", "lab", "idea.md"),
451
453
  path.join(".claude", "commands", "lab", "framing.md"),
452
454
  path.join(".claude", "commands", "lab", "spec.md"),
@@ -0,0 +1,48 @@
1
+ ---
2
+ name: "LAB"
3
+ description: Overview of the /lab research workflow and stage selection
4
+ category: Workflow
5
+ tags: [workflow, research, overview]
6
+ ---
7
+
8
+ # `/lab` for Claude
9
+
10
+ `/lab` is a strict research workflow command family. Use the same repository artifacts and stage boundaries every time.
11
+
12
+ ## Subcommands
13
+
14
+ - `/lab:idea`
15
+ 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
+
17
+ - `/lab:framing`
18
+ 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.
19
+
20
+ - `/lab:spec`
21
+ Convert the approved idea into one lab change directory under `.lab/changes/<change-id>/`, then draft `proposal`, `design`, `spec`, and `tasks` inside that directory.
22
+
23
+ - `/lab:run`
24
+ Execute the smallest useful validation run, register it, and produce the first normalized evaluation summary.
25
+
26
+ - `/lab:iterate`
27
+ Run bounded Ralph Wiggum style experiment loops with a frozen mission, explicit thresholds, deterministic verification commands, `completion_promise`, and per-round reports.
28
+
29
+ - `/lab:review`
30
+ Audit documents or results in reviewer mode. Start with a short summary, then output findings, fatal flaws, fix priority, and residual risks.
31
+
32
+ - `/lab:report`
33
+ Generate the final research report from accumulated runs and iteration artifacts.
34
+
35
+ - `/lab:write`
36
+ Turn stable report artifacts into paper sections through small, evidence-bound writing rounds using the vendored paper-writing references under the installed `lab` skill.
37
+
38
+ ## Dispatch Rules
39
+
40
+ - Always use `skills/lab/SKILL.md` as the workflow contract.
41
+ - When the user explicitly invokes `/lab:<stage>`, execute that stage now against the provided argument instead of only recommending another `/lab` stage.
42
+ - Start by giving the user a concise summary, then decide whether to write artifacts, then report the output path and next step.
43
+ - When ambiguity matters, ask one clarifying question at a time; when multiple paths are viable, present 2-3 approaches before converging.
44
+ - `/lab:spec` is not complete until the approved change is frozen under `.lab/changes/<change-id>/`.
45
+ - Never skip directly from `/lab:idea` to code.
46
+ - `/lab:iterate` requires a normalized summary from `scripts/eval_report.py`.
47
+ - `/lab:write` requires an approved framing artifact from `/lab:framing`.
48
+ - `/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.
@@ -0,0 +1,46 @@
1
+ ---
2
+ description: Overview of the /lab research workflow and stage selection
3
+ argument-hint: workflow question or stage choice
4
+ ---
5
+
6
+ # `/lab` for Codex
7
+
8
+ `/lab` is a strict research workflow command family. Use the same repository artifacts and stage boundaries every time.
9
+
10
+ ## Subcommands
11
+
12
+ - `/lab:idea`
13
+ 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.
14
+
15
+ - `/lab:framing`
16
+ 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.
17
+
18
+ - `/lab:spec`
19
+ Convert the approved idea into one lab change directory under `.lab/changes/<change-id>/`, then draft `proposal`, `design`, `spec`, and `tasks` inside that directory.
20
+
21
+ - `/lab:run`
22
+ Execute the smallest useful validation run, register it, and produce the first normalized evaluation summary.
23
+
24
+ - `/lab:iterate`
25
+ Run bounded Ralph Wiggum style experiment loops with a frozen mission, explicit thresholds, deterministic verification commands, `completion_promise`, and per-round reports.
26
+
27
+ - `/lab:review`
28
+ Audit documents or results in reviewer mode. Start with a short summary, then output findings, fatal flaws, fix priority, and residual risks.
29
+
30
+ - `/lab:report`
31
+ Generate the final research report from accumulated runs and iteration artifacts.
32
+
33
+ - `/lab:write`
34
+ Turn stable report artifacts into paper sections through small, evidence-bound writing rounds using the vendored paper-writing references under the installed `lab` skill.
35
+
36
+ ## Dispatch Rules
37
+
38
+ - Always use `skills/lab/SKILL.md` as the workflow contract.
39
+ - When the user explicitly invokes `/lab:<stage>`, execute that stage now against the provided argument instead of only recommending another `/lab` stage.
40
+ - Start by giving the user a concise summary, then decide whether to write artifacts, then report the output path and next step.
41
+ - When ambiguity matters, ask one clarifying question at a time; when multiple paths are viable, present 2-3 approaches before converging.
42
+ - `/lab:spec` is not complete until the approved change is frozen under `.lab/changes/<change-id>/`.
43
+ - Never skip directly from `/lab:idea` to code.
44
+ - `/lab:iterate` requires a normalized summary from `scripts/eval_report.py`.
45
+ - `/lab:write` requires an approved framing artifact from `/lab:framing`.
46
+ - `/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.
@@ -8,11 +8,13 @@
8
8
 
9
9
  ## Canonical Terminology Audit
10
10
 
11
- - Standard terms we should reuse:
11
+ - Current field terms we should prefer:
12
+ - Adjacent-field terms worth borrowing:
12
13
  - Adapted terms we can justify:
13
14
  - Newly coined terms that need caution:
14
15
  - Objects that must be explicit:
15
16
  - Terms to avoid:
17
+ - Terminology source log:
16
18
 
17
19
  ## Candidate Framing Packs
18
20
 
@@ -22,6 +22,7 @@ Record the currently approved naming and wording that later stages should reuse
22
22
 
23
23
  ## Source Audit
24
24
 
25
- - Recent academic papers reviewed:
25
+ - Current-field sources reviewed:
26
+ - Adjacent-field sources reviewed:
26
27
  - Primary sources reviewed:
27
28
  - Why the approved wording is acceptable:
@@ -37,7 +37,9 @@
37
37
 
38
38
  - Keep framing decisions tied to supported claims, not to speculative novelty.
39
39
  - Audit method name, module names, paper title, and contribution bullets as one package.
40
- - Review recent academic papers and other primary sources before locking unfamiliar terminology.
40
+ - Review recent academic papers and other primary sources from the current field before locking unfamiliar terminology.
41
+ - Review adjacent fields when the current field lacks a stable canonical term or when a neighboring term may transfer cleanly.
42
+ - Record a source log for terminology decisions, including which current-field and adjacent-field sources were checked.
41
43
  - State whether each important term is canonical, adapted, or newly coined.
42
44
  - Prefer names that make the object explicit.
43
45
  - Avoid names that read like AI-packaged branding, unexplained acronyms, or implementation patch labels.
@@ -63,7 +65,7 @@
63
65
 
64
66
  1. Framing target
65
67
  2. Current naming and wording risks
66
- 3. Canonical terminology audit
68
+ 3. Canonical terminology audit across current and adjacent fields
67
69
  4. Candidate framing packs
68
70
  5. Recommended framing pack
69
71
  6. Forbidden claims and wording
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "superlab",
3
- "version": "0.1.8",
3
+ "version": "0.1.9",
4
4
  "description": "Strict /lab research workflow installer for Codex and Claude",
5
5
  "keywords": [
6
6
  "codex",