dsh-aris-panel 0.1.0

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 (442) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +98 -0
  3. package/README_CN.md +87 -0
  4. package/dsh/checkout.patch.yml +38 -0
  5. package/dsh/client.js +634 -0
  6. package/dsh/cordis.patch.yml +44 -0
  7. package/dsh/index.mjs +76 -0
  8. package/dsh/run-status.mjs +182 -0
  9. package/dsh/scope-limits.mjs +50 -0
  10. package/dsh/workbench.mjs +291 -0
  11. package/mcp-servers/claude-review/README.md +93 -0
  12. package/mcp-servers/claude-review/run_with_claude_aws.sh +49 -0
  13. package/mcp-servers/claude-review/server.py +718 -0
  14. package/mcp-servers/codex-image2/README.md +65 -0
  15. package/mcp-servers/codex-image2/server.py +893 -0
  16. package/mcp-servers/feishu-bridge/requirements.txt +1 -0
  17. package/mcp-servers/feishu-bridge/server.py +240 -0
  18. package/mcp-servers/gemini-review/README.md +171 -0
  19. package/mcp-servers/gemini-review/server.py +1856 -0
  20. package/mcp-servers/llm-chat/requirements.txt +1 -0
  21. package/mcp-servers/llm-chat/server.py +664 -0
  22. package/mcp-servers/manual-review/README.md +133 -0
  23. package/mcp-servers/manual-review/server.py +910 -0
  24. package/mcp-servers/manual-review/ui.html +279 -0
  25. package/mcp-servers/minimax-chat/requirements.txt +1 -0
  26. package/mcp-servers/minimax-chat/server.py +381 -0
  27. package/package.json +51 -0
  28. package/skills/ablation-planner/SKILL.md +123 -0
  29. package/skills/alphaxiv/SKILL.md +196 -0
  30. package/skills/analyze-results/SKILL.md +46 -0
  31. package/skills/arxiv/SKILL.md +248 -0
  32. package/skills/auto-paper-improvement-loop/SKILL.md +651 -0
  33. package/skills/auto-review-loop/SKILL.md +1137 -0
  34. package/skills/auto-review-loop-llm/SKILL.md +259 -0
  35. package/skills/auto-review-loop-minimax/SKILL.md +302 -0
  36. package/skills/citation-audit/SKILL.md +502 -0
  37. package/skills/claims-drafting/SKILL.md +227 -0
  38. package/skills/comm-lit-review/SKILL.md +297 -0
  39. package/skills/deepxiv/SKILL.md +263 -0
  40. package/skills/dse-loop/SKILL.md +296 -0
  41. package/skills/embodiment-description/SKILL.md +129 -0
  42. package/skills/exa-search/SKILL.md +205 -0
  43. package/skills/experiment-audit/SKILL.md +311 -0
  44. package/skills/experiment-bridge/SKILL.md +376 -0
  45. package/skills/experiment-plan/SKILL.md +249 -0
  46. package/skills/experiment-queue/SKILL.md +431 -0
  47. package/skills/experiment-queue/scripts/build_manifest.py +142 -0
  48. package/skills/experiment-queue/scripts/queue_manager.py +433 -0
  49. package/skills/feishu-notify/SKILL.md +156 -0
  50. package/skills/figure-description/SKILL.md +138 -0
  51. package/skills/figure-spec/SKILL.md +262 -0
  52. package/skills/figure-spec/scripts/figure_renderer.py +799 -0
  53. package/skills/formula-derivation/SKILL.md +280 -0
  54. package/skills/gemini-search/SKILL.md +231 -0
  55. package/skills/grant-proposal/SKILL.md +698 -0
  56. package/skills/idea-creator/SKILL.md +542 -0
  57. package/skills/idea-discovery/SKILL.md +521 -0
  58. package/skills/idea-discovery-robot/SKILL.md +363 -0
  59. package/skills/integrity-forensics/SKILL.md +284 -0
  60. package/skills/interview-cheatsheet/SKILL.md +245 -0
  61. package/skills/invention-structuring/SKILL.md +188 -0
  62. package/skills/jurisdiction-format/SKILL.md +192 -0
  63. package/skills/kill-argument/SKILL.md +437 -0
  64. package/skills/mermaid-diagram/SKILL.md +419 -0
  65. package/skills/meta-apply/SKILL.md +141 -0
  66. package/skills/meta-optimize/SKILL.md +437 -0
  67. package/skills/monitor-experiment/SKILL.md +140 -0
  68. package/skills/novelty-check/SKILL.md +101 -0
  69. package/skills/openalex/SKILL.md +237 -0
  70. package/skills/overleaf-sync/SKILL.md +220 -0
  71. package/skills/paper-claim-audit/SKILL.md +348 -0
  72. package/skills/paper-compile/SKILL.md +266 -0
  73. package/skills/paper-figure/SKILL.md +312 -0
  74. package/skills/paper-illustration/SKILL.md +736 -0
  75. package/skills/paper-illustration-image2/SKILL.md +391 -0
  76. package/skills/paper-illustration-image2/scripts/paper_illustration_image2.py +255 -0
  77. package/skills/paper-plan/SKILL.md +386 -0
  78. package/skills/paper-poster/SKILL.md +19 -0
  79. package/skills/paper-poster-html/DESIGN_FINAL.md +176 -0
  80. package/skills/paper-poster-html/IMPLEMENTATION_CONVENTIONS.md +161 -0
  81. package/skills/paper-poster-html/LICENSES/posterly-MIT.txt +21 -0
  82. package/skills/paper-poster-html/NOTICE.md +57 -0
  83. package/skills/paper-poster-html/SKILL.md +323 -0
  84. package/skills/paper-poster-html/scripts/_posterly/__init__.py +0 -0
  85. package/skills/paper-poster-html/scripts/_posterly/canvas.py +200 -0
  86. package/skills/paper-poster-html/scripts/_posterly/measure.py +588 -0
  87. package/skills/paper-poster-html/scripts/_posterly/polish.py +498 -0
  88. package/skills/paper-poster-html/scripts/_posterly/preflight.py +489 -0
  89. package/skills/paper-poster-html/scripts/_posterly/render.py +215 -0
  90. package/skills/paper-poster-html/scripts/_posterly/textutil.py +16 -0
  91. package/skills/paper-poster-html/scripts/_posterly/verify_final.py +171 -0
  92. package/skills/paper-poster-html/scripts/asset_check.py +897 -0
  93. package/skills/paper-poster-html/scripts/extract_pdf_figures.py +666 -0
  94. package/skills/paper-poster-html/scripts/poster_check.py +251 -0
  95. package/skills/paper-poster-html/scripts/preprocess_figures.py +238 -0
  96. package/skills/paper-poster-html/scripts/render_preview.py +217 -0
  97. package/skills/paper-poster-html/scripts/run_gates.py +556 -0
  98. package/skills/paper-poster-html/scripts/style_check.py +1324 -0
  99. package/skills/paper-poster-html/templates/COMPONENTS.md +462 -0
  100. package/skills/paper-poster-html/templates/README.md +170 -0
  101. package/skills/paper-poster-html/templates/landscape_4col.html +1032 -0
  102. package/skills/paper-poster-html/templates/landscape_hero.html +1046 -0
  103. package/skills/paper-poster-html/templates/portrait_2col.html +947 -0
  104. package/skills/paper-poster-html/templates/tokens/acl.json +9 -0
  105. package/skills/paper-poster-html/templates/tokens/cvpr.json +9 -0
  106. package/skills/paper-poster-html/templates/tokens/generic.json +9 -0
  107. package/skills/paper-poster-html/templates/tokens/iclr.json +9 -0
  108. package/skills/paper-poster-html/templates/tokens/icml.json +9 -0
  109. package/skills/paper-poster-html/templates/tokens/neurips.json +9 -0
  110. package/skills/paper-slides/SKILL.md +635 -0
  111. package/skills/paper-talk/SKILL.md +381 -0
  112. package/skills/paper-write/SKILL.md +604 -0
  113. package/skills/paper-write/templates/IEEEtran.bst +2409 -0
  114. package/skills/paper-write/templates/IEEEtran.cls +6347 -0
  115. package/skills/paper-write/templates/iclr2026.tex +84 -0
  116. package/skills/paper-write/templates/icml2025.tex +87 -0
  117. package/skills/paper-write/templates/ieee_conference.tex +89 -0
  118. package/skills/paper-write/templates/ieee_journal.tex +93 -0
  119. package/skills/paper-write/templates/math_commands.tex +48 -0
  120. package/skills/paper-write/templates/neurips2025.tex +80 -0
  121. package/skills/paper-writing/SKILL.md +916 -0
  122. package/skills/patent-novelty-check/SKILL.md +153 -0
  123. package/skills/patent-pipeline/SKILL.md +344 -0
  124. package/skills/patent-review/SKILL.md +203 -0
  125. package/skills/pixel-art/SKILL.md +137 -0
  126. package/skills/prior-art-search/SKILL.md +146 -0
  127. package/skills/proof-checker/SKILL.md +866 -0
  128. package/skills/proof-orchestrator/NOTICE.md +24 -0
  129. package/skills/proof-orchestrator/SKILL.md +254 -0
  130. package/skills/proof-orchestrator/references/audit-output-contract.md +126 -0
  131. package/skills/proof-orchestrator/references/deepseek-routing.md +74 -0
  132. package/skills/proof-orchestrator/references/dispatch-prompts.md +227 -0
  133. package/skills/proof-orchestrator/references/notation-audit.md +135 -0
  134. package/skills/proof-orchestrator/references/proof-audit-rubric.md +70 -0
  135. package/skills/proof-orchestrator/references/stress-tests.md +38 -0
  136. package/skills/proof-writer/SKILL.md +223 -0
  137. package/skills/qzcli/SKILL.md +324 -0
  138. package/skills/rebuttal/SKILL.md +376 -0
  139. package/skills/render-html/SKILL.md +316 -0
  140. package/skills/render-html/scripts/render_html.py +1006 -0
  141. package/skills/render-html/scripts/templates/academic.html +703 -0
  142. package/skills/render-html/scripts/templates/dashboard.html +333 -0
  143. package/skills/research-lit/SKILL.md +756 -0
  144. package/skills/research-pipeline/SKILL.md +384 -0
  145. package/skills/research-refine/SKILL.md +770 -0
  146. package/skills/research-refine-pipeline/SKILL.md +186 -0
  147. package/skills/research-review/SKILL.md +198 -0
  148. package/skills/research-wiki/SKILL.md +461 -0
  149. package/skills/resubmit-pipeline/SKILL.md +447 -0
  150. package/skills/result-to-claim/SKILL.md +311 -0
  151. package/skills/run-experiment/SKILL.md +313 -0
  152. package/skills/semantic-scholar/SKILL.md +236 -0
  153. package/skills/serverless-modal/SKILL.md +335 -0
  154. package/skills/shared-references/acceptance-gate.md +324 -0
  155. package/skills/shared-references/assurance-contract.md +248 -0
  156. package/skills/shared-references/capture-antipatterns.md +78 -0
  157. package/skills/shared-references/citation-discipline.md +583 -0
  158. package/skills/shared-references/compute-env-contract.md +163 -0
  159. package/skills/shared-references/effort-contract.md +183 -0
  160. package/skills/shared-references/evidence-precheck.md +65 -0
  161. package/skills/shared-references/experiment-integrity.md +49 -0
  162. package/skills/shared-references/external-cadence.md +326 -0
  163. package/skills/shared-references/fan-out-pattern.md +366 -0
  164. package/skills/shared-references/injection-hygiene.md +127 -0
  165. package/skills/shared-references/integration-contract.md +461 -0
  166. package/skills/shared-references/output-composition.md +93 -0
  167. package/skills/shared-references/output-language.md +45 -0
  168. package/skills/shared-references/output-manifest.md +49 -0
  169. package/skills/shared-references/output-versioning.md +111 -0
  170. package/skills/shared-references/patent-format-cn.md +199 -0
  171. package/skills/shared-references/patent-format-ep.md +173 -0
  172. package/skills/shared-references/patent-format-us.md +161 -0
  173. package/skills/shared-references/patent-writing-principles.md +197 -0
  174. package/skills/shared-references/prior-art-databases.md +141 -0
  175. package/skills/shared-references/resumable-runs.md +109 -0
  176. package/skills/shared-references/review-scope-limits.md +81 -0
  177. package/skills/shared-references/review-tracing.md +391 -0
  178. package/skills/shared-references/reviewer-independence.md +79 -0
  179. package/skills/shared-references/reviewer-routing.md +852 -0
  180. package/skills/shared-references/skill-governance.md +104 -0
  181. package/skills/shared-references/taste-calibration.md +85 -0
  182. package/skills/shared-references/venue-checklists.md +114 -0
  183. package/skills/shared-references/wiki-helper-resolution.md +134 -0
  184. package/skills/shared-references/writing-principles.md +525 -0
  185. package/skills/skills-codex/README.md +102 -0
  186. package/skills/skills-codex/README_CN.md +100 -0
  187. package/skills/skills-codex/ablation-planner/SKILL.md +126 -0
  188. package/skills/skills-codex/alphaxiv/SKILL.md +186 -0
  189. package/skills/skills-codex/analyze-results/SKILL.md +45 -0
  190. package/skills/skills-codex/arxiv/SKILL.md +210 -0
  191. package/skills/skills-codex/auto-paper-improvement-loop/SKILL.md +574 -0
  192. package/skills/skills-codex/auto-review-loop/SKILL.md +500 -0
  193. package/skills/skills-codex/auto-review-loop-llm/SKILL.md +247 -0
  194. package/skills/skills-codex/auto-review-loop-minimax/SKILL.md +290 -0
  195. package/skills/skills-codex/citation-audit/SKILL.md +504 -0
  196. package/skills/skills-codex/claims-drafting/SKILL.md +239 -0
  197. package/skills/skills-codex/comm-lit-review/SKILL.md +299 -0
  198. package/skills/skills-codex/comm-lit-review/references/domain-taxonomy.md +57 -0
  199. package/skills/skills-codex/comm-lit-review/references/output-template.md +37 -0
  200. package/skills/skills-codex/comm-lit-review/references/source-policy.md +99 -0
  201. package/skills/skills-codex/comm-lit-review/references/venue-tiering.md +112 -0
  202. package/skills/skills-codex/deepxiv/SKILL.md +142 -0
  203. package/skills/skills-codex/dse-loop/SKILL.md +285 -0
  204. package/skills/skills-codex/embodiment-description/SKILL.md +129 -0
  205. package/skills/skills-codex/exa-search/SKILL.md +192 -0
  206. package/skills/skills-codex/experiment-audit/SKILL.md +286 -0
  207. package/skills/skills-codex/experiment-bridge/SKILL.md +356 -0
  208. package/skills/skills-codex/experiment-plan/SKILL.md +249 -0
  209. package/skills/skills-codex/experiment-queue/SKILL.md +401 -0
  210. package/skills/skills-codex/feishu-notify/SKILL.md +155 -0
  211. package/skills/skills-codex/figure-description/SKILL.md +138 -0
  212. package/skills/skills-codex/figure-spec/SKILL.md +252 -0
  213. package/skills/skills-codex/formula-derivation/SKILL.md +280 -0
  214. package/skills/skills-codex/gemini-search/SKILL.md +205 -0
  215. package/skills/skills-codex/grant-proposal/SKILL.md +626 -0
  216. package/skills/skills-codex/idea-creator/SKILL.md +405 -0
  217. package/skills/skills-codex/idea-discovery/SKILL.md +475 -0
  218. package/skills/skills-codex/idea-discovery-robot/SKILL.md +362 -0
  219. package/skills/skills-codex/integrity-forensics/SKILL.md +106 -0
  220. package/skills/skills-codex/interview-cheatsheet/SKILL.md +245 -0
  221. package/skills/skills-codex/invention-structuring/SKILL.md +188 -0
  222. package/skills/skills-codex/jurisdiction-format/SKILL.md +192 -0
  223. package/skills/skills-codex/kill-argument/SKILL.md +403 -0
  224. package/skills/skills-codex/mermaid-diagram/SKILL.md +379 -0
  225. package/skills/skills-codex/meta-apply/SKILL.md +154 -0
  226. package/skills/skills-codex/meta-optimize/SKILL.md +348 -0
  227. package/skills/skills-codex/monitor-experiment/SKILL.md +98 -0
  228. package/skills/skills-codex/novelty-check/SKILL.md +89 -0
  229. package/skills/skills-codex/openalex/SKILL.md +228 -0
  230. package/skills/skills-codex/overleaf-sync/SKILL.md +220 -0
  231. package/skills/skills-codex/paper-claim-audit/SKILL.md +350 -0
  232. package/skills/skills-codex/paper-compile/SKILL.md +253 -0
  233. package/skills/skills-codex/paper-figure/SKILL.md +311 -0
  234. package/skills/skills-codex/paper-illustration/SKILL.md +690 -0
  235. package/skills/skills-codex/paper-illustration-image2/SKILL.md +383 -0
  236. package/skills/skills-codex/paper-illustration-image2/scripts/paper_illustration_image2.py +255 -0
  237. package/skills/skills-codex/paper-plan/SKILL.md +278 -0
  238. package/skills/skills-codex/paper-poster/SKILL.md +19 -0
  239. package/skills/skills-codex/paper-poster-html/SKILL.md +377 -0
  240. package/skills/skills-codex/paper-slides/SKILL.md +571 -0
  241. package/skills/skills-codex/paper-talk/SKILL.md +381 -0
  242. package/skills/skills-codex/paper-write/SKILL.md +411 -0
  243. package/skills/skills-codex/paper-write/templates/IEEEtran.bst +2409 -0
  244. package/skills/skills-codex/paper-write/templates/IEEEtran.cls +6347 -0
  245. package/skills/skills-codex/paper-write/templates/aaai2026.bst +1493 -0
  246. package/skills/skills-codex/paper-write/templates/aaai2026.sty +315 -0
  247. package/skills/skills-codex/paper-write/templates/aaai2026.tex +952 -0
  248. package/skills/skills-codex/paper-write/templates/acl.sty +312 -0
  249. package/skills/skills-codex/paper-write/templates/acl2026.tex +377 -0
  250. package/skills/skills-codex/paper-write/templates/acl_natbib.bst +1940 -0
  251. package/skills/skills-codex/paper-write/templates/acm.bst +3081 -0
  252. package/skills/skills-codex/paper-write/templates/acm_mm2026.tex +204 -0
  253. package/skills/skills-codex/paper-write/templates/acmart.cls +3520 -0
  254. package/skills/skills-codex/paper-write/templates/cvpr.bst +1448 -0
  255. package/skills/skills-codex/paper-write/templates/cvpr.sty +508 -0
  256. package/skills/skills-codex/paper-write/templates/cvpr2026.tex +63 -0
  257. package/skills/skills-codex/paper-write/templates/iclr2026.tex +84 -0
  258. package/skills/skills-codex/paper-write/templates/iclr2026_conference.bst +1440 -0
  259. package/skills/skills-codex/paper-write/templates/iclr2026_conference.sty +246 -0
  260. package/skills/skills-codex/paper-write/templates/icml2026.sty +767 -0
  261. package/skills/skills-codex/paper-write/templates/icml2026.tex +662 -0
  262. package/skills/skills-codex/paper-write/templates/ieee_conference.tex +89 -0
  263. package/skills/skills-codex/paper-write/templates/ieee_journal.tex +93 -0
  264. package/skills/skills-codex/paper-write/templates/math_commands.tex +48 -0
  265. package/skills/skills-codex/paper-write/templates/neurips2026.tex +493 -0
  266. package/skills/skills-codex/paper-write/templates/neurips_2026.sty +437 -0
  267. package/skills/skills-codex/paper-writing/SKILL.md +731 -0
  268. package/skills/skills-codex/patent-novelty-check/SKILL.md +153 -0
  269. package/skills/skills-codex/patent-pipeline/SKILL.md +344 -0
  270. package/skills/skills-codex/patent-review/SKILL.md +202 -0
  271. package/skills/skills-codex/pixel-art/SKILL.md +139 -0
  272. package/skills/skills-codex/prior-art-search/SKILL.md +146 -0
  273. package/skills/skills-codex/proof-checker/SKILL.md +554 -0
  274. package/skills/skills-codex/proof-orchestrator/SKILL.md +260 -0
  275. package/skills/skills-codex/proof-orchestrator/references/audit-output-contract.md +126 -0
  276. package/skills/skills-codex/proof-orchestrator/references/deepseek-routing.md +76 -0
  277. package/skills/skills-codex/proof-orchestrator/references/dispatch-prompts.md +227 -0
  278. package/skills/skills-codex/proof-orchestrator/references/notation-audit.md +135 -0
  279. package/skills/skills-codex/proof-orchestrator/references/proof-audit-rubric.md +70 -0
  280. package/skills/skills-codex/proof-orchestrator/references/stress-tests.md +38 -0
  281. package/skills/skills-codex/proof-writer/SKILL.md +222 -0
  282. package/skills/skills-codex/qzcli/SKILL.md +324 -0
  283. package/skills/skills-codex/rebuttal/SKILL.md +305 -0
  284. package/skills/skills-codex/render-html/SKILL.md +305 -0
  285. package/skills/skills-codex/render-html/scripts/__pycache__/render_html.cpython-314.pyc +0 -0
  286. package/skills/skills-codex/render-html/scripts/render_html.py +909 -0
  287. package/skills/skills-codex/render-html/scripts/templates/academic.html +342 -0
  288. package/skills/skills-codex/render-html/scripts/templates/dashboard.html +333 -0
  289. package/skills/skills-codex/research-lit/SKILL.md +464 -0
  290. package/skills/skills-codex/research-pipeline/SKILL.md +340 -0
  291. package/skills/skills-codex/research-refine/SKILL.md +721 -0
  292. package/skills/skills-codex/research-refine-pipeline/SKILL.md +186 -0
  293. package/skills/skills-codex/research-review/SKILL.md +135 -0
  294. package/skills/skills-codex/research-wiki/SKILL.md +421 -0
  295. package/skills/skills-codex/resubmit-pipeline/SKILL.md +444 -0
  296. package/skills/skills-codex/result-to-claim/SKILL.md +246 -0
  297. package/skills/skills-codex/run-experiment/SKILL.md +236 -0
  298. package/skills/skills-codex/semantic-scholar/SKILL.md +219 -0
  299. package/skills/skills-codex/serverless-modal/SKILL.md +335 -0
  300. package/skills/skills-codex/shared-references/acceptance-gate.md +336 -0
  301. package/skills/skills-codex/shared-references/assurance-contract.md +139 -0
  302. package/skills/skills-codex/shared-references/capture-antipatterns.md +84 -0
  303. package/skills/skills-codex/shared-references/citation-discipline.md +452 -0
  304. package/skills/skills-codex/shared-references/compute-env-contract.md +163 -0
  305. package/skills/skills-codex/shared-references/effort-contract.md +143 -0
  306. package/skills/skills-codex/shared-references/evidence-precheck.md +73 -0
  307. package/skills/skills-codex/shared-references/experiment-integrity.md +49 -0
  308. package/skills/skills-codex/shared-references/external-cadence.md +334 -0
  309. package/skills/skills-codex/shared-references/fan-out-pattern.md +375 -0
  310. package/skills/skills-codex/shared-references/injection-hygiene.md +132 -0
  311. package/skills/skills-codex/shared-references/integration-contract.md +372 -0
  312. package/skills/skills-codex/shared-references/output-composition.md +98 -0
  313. package/skills/skills-codex/shared-references/output-language.md +45 -0
  314. package/skills/skills-codex/shared-references/output-manifest.md +40 -0
  315. package/skills/skills-codex/shared-references/output-versioning.md +111 -0
  316. package/skills/skills-codex/shared-references/patent-format-cn.md +199 -0
  317. package/skills/skills-codex/shared-references/patent-format-ep.md +173 -0
  318. package/skills/skills-codex/shared-references/patent-format-us.md +161 -0
  319. package/skills/skills-codex/shared-references/patent-writing-principles.md +197 -0
  320. package/skills/skills-codex/shared-references/prior-art-databases.md +141 -0
  321. package/skills/skills-codex/shared-references/resumable-runs.md +125 -0
  322. package/skills/skills-codex/shared-references/review-scope-limits.md +81 -0
  323. package/skills/skills-codex/shared-references/review-tracing.md +144 -0
  324. package/skills/skills-codex/shared-references/reviewer-independence.md +66 -0
  325. package/skills/skills-codex/shared-references/reviewer-routing.md +128 -0
  326. package/skills/skills-codex/shared-references/skill-governance.md +119 -0
  327. package/skills/skills-codex/shared-references/taste-calibration.md +90 -0
  328. package/skills/skills-codex/shared-references/venue-checklists.md +73 -0
  329. package/skills/skills-codex/shared-references/wiki-helper-resolution.md +69 -0
  330. package/skills/skills-codex/shared-references/writing-principles.md +525 -0
  331. package/skills/skills-codex/slides-polish/SKILL.md +563 -0
  332. package/skills/skills-codex/specification-writing/SKILL.md +211 -0
  333. package/skills/skills-codex/system-profile/SKILL.md +103 -0
  334. package/skills/skills-codex/training-check/SKILL.md +83 -0
  335. package/skills/skills-codex/vast-gpu/SKILL.md +394 -0
  336. package/skills/skills-codex/web-debug-search/SKILL.md +334 -0
  337. package/skills/skills-codex/wiki-enrich/SKILL.md +255 -0
  338. package/skills/skills-codex/writing-systems-papers/SKILL.md +184 -0
  339. package/skills/skills-codex-claude-review/README.md +79 -0
  340. package/skills/skills-codex-claude-review/README_CN.md +78 -0
  341. package/skills/skills-codex-claude-review/auto-paper-improvement-loop/SKILL.md +581 -0
  342. package/skills/skills-codex-claude-review/auto-review-loop/SKILL.md +510 -0
  343. package/skills/skills-codex-claude-review/novelty-check/SKILL.md +102 -0
  344. package/skills/skills-codex-claude-review/paper-figure/SKILL.md +319 -0
  345. package/skills/skills-codex-claude-review/paper-plan/SKILL.md +287 -0
  346. package/skills/skills-codex-claude-review/paper-write/SKILL.md +420 -0
  347. package/skills/skills-codex-claude-review/research-refine/SKILL.md +732 -0
  348. package/skills/skills-codex-claude-review/research-review/SKILL.md +149 -0
  349. package/skills/skills-codex-gemini-review/README.md +176 -0
  350. package/skills/skills-codex-gemini-review/README_CN.md +175 -0
  351. package/skills/skills-codex-gemini-review/auto-paper-improvement-loop/SKILL.md +331 -0
  352. package/skills/skills-codex-gemini-review/auto-review-loop/SKILL.md +304 -0
  353. package/skills/skills-codex-gemini-review/grant-proposal/SKILL.md +630 -0
  354. package/skills/skills-codex-gemini-review/idea-creator/SKILL.md +263 -0
  355. package/skills/skills-codex-gemini-review/idea-discovery/SKILL.md +275 -0
  356. package/skills/skills-codex-gemini-review/idea-discovery-robot/SKILL.md +365 -0
  357. package/skills/skills-codex-gemini-review/novelty-check/SKILL.md +92 -0
  358. package/skills/skills-codex-gemini-review/paper-figure/SKILL.md +289 -0
  359. package/skills/skills-codex-gemini-review/paper-plan/SKILL.md +265 -0
  360. package/skills/skills-codex-gemini-review/paper-poster-html/SKILL.md +102 -0
  361. package/skills/skills-codex-gemini-review/paper-slides/SKILL.md +582 -0
  362. package/skills/skills-codex-gemini-review/paper-write/SKILL.md +346 -0
  363. package/skills/skills-codex-gemini-review/paper-writing/SKILL.md +312 -0
  364. package/skills/skills-codex-gemini-review/research-refine/SKILL.md +674 -0
  365. package/skills/skills-codex-gemini-review/research-review/SKILL.md +112 -0
  366. package/skills/slides-polish/SKILL.md +565 -0
  367. package/skills/specification-writing/SKILL.md +211 -0
  368. package/skills/system-profile/SKILL.md +103 -0
  369. package/skills/training-check/SKILL.md +132 -0
  370. package/skills/vast-gpu/SKILL.md +394 -0
  371. package/skills/web-debug-search/SKILL.md +334 -0
  372. package/skills/wiki-enrich/SKILL.md +257 -0
  373. package/skills/writing-systems-papers/SKILL.md +184 -0
  374. package/templates/CLAUDE_MD_TEMPLATE.md +29 -0
  375. package/templates/EXPERIMENT_LOG_TEMPLATE.md +47 -0
  376. package/templates/EXPERIMENT_PLAN_TEMPLATE.md +51 -0
  377. package/templates/EXPERIMENT_PLAN_TEMPLATE_CN.md +53 -0
  378. package/templates/FINDINGS_TEMPLATE.md +52 -0
  379. package/templates/IDEA_CANDIDATES_TEMPLATE.md +47 -0
  380. package/templates/IDEA_CANDIDATES_TEMPLATE_CN.md +47 -0
  381. package/templates/INVENTION_BRIEF_TEMPLATE.md +87 -0
  382. package/templates/MANIFEST_TEMPLATE.md +7 -0
  383. package/templates/NARRATIVE_REPORT_TEMPLATE.md +49 -0
  384. package/templates/PAPER_PLAN_TEMPLATE.md +47 -0
  385. package/templates/PATENT_CLAIMS_TEMPLATE.md +78 -0
  386. package/templates/PATENT_SPECIFICATION_TEMPLATE.md +68 -0
  387. package/templates/README.md +57 -0
  388. package/templates/RESEARCH_BRIEF_TEMPLATE.md +35 -0
  389. package/templates/RESEARCH_BRIEF_TEMPLATE_CN.md +41 -0
  390. package/templates/RESEARCH_CONTRACT_TEMPLATE.md +60 -0
  391. package/templates/claude-hooks/corpus_write_guard.json +16 -0
  392. package/templates/claude-hooks/corpus_write_guard.py +85 -0
  393. package/templates/claude-hooks/meta_logging.json +74 -0
  394. package/templates/gitignore-trace.txt +3 -0
  395. package/tools/__pycache__/check_skills_inventory.cpython-314.pyc +0 -0
  396. package/tools/arxiv_fetch.py +311 -0
  397. package/tools/capture_filter.py +126 -0
  398. package/tools/check_skills_inventory.py +273 -0
  399. package/tools/convert_skills_to_llm_chat.py +282 -0
  400. package/tools/copilot_native_evidence.py +818 -0
  401. package/tools/deepxiv_fetch.py +213 -0
  402. package/tools/evidence_check.py +212 -0
  403. package/tools/exa_search.py +425 -0
  404. package/tools/experiment_queue/README.md +118 -0
  405. package/tools/experiment_queue/build_manifest.py +44 -0
  406. package/tools/experiment_queue/queue_manager.py +44 -0
  407. package/tools/extract_paper_style.py +560 -0
  408. package/tools/figure_renderer.py +69 -0
  409. package/tools/forensics_gate.py +669 -0
  410. package/tools/generate_codex_claude_review_overrides.py +299 -0
  411. package/tools/idea_discovery_gate.py +256 -0
  412. package/tools/install_aris.ps1 +1372 -0
  413. package/tools/install_aris.sh +1370 -0
  414. package/tools/install_aris_codex.sh +1023 -0
  415. package/tools/install_aris_copilot.sh +1052 -0
  416. package/tools/iteration_log.py +143 -0
  417. package/tools/lint_skills_helpers.sh +84 -0
  418. package/tools/meta_opt/check_ready.sh +80 -0
  419. package/tools/meta_opt/log_event.sh +91 -0
  420. package/tools/meta_opt/trigger_eval.py +280 -0
  421. package/tools/meta_opt/trigger_evals.sample.json +28 -0
  422. package/tools/openalex_fetch.py +326 -0
  423. package/tools/overleaf_audit.sh +104 -0
  424. package/tools/overleaf_setup.sh +150 -0
  425. package/tools/paper_illustration_image2.py +62 -0
  426. package/tools/provenance.py +294 -0
  427. package/tools/research_wiki.py +1720 -0
  428. package/tools/review_gate.py +502 -0
  429. package/tools/run_state.py +399 -0
  430. package/tools/save_trace.sh +477 -0
  431. package/tools/semantic_scholar_fetch.py +438 -0
  432. package/tools/skill-groups.tsv +116 -0
  433. package/tools/skill_picker.py +238 -0
  434. package/tools/smart_update.ps1 +521 -0
  435. package/tools/smart_update.sh +591 -0
  436. package/tools/smart_update_codex.sh +419 -0
  437. package/tools/smart_update_copilot.sh +605 -0
  438. package/tools/threat_scan.py +222 -0
  439. package/tools/verify_paper_audits.sh +487 -0
  440. package/tools/verify_papers.py +613 -0
  441. package/tools/verify_wiki_coverage.sh +176 -0
  442. package/tools/watchdog.py +485 -0
