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,461 @@
1
+ ---
2
+ name: research-wiki
3
+ description: "Persistent research knowledge base that accumulates papers, ideas, experiments, claims, and their relationships across the entire research lifecycle. Inspired by Karpathy's LLM Wiki pattern. Use when user says \"知识库\", \"research wiki\", \"add paper\", \"wiki query\", \"查知识库\", or wants to build/query a persistent field map."
4
+ argument-hint: "[subcommand: init|ingest|sync|query|update|lint|stats]"
5
+ allowed-tools: Bash(*), Read, Write, Edit, Grep, Glob, WebSearch, WebFetch, mcp__codex__codex, mcp__codex__codex-reply
6
+ ---
7
+
8
+ # Research Wiki: Persistent Research Knowledge Base
9
+
10
+ Subcommand: **$ARGUMENTS**
11
+
12
+ ## Overview
13
+
14
+ The research wiki is a persistent, per-project knowledge base that accumulates structured knowledge across the entire ARIS research lifecycle. Unlike one-off literature surveys that are used and forgotten, the wiki **compounds** — every paper read, idea tested, experiment run, and review received makes the wiki smarter.
15
+
16
+ Inspired by [Karpathy's LLM Wiki pattern](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f): compile knowledge once, keep it current, don't re-derive on every query.
17
+
18
+ ## Core Concepts
19
+
20
+ ### Four Entity Types
21
+
22
+ | Entity | Directory | Node ID format | What it represents |
23
+ |--------|-----------|---------------|--------------------|
24
+ | **Paper** | `papers/` | `paper:<slug>` | A published or preprint research paper |
25
+ | **Idea** | `ideas/` | `idea:<id>` | A research idea (proposed, tested, or failed) |
26
+ | **Experiment** | `experiments/` | `exp:<id>` | A concrete experiment run with results |
27
+ | **Claim** | `claims/` | `claim:<id>` | A theorem/headline with an honest PROOF status — born via `/proof-checker` (see Hook 4) |
28
+
29
+ ### Typed Relationships (`graph/edges.jsonl`)
30
+
31
+ | Edge type | From → To | Meaning |
32
+ |-----------|-----------|---------|
33
+ | `extends` | paper → paper | Builds on prior work |
34
+ | `contradicts` | paper → paper | Disagrees with results/claims |
35
+ | `addresses_gap` | paper\|idea → gap | Targets a known field gap |
36
+ | `inspired_by` | idea → paper | Idea sourced from this paper |
37
+ | `tested_by` | idea\|claim → exp | Tested in this experiment |
38
+ | `supports` | exp → claim\|idea | Experiment confirms claim |
39
+ | `invalidates` | exp → claim\|idea | Experiment disproves claim |
40
+ | `supersedes` | paper → paper | Newer work replaces older |
41
+
42
+ Edges are stored in `graph/edges.jsonl` only. The `## Connections` section on each page is **auto-generated** from the graph — never hand-edit it.
43
+
44
+ ### Capture hygiene (anti-self-poisoning)
45
+
46
+ Before persisting an **idea / claim / experiment** note, screen it for
47
+ operational noise that would harden into a self-cited falsehood (see
48
+ [`shared-references/capture-antipatterns.md`](../shared-references/capture-antipatterns.md)).
49
+ Resolve the helper via the canonical chain (integration-contract §2):
50
+ `.aris/tools/capture_filter.py` → `tools/capture_filter.py` →
51
+ `$ARIS_REPO/tools/capture_filter.py` (warn-and-skip if unresolved). Run
52
+ `python3 <capture_filter> -` on the note text; if it flags **env-failure /
53
+ transient-error / negative-tool-claim**, do NOT store it as a durable node —
54
+ rewrite it to the *fix / missing config / workaround*, or drop it. Never store
55
+ "codex/gemini/the reviewer can't do X" — that gets loaded into every future
56
+ session and cited against the agent long after the real cause is gone. (The wiki's
57
+ "failed ideas → anti-repeat memory" is the GOOD inverse: a class-level *research*
58
+ finding, not operational noise.)
59
+
60
+ ## Wiki Directory Structure
61
+
62
+ ```
63
+ research-wiki/
64
+ index.md # categorical index (auto-generated)
65
+ log.md # append-only timeline
66
+ gap_map.md # field gaps with stable IDs (G1, G2, ...)
67
+ query_pack.md # compressed summary for /idea-creator (auto-generated, max 8000 chars)
68
+ papers/
69
+ <slug>.md # one page per paper
70
+ ideas/
71
+ <idea_id>.md # one page per idea
72
+ experiments/
73
+ <exp_id>.md # one page per experiment
74
+ claims/
75
+ <claim_id>.md # one page per testable claim
76
+ graph/
77
+ edges.jsonl # materialized current relationship graph
78
+ ```
79
+
80
+ ## Subcommands
81
+
82
+ ## Helper resolution (run before any subcommand below)
83
+
84
+ All wiki operations except plain directory bootstrap go through a single
85
+ canonical helper, `tools/research_wiki.py`. Skills that touch the wiki
86
+ must resolve `$WIKI_SCRIPT` via the chain below — never hard-code
87
+ `python3 tools/research_wiki.py …`. Hard-coding silently fails when
88
+ the project does not have `tools/` on disk (the post-`install_aris.sh`
89
+ default), which is exactly the failure mode that left a real user's
90
+ `research-wiki/` empty for a week.
91
+
92
+ ```bash
93
+ cd "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" || exit 1
94
+ ARIS_REPO="${ARIS_REPO:-$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills.txt 2>/dev/null)}"
95
+ if [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ]; then
96
+ ARIS_REPO=$(cat "$HOME/.aris/repo" 2>/dev/null) || true
97
+ fi
98
+ WIKI_SCRIPT=".aris/tools/research_wiki.py"
99
+ [ -f "$WIKI_SCRIPT" ] || WIKI_SCRIPT="tools/research_wiki.py"
100
+ [ -f "$WIKI_SCRIPT" ] || { [ -n "${ARIS_REPO:-}" ] && WIKI_SCRIPT="$ARIS_REPO/tools/research_wiki.py"; }
101
+ [ -f "$WIKI_SCRIPT" ] || {
102
+ echo "ERROR: research_wiki.py not found at .aris/tools/, tools/, \$ARIS_REPO/tools/, or via ~/.aris/repo." >&2
103
+ echo " Fix one of:" >&2
104
+ echo " 1. rerun 'bash tools/install_aris.sh' from the ARIS repo (creates .aris/tools symlink, refreshes ~/.aris/repo)" >&2
105
+ echo " 2. rerun 'bash tools/smart_update.sh' (refreshes ~/.aris/repo)" >&2
106
+ echo " 3. export ARIS_REPO=<path-to-ARIS-repo>" >&2
107
+ echo " 4. cp <ARIS-repo>/tools/research_wiki.py tools/" >&2
108
+ exit 1
109
+ }
110
+ ```
111
+
112
+ `/research-wiki` itself is the wiki tool — if the helper is missing the
113
+ skill **hard-fails**. Caller skills that update the wiki as a side
114
+ effect (`/idea-creator`, `/result-to-claim`, `/research-lit`, `/arxiv`,
115
+ `/alphaxiv`, `/deepxiv`, `/semantic-scholar`, `/exa-search`) use the
116
+ same chain but **warn-and-skip** instead of hard-failing — their
117
+ primary output (idea list, claim verdict, paper summary) must still be
118
+ delivered to the user.
119
+
120
+ ### `/research-wiki init`
121
+
122
+ Initialize the wiki for the current project. After resolving
123
+ `$WIKI_SCRIPT` per the chain above:
124
+
125
+ ```bash
126
+ python3 "$WIKI_SCRIPT" init research-wiki/
127
+ ```
128
+
129
+ The helper creates `research-wiki/{papers,ideas,experiments,claims,graph}/`
130
+ plus `index.md`, `log.md`, `gap_map.md`, **`query_pack.md`**, and
131
+ `graph/edges.jsonl`, then appends `"Wiki initialized"` to `log.md`.
132
+
133
+ (Earlier versions of this skill described a prose-only init that
134
+ omitted `query_pack.md` — that drifted from the helper and made
135
+ `/idea-creator`'s Phase 0 query-pack check fall through to a
136
+ `rebuild_query_pack` invocation that, under the old hard-coded path,
137
+ silently failed. Delegating init to the helper is the single source of
138
+ truth for the wiki schema.)
139
+
140
+ ### `/research-wiki ingest "<paper title>" — arxiv: <id>`
141
+
142
+ Add a paper to the wiki. This subcommand is thin wrapping around
143
+ `python3 "$WIKI_SCRIPT" ingest_paper …`, which is the single
144
+ implementation of paper ingest in ARIS (per
145
+ [`shared-references/integration-contract.md`](../shared-references/integration-contract.md)
146
+ — one helper, no copies). The helper does all of:
147
+
148
+ 1. **Fetch metadata** — queries the arXiv Atom API when `--arxiv-id` is given
149
+ 2. **Generate slug** — `<first_author_last_name><year>_<keyword>`
150
+ 3. **Check dedup** — skip an existing page unless `--update-on-exist`
151
+ 4. **Create page** — `papers/<slug>.md` with the schema below
152
+ 5. **Rebuild `index.md`** and `query_pack.md`
153
+ 6. **Append `log.md`**
154
+
155
+ Edge extraction (step 5/8 in the old manual flow) is **not** in
156
+ `ingest_paper`; do it as a follow-up with `add_edge` per relationship
157
+ identified:
158
+
159
+ ```bash
160
+ # arXiv-known paper
161
+ python3 "$WIKI_SCRIPT" ingest_paper research-wiki/ \
162
+ --arxiv-id 2501.12345 --thesis "One-line claim from abstract."
163
+
164
+ # Venue paper with no arXiv mirror
165
+ python3 "$WIKI_SCRIPT" ingest_paper research-wiki/ \
166
+ --title "Attention Is All You Need" \
167
+ --authors "Ashish Vaswani, Noam Shazeer, …" --year 2017 --venue "NeurIPS"
168
+
169
+ # Manual edge after ingest
170
+ python3 "$WIKI_SCRIPT" add_edge research-wiki/ \
171
+ --from "paper:vaswani2017_attention_all_you" \
172
+ --to "paper:chen2025_factorized_gap" \
173
+ --type "extends" --evidence "Section 3.2: adapts the encoder block …"
174
+ ```
175
+
176
+ Other skills (`/research-lit`, `/arxiv`, `/alphaxiv`, `/deepxiv`,
177
+ `/semantic-scholar`, `/exa-search`) call the same helper directly in
178
+ their own last step — they don't re-route through `/research-wiki
179
+ ingest` as a subcommand, so they don't need an LLM roundtrip.
180
+
181
+ ### `/research-wiki sync — arxiv-ids <id1>,<id2>,...`
182
+
183
+ Batch backfill: ingest one or more arXiv IDs that were read earlier
184
+ without being ingested (e.g., because `research-wiki/` was set up after
185
+ the reading happened, or a hook didn't fire).
186
+
187
+ ```bash
188
+ # Explicit list
189
+ python3 "$WIKI_SCRIPT" sync research-wiki/ \
190
+ --arxiv-ids 2310.06770,1706.03762
191
+
192
+ # From a file (one id per line, # comments ok)
193
+ python3 "$WIKI_SCRIPT" sync research-wiki/ --from-file ids.txt
194
+ ```
195
+
196
+ Dedup is handled per-id; already-ingested papers are skipped silently.
197
+ This is the recommended **manual repair** step (see integration
198
+ contract §5 Backfill). `sync` does not scan session traces — callers
199
+ declare the ids explicitly.
200
+
201
+ **Paper page schema** (exactly what `ingest_paper` emits — do not
202
+ handwrite alternative fields; `lint` will flag drift):
203
+
204
+ ```markdown
205
+ ---
206
+ type: paper
207
+ node_id: paper:<slug>
208
+ title: "<full title>"
209
+ authors: ["First A. Author", "Second B. Author"]
210
+ year: 2025
211
+ venue: "arXiv"
212
+ external_ids:
213
+ arxiv: "2501.12345"
214
+ doi: null
215
+ s2: null
216
+ tags: ["tag1", "tag2"]
217
+ added: 2026-04-07T10:12:00Z
218
+ ---
219
+
220
+ # <full title>
221
+
222
+ ## One-line thesis
223
+
224
+ [Single sentence capturing the paper's core contribution]
225
+
226
+ ## Problem / Gap
227
+
228
+ ## Method
229
+
230
+ ## Key Results
231
+
232
+ ## Assumptions
233
+
234
+ ## Limitations / Failure Modes
235
+
236
+ ## Reusable Ingredients
237
+
238
+ [Techniques, datasets, or insights that could be repurposed]
239
+
240
+ ## Open Questions
241
+
242
+ ## Claims
243
+
244
+ [Reference claim pages: claim:C1, claim:C2, etc.]
245
+
246
+ ## Connections
247
+
248
+ [AUTO-GENERATED from graph/edges.jsonl — do not edit manually]
249
+
250
+ ## Relevance to This Project
251
+
252
+ [Why this paper matters for our specific research direction]
253
+ ```
254
+
255
+ _Additionally, when the paper was ingested via `--arxiv-id` and the arXiv
256
+ API returned an abstract, the helper appends an `## Abstract (original)`
257
+ section after `Relevance to This Project` containing the raw abstract
258
+ text as a blockquote. Manual ingests (no `--arxiv-id`) do not include
259
+ this section._
260
+
261
+ ### `/research-wiki query "<topic>"`
262
+
263
+ Generate `query_pack.md` — a compressed, context-window-friendly summary:
264
+
265
+ **Fixed budget (max 8000 chars / ~2000 tokens):**
266
+
267
+ | Section | Budget | Content |
268
+ |---------|--------|---------|
269
+ | Project direction | full sections | Structured extraction from `RESEARCH_BRIEF.md` by `## ` heading (Problem / Constraints / Direction / Background / Non-Goals / Domain Knowledge / Existing Results), in priority order. No per-field char cap — the 8000-char assembly loop is the only safety net. Falls back to a flat 600-char slice if the brief uses no known headings. |
270
+ | Top 5 gaps | 1200 chars | From gap_map.md, ranked by: unresolved + linked ideas + failed experiments |
271
+ | Paper clusters | 1600 chars | 3-5 clusters by tag overlap, 2-3 sentences each |
272
+ | Failed ideas | 1400 chars | **Always included** — highest anti-repetition value |
273
+ | Top papers | 1800 chars | 8-12 pages ranked by: linked gaps, linked ideas, centrality, relevance flag |
274
+ | Active chains | 900 chars | limitation → opportunity relationship chains |
275
+ | Open unknowns | 500 chars | Unresolved questions across the wiki |
276
+
277
+ **Pruning priority** (when over budget): low-ranked papers > cluster detail > chain detail. **Never prune** failed ideas or top gaps first.
278
+
279
+ **Key rule:** Read from short fields only (frontmatter, one-line thesis, gap summary, failure note). Do not summarize full page bodies every time.
280
+
281
+ ### `/research-wiki update <node_id> — <field>: <value>`
282
+
283
+ Update a specific entity:
284
+
285
+ ```
286
+ /research-wiki update paper:chen2025 — relevance: core
287
+ /research-wiki update idea:001 — outcome: negative
288
+ /research-wiki update claim:C1 — status: refuted
289
+ ```
290
+
291
+ After any update: rebuild `query_pack.md`, update `log.md`.
292
+
293
+ ### `/research-wiki lint`
294
+
295
+ Health check the wiki:
296
+
297
+ 1. **Orphan pages** — entities with zero edges
298
+ 2. **Stale claims** — claims still `status: drafted` or `status: unproven` older than 14 days
299
+ 3. **Contradictions** — claims with both `supports` and `invalidates` edges
300
+ 4. **Missing connections** — papers sharing 2+ tags but no explicit relationship
301
+ 5. **Dead ideas** — `stage: proposed` ideas that were never tested
302
+ 6. **Sparse pages** — pages with 3+ empty sections
303
+
304
+ Output a `LINT_REPORT.md` with suggested fixes.
305
+
306
+ ### `/research-wiki stats`
307
+
308
+ Quick overview:
309
+
310
+ ```
311
+ 📚 Research Wiki Stats
312
+ Papers: 28 (12 core, 10 related, 6 peripheral)
313
+ Ideas: 7 (2 active, 3 failed, 1 partial, 1 succeeded)
314
+ Experiments: 12
315
+ Claims: 15 (8 verified, 4 unproven, 2 refuted, 1 sound-modulo-imports)
316
+ Edges: 64
317
+ Gaps: 8 (3 unresolved)
318
+ Last updated: 2026-04-07T10:12:00Z
319
+ ```
320
+
321
+ ## Integration with Existing Workflows
322
+
323
+ All paper-reading skills follow the same **integration contract** (see
324
+ [`shared-references/integration-contract.md`](../shared-references/integration-contract.md)):
325
+
326
+ - single predicate — `[ -d research-wiki/ ]`
327
+ - single canonical helper — `python3 "$WIKI_SCRIPT" ingest_paper …` after resolving `$WIKI_SCRIPT` via the chain at the top of this SKILL
328
+ - concrete artifact — `papers/<slug>.md` + `log.md` entry
329
+ - backfill — `sync --arxiv-ids …`
330
+ - diagnostic — `verify_wiki_coverage.sh` (Policy E; resolved per integration-contract §2)
331
+
332
+ ### Hook 1: After `/research-lit` finds papers
333
+
334
+ ```
335
+ # At end of research-lit, after synthesis:
336
+ if research-wiki/ exists AND $WIKI_SCRIPT resolved (chain at top of this SKILL):
337
+ for paper in top_relevant_papers (limit 8-12):
338
+ python3 "$WIKI_SCRIPT" ingest_paper research-wiki/ \
339
+ --arxiv-id <id> [--thesis "..."] [--tags "..."]
340
+ for each explicit relation to existing wiki paper:
341
+ python3 "$WIKI_SCRIPT" add_edge research-wiki/ \
342
+ --from "paper:<slug>" --to "<target>" \
343
+ --type <extends|contradicts|addresses_gap|...> \
344
+ --evidence "..."
345
+ log "research-lit ingested N papers"
346
+ elif research-wiki/ exists but $WIKI_SCRIPT did not resolve:
347
+ warn "wiki update skipped — research_wiki.py unreachable; rerun install_aris.sh"
348
+ ```
349
+
350
+ Each paper-reading skill ships its own Step "Update Research Wiki (if
351
+ active)" that calls the same helper once per paper it touched. The
352
+ business logic is not duplicated — only the loop over that skill's
353
+ specific result set differs.
354
+
355
+ ### Hook 2: `/idea-creator` reads AND writes wiki
356
+
357
+ **Before ideation:**
358
+ ```
359
+ if research-wiki/query_pack.md exists (and < 7 days old):
360
+ prepend query_pack to landscape context
361
+ treat failed ideas as banlist
362
+ treat top gaps as search seeds
363
+ still run fresh literature search for last 3-6 months
364
+ ```
365
+
366
+ **After ideation (CRITICAL — without it, `ideas/` stays empty; runs on EVERY
367
+ generation, including a re-run with updated constraints):** the page write is a
368
+ **deterministic helper command**, not a freehand step the model can skip:
369
+ ```
370
+ for idea in all_generated_ideas (recommended + killed):
371
+ python3 "$WIKI_SCRIPT" upsert_idea research-wiki/ \
372
+ --slug <stable-id> --title <title> --stage <proposed|archived> --outcome pending \
373
+ --thesis <...> --risks <...> --based-on <paper:slug,...> --target-gaps <G2,...>
374
+ # one call: writes ideas/<slug>.md, wires inspired_by/addresses_gap edges,
375
+ # rebuilds index + query_pack, logs. Default skip-on-exist (won't clobber an
376
+ # existing idea enriched by /result-to-claim). `outcome` ∈ {unknown, pending,
377
+ # negative, mixed, positive} — the experiment verdict is set later by
378
+ # /result-to-claim, never guessed at ideation.
379
+ log "idea-creator wrote N ideas to wiki"
380
+ ```
381
+
382
+ ### Hook 3: After `/result-to-claim` verdict
383
+
384
+ ```
385
+ # Create/refresh the experiment node FIRST via the deterministic helper (verdict owner
386
+ # → --update-on-exist). This is the experiment BIRTH point. add_edge does NOT verify
387
+ # node existence, so GATE the supports/invalidates edges below on the node having been
388
+ # born (EXP_NODE_OK) — else they'd dangle off a missing exp node.
389
+ EXP_NODE_OK = (python3 "$WIKI_SCRIPT" add_experiment research-wiki/ --slug <exp_id> \
390
+ --idea idea:<active_idea> --verdict <yes|partial|no> --confidence <high|medium|low> \
391
+ --metrics <...> --reasoning <...> --provenance <run dir> --update-on-exist) succeeded
392
+ # writes page + idea--tested_by-->exp edge + rebuilds index/query_pack
393
+
394
+ # Record empirical support as EDGES ONLY, and ONLY if EXP_NODE_OK — never overwrite the
395
+ # claim's `status`. A claim's `status` is the PROOF axis (verified / sound-modulo-imports
396
+ # / refuted / unproven / drafted / retracted), owned by /proof-checker (the claim birth
397
+ # point). Experiment support is a SEPARATE axis carried entirely by supports/invalidates
398
+ # edges; writing "supported"/"invalidated" into status is rejected by the validator.
399
+ if EXP_NODE_OK:
400
+ for claim_id in resolved_claims:
401
+ if verdict == "yes":
402
+ add_edge(exp_id, claim_id, "supports")
403
+ elif verdict == "partial":
404
+ add_edge(exp_id, claim_id, "supports") # partial — qualify in --evidence
405
+ else:
406
+ add_edge(exp_id, claim_id, "invalidates")
407
+
408
+ # Update idea outcome
409
+ update_idea(active_idea_id, outcome=verdict)
410
+
411
+ # If failed, record WHY for future ideation
412
+ if verdict in ("no", "partial"):
413
+ update_idea failure_notes with specific metrics and reasons
414
+
415
+ rebuild query_pack
416
+ log "result-to-claim: exp_id updated, verdict=..."
417
+ ```
418
+
419
+ ### Hook 4: Claim birth — from `/proof-checker` (the ONLY birth point)
420
+
421
+ Wiki **claim nodes are born here.** `/proof-checker` Phase 5.5 calls `add_claim`
422
+ for each top-level theorem/headline after writing `PROOF_AUDIT.json`, stamping an
423
+ honest PROOF-axis `status` and a `provenance` pointer to the audit trace. No other
424
+ skill creates a claim node: `/result-to-claim` (Hook 3) only adds empirical
425
+ `supports`/`invalidates` *edges* to an already-born claim and never edits its `status`.
426
+
427
+ ```bash
428
+ # (run by /proof-checker; shown here for the wiki's record)
429
+ python3 "$WIKI_SCRIPT" add_claim research-wiki/ --slug thm-main-ub \
430
+ --name "Main upper bound" --status verified \
431
+ --provenance ".aris/traces/proof-checker/<run>/" --statement "..." --update-on-exist
432
+ ```
433
+
434
+ Claim `status` ∈ {`drafted`, `unproven`, `sound-modulo-imports`, `verified`,
435
+ `refuted`, `retracted`} — the **proof axis only**. Empirical support is a separate
436
+ axis, carried entirely by edges (Hook 3), never written into `status`.
437
+
438
+ ## Re-ideation Trigger
439
+
440
+ After significant wiki updates, suggest re-running `/idea-creator`:
441
+
442
+ - ≥5 new papers ingested since last ideation
443
+ - ≥3 new failed/partial ideas since last ideation
444
+ - New contradiction discovered in the graph
445
+ - New gap identified that no existing idea addresses
446
+
447
+ The system suggests but does not auto-trigger. User decides.
448
+
449
+ ## Key Rules
450
+
451
+ - **One source of truth for relationships**: `graph/edges.jsonl`. Page `Connections` sections are auto-generated views.
452
+ - **Canonical node IDs everywhere**: `paper:<slug>`, `idea:<id>`, `exp:<id>`, `claim:<id>`, `gap:<id>`. Never use raw titles or inconsistent shorthands.
453
+ - **Failed ideas are the most valuable memory.** Never prune them from query_pack.
454
+ - **query_pack.md is hard-budgeted** at 8000 chars. Deterministic generation, not open-ended summarization.
455
+ - **Append to log.md for every mutation.** The log is the audit trail.
456
+ - **Reviewer independence applies.** When the wiki is read by cross-model review skills, pass file paths only — do not summarize wiki content for the reviewer.
457
+ - **The wiki is UTF-8.** All wiki files are read and written as UTF-8 so a `research-wiki/` stays portable across platforms and collaborators. A wiki created by an older ARIS on a non-UTF-8 locale (e.g. cp936 on Chinese Windows) must be converted to UTF-8 once — back it up first; the helper reports the offending file by name instead of guessing.
458
+
459
+ ## Acknowledgements
460
+
461
+ Inspired by [Karpathy's LLM Wiki](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f) — "compile knowledge once, keep it current, don't re-derive on every query."