superlab 0.1.0 → 0.1.1

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.
Files changed (30) hide show
  1. package/README.md +4 -7
  2. package/README.zh-CN.md +4 -7
  3. package/lib/i18n.cjs +34 -18
  4. package/package-assets/claude/commands/lab/write.md +1 -1
  5. package/package-assets/codex/prompts/lab-write.md +1 -1
  6. package/package-assets/shared/scripts/openspec_change.sh +50 -0
  7. package/package-assets/shared/skills/lab/SKILL.md +21 -3
  8. package/package-assets/shared/skills/lab/references/paper-writing/abstract.md +102 -0
  9. package/package-assets/shared/skills/lab/references/paper-writing/conclusion.md +35 -0
  10. package/package-assets/shared/skills/lab/references/paper-writing/does-my-writing-flow-source.md +45 -0
  11. package/package-assets/shared/skills/lab/references/paper-writing/experiments.md +102 -0
  12. package/package-assets/shared/skills/lab/references/paper-writing/introduction.md +408 -0
  13. package/package-assets/shared/skills/lab/references/paper-writing/method.md +196 -0
  14. package/package-assets/shared/skills/lab/references/paper-writing/paper-review.md +86 -0
  15. package/package-assets/shared/skills/lab/references/paper-writing/related-work.md +41 -0
  16. package/package-assets/shared/skills/lab/references/paper-writing-integration.md +29 -28
  17. package/package-assets/shared/skills/lab/stages/idea.md +30 -7
  18. package/package-assets/shared/skills/lab/stages/iterate.md +11 -0
  19. package/package-assets/shared/skills/lab/stages/spec.md +13 -0
  20. package/package-assets/shared/skills/lab/stages/write.md +20 -12
  21. package/package-assets/shared/templates/design.md +10 -0
  22. package/package-assets/shared/templates/idea.md +76 -8
  23. package/package-assets/shared/templates/iteration-report.md +4 -0
  24. package/package-assets/shared/templates/paper-plan.md +12 -0
  25. package/package-assets/shared/templates/paper-section.md +24 -6
  26. package/package-assets/shared/templates/proposal.md +10 -0
  27. package/package-assets/shared/templates/spec.md +7 -0
  28. package/package-assets/shared/templates/tasks.md +4 -0
  29. package/package-assets/shared/templates/write-iteration.md +5 -0
  30. package/package.json +1 -1
package/README.md CHANGED
@@ -85,7 +85,6 @@ This language setting only affects installed command and skill text shown to the
85
85
  - Python 3.10+
86
86
  - Git
87
87
  - OpenSpec CLI installed and available as `openspec-cn`
88
- - For `/lab:write`: install the companion `research-paper-writing` skill from `Research-Paper-Writing-Skills`
89
88
 
90
89
  Check the dependency with:
91
90
 
@@ -93,10 +92,7 @@ Check the dependency with:
93
92
  bash .superlab/scripts/check_openspec.sh
94
93
  ```
95
94
 
96
- `/lab:write` expects the companion skill at one of these locations:
97
-
98
- - Codex: `~/.codex/skills/research-paper-writing/`
99
- - Claude project: `.claude/skills/research-paper-writing/`
95
+ `/lab:write` ships with vendored paper-writing references under the installed `lab` skill, so it does not depend on an extra runtime skill installation.
100
96
 
101
97
  ## Command Set
102
98
 
@@ -107,7 +103,7 @@ bash .superlab/scripts/check_openspec.sh
107
103
  - `/lab:review` audits documents and results in reviewer mode.
108
104
  - `/lab:report` produces the final report from accumulated artifacts.
109
105
  - `/lab:write` converts stable report artifacts into paper sections through small writing rounds.
110
- It reads the exact upstream section references from the companion `research-paper-writing` skill.
106
+ It reads vendored section references derived from `Research-Paper-Writing-Skills`.
111
107
 
112
108
  See the source command docs in [commands/codex/lab.md](/Users/zhouhao119/coding/write/commands/codex/lab.md) and [commands/claude/lab.md](/Users/zhouhao119/coding/write/commands/claude/lab.md). The npm package installs real command assets from `package-assets/`.
113
109
 
@@ -141,6 +137,7 @@ See the source command docs in [commands/codex/lab.md](/Users/zhouhao119/coding/
141
137
  ## Helper Scripts
142
138
 
143
139
  - `scripts/check_openspec.sh` checks whether OpenSpec CLI is available.
140
+ - `scripts/openspec_change.sh` wraps common OpenSpec change commands for instructions, status, and validation.
144
141
  - `scripts/register_run.py` records run metadata in a JSON registry.
145
142
  - `scripts/eval_report.py` normalizes metrics into a comparable summary.
146
143
  - `scripts/summarize_iterations.py` rolls multiple iteration summaries into one file.
@@ -157,4 +154,4 @@ See the source command docs in [commands/codex/lab.md](/Users/zhouhao119/coding/
157
154
 
158
155
  ## Attribution
159
156
 
160
- `superlab` is OpenSpec-compatible and borrows workflow discipline ideas from OpenSpec, superpowers, and Ralph Wiggum style bounded iteration. It is an independent workflow package, not an official OpenSpec project.
157
+ `superlab` is OpenSpec-compatible and borrows workflow discipline ideas from OpenSpec, superpowers, and Ralph Wiggum style bounded iteration. Its vendored writing references are adapted from `Research-Paper-Writing-Skills`. It is an independent workflow package, not an official OpenSpec project.
package/README.zh-CN.md CHANGED
@@ -83,7 +83,6 @@ superlab init --lang en
83
83
  - Python 3.10+
84
84
  - Git
85
85
  - OpenSpec CLI,并且命令名为 `openspec-cn`
86
- - `/lab:write` 还依赖 `Research-Paper-Writing-Skills` 提供的 companion `research-paper-writing` skill
87
86
 
88
87
  检查 OpenSpec CLI:
89
88
 
@@ -91,10 +90,7 @@ superlab init --lang en
91
90
  bash .superlab/scripts/check_openspec.sh
92
91
  ```
