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,698 @@
1
+ ---
2
+ name: grant-proposal
3
+ description: "Draft a structured grant proposal from research ideas and literature. Supports KAKENHI (Japan), NSF (US), NSFC (China, including 面上/青年/优青/杰青/海外优青/重点), ERC (EU), DFG (Germany), SNSF (Switzerland), ARC (Australia), NWO (Netherlands), and generic formats. Use when user says \"write grant\", \"grant proposal\", \"申請書\", \"write KAKENHI\", \"科研費\", \"基金申请\", \"写基金\", \"NSF proposal\", or wants to turn research ideas into a funding application."
4
+ argument-hint: "[research-direction — grant-type] [— style-ref: <source>]"
5
+ allowed-tools: Bash(*), Read, Write, Edit, Grep, Glob, WebSearch, WebFetch, Skill, mcp__codex__codex, mcp__codex__codex-reply
6
+ ---
7
+
8
+ # Grant Proposal: From Research Ideas to Fundable Application
9
+
10
+ Draft a grant proposal based on: **$ARGUMENTS**
11
+
12
+ ## Overview
13
+
14
+ This skill turns validated research ideas into a structured, reviewer-ready grant proposal. It chains sub-skills into a grant-specific pipeline:
15
+
16
+ ```
17
+ /research-lit → /novelty-check → [structure design] → [draft] → /research-review → [revise] → GRANT_PROPOSAL.md
18
+ (survey) (verify gap) (aims + matrix) (prose) (panel review) (fix) (done!)
19
+ ```
20
+
21
+ **This is a parallel branch, not part of the linear Workflow 1→1.5→2→3 pipeline.** After `/idea-discovery` produces validated ideas, the user can either:
22
+ - Go to `/experiment-bridge` → `/auto-review-loop` → `/paper-writing` (implement & publish)
23
+ - Go to `/grant-proposal` (write funding application first, then implement after funding)
24
+
25
+ ```
26
+ ┌→ /experiment-bridge → /auto-review-loop → /paper-writing (publish track)
27
+ /idea-discovery ────┤
28
+ └→ /grant-proposal → [get funded] → /experiment-bridge → ... (funding track)
29
+ ```
30
+
31
+ Grant proposals argue for **future work** (feasibility + potential), not completed work (results + claims). This skill handles the unique requirements of grant writing: narrative arc design, reviewer-facing structure, budget justification, timeline planning, and agency-specific formatting.
32
+
33
+ ## Constants
34
+
35
+ - **GRANT_TYPE = `KAKENHI`** — Default grant type. Supported: `KAKENHI`, `NSF`, `NSFC`, `ERC`, `DFG`, `SNSF`, `ARC`, `NWO`, `GENERIC`. Override via argument (e.g., `/grant-proposal "topic — NSF"`).
36
+ - **GRANT_SUBTYPE = `auto`** — Sub-type within the grant agency. Examples: KAKENHI `Start-up`/`Wakate`/`Kiban-B`; NSFC `Youth`/`Excellent-Youth`/`Distinguished`/`Overseas`/`Key`; NSF `CAREER`/`CRII`/`Standard`. Auto-detected from argument or defaults to the most common sub-type.
37
+ - **REVIEWER_MODEL = `gpt-5.6-sol`** — Model used via Codex MCP for proposal review. Must be an OpenAI model (e.g., `gpt-5.6-sol`, `o3`, `gpt-4o`).
38
+ - **OUTPUT_FORMAT = `markdown`** — Output format. Supported: `markdown`, `latex`. LaTeX uses grant-specific templates when available.
39
+ - **MAX_REVIEW_ROUNDS = 2** — Maximum external review-revise cycles before finalizing.
40
+ - **OUTPUT_DIR = `grant-proposal/`** — Directory for generated proposal files.
41
+ - **LANGUAGE = `auto`** — Output language. Auto-detected from grant type: KAKENHI→Japanese, NSF→English, NSFC→Chinese, ERC→English, DFG→English (or German), SNSF→English, ARC→English, NWO→English. Override explicitly if needed.
42
+ - **AUTO_PROCEED = false** — At each checkpoint, **always wait for explicit user confirmation** before proceeding. Grant proposals require PI-specific judgment at every stage. Set `true` only if user explicitly requests fully autonomous mode.
43
+
44
+ > 💡 These are defaults. Override by telling the skill, e.g., `/grant-proposal "topic — NSF CAREER, latex output"` or `/grant-proposal "topic — NSFC Youth, language: English"`.
45
+
46
+ ## Optional: Style reference (`— style-ref: <source>`, opt-in)
47
+
48
+ Lets the PI steer the proposal's **structural** layout (section order tendency, paragraph length, figure density, citation style) toward a successful past proposal or paper they'd like to mirror. **Default OFF — when the user does not pass `— style-ref`, do nothing differently from before.**
49
+
50
+ Only when `— style-ref: <source>` appears in `$ARGUMENTS`, run the helper FIRST, before drafting:
51
+
52
+ ```bash
53
+ # Resolve $STYLE_HELPER via the canonical strict-safe chain (see
54
+ # shared-references/integration-contract.md §2). Policy A — gate:
55
+ # unresolved helper means --style-ref cannot be satisfied, so abort.
56
+ cd "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" || exit 1
57
+ if [ -z "${ARIS_REPO:-}" ] && [ -f .aris/installed-skills.txt ]; then
58
+ ARIS_REPO=$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills.txt 2>/dev/null) || true
59
+ fi
60
+ if [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ]; then
61
+ ARIS_REPO=$(cat "$HOME/.aris/repo" 2>/dev/null) || true
62
+ fi
63
+ STYLE_HELPER=".aris/tools/extract_paper_style.py"
64
+ [ -f "$STYLE_HELPER" ] || STYLE_HELPER="tools/extract_paper_style.py"
65
+ [ -f "$STYLE_HELPER" ] || { [ -n "${ARIS_REPO:-}" ] && STYLE_HELPER="$ARIS_REPO/tools/extract_paper_style.py"; }
66
+ [ -f "$STYLE_HELPER" ] || {
67
+ echo "ERROR: extract_paper_style.py not resolved at .aris/tools/, tools/, \$ARIS_REPO/tools/, or via ~/.aris/repo." >&2
68
+ echo " Fix: rerun bash tools/install_aris.sh or smart_update.sh (refreshes ~/.aris/repo), export ARIS_REPO, or copy the helper to tools/." >&2
69
+ echo " --style-ref cannot be satisfied; aborting." >&2
70
+ exit 1
71
+ }
72
+ STYLE_STATUS=0
73
+ CACHE=$(python3 "$STYLE_HELPER" --source "<source>") || STYLE_STATUS=$?
74
+ case "$STYLE_STATUS" in
75
+ 0) ;; # use $CACHE/style_profile.md as structural guidance
76
+ 2) echo "warning: style-ref skipped (missing optional dep)" >&2 ;;
77
+ 3) echo "error: --style-ref source failed; aborting proposal" >&2 ; exit 1 ;;
78
+ *) echo "error: helper failed unexpectedly; aborting proposal" >&2 ; exit 1 ;;
79
+ esac
80
+ ```
81
+
82
+ Sources accepted: local TeX dir / file, local PDF, arXiv id, http(s) URL. Overleaf URLs/IDs are rejected — clone the project locally first and pass the local path.
83
+
84
+ **Strict rules** (full contract in `tools/extract_paper_style.py` docstring):
85
+
86
+ - Use `style_profile.md` to align paragraph length tendency, figure budget, and citation density. Grant-type-mandated section order (KAKENHI 研究目的 → 研究計画・方法 → 準備状況, NSF Intellectual Merit → Broader Impacts, etc.) **always takes precedence** — the agency template wins, the style ref only refines secondary structure.
87
+ - **Never copy proposal prose, claims, vision statements, or budget items** from anything reachable through the cache. The reference might be someone else's funded proposal; reproducing language risks plagiarism.
88
+ - **Never pass `— style-ref` (or the cache contents) to the GPT-5.6-Sol reviewer sub-agent** when it scores the draft — the proposal must be judged on its own merits.
89
+
90
+ ## Grant Type Specifications
91
+
92
+ ### KAKENHI (Japan — JSPS)
93
+
94
+ | Field | Detail |
95
+ |-------|--------|
96
+ | **Sections** | 研究目的 (Research Objective), 研究計画・方法 (Plan & Methods), 準備状況 (Preparation Status), 人権の保護 (Ethics, if applicable) |
97
+ | **Sub-types** | 基盤研究 A/B/C (Kiban), 若手研究 (Wakate), 研究活動スタート支援 (Start-up), 国際共同研究 (International), 学術変革領域 (Transformative), 挑戦的研究 (Challenging), DC1/DC2 (doctoral) |
98
+ | **Language** | Japanese (English technical terms acceptable) |
99
+ | **Review criteria** | 学術的重要性 (academic significance), 独創性 (originality), 研究計画の妥当性 (plan feasibility), 研究遂行能力 (PI capability) |
100
+ | **Cultural norms** | Explicit yearly milestones (Year 1 / Year 2), budget justification integrated into plan, emphasize 社会的意義 (societal significance), concrete expected outputs (papers, datasets), reference KAKEN database for related funded projects |
101
+
102
+ ### NSF (US)
103
+
104
+ | Field | Detail |
105
+ |-------|--------|
106
+ | **Sections** | Project Summary (1p), Project Description (15p max), References Cited, Biographical Sketch, Budget Justification, Data Management Plan |
107
+ | **Sub-types** | Standard Grant, CAREER (early career), CRII (research initiation), RAPID, EAGER |
108
+ | **Language** | English |
109
+ | **Review criteria** | Intellectual Merit, Broader Impacts |
110
+ | **Cultural norms** | Aim-based structure (Aim 1/2/3), preliminary data strongly expected, broader impacts must be concrete and specific (not generic "benefit society"), Results from Prior Support section |
111
+
112
+ ### NSFC (China — 国家自然科学基金)
113
+
114
+ | Field | Detail |
115
+ |-------|--------|
116
+ | **Sections** | 立项依据 (Rationale & Significance), 研究内容 (Content), 研究目标 (Objectives), 研究方案 (Plan & Methods), 可行性分析 (Feasibility), 创新性 (Innovation Points), 预期成果 (Expected Outcomes), 研究基础 (PI Foundation & Track Record) |
117
+ | **Sub-types** | 面上项目 (General Program) — emphasis on scientific problem and research accumulation; 青年基金 (Young Scientists Fund) — age ≤35, emphasis on independence and growth potential; 优秀青年基金/优青 (Excellent Young Scientists) — age ≤38, emphasis on outstanding achievements; 杰出青年基金/杰青 (Distinguished Young Scientists) — age ≤45, emphasis on international-leading level; 海外优青 (Overseas Excellent Young Scientists) — emphasis on overseas experience and return contribution plan; 重点项目 (Key Program) — emphasis on systematic in-depth research |
118
+ | **Language** | Chinese |
119
+ | **Review criteria** | 科学意义 (scientific significance), 创新性 (innovation), 可行性 (feasibility), 研究队伍 (team qualification) |
120
+ | **Cultural norms** | Heavy emphasis on 国际前沿 (international frontier) positioning, detailed feasibility analysis, explicit citation of applicant's prior publications, 研究基础 section is critical for demonstrating PI capability |
121
+
122
+ ### ERC (EU — European Research Council)
123
+
124
+ | Field | Detail |
125
+ |-------|--------|
126
+ | **Sections** | Extended Synopsis (5p), Scientific Proposal Part B2 (15p) |
127
+ | **Sub-types** | Starting Grant (2-7 years post-PhD), Consolidator Grant (7-12 years), Advanced Grant (established leaders) |
128
+ | **Language** | English |
129
+ | **Review criteria** | Ground-breaking nature, Methodology, PI track record |
130
+ | **Cultural norms** | Emphasis on "high-risk/high-gain", methodology table with WP/deliverables/milestones, Gantt chart expected, strong PI narrative |
131
+
132
+ ### DFG (Germany — Deutsche Forschungsgemeinschaft)
133
+
134
+ | Field | Detail |
135
+ |-------|--------|
136
+ | **Sections** | State of the Art, Objectives, Work Programme, Bibliography, CV |
137
+ | **Language** | English or German |
138
+ | **Review criteria** | Scientific quality, Originality, Feasibility, PI qualification |
139
+
140
+ ### SNSF (Switzerland — Swiss National Science Foundation)
141
+
142
+ | Field | Detail |
143
+ |-------|--------|
144
+ | **Sections** | Summary, Research Plan, Timetable, Budget |
145
+ | **Language** | English |
146
+ | **Review criteria** | Scientific relevance, Originality, Feasibility, Track record |
147
+
148
+ ### ARC (Australia — Australian Research Council)
149
+
150
+ | Field | Detail |
151
+ |-------|--------|
152
+ | **Sections** | Project Description, Feasibility, Benefit, Budget |
153
+ | **Language** | English |
154
+ | **Review criteria** | Research quality, Feasibility, Benefit to Australia |
155
+
156
+ ### NWO (Netherlands — Dutch Research Council)
157
+
158
+ | Field | Detail |
159
+ |-------|--------|
160
+ | **Sections** | Summary, Proposed Research, Knowledge Utilisation |
161
+ | **Language** | English |
162
+ | **Review criteria** | Scientific quality, Innovative character, Knowledge utilisation |
163
+
164
+ ### GENERIC
165
+
166
+ For any grant not listed above. User provides section names, page limits, and review criteria via argument:
167
+
168
+ ```
169
+ /grant-proposal "topic — GENERIC, sections: Background|Methods|Impact, language: English"
170
+ ```
171
+
172
+ ## State Persistence (Compact Recovery)
173
+
174
+ Grant proposal drafting is a long task that may trigger context compaction. Persist state to `grant-proposal/GRANT_STATE.json` after each phase:
175
+
176
+ ```json
177
+ {
178
+ "phase": 2,
179
+ "grant_type": "KAKENHI",
180
+ "grant_subtype": "Start-up",
181
+ "language": "Japanese",
182
+ "codex_thread_id": "019cfcf4-...",
183
+ "gap_statement": "...",
184
+ "aims_count": 3,
185
+ "status": "in_progress",
186
+ "timestamp": "2026-03-18T15:00:00"
187
+ }
188
+ ```
189
+
190
+ **Write this file at the end of every phase.** On invocation, check for this file:
191
+ - If absent or `status: "completed"` → fresh start
192
+ - If `status: "in_progress"` and within 24h → **resume** from saved phase (read `GRANT_PROPOSAL.md` and `GRANT_REVIEW.md` to restore context)
193
+ - If older than 24h → fresh start (stale state)
194
+
195
+ On completion, set `"status": "completed"`.
196
+
197
+ ## Workflow
198
+
199
+ ### Phase 0: Input Parsing & Context Gathering
200
+
201
+ Parse `$ARGUMENTS` to extract:
202
+
203
+ 1. **Research direction/idea** — may reference existing files or be a freeform description
204
+ 2. **Grant type** — detect from keywords (e.g., "科研費"→KAKENHI, "NSF"→NSF, "国自然"→NSFC, "基金"→NSFC)
205
+ 3. **Grant sub-type** — detect from keywords (e.g., "Start-up", "若手", "青年", "CAREER", "优青", "海外优青")
206
+ 4. **Overrides** — output format, language, review rounds
207
+
208
+ Then gather context from the project directory:
209
+
210
+ 1. Read `idea-stage/IDEA_REPORT.md` if it exists (from `/idea-discovery`); fall back to `./IDEA_REPORT.md` if not found
211
+ 2. Read `refine-logs/FINAL_PROPOSAL.md` if it exists (from `/research-refine`)
212
+ 3. Read `refine-logs/EXPERIMENT_PLAN.md` if it exists (from `/experiment-plan`)
213
+ 4. Read `review-stage/AUTO_REVIEW.md` if it exists (from `/auto-review-loop` — prior review feedback is gold for grants); fall back to `./AUTO_REVIEW.md` if not found
214
+ 5. Read `NARRATIVE_REPORT.md` or `STORY.md` if they exist
215
+ 6. Read any existing literature notes or survey documents
216
+ 7. Scan for the user's publication list (e.g., `publications.md`, `cv.md`, `bio.md`, `CV.pdf`)
217
+ 8. Check for `grant-proposal/GRANT_STATE.json` (resume from prior interrupted run)
218
+
219
+ If insufficient context exists:
220
+ - No research idea at all → suggest running `/idea-discovery` first
221
+ - No literature survey → will invoke `/research-lit` inline in Phase 1
222
+ - No publication list → leave PI qualification section with `[TODO: Add publications]` placeholders
223
+ - Has review-stage/AUTO_REVIEW.md → extract reviewer feedback and use it to strengthen the feasibility narrative
224
+
225
+ ### Phase 1: Literature & Landscape Positioning
226
+
227
+ Invoke `/research-lit` to ground the proposal in real literature, then search for competing funded projects:
228
+
229
+ ```
230
+ /research-lit "$ARGUMENTS"
231
+ ```
232
+
233
+ **What this does:**
234
+ - Reuse existing surveys if `/research-lit` was already run and notes exist
235
+ - Otherwise invoke `/research-lit` for multi-source literature search (arXiv, Scholar, Zotero, local PDFs)
236
+ - Search for **funded projects** in the same area via WebSearch:
237
+ - KAKENHI → KAKEN database (https://kaken.nii.ac.jp/)
238
+ - NSF → NSF Award Search (https://www.nsf.gov/awardsearch/)
239
+ - NSFC → NSFC funded projects
240
+ - Other agencies → general web search
241
+ - Identify competing groups and their recent publications
242
+ - Run `/novelty-check` on the proposed research direction to verify the gap is real:
243
+ ```
244
+ /novelty-check "[proposed gap statement]"
245
+ ```
246
+ - Build the **gap statement** — the single most important sentence in the proposal:
247
+ ```
248
+ "Despite progress in [X], [specific gap] remains unaddressed because [reason].
249
+ This proposal addresses this by [approach], which will [expected impact]."
250
+ ```
251
+
252
+ **🚦 Checkpoint:** Present the landscape summary and gap statement to the user:
253
+
254
+ ```
255
+ 📚 Literature & landscape analysis complete:
256
+ - [key findings from literature]
257
+ - [competing funded projects found]
258
+ - Gap statement: "[the gap statement]"
259
+
260
+ Does this accurately capture the positioning? Should I adjust before designing the proposal structure?
261
+ ```
262
+
263
+ **⛔ STOP HERE and wait for user response.** Do NOT auto-proceed unless AUTO_PROCEED=true was explicitly set by the user.
264
+
265
+ Options for the user:
266
+ - Reply **"go"** or **"ok"** → proceed to Phase 2 with current positioning
267
+ - Reply with **adjustments** (e.g., "focus more on X", "the gap should emphasize Y") → refine and re-present
268
+ - Reply **"stop"** → end the skill, save current progress to `grant-proposal/DRAFT_NOTES.md`
269
+
270
+ **State**: Write `GRANT_STATE.json` with `phase: 1` and the gap statement.
271
+
272
+ ### Phase 2: Narrative Structure & Aims Design
273
+
274
+ Design the proposal's logical architecture before writing any prose.
275
+
276
+ #### 2.1 Define Specific Aims (2-4)
277
+
278
+ Each aim must satisfy:
279
+ - **Independently valuable** — if one aim fails, others still produce publishable results
280
+ - **Logically connected** — Aim 1 enables Aim 2, Aim 2 informs Aim 3
281
+ - **Concrete deliverables** — each aim maps to specific outputs (papers, datasets, tools, benchmarks)
282
+ - **Feasible within budget and timeline**
283
+
284
+ #### 2.2 Build Claims-Aims-Evidence Matrix
285
+
286
+ ```markdown
287
+ | Aim | Key Claim | Preliminary Evidence | Proposed Validation | Risk Level | Deliverable |
288
+ |-----|-----------|---------------------|--------------------|-----------:|-------------|
289
+ | Aim 1 | [claim] | [pilot data, prior work] | [experiments] | LOW | [paper, dataset] |
290
+ | Aim 2 | [claim] | [theoretical basis] | [experiments] | MEDIUM | [paper, tool] |
291
+ ```
292
+
293
+ #### 2.3 Design the Narrative Arc
294
+
295
+ Grant proposals follow a fundamentally different arc from papers:
296
+
297
+ ```
298
+ Problem → Why Now → What We Propose → Why It Will Work → What We Will Deliver
299
+ (not: Problem → Method → Results → Implications)
300
+ ```
301
+
302
+ - **Problem**: What gap exists and why it matters (scientific + societal)
303
+ - **Why Now**: What recent developments make this the right time (new data, new methods, new need)
304
+ - **What We Propose**: The specific aims and approach
305
+ - **Why It Will Work**: Preliminary data, PI track record, team expertise, feasibility arguments
306
+ - **What We Will Deliver**: Concrete outputs, timeline, expected publications
307
+
308
+ #### 2.4 Timeline & Milestones
309
+
310
+ Design year-by-year (or quarter-by-quarter) plan:
311
+
312
+ ```markdown
313
+ ### Year 1
314
+ - Q1-Q2: [Aim 1 tasks]
315
+ - Q3-Q4: [Aim 1 completion + Aim 2 start]
316
+ - Expected outputs: [papers, datasets]
317
+
318
+ ### Year 2
319
+ - Q1-Q2: [Aim 2 completion + Aim 3]
320
+ - Q3-Q4: [Aim 3 completion + synthesis]
321
+ - Expected outputs: [papers, tools, final report]
322
+ ```
323
+
324
+ #### 2.5 Structural Review
325
+
326
+ Invoke `/research-review` to get critical feedback on the proposal structure before drafting:
327
+
328
+ ```
329
+ /research-review "[GRANT_TYPE] [GRANT_SUBTYPE] proposal structure:
330
+ Gap: [gap statement]
331
+ Aims: [aims list with claims-evidence matrix]
332
+ Timeline: [timeline]
333
+ — reviewer persona: [GRANT_TYPE] review panelist"
334
+ ```
335
+
336
+ **What this does:**
337
+ - GPT-5.6-Sol xhigh acts as a grant review panelist (not a paper reviewer)
338
+ - Evaluates aims independence, narrative arc, risk identification, timeline realism
339
+ - Identifies the single biggest reviewer concern
340
+ - Provides actionable fixes ranked by severity
341
+
342
+ Apply structural feedback before proceeding to drafting.
343
+
344
+ **🚦 Checkpoint:** Present the proposal structure to the user:
345
+
346
+ ```
347
+ 🏗️ Proposal structure designed:
348
+ - Gap: [gap statement]
349
+ - Aim 1: [title] — Risk: LOW
350
+ - Aim 2: [title] — Risk: MEDIUM
351
+ - Aim 3: [title] — Risk: LOW
352
+ - Timeline: [summary]
353
+ - Reviewer feedback: [key points from GPT-5.6-Sol]
354
+
355
+ Proceed to section drafting? Or adjust the structure?
356
+ ```
357
+
358
+ **⛔ STOP HERE. This is the most critical checkpoint — the proposal structure determines everything downstream.**
359
+
360
+ Options for the user:
361
+ - Reply **"go"** or **"ok"** → proceed to Phase 3 (section drafting)
362
+ - Reply with **structural changes** (e.g., "merge Aim 2 and 3", "add an aim about X", "reduce to 2 aims") → redesign and re-present
363
+ - Reply **"back"** → return to Phase 1 to adjust the gap/positioning
364
+ - Reply **"stop"** → save current structure to `grant-proposal/DRAFT_NOTES.md`
365
+
366
+ **State**: Write `GRANT_STATE.json` with `phase: 2`, aims summary, and Codex threadId.
367
+
368
+ ### Phase 3: Section Drafting
369
+
370
+ Draft each section according to the grant type template. Write **complete prose**, not outlines or placeholders.
371
+
372
+ **What this does:**
373
+ - Writes all required sections in the agency-specific language and tone
374
+ - Pulls content from idea-stage/IDEA_REPORT.md, FINAL_PROPOSAL.md, and literature notes
375
+ - Uses `/paper-illustration` for figure generation (if user requests)
376
+ - Leaves `[TODO]` only for PI-specific information, `[AMOUNT]` for budget figures
377
+ - Outputs `grant-proposal/GRANT_PROPOSAL.md`
378
+
379
+ #### Drafting Order (optimized for narrative coherence)
380
+
381
+ 1. **Specific Aims / Research Objective** — the "abstract" of the grant. Write first, refine last.
382
+ 2. **Background / Significance / State of the Art** — establish the problem and gap.
383
+ 3. **Research Plan / Methods** — per aim, with feasibility arguments.
384
+ 4. **Figures** — generate key diagrams (see below).
385
+ 5. **Timeline & Milestones** — year-by-year deliverables.
386
+ 6. **PI Qualification / Preparation Status** — track record, team, infrastructure.
387
+ 7. **Budget Justification** — narrative only (leave dollar/yen amounts as `[AMOUNT]` placeholders).
388
+ 8. **Broader Impacts / Societal Significance** — if required by the grant type.
389
+
390
+ #### Figure Generation
391
+
392
+ Grant proposals benefit greatly from clear diagrams. Generate the following figures using SVG or matplotlib (save to `grant-proposal/figures/`):
393
+
394
+ 1. **全体構成図 / Overview Diagram** — Show the relationship between aims (Aim 1 → Aim 2 → Aim 3), shared resources (participants, stimuli, pipeline), and outputs. This is the single most important figure.
395
+ 2. **実験パラダイム図 / Experimental Paradigm** — Visual schematic of each paradigm (stimulus timing, conditions, EEG recording).
396
+ 3. **年次計画 / Timeline Gantt Chart** — Year-by-year (or H1/H2) milestones with deliverables.
397
+
398
+ For AI-generated publication-quality figures, invoke `/paper-illustration`:
399
+
400
+ ```
401
+ /paper-illustration "Overview diagram showing [aims relationship + shared resources] for grant proposal"
402
+ ```
403
+
404
+ For simpler diagrams (flowcharts, Gantt charts), generate clean SVG or matplotlib directly via code.
405
+
406
+ **🚦 Figure Checkpoint:** Before generating, ask which figures the user wants:
407
+
408
+ ```
409
+ 🎨 The following figures would strengthen this proposal:
410
+ 1. 全体構成図 / Overview — aims relationship + shared resources
411
+ 2. 実験パラダイム図 / Paradigm — stimulus timing + conditions
412
+ 3. 年次計画 / Gantt — timeline with milestones
413
+
414
+ Which should I generate? (e.g., "1 and 3", "all", "skip")
415
+ ```
416
+
417
+ **⛔ Wait for user response.** Generate only the requested figures.
418
+
419
+ #### Grant-Specific Drafting Guidelines
420
+
421
+ **KAKENHI:**
422
+ - Write in formal Japanese academic style (である調, not です/ます調)
423
+ - Use 「」for Japanese quotations, bold for emphasis
424
+ - Structure: 研究の学術的背景 → 研究期間内に何をどこまで明らかにするか → 本研究の学術的な特色・独創性
425
+ - Include explicit 年次計画 (yearly plan) with concrete milestones
426
+ - Emphasize 社会的意義 (societal significance)
427
+ - Reference related KAKEN-funded projects to show awareness of the field
428
+
429
+ **NSF:**
430
+ - Write in clear, direct English
431
+ - Use Aim-based structure with bold headings
432
+ - Preliminary data paragraphs for each Aim (with figure references)
433
+ - Broader Impacts must be concrete: specific outreach activities, broadening participation plans
434
+ - Include Results from Prior Support (if PI has prior NSF funding)
435
+
436
+ **NSFC:**
437
+ - Write in formal Chinese academic style
438
+ - 立项依据 must position work at 国际前沿 (international frontier)
439
+ - 创新性 section must list numbered innovation points (创新点)
440
+ - 研究基础 must cite PI's own publications (with IF and citations if possible)
441
+ - 可行性分析 must address: technical feasibility, team capability, time feasibility, equipment/conditions
442
+
443
+ **ERC:**
444
+ - Write a compelling "high-risk/high-gain" narrative
445
+ - Extended Synopsis must be self-contained and compelling
446
+ - Include Work Package table with deliverables and milestones
447
+ - Gantt chart (describe in text, or generate as figure)
448
+
449
+ #### For Each Section
450
+
451
+ 1. **Pull relevant content** from idea-stage/IDEA_REPORT.md, FINAL_PROPOSAL.md, literature notes
452
+ 2. **Write complete prose** — no `[TODO]` except for PI-specific information
453
+ 3. **Include figure/table placeholders** where appropriate (e.g., `[Figure 1: System architecture]`)
454
+ 4. **Cite references properly** — use citation keys, will build bibliography later
455
+ 5. **Match the agency's tone and style** — formal Japanese for KAKENHI, direct English for NSF, etc.
456
+
457
+ ### Phase 4: External Review
458
+
459
+ Invoke `/research-review` on the complete draft for grant-type-specific evaluation:
460
+
461
+ ```
462
+ /research-review "Read the grant review bundle at grant-proposal/codex_panel_review_bundle_round_1.md and evaluate it as a [GRANT_TYPE] [GRANT_SUBTYPE] review panelist using the official criteria."
463
+ ```
464
+
465
+ **What this does:**
466
+ - GPT-5.6-Sol xhigh acts as a grant review panelist
467
+ - Scores each section 1-5 using agency-specific criteria
468
+ - Identifies fatal flaws and recommends funding/revisions/rejection
469
+ - Provides ranked action items for improvement
470
+ - All feedback saved to `grant-proposal/GRANT_REVIEW.md`
471
+
472
+ > ⚠️ **Codex MCP fallback**: If `mcp__codex__codex` is not available (no OpenAI API key), skip external review. Note "External review skipped — no Codex MCP available. Consider running `/auto-review-loop-llm` separately." in GRANT_REVIEW.md. The proposal is still usable without external review.
473
+
474
+ If `/research-review` is invoked (preferred), it handles the Codex call internally. If calling Codex directly (e.g., to maintain thread context from Phase 2):
475
+
476
+ #### Round 1 (full draft review):
477
+
478
+ Write `grant-proposal/codex_panel_review_bundle_round_1.md` containing the
479
+ criteria below plus the absolute path to `grant-proposal/GRANT_PROPOSAL.md`,
480
+ then keep the Codex MCP prompt short:
481
+
482
+ ```
483
+ mcp__codex__codex-reply:
484
+ threadId: [from Phase 2]
485
+ # inherits the thread's model/effort — do not re-send
486
+ prompt: |
487
+ Read the grant review bundle at <absolute path to
488
+ grant-proposal/codex_panel_review_bundle_round_1.md> and follow all
489
+ instructions in it.
490
+ ```
491
+
492
+ Bundle contents:
493
+
494
+ ```
495
+ Review this complete [GRANT_TYPE] [GRANT_SUBTYPE] proposal draft.
496
+
497
+ Act as a [GRANT_TYPE] review panelist. Evaluate using the official criteria:
498
+
499
+ [INSERT GRANT-TYPE-SPECIFIC CRITERIA — see Grant Type Specifications above]
500
+
501
+ For each section:
502
+ 1. Score 1-5 (5 = excellent)
503
+ 2. Strongest aspect
504
+ 3. Most critical weakness
505
+ 4. Specific fix suggestion (actionable, not vague)
506
+
507
+ Overall assessment:
508
+ - Would you recommend funding? (Yes / Yes with revisions / No)
509
+ - Single most impactful change to improve funding chances?
510
+ - Any fatal flaws?
511
+
512
+ Proposal draft path (read this file yourself): <absolute path to
513
+ grant-proposal/GRANT_PROPOSAL.md>
514
+ ```
515
+
516
+ #### Round 2+ (after revisions):
517
+
518
+ If MAX_REVIEW_ROUNDS > 1 and revisions were applied:
519
+
520
+ Write `grant-proposal/codex_panel_review_bundle_round_N.md` containing the
521
+ change log, any raw diff / changed-file paths worth inspecting, and the
522
+ absolute path to the current `grant-proposal/GRANT_PROPOSAL.md`, then reuse the
523
+ same short MCP prompt pattern:
524
+
525
+ ```
526
+ mcp__codex__codex-reply:
527
+ threadId: [saved from Round 1]
528
+ # inherits the thread's model/effort — do not re-send
529
+ prompt: |
530
+ Read the grant review bundle at <absolute path to
531
+ grant-proposal/codex_panel_review_bundle_round_N.md> and follow all
532
+ instructions in it.
533
+ ```
534
+
535
+ Bundle contents:
536
+
537
+ ```
538
+ [Round N review of revised [GRANT_TYPE] [GRANT_SUBTYPE] proposal]
539
+
540
+ Since your last review, I have applied the following changes:
541
+ 1. [Change 1]: [what was done]
542
+ 2. [Change 2]: [what was done]
543
+ 3. [Change 3]: [what was done]
544
+
545
+ Please re-evaluate. Same format: section scores, overall assessment, remaining weaknesses.
546
+ Focus on whether the CRITICAL and MAJOR issues from Round 1 have been adequately addressed.
547
+
548
+ Revised proposal path (read this file yourself): <absolute path to
549
+ grant-proposal/GRANT_PROPOSAL.md>
550
+ ```
551
+
552
+ ### Phase 5: Revision & Output
553
+
554
+ #### 5.1 Apply Reviewer Feedback
555
+
556
+ Parse reviewer feedback into severity levels:
557
+ - **CRITICAL** — fatal flaws that would lead to rejection. Fix immediately.
558
+ - **MAJOR** — significant weaknesses. Fix before submission.
559
+ - **MINOR** — suggestions for improvement. Fix if time allows.
560
+
561
+ Implement CRITICAL and MAJOR fixes. If MAX_REVIEW_ROUNDS > 1, re-submit for another round via `mcp__codex__codex-reply`.
562
+
563
+ #### 5.2 Generate Output
564
+
565
+ **Markdown output** (default):
566
+
567
+ ```
568
+ grant-proposal/
569
+ ├── GRANT_PROPOSAL.md # Complete proposal, all sections
570
+ ├── GRANT_REVIEW.md # Review history and reviewer feedback
571
+ ├── GRANT_STATE.json # State persistence file
572
+ ├── figures/ # Generated diagrams (if any)
573
+ └── references.bib # Bibliography (if citations were used)
574
+ ```
575
+
576
+ **LaTeX output** (when OUTPUT_FORMAT = latex):
577
+
578
+ ```
579
+ grant-proposal/
580
+ ├── main.tex # Master file
581
+ ├── sections/
582
+ │ ├── aims.tex # Specific Aims / Research Objective
583
+ │ ├── background.tex # Background / Significance
584
+ │ ├── research_plan.tex # Research Plan / Methods
585
+ │ ├── timeline.tex # Timeline & Milestones
586
+ │ ├── pi_qualification.tex # PI Qualification / Track Record
587
+ │ └── budget.tex # Budget Justification (if applicable)
588
+ ├── references.bib
589
+ └── figures/ # Any generated diagrams
590
+ ```
591
+
592
+ #### 5.3 Final Checks
593
+
594
+ Before declaring done:
595
+
596
+ - [ ] All sections required by the grant type are present and complete
597
+ - [ ] Gap statement is clear and appears early in the proposal
598
+ - [ ] Each aim is independently valuable and logically connected
599
+ - [ ] Timeline includes concrete yearly milestones and deliverables
600
+ - [ ] PI qualification section has content (or clear `[TODO]` placeholders)
601
+ - [ ] Budget justification uses `[AMOUNT]` placeholders (no fabricated numbers)
602
+ - [ ] Language matches the grant type (Japanese for KAKENHI, Chinese for NSFC, etc.)
603
+ - [ ] No leftover `[TODO]` markers except for PI-specific information
604
+ - [ ] References are real (no hallucinated citations)
605
+ - [ ] Review feedback has been addressed (CRITICAL and MAJOR items)
606
+
607
+ **🚦 Final Checkpoint:** Present the completed proposal summary:
608
+
609
+ ```
610
+ 📝 Grant proposal draft complete:
611
+ - Type: [GRANT_TYPE] [GRANT_SUBTYPE]
612
+ - Language: [language]
613
+ - Aims: [N] aims covering [summary]
614
+ - Timeline: [N] years
615
+ - Review score: [summary from GPT-5.6-Sol]
616
+ - Output: grant-proposal/GRANT_PROPOSAL.md
617
+
618
+ Files saved to grant-proposal/. Please review and customize:
619
+ 1. PI qualification section (add your publications and track record)
620
+ 2. Budget amounts (replace [AMOUNT] placeholders)
621
+ 3. Any [TODO] markers for personal information
622
+
623
+ What would you like to do next?
624
+ - "figures" → generate proposal diagrams
625
+ - "review again" → run another round of external review
626
+ - "latex" → convert to LaTeX format
627
+ - "done" → finalize
628
+ ```
629
+
630
+ ## Key Rules
631
+
632
+ - **Large file handling**: If the Write tool fails due to file size, immediately retry using Bash (`cat << 'EOF' > file`) to write in chunks. Do NOT ask the user for permission — just do it silently.
633
+
634
+ - **Do NOT fabricate budget amounts.** Generate narrative budget justification only. Leave specific dollar/yen/yuan/euro amounts as `[AMOUNT]` placeholders for the user to fill in.
635
+ - **Do NOT fabricate PI information.** If no publication list is available, leave `[TODO: Add publications]` placeholders. Never invent papers, grants, or credentials.
636
+ - **Do NOT hallucinate citations.** Use references from literature survey. Mark uncertain citations with `[VERIFY]`.
637
+ - **Grant ≠ paper.** A grant argues for future work (feasibility + potential). A paper argues for completed work (results + claims). Write accordingly — emphasize "what we will do" and "why it will work", not "what we found."
638
+ - **Aims must be independently valuable.** If Aim 2 fails, Aim 1 and Aim 3 should still produce publishable results.
639
+ - **Preliminary data de-risks.** Include any pilot results, existing datasets, or prior publications that demonstrate feasibility.
640
+ - **Reviewer-facing structure.** Bold key sentences. Use numbered lists for clarity. Make the reviewer's job easy.
641
+ - **Cultural norms matter.** KAKENHI expects 社会的意義; NSF expects Broader Impacts; NSFC expects 国际前沿 positioning. Missing these is a red flag for reviewers.
642
+ - **Feishu notifications are optional.** If `~/.claude/feishu.json` exists, send `checkpoint` at each phase transition and `pipeline_done` at final output. If absent, skip silently.
643
+
644
+ ## Parameter Pass-Through
645
+
646
+ Parameters can be passed inline with `—` separator. They flow to sub-skills when invoked:
647
+
648
+ ```
649
+ /grant-proposal "topic — KAKENHI Start-up, sources: zotero, arxiv download: true"
650
+ ```
651
+
652
+ | Parameter | Default | Description | Passed to |
653
+ |-----------|---------|-------------|-----------|
654
+ | `grant type` | KAKENHI | Agency (KAKENHI/NSF/NSFC/ERC/DFG/SNSF/ARC/NWO/GENERIC) | — |
655
+ | `grant subtype` | auto | Sub-type (Start-up/Wakate/CAREER/Youth/etc.) | — |
656
+ | `output format` | markdown | `markdown` or `latex` | — |
657
+ | `language` | auto | Output language override | — |
658
+ | `max review rounds` | 2 | External review cycles | — |
659
+ | `sources` | all | Literature sources | → `/research-lit` |
660
+ | `arxiv download` | false | Download arXiv PDFs | → `/research-lit` |
661
+ | `reviewer model` | gpt-5.6-sol | Codex review model | → Codex MCP |
662
+ | `auto proceed` | false | Skip checkpoints | — |
663
+
664
+ ## Composing with Other Skills
665
+
666
+ ### Sub-skills used by this skill
667
+
668
+ | Sub-skill | Phase | Purpose |
669
+ |-----------|:-----:|---------|
670
+ | `/research-lit` | 1 | Literature survey (if not already done) |
671
+ | `/novelty-check` | 1 | Verify the gap is real |
672
+ | `/research-review` | 2, 4 | Structural review + full draft review |
673
+ | `/paper-illustration` | 3 | Generate proposal figures (optional) |
674
+
675
+ ### Funding Track (this skill's primary use case)
676
+
677
+ ```
678
+ /idea-discovery "direction" ← Workflow 1: find validated ideas
679
+ /research-refine "idea" ← sharpen the method
680
+ /grant-proposal "idea — KAKENHI" ← this skill: write the grant proposal
681
+ ← [submit & get funded]
682
+ /experiment-bridge ← implement experiments with funding
683
+ /auto-review-loop "results" ← Workflow 2: iterate until submission-ready
684
+ /paper-writing ← Workflow 3: write the paper
685
+ ```
686
+
687
+ ### Publish Track (skip this skill)
688
+
689
+ ```
690
+ /idea-discovery → /experiment-bridge → /auto-review-loop → /paper-writing → submit
691
+ ```
692
+
693
+ ## Output Protocols
694
+
695
+ > Follow these shared protocols for all output files:
696
+ > - **[Output Versioning Protocol](../shared-references/output-versioning.md)** — write timestamped file first, then copy to fixed name
697
+ > - **[Output Manifest Protocol](../shared-references/output-manifest.md)** — log every output to MANIFEST.md
698
+ > - **[Output Language Protocol](../shared-references/output-language.md)** — respect the project's language setting