@@ -0,0 +1,211 @@
1
+ ---
2
+ name: specification-writing
3
+ description: "Write the full patent specification from claims and invention disclosure. Use when user says \"撰写说明书\", \"write specification\", \"写说明书\", \"patent description\", or wants to draft the complete patent specification."
4
+ argument-hint: "[claims-path]"
5
+ allowed-tools: Bash(*), Read, Write, Edit, Grep, Glob, Skill, WebSearch, WebFetch, mcp__codex__codex, mcp__codex__codex-reply
6
+ ---
7
+
8
+ # Specification Writing: Section-by-Section Patent Description
9
+
10
+ Write the patent specification based on: **$ARGUMENTS**
11
+
12
+ Adapted from `/paper-write` for patent specifications. The specification supports the claims -- it is not a paper.
13
+
14
+ ## Constants
15
+
16
+ - `REVIEWER_MODEL = gpt-5.6-sol` — External reviewer for specification quality
17
+ - `JURISDICTION = "auto"` — Inherit from pipeline or detect from args; `CN`, `US`, `EP`, `ALL`
18
+ - `OUTPUT_FORMAT = "markdown"` — Markdown drafts; converted to filing format by `/jurisdiction-format`
19
+ - `OUTPUT_DIR = "patent/"` — Base output directory
20
+ - `LANGUAGE = "auto"` — Auto from jurisdiction: CN->Chinese, US/EP->English
21
+
22
+ ## Inputs
23
+
24
+ 1. `patent/CLAIMS.md` — the drafted claims (primary source)
25
+ 2. `patent/INVENTION_DISCLOSURE.md` — invention decomposition
26
+ 3. `patent/PRIOR_ART_REPORT.md` — for background section
27
+ 4. User-provided figures (if any)
28
+
29
+ ## Shared References
30
+
31
+ Load `../shared-references/patent-writing-principles.md` for specification writing rules, language guidelines, and reference numeral conventions.
32
+ Load `../shared-references/patent-format-cn.md` or `patent-format-us.md` or `patent-format-ep.md` based on jurisdiction.
33
+
34
+ ## Workflow
35
+
36
+ ### Step 1: Initialize Specification Structure
37
+
38
+ Create the output directory and section files:
39
+
40
+ ```
41
+ patent/specification/
42
+ ├── title.md
43
+ ├── technical_field.md
44
+ ├── background.md
45
+ ├── summary.md
46
+ ├── drawings_description.md
47
+ ├── detailed_description.md
48
+ └── abstract.md
49
+ ```
50
+
51
+ ### Step 2: Write Title (发明名称)
52
+
53
+ - Must match the broadest claim scope
54
+ - No trademarks, no "improved" or "new" or "novel"
55
+ - CN format: "一种[领域]的[技术主题]" or "[领域]的[技术主题]装置"
56
+ - US/EP format: "[Technical topic] for [purpose]" or "[Technical topic] and method thereof"
57
+ - Keep concise (CN: typically under 25 characters; US: under 500 characters)
58
+
59
+ ### Step 3: Write Technical Field (技术领域)
60
+
61
+ 1-2 paragraphs identifying the technical domain:
62
+ - "The present invention relates to [broad field], and more particularly to [specific area]."
63
+ - CN: "本发明涉及[技术领域],具体涉及[具体领域]。"
64
+
65
+ ### Step 4: Write Background (背景技术)
66
+
67
+ This is NOT a literature review. It directly sets up the problem.
68
+
69
+ Structure:
70
+ 1. Describe the closest prior art approaches (2-3 paragraphs)
71
+ 2. Identify specific technical deficiencies of each approach
72
+ 3. The deficiencies must be technical, not commercial or social
73
+ 4. DO NOT admit the prior art is "superior" or "better"
74
+ 5. DO NOT cite specific patent numbers unless they are known prior art (citations go in IDS for US, or Background section for CN)
75
+
76
+ CN format: "背景技术" section describing existing technology and its shortcomings.
77
+
78
+ ### Step 5: Write Summary (发明内容)
79
+
80
+ Three parts, directly mirroring INVENTION_DISCLOSURE.md:
81
+
82
+ **Technical Problem (要解决的技术问题)**:
83
+ - State the problem derived from background deficiencies
84
+ - CN: "本发明要解决的技术问题是..."
85
+
86
+ **Technical Solution (技术方案)**:
87
+ - Describe how the invention solves the problem
88
+ - Must provide support for ALL claim elements
89
+ - Start from the broadest claim and describe the core inventive concept
90
+ - CN: "为解决上述技术问题,本发明采用的技术方案是:..."
91
+ - **NO formulas, NO mathematical derivations, NO circuit models** — these belong in 具体实施方式, not 发明内容
92
+
93
+ **Advantages (有益效果)**:
94
+ - Benefits derived from the structural/technical features (qualitative reasoning)
95
+ - CN: "本发明的有益效果是:..."
96
+ - **NO specific numerical results** (e.g., "detection limit 70μm", "response time 105ms") — these are experimental findings, not invention properties
97
+ - Frame advantages structurally: "由于采用了...结构,因此具有...效果"
98
+
99
+ ### Step 6: Write Brief Description of Drawings (附图说明)
100
+
101
+ Invoke `/figure-description` as a sub-skill if user has provided figures:
102
+ ```
103
+ /figure-description "patent/figures/"
104
+ ```
105
+
106
+ If no user figures, describe what figures should exist based on the claims.
107
+
108
+ Format:
109
+ - CN: "图1是...的示意图;图2是...的流程图;"
110
+ - US: "FIG. 1 is a block diagram showing...; FIG. 2 is a flowchart illustrating..."
111
+
112
+ ### Step 7: Write Detailed Description (具体实施方式)
113
+
114
+ Invoke `/embodiment-description` as a sub-skill:
115
+ ```
116
+ /embodiment-description "patent/CLAIMS.md"
117
+ ```
118
+
119
+ This section must:
120
+ - Describe at least one complete embodiment with reference numerals
121
+ - Enable a POSITA to make and use the invention
122
+ - Support every claim element with explicit description
123
+ - Include variations and alternatives for broader claim interpretation
124
+
125
+ ### Step 8: Write Abstract (摘要)
126
+
127
+ Jurisdiction-specific word limits:
128
+
129
+ | Jurisdiction | Word Limit | Notes |
130
+ |-------------|-----------|-------|
131
+ | CN | 300 words (Chinese characters) | Include most representative claim reference |
132
+ | US | 150 words (2500 characters) | Enable efficient searching, no legal phrases |
133
+ | EP | ~150 words | No statements on merits or value |
134
+
135
+ The abstract summarizes:
136
+ 1. The technical field
137
+ 2. The problem being solved
138
+ 3. The technical solution (core features)
139
+ 4. Key advantages
140
+
141
+ ### Step 9: Claim Support Verification
142
+
143
+ Verify every claim element finds support in the specification:
144
+
145
+ | Claim | Element | Specification Section | Paragraph(s) | Reference Numeral |
146
+ |-------|---------|----------------------|-------------|-------------------|
147
+ | 1 | step a | detailed_description | ¶3 | 202 |
148
+ | 1 | step b | detailed_description | ¶4 | 204 |
149
+ | X | component A | detailed_description | ¶2 | 102 |
150
+
151
+ If any element lacks support, add the necessary description before proceeding.
152
+
153
+ ### Step 10: Cross-Model Review
154
+
155
+ Call `REVIEWER_MODEL` via `mcp__codex__codex` with xhigh reasoning:
156
+
157
+ ```
158
+ mcp__codex__codex:
159
+ model: gpt-5.6-sol
160
+ config: {"model_reasoning_effort": "xhigh"}
161
+ prompt: |
162
+ You are a patent examiner reviewing a specification for completeness.
163
+ CLAIMS: [all claims]
164
+ SPECIFICATION: [all specification sections]
165
+
166
+ Check for:
167
+ 1. Written description support: Does every claim element have explicit or inherent support?
168
+ 2. Enablement: Can a POSITA practice the invention from this specification?
169
+ 3. Consistency: Do reference numerals match across figures and specification?
170
+ 4. Language quality: Any subjective terms, relative terms without definition, or result-to-be-achieved language?
171
+ 5. Missing embodiments: Are there claim features that need additional embodiments?
172
+ 6. Background deficiencies: Are they technical and specific enough?
173
+ ```
174
+
175
+ ### Step 11: Output
176
+
177
+ All specification sections are in `patent/specification/`.
178
+
179
+ Summary file: `patent/specification/SPECIFICATION_INDEX.md` with:
180
+ ```markdown
181
+ ## Patent Specification
182
+
183
+ ### Sections
184
+ | Section | File | Word Count | Status |
185
+ |---------|------|-----------|--------|
186
+ | Title | title.md | | Complete |
187
+ | Technical Field | technical_field.md | | Complete |
188
+ | Background | background.md | | Complete |
189
+ | Summary | summary.md | | Complete |
190
+ | Drawings Description | drawings_description.md | | Complete |
191
+ | Detailed Description | detailed_description.md | | Complete |
192
+ | Abstract | abstract.md | | Complete |
193
+
194
+ ### Claim Support Status
195
+ | Claim | Elements Supported | Elements Missing |
196
+ |-------|-------------------|-----------------|
197
+ | 1 | All | None |
198
+ | X | All | None |
199
+ ```
200
+
201
+ ## Key Rules
202
+
203
+ - The specification supports the claims, not the other way around. Every claim element must have support.
204
+ - Use consistent terminology -- same word for the same concept throughout.
205
+ - DO NOT include experimental results, accuracy metrics, or empirical evaluations.
206
+ - DO NOT use subjective language ("excellent", "surprising", "superior").
207
+ - Reference numerals must be consistent: same component, same numeral, everywhere.
208
+ - Background section describes specific deficiencies, not general "need for improvement."
209
+ - Multiple embodiments strengthen the specification but are not always required.
210
+ - Large file handling: if a Write operation fails, retry with Bash `cat <<'EOF'` heredoc.
211
+ - If `mcp__codex__codex` is not available, skip cross-model review and note it in the output.
@@ -0,0 +1,103 @@
1
+ ---
2
+ name: system-profile
3
+ description: "Profile a target (script, process, GPU, memory, interconnect) for performance analysis. Use when user says \"profile\", \"benchmark\", \"bottleneck\", or wants performance analysis."
4
+ argument-hint: '<target, e.g. "train.py", "gpu", "pid 1234", "vllm serving">'
5
+ ---
6
+
7
+ # System Profile
8
+
9
+ Profile the specified target and summarize the results. Target: $ARGUMENTS
10
+
11
+ ## Instructions
12
+
13
+ You are a profiling assistant. Based on the user's target, choose appropriate profiling strategies, **including writing instrumentation code when needed**, then run profiling, analyze results, and produce a summary.
14
+
15
+ ### Step 1: Determine the profiling target
16
+
17
+ Parse `$ARGUMENTS` to understand what to profile. Examples:
18
+ - A Python script or module
19
+ - A running process (PID or service name)
20
+ - A specific function or code block
21
+ - An entire framework or system (e.g., "autogen", "vllm serving") — profile its end-to-end execution, identify bottlenecks across components
22
+ - "gpu" / "interconnect" / "memory" for focused profiling
23
+
24
+ If `$ARGUMENTS` is empty or unclear, ask the user.
25
+
26
+ ### Step 2: Choose profiling methods
27
+
28
+ Select from external tools and/or code instrumentation as appropriate. Don't limit yourself to the examples below — use whatever makes sense for the target.
29
+
30
+ **External tools** (check availability first):
31
+ - CPU: `cProfile`, `py-spy`, `line_profiler`, `perf stat`, `/usr/bin/time -v`
32
+ - Memory: `tracemalloc`, `memory_profiler`, `memray`
33
+ - GPU: `nvidia-smi`, `nvidia-smi dmon`, `nvitop`, `torch.profiler`, `nsys`
34
+ - Interconnect: `nvidia-smi topo -m`, `nvidia-smi nvlink`, `NCCL_DEBUG=INFO`
35
+ - System: `strace -c`, `iostat`, `vmstat`
36
+
37
+ **Code instrumentation** — when external tools are insufficient, write and insert profiling code into the target. Typical scenarios:
38
+ - Timing specific code blocks (wall time vs CPU time)
39
+ - Measuring CPU-GPU or GPU-GPU transfer size, frequency, and bandwidth
40
+ - Tracking memory allocation across CPU and GPU to detect redundancy
41
+ - Wrapping NCCL collectives to measure latency and throughput
42
+ - Adding CUDA event timing around kernels
43
+
44
+ Design the instrumentation based on what you observe in the code — don't use a fixed template.
45
+
46
+ ### Step 3: Key dimensions to investigate
47
+
48
+ Depending on the target, focus on some or all of these:
49
+
50
+ **CPU overhead**
51
+ - Context switching (voluntary / involuntary)
52
+ - CPU utilization: ratio of CPU time to wall time
53
+ - Per-function execution time hotspots
54
+
55
+ **Memory overhead**
56
+ - CPU and GPU memory usage (allocated vs reserved vs peak)
57
+ - Redundant replication: same data living on both CPU and GPU
58
+ - Per-device allocation balance in multi-GPU setups
59
+
60
+ **Interconnect & communication**
61
+ - CPU-GPU transfer: frequency, per-transfer size, total volume, bandwidth achieved
62
+ - GPU-GPU transfer: P2P bandwidth, NVLink vs PCIe topology impact
63
+ - NCCL collectives: operation type, message size distribution, latency
64
+ - Communication-to-computation ratio
65
+
66
+ **GPU compute**
67
+ - SM utilization, kernel launch overhead
68
+ - Memory bandwidth utilization vs peak
69
+
70
+ ### Step 4: Instrumentation guidelines
71
+
72
+ When inserting code into the target:
73
+ 1. Read and understand the target code first
74
+ 2. Prefer wrapping (decorator, context manager, standalone runner) over inline edits
75
+ 3. If inline edits are necessary, mark them clearly (e.g., `# [PROFILE]` comments)
76
+ 4. Minimize observer effect — don't instrument tight inner loops; sample instead
77
+ 5. Collect results into a structured log, don't scatter print statements
78
+
79
+ ### Step 5: Run profiling
80
+
81
+ 1. Check available tools and hardware topology
82
+ 2. Run the chosen methods, capture all output
83
+ 3. Save artifacts (flamegraphs, traces, logs) to `./profile_output/`
84
+
85
+ ### Step 6: Produce the report
86
+
87
+ **Part A — Profiling results** (structured tables by dimension, as applicable):
88
+ - CPU overhead table
89
+ - Memory overhead table (with redundancy column)
90
+ - Interconnect table (transfer type / frequency / size / latency / bandwidth)
91
+ - Hotspots / bottleneck identification
92
+ - Actionable recommendations ranked by expected impact
93
+
94
+ **Part B — Instrumentation changelog** (MANDATORY):
95
+ List every file that was modified or created for profiling purposes:
96
+
97
+ | File | Change type | What was added/modified | Line(s) |
98
+ |------|-------------|------------------------|---------|
99
+ | ... | modified | ... | ... |
100
+ | ... | created | ... | — |
101
+
102
+ This allows the user to review and revert all instrumentation changes.
103
+ Offer to clean up (remove all instrumentation) when the user is done.
@@ -0,0 +1,132 @@
1
+ ---
2
+ name: training-check
3
+ description: Periodically check WandB metrics during training to catch problems early (NaN, loss divergence, idle GPUs). Avoids wasting GPU hours on broken runs. Use when training is running and you want automated health checks.
4
+ argument-hint: "[wandb-run-path]"
5
+ allowed-tools: Bash(*), Read, Grep, Glob, Write, Edit, mcp__codex__codex, mcp__codex__codex-reply
6
+ ---
7
+
8
+ # Training Check
9
+
10
+ Periodically read WandB metrics during training to catch problems early. Do not wait until training finishes to discover it was a waste of GPU time.
11
+
12
+ > ⏱ This skill is **correctly** cron-wired (see below): it polls
13
+ > machine-checkable training health (NaN / divergence / idle GPU) — the additive
14
+ > external-wait shape in
15
+ > [`shared-references/external-cadence.md`](../shared-references/external-cadence.md).
16
+ > The occasional Codex call for an ambiguous metric is a **one-shot** check per
17
+ > tick, not a multi-round verdict loop, so it stays additive — it never grows
18
+ > into a wrapped verdict skill.
19
+
20
+ ## Context: $ARGUMENTS
21
+
22
+ ## Constants
23
+
24
+ - WANDB_ENTITY and WANDB_PROJECT: read from CLAUDE.md or passed as argument (format: `entity/project/run_id`)
25
+ - CHECK_INTERVAL: starts at 10 minutes, then gradually increases if consistently healthy: 10 min → 20 min → 30 min → 60 min (cap)
26
+ - REVIEWER_MODEL = `gpt-5.6-sol` — used via Codex MCP for ambiguous cases only
27
+
28
+ ## When to Use
29
+
30
+ - After training is confirmed running (session alive, loss decreasing for first few steps)
31
+ - Set up via CronCreate to fire periodically during training
32
+ - **This skill checks training QUALITY, not process HEALTH.** Process health (session alive, GPU utilization) is [watchdog.py](../../tools/watchdog.py)'s job.
33
+
34
+ ## Workflow
35
+
36
+ ### Step 1: Read WandB Metrics
37
+
38
+ ```python
39
+ import wandb
40
+ api = wandb.Api()
41
+ run = api.run("<entity>/<project>/<run_id>")
42
+ history = run.history()
43
+ ```
44
+
45
+ If WandB is unreachable (API error, network issue), fall back to reading the log file directly via SSH:
46
+ ```bash
47
+ ssh server "tail -100 /path/to/training.log"
48
+ ```
49
+
50
+ Check these signals:
51
+ - **Loss trend**: Is training loss decreasing over the last N steps?
52
+ - **Eval metrics**: Are evaluation metrics improving (or at least not degrading)?
53
+ - **NaN / Inf**: Any NaN or Inf values in loss or gradients?
54
+ - **Spikes**: Sudden large jumps in loss (>10x normal variance)?
55
+ - **Learning rate**: Is the schedule behaving as expected?
56
+ - **Gradient norm**: Exploding or vanishing?
57
+
58
+ ### Step 2: Judgment
59
+
60
+ | Signal | Judgment | Action |
61
+ |--------|----------|--------|
62
+ | NaN/Inf in loss | **Clearly bad** | Stop training, investigate |
63
+ | Loss diverging (increasing for >N steps) | **Clearly bad** | Stop training, investigate |
64
+ | Eval metrics significantly worse than baseline | **Clearly bad** | Stop training, investigate |
65
+ | Loss decreasing, metrics improving | **Clearly fine** | Continue, increase check interval |
66
+ | Loss flat but not diverging | **Unsure** | → Step 3 (Codex judgment) |
67
+ | Metrics noisy, can't tell trend | **Unsure** | → Step 3 (Codex judgment) |
68
+ | Slightly worse than baseline but still early | **Unsure** | → Step 3 (Codex judgment) |
69
+
70
+ ### Step 3: Codex Judgment (only when unsure)
71
+
72
+ Only escalate to Codex when the signal is ambiguous. For clearly good or clearly bad signals, act directly.
73
+
74
+ ```
75
+ mcp__codex__codex:
76
+ model: gpt-5.6-sol
77
+ config: {"model_reasoning_effort": "xhigh"}
78
+ prompt: |
79
+ TRAINING HEALTH CHECK — need your judgment on ambiguous metrics.
80
+
81
+ Run: <entity>/<project>/<run_id>
82
+ Current epoch/step: X / Y total
83
+ Training loss (last 10 checkpoints): [values]
84
+ Eval metrics (last 3 evals): [values]
85
+ Baseline reference: [numbers from paper/reproduction]
86
+
87
+ What I'm unsure about: [specific concern]
88
+
89
+ Please respond with exactly one of:
90
+ - STOP: clearly problematic, should kill training
91
+ - CONTINUE: looks fine, check again next interval
92
+ - WAIT: not enough data to judge, check again sooner
93
+ ```
94
+
95
+ ### Step 4: Act
96
+
97
+ | Decision | Action |
98
+ |----------|--------|
99
+ | **Stop** | Kill the training session. Save the WandB run URL, key metrics, and reason for stopping. Log to project notes for debugging. |
100
+ | **Continue** | Do nothing. Will be invoked again at next interval (increase interval if consistently healthy). |
101
+ | **Wait** | Do nothing but keep the current short interval (don't increase). |
102
+
103
+ ## Integration with Watchdog
104
+
105
+ Training-check and [watchdog.py](../../tools/watchdog.py) operate at different levels:
106
+
107
+ | Layer | Tool | What it checks | Frequency |
108
+ |-------|------|----------------|-----------|
109
+ | Process health | watchdog.py | Session alive? GPU active? | Every 60s (continuous) |
110
+ | Training quality | training-check | Loss trend? Metrics improving? | Every 10-60 min (periodic) |
111
+
112
+ Use both together:
113
+ - Watchdog catches crashes and idle GPUs immediately
114
+ - Training-check catches subtle quality issues (loss plateau, metric degradation)
115
+
116
+ ## Rules
117
+
118
+ - Do not stop training on first sign of noise — some loss spikes are normal. Look at **trends over multiple checkpoints**.
119
+ - When stopping training, always save the WandB run URL and key metrics as evidence.
120
+ - If both WandB and log files are unreachable, report the connectivity issue and try again next interval. Do not assume training is broken.
121
+ - Gradually increase check interval when healthy (10 → 20 → 30 → 60 min). Reset to 10 min after any anomaly.
122
+ - This skill is meant to be automated via CronCreate — do not ask the user whether to set it up. Just set it.
123
+
124
+ ## CronCreate Setup Example
125
+
126
+ ```
127
+ After training is confirmed stable:
128
+ CronCreate (recurring, every 10 minutes initially):
129
+ "Run /training-check for wandb run <entity>/<project>/<run_id>"
130
+ ```
131
+
132
+ As the check interval increases, delete the old CronCreate job and create a new one with the longer interval.