93
92
 
94
- `/lab:write` 预期 companion skill 位于:
95
-
96
- - Codex: `~/.codex/skills/research-paper-writing/`
97
- - Claude 项目: `.claude/skills/research-paper-writing/`
93
+ `/lab:write` 自带 vendored 的 paper-writing 章节参考,不再依赖额外安装一个运行时写作 skill
98
94
 
99
95
  ## 命令集合
100
96
 
@@ -105,7 +101,7 @@ bash .superlab/scripts/check_openspec.sh
105
101
  - `/lab:review` 以审稿人模式检查方法、对照、公平性、泄漏和统计问题。
106
102
  - `/lab:report` 根据累积工件生成最终实验报告。
107
103
  - `/lab:write` 把稳定的 report 工件转成论文 section,并按小步方式逐轮修改。
108
- 它会直接读取 companion `research-paper-writing` skill 里的原始章节参考。
104
+ 它会读取随 `lab` 一起安装的 vendored 章节参考,这些参考来源于 `Research-Paper-Writing-Skills`。
109
105
 
110
106
  ## 使用流程
111
107
 
@@ -131,6 +127,7 @@ bash .superlab/scripts/check_openspec.sh
131
127
  - `skills/lab/` 是仓库开发时使用的共享 workflow 定义。
132
128
  - `templates/` 是研究工件模板。
133
129
  - `scripts/` 是运行登记、评估汇总和结果校验脚本。
130
+ - 其中 `scripts/openspec_change.sh` 对 `instructions/status/validate` 做了一个最小 OpenSpec wrapper。
134
131
  - `tests/` 是脚本与安装器测试。
135
132
  - `examples/` 是最小端到端示例。
136
133
  - `docs/release.md` 是发布到 npm 的操作说明。
@@ -139,4 +136,4 @@ bash .superlab/scripts/check_openspec.sh
139
136
 
140
137
  ## 致谢
141
138
 
142
- `superlab` 兼容 OpenSpec,并借鉴了 OpenSpec、superpowers 和 Ralph Wiggum 的流程纪律。它是一个独立的开源工作流包,不是 OpenSpec 官方项目。
139
+ `superlab` 兼容 OpenSpec,并借鉴了 OpenSpec、superpowers 和 Ralph Wiggum 的流程纪律。随包提供的写作参考改编自 `Research-Paper-Writing-Skills`。它是一个独立的开源工作流包,不是 OpenSpec 官方项目。
package/lib/i18n.cjs CHANGED
@@ -26,12 +26,12 @@ const ZH_CONTENT = {
26
26
  [path.join(".codex", "prompts", "lab-idea.md")]: codexPrompt(
27
27
  "在进入规格前调研并打磨论文或实验想法",
28
28
  "idea 或 research problem",
29
- "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:idea` 阶段。它必须先调研相关文献、数据集、指标和 baseline,再进行批评与收敛,不得在此阶段直接实现代码。"
29
+ "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:idea` 阶段。它必须先用清晰简洁的话定义问题与失败场景,说明现有方法哪里不够、我们的想法为何更好,再做 idea classification、contribution category、breakthrough level 的归类,并收束出至少三个一眼就有意义的点,最后保留进入 `/lab:spec` 前的 approval gate。"
30
30
  ),
31
31
  [path.join(".codex", "prompts", "lab-spec.md")]: codexPrompt(
32
32
  "把已批准的 idea 转成 OpenSpec spec-driven 工件",
33
33
  "approved idea context",
34
- "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:spec` 阶段。它必须要求 OpenSpec CLI、生成 proposal/design/spec/tasks,并在规格完成前禁止进入实现。"
34
+ "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:spec` 阶段。它必须要求 OpenSpec CLI、围绕 active change 生成 proposal/design/spec/tasks,并运行 instructions/status/validate 后才能算完成。"
35
35
  ),
36
36
  [path.join(".codex", "prompts", "lab-run.md")]: codexPrompt(
37
37
  "执行最小可行实验并标准化输出",
@@ -41,7 +41,7 @@ const ZH_CONTENT = {
41
41
  [path.join(".codex", "prompts", "lab-iterate.md")]: codexPrompt(
42
42
  "在固定成功标准下执行有边界的实验迭代",
43
43
  "iteration mission",
44
- "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:iterate` 阶段。它必须冻结 mission、只做小步改动、每轮生成评估和 iteration report,并在达标或到上限时停止。"
44
+ "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:iterate` 阶段。它必须冻结 mission、声明 completion_promise、只做小步改动、每轮生成评估和 iteration report;若风险连续两轮升高则切 diagnostic mode,并在失败结束时记录 blockers 与 next actions。"
45
45
  ),
46
46
  [path.join(".codex", "prompts", "lab-review.md")]: codexPrompt(
47
47
  "以审稿人模式审查研究方案或结果",
@@ -56,19 +56,19 @@ const ZH_CONTENT = {
56
56
  [path.join(".codex", "prompts", "lab-write.md")]: codexPrompt(
57
57
  "把验证过的研究工件转成论文 section,并按小步方式修订",
58
58
  "section or writing target",
59
- "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:write` 阶段。它必须先读取 companion `research-paper-writing` 技能中与当前 section 对应的参考文件,并结合 `paper-review.md` 与 `does-my-writing-flow-source.md` 后,再只修改一个 section。"
59
+ "使用已安装的 `lab` 技能:`.codex/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:write` 阶段。它必须先读取 `.codex/skills/lab/references/paper-writing/` 下与当前 section 对应的参考文件,并结合 `paper-review.md` 与 `does-my-writing-flow-source.md`,先写 mini-outline,再只修改一个 section。"
60
60
  ),
61
61
  [path.join(".claude", "commands", "lab", "idea.md")]: claudeCommand(
62
62
  "LAB: Idea",
63
63
  "在进入规格前调研并打磨论文或实验想法",
64
64
  "workflow, research, idea",
65
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:idea` 阶段。它必须先调研相关文献、数据集、指标和 baseline,再进行批评与收敛,不得在此阶段直接实现代码。"
65
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:idea` 阶段。它必须先用清晰简洁的话定义问题与失败场景,说明现有方法哪里不够、我们的想法为何更好,再做 idea classification、contribution category、breakthrough level 的归类,并收束出至少三个一眼就有意义的点,最后保留进入 `/lab:spec` 前的 approval gate。"
66
66
  ),
67
67
  [path.join(".claude", "commands", "lab", "spec.md")]: claudeCommand(
68
68
  "LAB: Spec",
69
69
  "把已批准的 idea 转成 OpenSpec spec-driven 工件",
70
70
  "workflow, research, spec",
71
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:spec` 阶段。它必须要求 OpenSpec CLI、生成 proposal/design/spec/tasks,并在规格完成前禁止进入实现。"
71
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:spec` 阶段。它必须要求 OpenSpec CLI、围绕 active change 生成 proposal/design/spec/tasks,并运行 instructions/status/validate 后才能算完成。"
72
72
  ),
73
73
  [path.join(".claude", "commands", "lab", "run.md")]: claudeCommand(
74
74
  "LAB: Run",
@@ -80,7 +80,7 @@ const ZH_CONTENT = {
80
80
  "LAB: Iterate",
81
81
  "在固定成功标准下执行有边界的实验迭代",
82
82
  "workflow, research, iterate",
83
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:iterate` 阶段。它必须冻结 mission、只做小步改动、每轮生成评估和 iteration report,并在达标或到上限时停止。"
83
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:iterate` 阶段。它必须冻结 mission、声明 completion_promise、只做小步改动、每轮生成评估和 iteration report;若风险连续两轮升高则切 diagnostic mode,并在失败结束时记录 blockers 与 next actions。"
84
84
  ),
85
85
  [path.join(".claude", "commands", "lab", "review.md")]: claudeCommand(
86
86
  "LAB: Review",
@@ -98,7 +98,7 @@ const ZH_CONTENT = {
98
98
  "LAB: Write",
99
99
  "把验证过的研究工件转成论文 section,并按小步方式修订",
100
100
  "workflow, research, writing",
101
- "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:write` 阶段。它必须先读取 companion `research-paper-writing` 技能中与当前 section 对应的参考文件,并结合 `paper-review.md` 与 `does-my-writing-flow-source.md` 后,再只修改一个 section。"
101
+ "使用已安装的 `lab` 技能:`.claude/skills/lab/SKILL.md`。\n\n本命令运行 `/lab:write` 阶段。它必须先读取 `.claude/skills/lab/references/paper-writing/` 下与当前 section 对应的参考文件,并结合 `paper-review.md` 与 `does-my-writing-flow-source.md`,先写 mini-outline,再只修改一个 section。"
102
102
  ),
103
103
  };
104
104
 
@@ -121,6 +121,11 @@ description: 严格研究工作流,覆盖 idea、spec、run、iterate、review
121
121
  - 关键决策必须落盘,不能只留在聊天里。
122
122
  - 区分“来源事实”和“模型假设”。
123
123
  - 保留失败实验、失败想法和局限性。
124
+ - \`/lab:write\` 使用内置 vendored paper-writing references,不依赖外部写作 skill 路径。
125
+ - \`/lab:idea\` 需要 candidate approaches 和 approval gate。
126
+ - \`/lab:idea\` 还需要 problem/failure case、idea classification、contribution category、breakthrough level。
127
+ - \`/lab:idea\` 还需要 existing methods 对照、why ours is different、three meaningful points。
128
+ - \`/lab:iterate\` 需要 completion_promise 与失败退出记录。
124
129
  `,
125
130
  [path.join(".codex", "skills", "lab", "stages", "write.md")]:
126
131
  `# \`/lab:write\` 阶段指南
@@ -131,23 +136,34 @@ description: 严格研究工作流,覆盖 idea、spec、run、iterate、review
131
136
  - iteration reports
132
137
  - normalized summaries
133
138
  - reviewer notes(如有)
134
- - 当前 section 对应的 companion \`research-paper-writing\` 参考文件
139
+ - \`skills/lab/references/paper-writing/\` 下 vendored 的章节参考文件
135
140
 
136
- ## Companion References
141
+ ## Required References
137
142
 
138
143
  按当前目标加载精确章节文件:
139
144
 
140
- - abstract -> \`research-paper-writing/references/abstract.md\`
141
- - introduction -> \`research-paper-writing/references/introduction.md\`
142
- - related work -> \`research-paper-writing/references/related-work.md\`
143
- - method -> \`research-paper-writing/references/method.md\`
144
- - experiments -> \`research-paper-writing/references/experiments.md\`
145
- - conclusion -> \`research-paper-writing/references/conclusion.md\`
145
+ - abstract -> \`skills/lab/references/paper-writing/abstract.md\`
146
+ - introduction -> \`skills/lab/references/paper-writing/introduction.md\`
147
+ - related work -> \`skills/lab/references/paper-writing/related-work.md\`
148
+ - method -> \`skills/lab/references/paper-writing/method.md\`
149
+ - experiments -> \`skills/lab/references/paper-writing/experiments.md\`
150
+ - conclusion -> \`skills/lab/references/paper-writing/conclusion.md\`
146
151
 
147
152
  每轮还必须运行:
148
153
 
149
- - flow check -> \`research-paper-writing/references/does-my-writing-flow-source.md\`
150
- - reviewer pass -> \`research-paper-writing/references/paper-review.md\`
154
+ - flow check -> \`skills/lab/references/paper-writing/does-my-writing-flow-source.md\`
155
+ - reviewer pass -> \`skills/lab/references/paper-writing/paper-review.md\`
156
+
157
+ ## Small-Step Writing Rules
158
+
159
+ - 每轮只改一个 section 或一个边界清晰的小节。
160
+ - 只加载当前 section guide,不要一次加载所有章节参考。
161
+ - 先写 mini-outline,再写 prose。
162
+ - 每个 subsection 在适用时必须显式交代 motivation、design、technical advantage。
163
+ - 避免写成“在一个 naive baseline 上不断打补丁”的叙述风格。
164
+ - 全文术语保持一致。
165
+ - 若 claim 没有结果支撑,必须削弱或删除。
166
+ - 每轮结束前都要补五维自评并处理未解决问题。
151
167
  `,
152
168
  };
153
169
 
@@ -7,4 +7,4 @@ tags: [workflow, research, writing]
7
7
 
8
8
  Use the installed `lab` skill at `.claude/skills/lab/SKILL.md`.
9
9
 
10
- This command runs the `/lab:write` stage. It must read the matching section reference from the companion `research-paper-writing` skill, plus `paper-review.md` and `does-my-writing-flow-source.md`, before revising one section.
10
+ This command runs the `/lab:write` stage. It 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 then revise only one section.
@@ -5,4 +5,4 @@ argument-hint: section or writing target
5
5
 
6
6
  Use the installed `lab` skill at `.codex/skills/lab/SKILL.md`.
7
7
 
8
- This command runs the `/lab:write` stage. It must read the matching section reference from the companion `research-paper-writing` skill, plus `paper-review.md` and `does-my-writing-flow-source.md`, before revising one section.
8
+ This command runs the `/lab:write` stage. It 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 then revise only one section.
@@ -0,0 +1,50 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ if ! command -v openspec-cn >/dev/null 2>&1; then
5
+ echo "OpenSpec CLI not found. Install and expose 'openspec-cn' before using this helper." >&2
6
+ exit 1
7
+ fi
8
+
9
+ if [[ $# -lt 2 ]]; then
10
+ echo "Usage:" >&2
11
+ echo " openspec_change.sh instructions <artifact> <change-id>" >&2
12
+ echo " openspec_change.sh status <change-id>" >&2
13
+ echo " openspec_change.sh validate <change-id>" >&2
14
+ exit 2
15
+ fi
16
+
17
+ subcommand="$1"
18
+ shift
19
+
20
+ case "$subcommand" in
21
+ instructions)
22
+ if [[ $# -ne 2 ]]; then
23
+ echo "Usage: openspec_change.sh instructions <artifact> <change-id>" >&2
24
+ exit 2
25
+ fi
26
+ artifact="$1"
27
+ change_id="$2"
28
+ exec openspec-cn instructions "$artifact" --change "$change_id"
29
+ ;;
30
+ status)
31
+ if [[ $# -ne 1 ]]; then
32
+ echo "Usage: openspec_change.sh status <change-id>" >&2
33
+ exit 2
34
+ fi
35
+ change_id="$1"
36
+ exec openspec-cn status --change "$change_id"
37
+ ;;
38
+ validate)
39
+ if [[ $# -ne 1 ]]; then
40
+ echo "Usage: openspec_change.sh validate <change-id>" >&2
41
+ exit 2
42
+ fi
43
+ change_id="$1"
44
+ exec openspec-cn validate "$change_id"
45
+ ;;
46
+ *)
47
+ echo "Unsupported subcommand: $subcommand" >&2
48
+ exit 2
49
+ ;;
50
+ esac
@@ -21,14 +21,24 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
21
21
  ### `/lab:idea`
22
22
 
23
23
  - Search relevant literature, baselines, datasets, and evaluation metrics before proposing a plan.
24
+ - State the problem, the failure case, and why the problem matters before proposing solutions.
25
+ - Classify the idea by contribution category and breakthrough level.
26
+ - Compare against existing methods explicitly and state why the idea should be better.
24
27
  - Distinguish sourced evidence from generated innovation claims.
28
+ - End with three meaningful points that are clear, short, and easy to scan.
29
+ - Produce 2-3 candidate approaches with trade-offs before recommending one.
25
30
  - Critique the idea before converging on it.
31
+ - Keep an explicit approval gate before `/lab:spec`.
26
32
  - Write idea artifacts with the template in `.superlab/templates/idea.md`.
27
33
  - Do not implement code in this stage.
28
34
 
29
35
  ### `/lab:spec`
30
36
 
31
37
  - Require `bash scripts/check_openspec.sh`.
38
+ - Use OpenSpec CLI as the execution path, not just as naming inspiration:
39
+ - initialize OpenSpec if the project is not initialized yet
40
+ - identify or create the active change
41
+ - use `openspec-cn instructions`, `openspec-cn status`, and `openspec-cn validate` while drafting and applying the spec
32
42
  - Convert the approved idea into OpenSpec `spec-driven` artifacts using `.superlab/templates/proposal.md`, `.superlab/templates/design.md`, `.superlab/templates/spec.md`, and `.superlab/templates/tasks.md`.
33
43
  - Do not skip task definition.
34
44
 
@@ -47,11 +57,13 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
47
57
  - primary metric
48
58
  - success threshold
49
59
  - verification commands
60
+ - completion_promise
50
61
  - maximum iteration count
51
62
  - Only change implementation hypotheses within the loop.
52
63
  - Require a normalized evaluation report each round.
64
+ - Switch to diagnostic mode if risk increases for two consecutive rounds.
53
65
  - Write round reports with `.superlab/templates/iteration-report.md`.
54
- - Stop at threshold success or iteration cap.
66
+ - Stop at threshold success or iteration cap, and record blockers plus next-best actions when the campaign ends without success.
55
67
 
56
68
  ### `/lab:review`
57
69
 
@@ -72,7 +84,13 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
72
84
  - Write one paper section or one explicit subproblem per round.
73
85
  - Bind each claim to evidence from `report`, iteration reports, or normalized summaries.
74
86
  - Write paper artifacts with `.superlab/templates/paper-plan.md`, `.superlab/templates/paper-section.md`, and `.superlab/templates/write-iteration.md`.
75
- - Use the companion `research-paper-writing` skill references for the current section and required review passes.
87
+ - Use the vendored paper-writing references under `skills/lab/references/paper-writing/`.
88
+ - Load only the current section guide, plus `paper-review.md` and `does-my-writing-flow-source.md`.
89
+ - Build a compact mini-outline before prose.
90
+ - For each subsection, explicitly cover motivation, design, and technical advantage when applicable.
91
+ - Keep terminology stable across rounds and sections.
92
+ - If a claim is not supported by evidence, weaken or remove it.
93
+ - Before finalizing a round, append and answer the five-dimension self-review checklist and revise unresolved items.
76
94
  - Apply paper-writing discipline without changing experimental truth.
77
95
  - If the evidence is insufficient, stop and route back to `review` or `iterate`.
78
96
 
@@ -94,7 +112,7 @@ Use this skill when the user invokes `/lab:*` or asks for the structured researc
94
112
  - Report stage guide: `.codex/skills/lab/stages/report.md` or `.claude/skills/lab/stages/report.md`
95
113
  - Write stage guide: `.codex/skills/lab/stages/write.md` or `.claude/skills/lab/stages/write.md`
96
114
  - Paper-writing integration: `.codex/skills/lab/references/paper-writing-integration.md` or `.claude/skills/lab/references/paper-writing-integration.md`
97
- - Companion references: `research-paper-writing/references/{abstract,introduction,related-work,method,experiments,conclusion,paper-review,does-my-writing-flow-source}.md`
115
+ - 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`
98
116
  - Command adapters: the installed `/lab:*` command assets
99
117
  - Templates: `.superlab/templates/`
100
118
  - Scripts: `.superlab/scripts/`
@@ -0,0 +1,102 @@
1
+ # Abstract Writing Guide
2
+
3
+ ## Goal
4
+
5
+ Write a strong abstract by doing three things repeatedly:
6
+
7
+ 1. Think through the abstract logic first.
8
+ 2. Follow one template (Version 1/2/3 below).
9
+ 3. Revise the abstract many times.
10
+
11
+ ## Pre-Writing Questions (Important)
12
+
13
+ Answer these before writing:
14
+
15
+ 1. What technical problem do we solve, and why is there no well-established solution? (important)
16
+ 2. What is our technical contribution?
17
+ 3. Why can our method work in essence?
18
+ 4. What technical advantage and new insight do we provide? (important)
19
+
20
+ ## Version 1: Challenge -> Contribution
21
+
22
+ Introduce the technical challenge, then use one to two sentences to present the technical contribution that solves the challenge.
23
+
24
+ ### Structure
25
+
26
+ 1. Task.
27
+ 2. Technical challenge for previous methods.
28
+ 3. One to two sentences introducing the technical contribution for solving the challenge.
29
+ 4. Benefits of the technical contribution.
30
+ 5. Experiment summary.
31
+
32
+ ### Expert Notes
33
+
34
+ 1. Discuss previous work around the technical challenge that we actually solve.
35
+ 2. For the contribution sentence(s), usually mention the technical term/name only; do not explain every detailed step.
36
+ 3. The technical term must be easy to understand; readers should not feel a jump.
37
+ 4. This ability is very important for writing a good abstract.
38
+
39
+ Version 1 local cite:
40
+
41
+ 1. `references/examples/abstract/template-a.md`
42
+
43
+ ## Version 2: Challenge -> Insight -> Contribution
44
+
45
+ Introduce the technical challenge, then use one to two sentences to present the insight for solving the challenge, and then one sentence to present the technical contribution that implements this insight.
46
+
47
+ ### Structure
48
+
49
+ 1. Task.
50
+ 2. Technical challenge for previous methods.
51
+ 3. One sentence introducing the insight for solving the challenge.
52
+ 4. One to two sentences introducing the technical contribution that implements the insight.
53
+ 5. Benefits of technical novelty.
54
+ 6. Experiment summary.
55
+
56
+ ### Expert Notes
57
+
58
+ 1. Discuss previous work around the technical challenge that we actually solve.
59
+ 2. Introduce the insight in one clear sentence.
60
+ 3. For the implementation sentence(s), usually mention the technical term/name only; do not explain every detailed step.
61
+ 4. The technical term must be easy to understand; do not create a jump in reading.
62
+ 5. This ability is very important for writing a good abstract.
63
+
64
+ Version 2 local cite:
65
+
66
+ 1. `references/examples/abstract/template-b.md`
67
+
68
+ ## Version 3: Multiple Contributions
69
+
70
+ Version 3: When there are multiple technical contributions, describe each contribution together with its technical advantage.
71
+
72
+ ### Structure
73
+
74
+ 1. Task.
75
+ 2. If needed, one contrast sentence about prior methods.
76
+ 3. Contribution sentence 1 + technical advantage.
77
+ 4. Contribution sentence 2 + technical advantage.
78
+ 5. Contribution sentence 3 + technical advantage.
79
+ 6. Experiment summary.
80
+
81
+ ### Expert Notes
82
+
83
+ 1. When there are multiple technical contributions, describe each contribution together with its technical advantage.
84
+ 2. The ability to express "contribution + advantage" in one sentence is very important for writing a good abstract.
85
+
86
+ Version 3 local cite:
87
+
88
+ 1. `references/examples/abstract/template-c.md`
89
+
90
+ ## Example Bank
91
+
92
+ 1. `references/examples/abstract-examples.md`
93
+ 2. `references/examples/abstract/template-a.md`
94
+ 3. `references/examples/abstract/template-b.md`
95
+ 4. `references/examples/abstract/template-c.md`
96
+
97
+ ## Abstract Quality Checklist
98
+
99
+ 1. Can a reader identify task, challenge, insight/contribution, and results in one pass?
100
+ 2. Are all major claims supported by experiments?
101
+ 3. Are technical names self-contained and readable?
102
+ 4. Is there any sentence that mixes too many messages?
@@ -0,0 +1,35 @@
1
+ # Conclusion Writing Guide
2
+
3
+ ## Goal
4
+
5
+ Close the paper with clear takeaways and credible limitations.
6
+
7
+ ## Structure
8
+
9
+ 1. Restate solved problem and core technical idea.
10
+ 2. Summarize strongest evidence from experiments.
11
+ 3. State practical impact or new insight.
12
+ 4. Add limitation paragraph.
13
+ 5. End with concrete future direction.
14
+
15
+ ## Limitation Guidance
16
+
17
+ Prefer limitations tied to task goal/setting boundaries, for example:
18
+
19
+ 1. Data regime limitation (e.g., only short sequences).
20
+ 2. Assumption limitation (e.g., controlled viewpoints only).
21
+ 3. Deployment scope limitation (e.g., specific sensor setup).
22
+
23
+ Avoid framing conclusion around fixable implementation flaws unless they critically define your method's scope.
24
+
25
+ ## Distinguish Limitation Types
26
+
27
+ 1. Technical defect: underperforms strong baselines on key metrics or causes unacceptable tradeoff.
28
+ 2. Scope limitation: bounded by current task setting and still competitive vs. current SOTA.
29
+
30
+ ## Template
31
+
32
+ 1. This paper addresses [problem] by proposing [method].
33
+ 2. The key idea is [core insight], which enables [main benefit].
34
+ 3. Experiments show [main gains] across [datasets/settings].
35
+ 4. A current limitation is [scope boundary], and extending to [future setting] is an important next step.
@@ -0,0 +1,45 @@
1
+ # Does My Writing Flow?
2
+
3
+ Note: This file stores the source content extracted from the PDF, with light formatting cleanup for Markdown readability.
4
+
5
+ ## Original Content
6
+
7
+ ### Does My Writing Flow?
8
+
9
+ One of the most frequent questions writers ask themselves or others is "does my writing flow?" Other variations of this question include "does this make sense?" and "can you understand what I am saying?" The term flow is a vague term that writers use when describing some concern of clarity, coherence, or conciseness. However vague this term may be, writers know it is a very important concern about their work. If you find yourself concerned about the flow of your writing, then here are some strategies to improve it.
10
+
11
+ 1. Pretend you are the reader of your paper.
12
+
13
+ - Often when we write, our work makes sense to us because we are the ones who create it. However, at a certain point in the writing process, our writing may become unclear even to us. When we as authors begin to lose sight of our paper's train of thought, other readers are sure to be confused as well.
14
+ - By looking at your paper from the perspective of a reader, you are checking and making sure your writing is clear to someone who might not be as informed of the paper's topic as you are.
15
+ - Some questions you might ask to place yourself in the reader's shoes are:
16
+ 1. Would my classmates be able to understand the level of vocabulary I am using?
17
+ 2. How do my body paragraphs connect back to my thesis, and is the connection easy to see?
18
+ 3. Would someone not in my class understand what I am trying to say?
19
+ 2. Reverse-outlining
20
+
21
+ - Outlining is not only a great pre-writing exercise, but it also can serve as a great post-writing tool. Reverse-outlining means just what it sounds like. It breaks down an already written essay into its basic parts (such as thesis statement, topic-sentences, and the points of proof/explanation used within your body paragraphs), and it allows a writer to see how well topic sentences and paragraphs fit into an essay.
22
+ - Here is how to reverse outline:
23
+ 1. Write down the thesis statement.
24
+ 2. Write down each topic sentence of each body paragraph.
25
+ 3. Also write down the main points of evidence or explanation used within your body paragraphs.
26
+ 4. Check every topic sentence and make sure it is clearly related to a part of your thesis statement.
27
+ 5. Check all points of proof/explanation and make sure they pertain to the topic of the paragraph and provide adequate support.
28
+ 6. If there is a topic sentence that does not clearly relate to the thesis statement, then either revise it and its supporting points of proof/explanation or take it out entirely.
29
+ - If it is easy to write a reverse outline, then it's a good sign that your paper is well-organized. If you have a hard time creating a reverse outline, then your thesis statement and topic-sentences might be unclear.
30
+ 3. Add headings and sections to your paper.
31
+
32
+ - If you are not up to making a complete outline (or if you are not very good at outlining - lots of people aren't), then no need to feel bad. You can add headings and sections to your paper. This method achieves a similar effect to reverse outlining.
33
+ - By splitting a paper into sections and sub-sections with headings, the paper is telling the reader what each part is all about.
34
+ - For most papers, headings are not necessary. However, you can still make use of them as a tool for drafting and revision. By adding headers to the different sections of a paper, you can easily begin to see the main parts of your paper and how they work together.
35
+ 4. Use transitions or "flow" keywords.
36
+
37
+ - Using appropriate transition words improves the flow of your paper. These words act as guide posts, indicating the relationship between thoughts, sentences, or paragraphs. You can always make your essay flow better by adding appropriate transitional words and phrases.
38
+ - Transitional words and phrases:
39
+ - To show causes and effects: accordingly, as a result, because, consequently, hence, so, then, therefore, thus
40
+ - To show comparison: also, in the same way, likewise, similarly
41
+ - To show contrasts or exceptions: although, but, even though, however, in contrast, instead, nevertheless, nonetheless, on the contrary, on the one hand ... on the other hand, still, yet
42
+ - To show examples: even, for example, for instance, indeed, in fact, of course, such as
43
+ - To show place or position: above, adjacent to, below, beyond, finally, furthermore, last, moreover, next, too
44
+ - To show time: after, as soon as, at first, at the same time, before, eventually, finally, immediately, later, meanwhile, next, simultaneously, so far, soon, then, thereafter
45
+ - To signal a summary or conclusion: as a result, as we have seen, finally, in a word, in any event, in brief, in conclusion, in other words, in short, in the end, in a final analysis, on the whole, therefore, thus, to summarize
@@ -0,0 +1,102 @@
1
+ # Experiments Writing Guide
2
+
3
+ ## Goal
4
+
5
+ Convince reviewers with complete evidence on effectiveness, causality, and practical value.
6
+
7
+ ## Three Core Questions
8
+
9
+ 1. Is the method better than strong baselines?
10
+ - Run comparison experiments against strong and recent baselines.
11
+ - Report standard metrics on the main benchmark(s).
12
+ - Include SOTA or strongest public methods, not only weak baselines.
13
+ - Keep protocol fair (same data split, preprocessing, and evaluation settings).
14
+ 2. Which modules/design choices make the gain?
15
+ - Run ablation studies for each key module/design choice.
16
+ - Use remove/replace/disable variants and report delta to full model.
17
+ - Include component interaction ablations when modules are coupled.
18
+ 3. How far can the method generalize under harder settings?
19
+ - Run demos/evaluations on harder or out-of-distribution settings.
20
+ - Add stress-test scenarios (more complex scenes, rarer cases, noisier inputs, or stricter constraints).
21
+ - Report both gains and failure modes to show realistic boundaries.
22
+
23
+ ## Experiment Planning
24
+
25
+ ```mermaid
26
+ flowchart TB
27
+ A["Key Paper Claims"] --> B["What Contributions Are Claimed?"]
28
+ B --> C1["Contribution 1"]
29
+ B --> C2["Contribution 2"]
30
+ B --> C3["Contribution 3"]
31
+ C1 --> D1["Validation Experiment 1"]
32
+ C2 --> D2["Validation Experiment 2"]
33
+ C3 --> D3["Validation Experiment 3"]
34
+
35
+ E["Method Pipeline Figure"] --> F["What Modules and Parameters Matter?"]
36
+ F --> G1["Technical Module 1"]
37
+ F --> G2["Technical Module 2"]
38
+ F --> G3["Key Parameter 1"]
39
+ F --> G4["Key Parameter 2"]
40
+ G1 --> H1["Ablation Study 1"]
41
+ G2 --> H2["Ablation Study 2"]
42
+ G3 --> H3["Ablation Study 3"]
43
+ G4 --> H4["Ablation Study 4"]
44
+ ```
45
+
46
+ ## Experiment Section Decomposition
47
+
48
+ ```mermaid
49
+ flowchart TB
50
+ S1["Experimental Setup"] --> S2["Validation Experiment 1"]
51
+ S2 --> S3["Validation Experiment 2"]
52
+ S3 --> S4["Ablation Studies"]
53
+ ```
54
+
55
+ ## Figure/Table Writing Rules
56
+
57
+ `Good tables are part of experiment communication quality, not decoration.`
58
+
59
+ 1. Figure captions and table captions are equally important in the writing quality of Experiments.
60
+
61
+ ### Hard rules
62
+
63
+ 1. Put caption above the table.
64
+ 2. Avoid vertical lines (`|`) in tabular columns.
65
+ 3. Do not use double rules or dense `\hline` stacks.
66
+ 4. Use `booktabs` style (`\toprule`, `\midrule`, `\bottomrule`) for clean structure.
67
+ 5. Use as few horizontal rules as possible; lines should separate groups, not every row.
68
+ 6. Highlight key numbers (best/second-best or target rows) with subtle color emphasis.
69
+
70
+ ### Readability rules from review practice
71
+
72
+ 1. Label metric direction in column headers (for example `PSNR ↑`, `LPIPS ↓`).
73
+ 2. Add units when needed so values are interpretable without guessing.
74
+ 3. Align text columns left; keep numeric columns consistently aligned.
75
+ 4. Keep numeric precision consistent (same decimal places within a metric column).
76
+ 5. Group multi-dataset or multi-setting results using `\multicolumn` + `\cmidrule`, not vertical separators.
77
+ 6. One table, one message: do not mix unrelated results in a single table.
78
+ 7. If rows represent different attributes/ablations, encode that explicitly in row names or attribute columns.
79
+ 8. Keep caption focused on setting/protocol/notation, not long discussion.
80
+ 9. If there is little detail to explain, use one concise sentence to summarize the main result.
81
+ 10. For single-column figures/tables in two-column papers, prefer placing them in the right column when layout allows, so readers can enter the page from the left-top text without breaking reading flow.
82
+
83
+ ### Minimal LaTeX checklist
84
+
85
+ 1. Add packages in preamble: `\usepackage{booktabs}`, `\usepackage{colortbl,xcolor}` (and optionally `\usepackage{siunitx}` for decimal alignment).
86
+ 2. Replace `\hline`-heavy style with `\toprule/\midrule/\bottomrule`.
87
+ 3. Put `\caption{...}` before `\label{...}` and keep caption above.
88
+ 4. Use restrained highlighting; never color too many cells.
89
+
90
+ ## Recommended Ablation Package
91
+
92
+ 1. One core ablation table for all major contributions.
93
+ 2. Several focused mini-ablations for module-level design choices.
94
+ 3. Matching qualitative visual results for each important ablation.
95
+
96
+ ## Experimental Rigor Checklist
97
+
98
+ 1. Are baselines recent and relevant?
99
+ 2. Are metrics sufficient and standard for this task?
100
+ 3. Is ablation tied to every key design claim?
101
+ 4. Are claims in Abstract/Introduction supported by reported numbers?
102
+ 5. Are limitations of evaluation scope explicitly stated?