research-copilot 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 (395) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +190 -0
  3. package/app/build/icon.icns +0 -0
  4. package/app/build/icon.ico +0 -0
  5. package/app/build/icon.png +0 -0
  6. package/app/out/main/index.mjs +6719 -0
  7. package/app/out/preload/index.js +141 -0
  8. package/app/out/renderer/assets/Inter-Variable-Latin-8kRkwJBP.woff2 +0 -0
  9. package/app/out/renderer/assets/Inter-Variable-LatinExt-B_-bZUTo.woff2 +0 -0
  10. package/app/out/renderer/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  11. package/app/out/renderer/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  12. package/app/out/renderer/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  13. package/app/out/renderer/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  14. package/app/out/renderer/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  15. package/app/out/renderer/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  16. package/app/out/renderer/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  17. package/app/out/renderer/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  18. package/app/out/renderer/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  19. package/app/out/renderer/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  20. package/app/out/renderer/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  21. package/app/out/renderer/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  22. package/app/out/renderer/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  23. package/app/out/renderer/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  24. package/app/out/renderer/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  25. package/app/out/renderer/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  26. package/app/out/renderer/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  27. package/app/out/renderer/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  28. package/app/out/renderer/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  29. package/app/out/renderer/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  30. package/app/out/renderer/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  31. package/app/out/renderer/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  32. package/app/out/renderer/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  33. package/app/out/renderer/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  34. package/app/out/renderer/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  35. package/app/out/renderer/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  36. package/app/out/renderer/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  37. package/app/out/renderer/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  38. package/app/out/renderer/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  39. package/app/out/renderer/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  40. package/app/out/renderer/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  41. package/app/out/renderer/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  42. package/app/out/renderer/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  43. package/app/out/renderer/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  44. package/app/out/renderer/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  45. package/app/out/renderer/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  46. package/app/out/renderer/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  47. package/app/out/renderer/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  48. package/app/out/renderer/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  49. package/app/out/renderer/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  50. package/app/out/renderer/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  51. package/app/out/renderer/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  52. package/app/out/renderer/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  53. package/app/out/renderer/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  54. package/app/out/renderer/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  55. package/app/out/renderer/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  56. package/app/out/renderer/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  57. package/app/out/renderer/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  58. package/app/out/renderer/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  59. package/app/out/renderer/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  60. package/app/out/renderer/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  61. package/app/out/renderer/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  62. package/app/out/renderer/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  63. package/app/out/renderer/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  64. package/app/out/renderer/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  65. package/app/out/renderer/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  66. package/app/out/renderer/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  67. package/app/out/renderer/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  68. package/app/out/renderer/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  69. package/app/out/renderer/assets/MilkdownMarkdownEditor-bLPxrCVb.js +89821 -0
  70. package/app/out/renderer/assets/MilkdownMarkdownEditor-tTNRIB2K.css +2555 -0
  71. package/app/out/renderer/assets/Tableau10-BqnYsPR6.js +9 -0
  72. package/app/out/renderer/assets/apl-fqmucPXA.js +140 -0
  73. package/app/out/renderer/assets/arc-J47ePHZ2.js +132 -0
  74. package/app/out/renderer/assets/array-DgktLKBx.js +6 -0
  75. package/app/out/renderer/assets/asciiarmor-DucZyvP0.js +56 -0
  76. package/app/out/renderer/assets/asn1-BnOEsgAm.js +144 -0
  77. package/app/out/renderer/assets/asterisk-QAlztEwS.js +345 -0
  78. package/app/out/renderer/assets/blockDiagram-c4efeb88-5uRQXgQJ.js +1817 -0
  79. package/app/out/renderer/assets/brainfuck-DZVCuF_t.js +53 -0
  80. package/app/out/renderer/assets/c4Diagram-c83219d4-C4iCTPEL.js +2464 -0
  81. package/app/out/renderer/assets/channel-ZAmhHE3g.js +7 -0
  82. package/app/out/renderer/assets/classDiagram-beda092f-7NOZxq_W.js +357 -0
  83. package/app/out/renderer/assets/classDiagram-v2-2358418a-5fPT-cUH.js +291 -0
  84. package/app/out/renderer/assets/clike-xqXYL6ge.js +805 -0
  85. package/app/out/renderer/assets/clojure-BhXMqnxz.js +849 -0
  86. package/app/out/renderer/assets/clone-CsnzsYXQ.js +8 -0
  87. package/app/out/renderer/assets/cmake-BGaNd9E7.js +71 -0
  88. package/app/out/renderer/assets/cobol-4yqQntpt.js +120 -0
  89. package/app/out/renderer/assets/coffeescript-D2dXvhEc.js +308 -0
  90. package/app/out/renderer/assets/commonlisp-CF_VNHQR.js +130 -0
  91. package/app/out/renderer/assets/createText-1719965b-Cji7KN4K.js +4904 -0
  92. package/app/out/renderer/assets/crystal-DyuLTqLs.js +398 -0
  93. package/app/out/renderer/assets/css-c-jst79C.js +1783 -0
  94. package/app/out/renderer/assets/cypher-Dlu_3r4V.js +121 -0
  95. package/app/out/renderer/assets/d-UURgV0Ux.js +179 -0
  96. package/app/out/renderer/assets/diff-B_Bi2Crb.js +25 -0
  97. package/app/out/renderer/assets/dockerfile-Bvk733Ga.js +201 -0
  98. package/app/out/renderer/assets/dtd-Dy74G54E.js +114 -0
  99. package/app/out/renderer/assets/dylan-TSb-Nfix.js +314 -0
  100. package/app/out/renderer/assets/ebnf-DAomQUbD.js +139 -0
  101. package/app/out/renderer/assets/ecl-B59qGGVg.js +178 -0
  102. package/app/out/renderer/assets/edges-96097737-CD0EvAZQ.js +1844 -0
  103. package/app/out/renderer/assets/eiffel-Dze7nlu3.js +134 -0
  104. package/app/out/renderer/assets/elm-DG7jkhNZ.js +176 -0
  105. package/app/out/renderer/assets/erDiagram-0228fc6a-DRYXBpi7.js +1321 -0
  106. package/app/out/renderer/assets/erlang-BO6gOnGA.js +674 -0
  107. package/app/out/renderer/assets/factor-CMxFHDqz.js +65 -0
  108. package/app/out/renderer/assets/fcl-CDDUNjTj.js +141 -0
  109. package/app/out/renderer/assets/flowDb-c6c81e3f-CuoIN-Cy.js +1713 -0
  110. package/app/out/renderer/assets/flowDiagram-50d868cf-CPWPLOml.js +1272 -0
  111. package/app/out/renderer/assets/flowDiagram-v2-4f6560a1-C_R12s4S.js +33 -0
  112. package/app/out/renderer/assets/flowchart-elk-definition-6af322e1-BdKUSFpi.js +92921 -0
  113. package/app/out/renderer/assets/forth-B9D2JCeE.js +116 -0
  114. package/app/out/renderer/assets/fortran-CAG2BFbe.js +467 -0
  115. package/app/out/renderer/assets/ganttDiagram-a2739b55-ygqT5HlG.js +3399 -0
  116. package/app/out/renderer/assets/gas-d3KEcW3x.js +294 -0
  117. package/app/out/renderer/assets/gherkin-DhZlEZiy.js +115 -0
  118. package/app/out/renderer/assets/gitGraphDiagram-82fe8481-D97GT4iA.js +1791 -0
  119. package/app/out/renderer/assets/graph-DpC13d95.js +1237 -0
  120. package/app/out/renderer/assets/groovy-CpwJiBl7.js +223 -0
  121. package/app/out/renderer/assets/haskell-BlGBCCe3.js +459 -0
  122. package/app/out/renderer/assets/haxe-7MlzfeYV.js +514 -0
  123. package/app/out/renderer/assets/http-BqypyemW.js +79 -0
  124. package/app/out/renderer/assets/idl-4HIGJlDI.js +985 -0
  125. package/app/out/renderer/assets/index-4-ziknCv.js +292 -0
  126. package/app/out/renderer/assets/index-5325376f-Bbs7Fbqr.js +663 -0
  127. package/app/out/renderer/assets/index-B2jip-rk.js +2489 -0
  128. package/app/out/renderer/assets/index-BKTVfokE.js +312 -0
  129. package/app/out/renderer/assets/index-BiJbFgVG.js +118 -0
  130. package/app/out/renderer/assets/index-Bn433Fat.js +83 -0
  131. package/app/out/renderer/assets/index-BqDyyRCx.js +39679 -0
  132. package/app/out/renderer/assets/index-BzFMeMPn.js +158 -0
  133. package/app/out/renderer/assets/index-C-_uCjZJ.css +2701 -0
  134. package/app/out/renderer/assets/index-C1ithNW1.js +1765 -0
  135. package/app/out/renderer/assets/index-CAJkRYkO.js +407 -0
  136. package/app/out/renderer/assets/index-CleO0-yj.js +690 -0
  137. package/app/out/renderer/assets/index-Cq4MH3sY.js +1020 -0
  138. package/app/out/renderer/assets/index-CtA0Xj22.js +705 -0
  139. package/app/out/renderer/assets/index-CvAZkqBZ.js +83 -0
  140. package/app/out/renderer/assets/index-D3UDN-5c.js +152 -0
  141. package/app/out/renderer/assets/index-D4F9R5ao.js +179 -0
  142. package/app/out/renderer/assets/index-D6RguhZ5.js +328 -0
  143. package/app/out/renderer/assets/index-DnEowqXv.js +386 -0
  144. package/app/out/renderer/assets/index-K8c8Mqdy.js +98 -0
  145. package/app/out/renderer/assets/index-Kh14gO6K.js +62 -0
  146. package/app/out/renderer/assets/index-WFd2jRnA.js +333 -0
  147. package/app/out/renderer/assets/index-WgMfkRFp.js +313 -0
  148. package/app/out/renderer/assets/index-Y4lKyF6t.js +1042 -0
  149. package/app/out/renderer/assets/index-fx307_f1.js +643 -0
  150. package/app/out/renderer/assets/infoDiagram-8eee0895-ptaVSwzq.js +511 -0
  151. package/app/out/renderer/assets/init-ZxktEp_H.js +16 -0
  152. package/app/out/renderer/assets/javascript-C3MnDRiU.js +994 -0
  153. package/app/out/renderer/assets/journeyDiagram-c64418c1-aloEGOQp.js +1184 -0
  154. package/app/out/renderer/assets/julia-Bs6JJhYG.js +407 -0
  155. package/app/out/renderer/assets/layout-ZeuHE_aY.js +2217 -0
  156. package/app/out/renderer/assets/line-CAgaGl-S.js +45 -0
  157. package/app/out/renderer/assets/linear-DIg7lTe1.js +539 -0
  158. package/app/out/renderer/assets/livescript-DmzgM3Yt.js +296 -0
  159. package/app/out/renderer/assets/lua-8cJgIlqe.js +256 -0
  160. package/app/out/renderer/assets/mathematica-DNLOL9PQ.js +110 -0
  161. package/app/out/renderer/assets/mbox-Ga7d4MMN.js +117 -0
  162. package/app/out/renderer/assets/mindmap-definition-8da855dc-B8XVoUxz.js +36054 -0
  163. package/app/out/renderer/assets/mirc-Dma3B8rS.js +107 -0
  164. package/app/out/renderer/assets/mllike-DHn7xckP.js +334 -0
  165. package/app/out/renderer/assets/modelica-0d55jYY0.js +147 -0
  166. package/app/out/renderer/assets/mscgen-DdqZYINH.js +135 -0
  167. package/app/out/renderer/assets/mumps-Btr8VblO.js +93 -0
  168. package/app/out/renderer/assets/nginx-DTDtBDVN.js +141 -0
  169. package/app/out/renderer/assets/nsis-3zG7tgur.js +62 -0
  170. package/app/out/renderer/assets/ntriples-CvgOYMpL.js +153 -0
  171. package/app/out/renderer/assets/octave-DYBj3-tl.js +200 -0
  172. package/app/out/renderer/assets/ordinal-DSZU4PqD.js +76 -0
  173. package/app/out/renderer/assets/oz-R_e8WMIi.js +231 -0
  174. package/app/out/renderer/assets/pascal-GD8iposT.js +105 -0
  175. package/app/out/renderer/assets/path-Cp2qmpkd.js +109 -0
  176. package/app/out/renderer/assets/perl-DL9mHpoi.js +1105 -0
  177. package/app/out/renderer/assets/pieDiagram-a8764435-DlwoeBU2.js +770 -0
  178. package/app/out/renderer/assets/pig-C_4T4YIV.js +101 -0
  179. package/app/out/renderer/assets/powershell-B0suO7Vd.js +328 -0
  180. package/app/out/renderer/assets/properties-BR-vP1aU.js +58 -0
  181. package/app/out/renderer/assets/protobuf-BxgpyhoW.js +77 -0
  182. package/app/out/renderer/assets/pug-By0kVCfm.js +405 -0
  183. package/app/out/renderer/assets/puppet-Bdao66PW.js +137 -0
  184. package/app/out/renderer/assets/python-CvWbmiX4.js +427 -0
  185. package/app/out/renderer/assets/q-CrbCVq4a.js +131 -0
  186. package/app/out/renderer/assets/quadrantDiagram-1e28029f-BaSi1XB4.js +1200 -0
  187. package/app/out/renderer/assets/r-V7nswm59.js +170 -0
  188. package/app/out/renderer/assets/requirementDiagram-08caed73-D3EFyegZ.js +1092 -0
  189. package/app/out/renderer/assets/rpm-C-DLY-If.js +109 -0
  190. package/app/out/renderer/assets/ruby-JDKLJNK0.js +330 -0
  191. package/app/out/renderer/assets/sankeyDiagram-a04cb91d-Cv44AsnM.js +1174 -0
  192. package/app/out/renderer/assets/sas-D2UG-yhZ.js +207 -0
  193. package/app/out/renderer/assets/scheme-BKzrkGJD.js +222 -0
  194. package/app/out/renderer/assets/sequenceDiagram-c5b8d532-CuUBu-x4.js +3337 -0
  195. package/app/out/renderer/assets/shell-BlsXDxCn.js +222 -0
  196. package/app/out/renderer/assets/sieve-CjwBwOY5.js +135 -0
  197. package/app/out/renderer/assets/simple-mode-DMneyfDu.js +130 -0
  198. package/app/out/renderer/assets/smalltalk-BOIGQuhN.js +121 -0
  199. package/app/out/renderer/assets/solr-CwD7U71z.js +69 -0
  200. package/app/out/renderer/assets/sparql-DYskk2vE.js +249 -0
  201. package/app/out/renderer/assets/spreadsheet-Bgtt3oLP.js +87 -0
  202. package/app/out/renderer/assets/sql-BSrOzCRI.js +354 -0
  203. package/app/out/renderer/assets/stateDiagram-1ecb1508-BOU34Zp4.js +454 -0
  204. package/app/out/renderer/assets/stateDiagram-v2-c2b004d7-BgRoffou.js +326 -0
  205. package/app/out/renderer/assets/stex-B6LNC55o.js +231 -0
  206. package/app/out/renderer/assets/styles-b4e223ce-BMr9TPuj.js +1483 -0
  207. package/app/out/renderer/assets/styles-ca3715f6-DgbNw99p.js +1363 -0
  208. package/app/out/renderer/assets/styles-d45a18b0-DtRYKYKf.js +574 -0
  209. package/app/out/renderer/assets/stylus-BkS-boTH.js +565 -0
  210. package/app/out/renderer/assets/svgDrawCommon-b86b1483-Bein03PD.js +100 -0
  211. package/app/out/renderer/assets/swift-FRZi1uvB.js +291 -0
  212. package/app/out/renderer/assets/tcl-CUcaCdmq.js +114 -0
  213. package/app/out/renderer/assets/textile-BnFpjsrl.js +414 -0
  214. package/app/out/renderer/assets/tiddlywiki-CjprD-Qp.js +218 -0
  215. package/app/out/renderer/assets/tiki-B4EPSQ1G.js +265 -0
  216. package/app/out/renderer/assets/timeline-definition-faaaa080-BlWpLE_4.js +1212 -0
  217. package/app/out/renderer/assets/toml-BOuWGMcf.js +76 -0
  218. package/app/out/renderer/assets/troff-E1bJ0PPL.js +61 -0
  219. package/app/out/renderer/assets/ttcn-cfg-Dc39-fIP.js +133 -0
  220. package/app/out/renderer/assets/ttcn-tKd4HLu4.js +192 -0
  221. package/app/out/renderer/assets/turtle-Dq7-1WAf.js +124 -0
  222. package/app/out/renderer/assets/vb-Dp90gtsv.js +196 -0
  223. package/app/out/renderer/assets/vbscript-CI6_mxxU.js +479 -0
  224. package/app/out/renderer/assets/velocity-BwIZK1TH.js +149 -0
  225. package/app/out/renderer/assets/verilog-DDCYnHN8.js +430 -0
  226. package/app/out/renderer/assets/vhdl-DCkMIyT9.js +158 -0
  227. package/app/out/renderer/assets/webidl-BTLTThCm.js +204 -0
  228. package/app/out/renderer/assets/xquery-BgiOC5Ce.js +525 -0
  229. package/app/out/renderer/assets/xychartDiagram-f5964ef8-Bhga-YXm.js +1799 -0
  230. package/app/out/renderer/assets/yacas-b5lAVEIl.js +130 -0
  231. package/app/out/renderer/assets/z80-BZV19vqv.js +93 -0
  232. package/app/out/renderer/index.html +13 -0
  233. package/app/out/skills/community-builtin/README.md +29 -0
  234. package/app/out/skills/community-builtin/document-docx/SKILL.md +44 -0
  235. package/app/out/skills/community-builtin/document-docx/scripts/docx-to-markdown.sh +20 -0
  236. package/app/out/skills/community-builtin/document-docx/scripts/extract-docx-text.sh +28 -0
  237. package/app/out/skills/community-builtin/document-docx/scripts/init-docx-template.sh +32 -0
  238. package/app/out/skills/community-builtin/document-docx/scripts/setup-docx-tools.sh +10 -0
  239. package/app/out/skills/community-builtin/markitdown/SKILL.md +105 -0
  240. package/app/out/skills/community-builtin/markitdown/scripts/batch-convert.sh +40 -0
  241. package/app/out/skills/community-builtin/markitdown/scripts/convert-file.sh +24 -0
  242. package/app/out/skills/community-builtin/markitdown/scripts/setup-markitdown.sh +10 -0
  243. package/app/out/skills/community-builtin/repo-quick-audit/SKILL.md +27 -0
  244. package/app/out/skills/community-builtin/repo-quick-audit/scripts/audit-basics.sh +19 -0
  245. package/app/out/skills/research-pilot-default-project-skills/README.md +23 -0
  246. package/app/out/skills/research-pilot-default-project-skills/citation-management/SKILL.md +39 -0
  247. package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/doi-to-bibtex.sh +25 -0
  248. package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/normalize-bibtex-keys.sh +51 -0
  249. package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/setup-citation-tools.sh +10 -0
  250. package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/validate-bib.sh +31 -0
  251. package/app/out/skills/research-pilot-default-project-skills/matplotlib/SKILL.md +34 -0
  252. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/api_reference.md +412 -0
  253. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/common_issues.md +563 -0
  254. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/plot_types.md +476 -0
  255. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/styling_guide.md +589 -0
  256. package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/subagent_quickstart.md +30 -0
  257. package/app/out/skills/research-pilot-default-project-skills/matplotlib/scripts/plot_template.py +401 -0
  258. package/app/out/skills/research-pilot-default-project-skills/matplotlib/scripts/style_configurator.py +409 -0
  259. package/app/out/skills/research-pilot-default-project-skills/research-grants/SKILL.md +38 -0
  260. package/app/out/skills/research-pilot-default-project-skills/research-grants/scripts/check-grant-compliance.sh +40 -0
  261. package/app/out/skills/research-pilot-default-project-skills/research-grants/scripts/grant-summary-card.sh +32 -0
  262. package/app/out/skills/research-pilot-default-project-skills/research-grants/scripts/init-grant-structure.sh +70 -0
  263. package/app/package.json +77 -0
  264. package/bin/cli.mjs +56 -0
  265. package/lib/README.md +145 -0
  266. package/lib/skills/_generated.ts +13 -0
  267. package/lib/skills/builtin/brainstorming-research-ideas/SKILL.md +280 -0
  268. package/lib/skills/builtin/coding/SKILL.md +114 -0
  269. package/lib/skills/builtin/creative-thinking-for-research/SKILL.md +273 -0
  270. package/lib/skills/builtin/matplotlib/SKILL.md +361 -0
  271. package/lib/skills/builtin/matplotlib/references/api_reference.md +412 -0
  272. package/lib/skills/builtin/matplotlib/references/common_issues.md +563 -0
  273. package/lib/skills/builtin/matplotlib/references/plot_types.md +476 -0
  274. package/lib/skills/builtin/matplotlib/references/styling_guide.md +589 -0
  275. package/lib/skills/builtin/matplotlib/scripts/plot_template.py +401 -0
  276. package/lib/skills/builtin/matplotlib/scripts/style_configurator.py +409 -0
  277. package/lib/skills/builtin/paper-writing/SKILL.md +554 -0
  278. package/lib/skills/builtin/paper-writing/references/checklists.md +524 -0
  279. package/lib/skills/builtin/paper-writing/references/citation-workflow.md +562 -0
  280. package/lib/skills/builtin/paper-writing/references/reviewer-guidelines.md +462 -0
  281. package/lib/skills/builtin/paper-writing/references/sources.md +189 -0
  282. package/lib/skills/builtin/paper-writing/references/systems-conferences.md +260 -0
  283. package/lib/skills/builtin/paper-writing/references/writing-guide.md +476 -0
  284. package/lib/skills/builtin/paper-writing/templates/README.md +408 -0
  285. package/lib/skills/builtin/paper-writing/templates/aaai2026/README.md +534 -0
  286. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026-unified-supp.tex +144 -0
  287. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026-unified-template.tex +952 -0
  288. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026.bib +111 -0
  289. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026.bst +1493 -0
  290. package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026.sty +315 -0
  291. package/lib/skills/builtin/paper-writing/templates/acl/README.md +50 -0
  292. package/lib/skills/builtin/paper-writing/templates/acl/acl.sty +312 -0
  293. package/lib/skills/builtin/paper-writing/templates/acl/acl_latex.tex +377 -0
  294. package/lib/skills/builtin/paper-writing/templates/acl/acl_lualatex.tex +101 -0
  295. package/lib/skills/builtin/paper-writing/templates/acl/acl_natbib.bst +1940 -0
  296. package/lib/skills/builtin/paper-writing/templates/acl/anthology.bib.txt +26 -0
  297. package/lib/skills/builtin/paper-writing/templates/acl/custom.bib +70 -0
  298. package/lib/skills/builtin/paper-writing/templates/acl/formatting.md +326 -0
  299. package/lib/skills/builtin/paper-writing/templates/asplos2027/main.tex +459 -0
  300. package/lib/skills/builtin/paper-writing/templates/asplos2027/references.bib +135 -0
  301. package/lib/skills/builtin/paper-writing/templates/colm2025/README.md +3 -0
  302. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.bib +11 -0
  303. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.bst +1440 -0
  304. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.pdf +0 -0
  305. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.sty +218 -0
  306. package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.tex +305 -0
  307. package/lib/skills/builtin/paper-writing/templates/colm2025/fancyhdr.sty +485 -0
  308. package/lib/skills/builtin/paper-writing/templates/colm2025/math_commands.tex +508 -0
  309. package/lib/skills/builtin/paper-writing/templates/colm2025/natbib.sty +1246 -0
  310. package/lib/skills/builtin/paper-writing/templates/iclr2026/fancyhdr.sty +485 -0
  311. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.bib +24 -0
  312. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.bst +1440 -0
  313. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.pdf +0 -0
  314. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.sty +246 -0
  315. package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.tex +414 -0
  316. package/lib/skills/builtin/paper-writing/templates/iclr2026/math_commands.tex +508 -0
  317. package/lib/skills/builtin/paper-writing/templates/iclr2026/natbib.sty +1246 -0
  318. package/lib/skills/builtin/paper-writing/templates/icml2026/algorithm.sty +79 -0
  319. package/lib/skills/builtin/paper-writing/templates/icml2026/algorithmic.sty +201 -0
  320. package/lib/skills/builtin/paper-writing/templates/icml2026/example_paper.bib +75 -0
  321. package/lib/skills/builtin/paper-writing/templates/icml2026/example_paper.pdf +0 -0
  322. package/lib/skills/builtin/paper-writing/templates/icml2026/example_paper.tex +662 -0
  323. package/lib/skills/builtin/paper-writing/templates/icml2026/fancyhdr.sty +864 -0
  324. package/lib/skills/builtin/paper-writing/templates/icml2026/icml2026.bst +1443 -0
  325. package/lib/skills/builtin/paper-writing/templates/icml2026/icml2026.sty +767 -0
  326. package/lib/skills/builtin/paper-writing/templates/icml2026/icml_numpapers.pdf +0 -0
  327. package/lib/skills/builtin/paper-writing/templates/neurips2025/Makefile +36 -0
  328. package/lib/skills/builtin/paper-writing/templates/neurips2025/extra_pkgs.tex +53 -0
  329. package/lib/skills/builtin/paper-writing/templates/neurips2025/main.tex +38 -0
  330. package/lib/skills/builtin/paper-writing/templates/neurips2025/neurips.sty +382 -0
  331. package/lib/skills/builtin/paper-writing/templates/nsdi2027/main.tex +426 -0
  332. package/lib/skills/builtin/paper-writing/templates/nsdi2027/references.bib +151 -0
  333. package/lib/skills/builtin/paper-writing/templates/nsdi2027/usenix-2020-09.sty +83 -0
  334. package/lib/skills/builtin/paper-writing/templates/osdi2026/main.tex +429 -0
  335. package/lib/skills/builtin/paper-writing/templates/osdi2026/references.bib +150 -0
  336. package/lib/skills/builtin/paper-writing/templates/osdi2026/usenix-2020-09.sty +83 -0
  337. package/lib/skills/builtin/paper-writing/templates/sosp2026/main.tex +532 -0
  338. package/lib/skills/builtin/paper-writing/templates/sosp2026/references.bib +148 -0
  339. package/lib/skills/builtin/research-grants/SKILL.md +958 -0
  340. package/lib/skills/builtin/research-grants/assets/budget_justification_template.md +453 -0
  341. package/lib/skills/builtin/research-grants/assets/nih_specific_aims_template.md +166 -0
  342. package/lib/skills/builtin/research-grants/assets/nsf_project_summary_template.md +92 -0
  343. package/lib/skills/builtin/research-grants/references/README.md +285 -0
  344. package/lib/skills/builtin/research-grants/references/broader_impacts.md +392 -0
  345. package/lib/skills/builtin/research-grants/references/darpa_guidelines.md +636 -0
  346. package/lib/skills/builtin/research-grants/references/doe_guidelines.md +586 -0
  347. package/lib/skills/builtin/research-grants/references/nih_guidelines.md +851 -0
  348. package/lib/skills/builtin/research-grants/references/nsf_guidelines.md +570 -0
  349. package/lib/skills/builtin/research-grants/references/nstc_guidelines.md +733 -0
  350. package/lib/skills/builtin/research-grants/references/specific_aims_guide.md +458 -0
  351. package/lib/skills/builtin/rewrite-humanize/SKILL.md +116 -0
  352. package/lib/skills/builtin/rewrite-humanize/references/cs-venue-tone.md +57 -0
  353. package/lib/skills/builtin/rewrite-humanize/references/lexicon.md +50 -0
  354. package/lib/skills/builtin/scholar-evaluation/SKILL.md +300 -0
  355. package/lib/skills/builtin/scholar-evaluation/references/evaluation_framework.md +663 -0
  356. package/lib/skills/builtin/scholar-evaluation/scripts/calculate_scores.py +379 -0
  357. package/lib/skills/builtin/scientific-schematics/SKILL.md +603 -0
  358. package/lib/skills/builtin/scientific-schematics/references/QUICK_REFERENCE.md +182 -0
  359. package/lib/skills/builtin/scientific-schematics/references/README.md +292 -0
  360. package/lib/skills/builtin/scientific-schematics/references/best_practices.md +560 -0
  361. package/lib/skills/builtin/scientific-schematics/scripts/__pycache__/generate_schematic.cpython-312.pyc +0 -0
  362. package/lib/skills/builtin/scientific-schematics/scripts/__pycache__/generate_schematic_ai.cpython-312.pyc +0 -0
  363. package/lib/skills/builtin/scientific-schematics/scripts/example_usage.sh +85 -0
  364. package/lib/skills/builtin/scientific-schematics/scripts/generate_schematic.py +141 -0
  365. package/lib/skills/builtin/scientific-schematics/scripts/generate_schematic_ai.py +910 -0
  366. package/lib/skills/builtin/scientific-visualization/SKILL.md +749 -0
  367. package/lib/skills/builtin/scientific-visualization/assets/color_palettes.py +197 -0
  368. package/lib/skills/builtin/scientific-visualization/assets/nature.mplstyle +63 -0
  369. package/lib/skills/builtin/scientific-visualization/assets/presentation.mplstyle +61 -0
  370. package/lib/skills/builtin/scientific-visualization/assets/publication.mplstyle +68 -0
  371. package/lib/skills/builtin/scientific-visualization/references/color_palettes.md +348 -0
  372. package/lib/skills/builtin/scientific-visualization/references/journal_requirements.md +320 -0
  373. package/lib/skills/builtin/scientific-visualization/references/matplotlib_examples.md +620 -0
  374. package/lib/skills/builtin/scientific-visualization/references/publication_guidelines.md +205 -0
  375. package/lib/skills/builtin/scientific-visualization/scripts/figure_export.py +343 -0
  376. package/lib/skills/builtin/scientific-visualization/scripts/style_presets.py +416 -0
  377. package/lib/skills/builtin/scientific-writing/SKILL.md +745 -0
  378. package/lib/skills/builtin/scientific-writing/assets/REPORT_FORMATTING_GUIDE.md +574 -0
  379. package/lib/skills/builtin/scientific-writing/assets/scientific_report.sty +606 -0
  380. package/lib/skills/builtin/scientific-writing/assets/scientific_report_template.tex +449 -0
  381. package/lib/skills/builtin/scientific-writing/references/citation_styles.md +720 -0
  382. package/lib/skills/builtin/scientific-writing/references/figures_tables.md +806 -0
  383. package/lib/skills/builtin/scientific-writing/references/imrad_structure.md +686 -0
  384. package/lib/skills/builtin/scientific-writing/references/professional_report_formatting.md +664 -0
  385. package/lib/skills/builtin/scientific-writing/references/reporting_guidelines.md +748 -0
  386. package/lib/skills/builtin/scientific-writing/references/writing_principles.md +824 -0
  387. package/lib/skills/builtin/seaborn/SKILL.md +674 -0
  388. package/lib/skills/builtin/seaborn/references/examples.md +822 -0
  389. package/lib/skills/builtin/seaborn/references/function_reference.md +770 -0
  390. package/lib/skills/builtin/seaborn/references/objects_interface.md +964 -0
  391. package/lib/skills/data-analysis/SKILL.md +285 -0
  392. package/lib/skills/generate-skill-content.mjs +58 -0
  393. package/lib/skills/index.ts +34 -0
  394. package/lib/skills/loader.ts +452 -0
  395. package/package.json +62 -0
@@ -0,0 +1,429 @@
1
+ %%%%%%%% OSDI 2026 PAPER TEMPLATE %%%%%%%%%%%%%%%%%
2
+ %
3
+ % The 20th USENIX Symposium on Operating Systems Design and Implementation
4
+ % July 13--15, 2026, Seattle, WA, USA
5
+ %
6
+ % Format: <= 12 pages (excluding references), 8.5"x11", 10pt on 12pt leading,
7
+ % two-column, Times Roman, 7"x9" text block
8
+ % Camera-ready: <= 14 pages (2 extra pages allowed)
9
+ %
10
+ % Official CFP: https://www.usenix.org/conference/osdi26/call-for-papers
11
+ % Template source: https://www.usenix.org/conferences/author-resources/paper-templates
12
+ %
13
+ % IMPORTANT NOTES:
14
+ % - OSDI 2026 has two tracks: Research and Operational Systems
15
+ % - For Operational Systems track, title must end with "(Operational Systems)"
16
+ % - Max 8 submissions per author
17
+ % - Papers should be the right length (not padded to 12 pages)
18
+ % - Papers <= 6 pages are unlikely to receive full consideration
19
+ % - Use anonymized project/system name (different from arXiv/talks)
20
+ %
21
+ % WHAT OSDI REVIEWERS LOOK FOR:
22
+ % 1. Significant problem motivation
23
+ % 2. Interesting and compelling solution
24
+ % 3. Practicality and benefits demonstrated
25
+ % 4. Clear contribution articulation
26
+ % 5. Advances beyond previous work
27
+
28
+ \documentclass[letterpaper,twocolumn,10pt]{article}
29
+ \usepackage{usenix-2020-09}
30
+
31
+ % Recommended packages for systems papers
32
+ \usepackage[utf8]{inputenc}
33
+ \usepackage{amsmath,amssymb}
34
+ \usepackage{graphicx}
35
+ \usepackage{booktabs} % Professional tables
36
+ \usepackage{hyperref}
37
+ \usepackage{url}
38
+ \usepackage{xspace}
39
+ \usepackage{subcaption} % Side-by-side figures
40
+ \usepackage{algorithm} % Algorithm environment
41
+ \usepackage{algorithmic} % Pseudocode formatting
42
+ \usepackage{listings} % Code listings
43
+ \usepackage[capitalize,noabbrev]{cleveref} % Smart cross-references
44
+
45
+ % Code listing style for systems papers
46
+ \lstset{
47
+ basicstyle=\footnotesize\ttfamily,
48
+ numbers=left,
49
+ numberstyle=\tiny,
50
+ xleftmargin=2em,
51
+ breaklines=true,
52
+ tabsize=2,
53
+ showstringspaces=false,
54
+ frame=single,
55
+ captionpos=b
56
+ }
57
+
58
+ % Custom commands -- replace \system with your anonymized name
59
+ \newcommand{\system}{SystemName\xspace}
60
+ \newcommand{\eg}{e.g.,\xspace}
61
+ \newcommand{\ie}{i.e.,\xspace}
62
+ \newcommand{\etal}{\textit{et al.}\xspace}
63
+ \newcommand{\para}[1]{\smallskip\noindent\textbf{#1.}}
64
+ \newcommand{\parait}[1]{\smallskip\noindent\textit{#1.}}
65
+
66
+ % Convenience macros for units (common in systems papers)
67
+ \newcommand{\us}{\,$\mu$s\xspace}
68
+ \newcommand{\ms}{\,ms\xspace}
69
+ \newcommand{\GB}{\,GB\xspace}
70
+ \newcommand{\MB}{\,MB\xspace}
71
+ \newcommand{\Gbps}{\,Gbps\xspace}
72
+
73
+ \begin{document}
74
+
75
+ % For submission: use anonymized title and Paper #XXX as author
76
+ % For Operational Systems track: add "(Operational Systems)" to title
77
+ \title{Your Paper Title Here}
78
+ % \title{Your Paper Title Here (Operational Systems)} % Operational Systems track
79
+
80
+ \author{Paper \#XXX} % Anonymized for submission
81
+ % Camera-ready:
82
+ % \author{
83
+ % {\rm Author One}\\
84
+ % Affiliation One\\
85
+ % \texttt{email@example.com}
86
+ % \and
87
+ % {\rm Author Two}\\
88
+ % Affiliation Two\\
89
+ % \texttt{email@example.com}
90
+ % }
91
+
92
+ \maketitle
93
+
94
+ %----------------------------------------------------------------------
95
+ \begin{abstract}
96
+ % Guidelines for a strong OSDI abstract:
97
+ % - State what you achieved (the contribution)
98
+ % - Why this is hard and important (the problem)
99
+ % - How you do it (the approach)
100
+ % - What evidence you have (evaluation highlights)
101
+ % - Your most remarkable result (the hook)
102
+ %
103
+ % Keep to 150--200 words. Avoid citations in the abstract.
104
+
105
+ We present \system, a [describe system] that [key capability].
106
+ [Problem statement: why existing approaches fall short.]
107
+ \system addresses this through [key technique/insight].
108
+ We evaluate \system on [workloads/benchmarks] and show that it achieves
109
+ [X]\% improvement in [metric] over [baseline], while reducing [other metric]
110
+ by [Y]$\times$.
111
+ \end{abstract}
112
+
113
+ %----------------------------------------------------------------------
114
+ \section{Introduction}
115
+ \label{sec:intro}
116
+
117
+ % Structure your introduction as follows:
118
+ % 1. Problem context and motivation (1--2 paragraphs)
119
+ % 2. Why existing solutions are insufficient (1 paragraph)
120
+ % 3. Key insight / approach overview (1 paragraph)
121
+ % 4. Contributions (bulleted list)
122
+ % 5. Results highlights (1 paragraph)
123
+ %
124
+ % OSDI reviewers look for: significant problem + compelling solution +
125
+ % demonstrated practicality + clear contributions + advances beyond prior work.
126
+
127
+ Modern systems face the challenge of [describe problem]~\cite{dean2004mapreduce}.
128
+ As workloads grow in scale and complexity, existing approaches such as
129
+ [prior work]~\cite{abadi2016tensorflow} struggle to [limitation].
130
+
131
+ \para{Key Insight}
132
+ Our key observation is that [insight]. This enables \system to [capability]
133
+ without [drawback of prior approaches].
134
+
135
+ We make the following contributions:
136
+ \begin{itemize}
137
+ \item We identify [problem/opportunity] and characterize its impact
138
+ on [workloads] (\cref{sec:background}).
139
+ \item We design \system, which introduces [technique] to address
140
+ [challenge] (\cref{sec:design}).
141
+ \item We implement \system in [X] lines of [language] and integrate
142
+ it with [existing system] (\cref{sec:implementation}).
143
+ \item We evaluate \system on [benchmarks] and demonstrate [X]$\times$
144
+ improvement over [baseline] (\cref{sec:evaluation}).
145
+ \end{itemize}
146
+
147
+ %----------------------------------------------------------------------
148
+ \section{Background and Motivation}
149
+ \label{sec:background}
150
+
151
+ % Provide context the reader needs to understand your contribution.
152
+ % Include a motivating example or measurement study.
153
+
154
+ \subsection{Problem Context}
155
+
156
+ Describe the system context and relevant background.
157
+ Prior work~\cite{moritz2018ray, zaharia2012spark} has explored [related area],
158
+ but [gap remains].
159
+
160
+ \subsection{Motivating Example}
161
+
162
+ % Use concrete numbers from real workloads to motivate the problem.
163
+ \Cref{fig:motivation} shows [measurement] across [workloads].
164
+ We observe that [finding], which motivates our approach.
165
+
166
+ \begin{figure}[t]
167
+ \centering
168
+ % Replace with your actual figure
169
+ \fbox{\parbox{0.9\columnwidth}{\centering\vspace{3em}
170
+ \textit{Motivating measurement or characterization study}
171
+ \vspace{3em}}}
172
+ \caption{[Description of motivating measurement.] We observe that
173
+ [key finding] across [N] production workloads, motivating the need
174
+ for [your approach].}
175
+ \label{fig:motivation}
176
+ \end{figure}
177
+
178
+ %----------------------------------------------------------------------
179
+ \section{Design}
180
+ \label{sec:design}
181
+
182
+ % Present your system design top-down:
183
+ % 1. Architecture overview (with figure)
184
+ % 2. Key components / mechanisms
185
+ % 3. How they interact
186
+
187
+ \Cref{fig:architecture} shows the overall architecture of \system.
188
+ The system consists of [N] key components: [list].
189
+
190
+ \begin{figure*}[t]
191
+ \centering
192
+ % Replace with your actual architecture diagram
193
+ \fbox{\parbox{0.9\textwidth}{\centering\vspace{4em}
194
+ \textit{System architecture diagram showing key components and data flow}
195
+ \vspace{4em}}}
196
+ \caption{Architecture of \system. [Component A] handles [function],
197
+ while [Component B] manages [function]. Arrows indicate [data/control flow].}
198
+ \label{fig:architecture}
199
+ \end{figure*}
200
+
201
+ \subsection{Component A: [Name]}
202
+
203
+ Describe the first key component. A formal specification of the core
204
+ algorithm can be found in \cref{alg:core}.
205
+
206
+ \begin{algorithm}[t]
207
+ \caption{Core algorithm of \system}
208
+ \label{alg:core}
209
+ \begin{algorithmic}[1]
210
+ \STATE \textbf{Input:} workload $W$, resources $R$
211
+ \STATE \textbf{Output:} scheduling plan $P$
212
+ \STATE Initialize plan $P \leftarrow \emptyset$
213
+ \FOR{each task $t_i \in W$}
214
+ \STATE Estimate resource demand $d_i \leftarrow \text{Predict}(t_i)$
215
+ \IF{$\text{Available}(R) \geq d_i$}
216
+ \STATE $P \leftarrow P \cup \{(t_i, \text{Allocate}(R, d_i))\}$
217
+ \ELSE
218
+ \STATE Enqueue $t_i$ for deferred scheduling
219
+ \ENDIF
220
+ \ENDFOR
221
+ \STATE \textbf{return} $P$
222
+ \end{algorithmic}
223
+ \end{algorithm}
224
+
225
+ \subsection{Component B: [Name]}
226
+
227
+ Describe the second key component. The expected throughput can be
228
+ modeled as:
229
+ \begin{equation}
230
+ \label{eq:throughput}
231
+ T = \frac{N \cdot B}{L + \frac{B}{C}}
232
+ \end{equation}
233
+ where $N$ is the number of parallel workers, $B$ is the batch size,
234
+ $L$ is the network latency, and $C$ is the per-worker compute rate.
235
+
236
+ \subsection{Handling Edge Cases}
237
+
238
+ Discuss how the design handles failures, stragglers, or other
239
+ edge cases important in production systems.
240
+
241
+ %----------------------------------------------------------------------
242
+ \section{Implementation}
243
+ \label{sec:implementation}
244
+
245
+ % Describe implementation details that matter for reproducibility.
246
+ % Include system size, language, key libraries, and integration points.
247
+
248
+ We implement \system in approximately [X]K lines of [language].
249
+ Key implementation details include:
250
+
251
+ \para{Threading Model}
252
+ [Describe the threading/concurrency model.]
253
+
254
+ \para{Integration}
255
+ \system integrates with [existing system] by [method of integration].
256
+ We modify [N] lines of the original codebase.
257
+
258
+ %----------------------------------------------------------------------
259
+ \section{Evaluation}
260
+ \label{sec:evaluation}
261
+
262
+ % Structure your evaluation to answer specific questions:
263
+ % - Q1: How does \system compare to state-of-the-art? (end-to-end)
264
+ % - Q2: What is the contribution of each component? (ablation)
265
+ % - Q3: How does \system scale? (scalability)
266
+ % - Q4: What is the overhead? (cost analysis)
267
+
268
+ We evaluate \system to answer the following questions:
269
+ \begin{enumerate}
270
+ \item How does \system compare to state-of-the-art systems?
271
+ \item What is the contribution of each design component?
272
+ \item How does \system scale with increasing workload?
273
+ \item What overhead does \system introduce?
274
+ \end{enumerate}
275
+
276
+ \subsection{Experimental Setup}
277
+ \label{sec:eval:setup}
278
+
279
+ \para{Testbed}
280
+ We run experiments on a cluster of [N] machines, each with
281
+ [CPU model], [X]\GB RAM, and [GPU model if applicable],
282
+ connected via [network].
283
+
284
+ \para{Workloads}
285
+ We use [N] workloads from [source]: [list workloads].
286
+ \Cref{tab:workloads} summarizes their characteristics.
287
+
288
+ \para{Baselines}
289
+ We compare against [N] baselines:
290
+ (1)~[Baseline A]~\cite{verma2015borg},
291
+ (2)~[Baseline B]~\cite{ongaro2014raft}, and
292
+ (3)~[Baseline C].
293
+
294
+ \begin{table}[t]
295
+ \caption{Workload characteristics used in evaluation.
296
+ [Describe what the columns represent.]}
297
+ \label{tab:workloads}
298
+ \centering
299
+ \begin{small}
300
+ \begin{tabular}{@{}lrrrl@{}}
301
+ \toprule
302
+ \textbf{Workload} & \textbf{Tasks} & \textbf{Data (GB)} &
303
+ \textbf{Duration} & \textbf{Type} \\
304
+ \midrule
305
+ WorkloadA & 1,024 & 128 & 2.4\,h & Batch \\
306
+ WorkloadB & 512 & 64 & 1.1\,h & Streaming \\
307
+ WorkloadC & 4,096 & 512 & 8.7\,h & ML Train \\
308
+ WorkloadD & 256 & 32 & 0.5\,h & Serving \\
309
+ \bottomrule
310
+ \end{tabular}
311
+ \end{small}
312
+ \end{table}
313
+
314
+ \subsection{End-to-End Performance}
315
+ \label{sec:eval:e2e}
316
+
317
+ \Cref{tab:e2e} shows the end-to-end performance comparison.
318
+ \system achieves [X]\% higher throughput and [Y]\% lower latency
319
+ compared to [best baseline].
320
+
321
+ \begin{table}[t]
322
+ \caption{End-to-end performance comparison. Bold indicates best result.
323
+ \system achieves the highest throughput and lowest p99 latency
324
+ across all workloads.}
325
+ \label{tab:e2e}
326
+ \centering
327
+ \begin{small}
328
+ \begin{tabular}{@{}lccc@{}}
329
+ \toprule
330
+ \textbf{System} & \textbf{Throughput} & \textbf{p50 Latency} &
331
+ \textbf{p99 Latency} \\
332
+ & \textbf{(Kops/s)} & \textbf{(ms)} &
333
+ \textbf{(ms)} \\
334
+ \midrule
335
+ Baseline A & 125.3 & 4.2 & 18.7 \\
336
+ Baseline B & 142.1 & 3.8 & 15.2 \\
337
+ Baseline C & 98.6 & 5.1 & 22.4 \\
338
+ \textbf{\system} & \textbf{187.4} & \textbf{2.9} & \textbf{9.8} \\
339
+ \bottomrule
340
+ \end{tabular}
341
+ \end{small}
342
+ \end{table}
343
+
344
+ \subsection{Ablation Study}
345
+ \label{sec:eval:ablation}
346
+
347
+ To understand the contribution of each component, we evaluate variants
348
+ of \system with individual components disabled.
349
+ \Cref{fig:ablation} shows the results.
350
+
351
+ \begin{figure}[t]
352
+ \centering
353
+ % Replace with your ablation study figure
354
+ \fbox{\parbox{0.9\columnwidth}{\centering\vspace{3em}
355
+ \textit{Bar chart: \system vs.\ variants with components disabled}
356
+ \vspace{3em}}}
357
+ \caption{Ablation study results. Each bar represents \system with
358
+ one component removed. Component A contributes [X]\% and
359
+ Component B contributes [Y]\% of the total improvement.}
360
+ \label{fig:ablation}
361
+ \end{figure}
362
+
363
+ \subsection{Scalability}
364
+ \label{sec:eval:scale}
365
+
366
+ We evaluate how \system scales from [N] to [M] nodes.
367
+ As shown in \cref{fig:scalability}, \system achieves near-linear
368
+ scaling up to [K] nodes.
369
+
370
+ \begin{figure}[t]
371
+ \centering
372
+ \fbox{\parbox{0.9\columnwidth}{\centering\vspace{3em}
373
+ \textit{Line chart: throughput vs.\ number of nodes for each system}
374
+ \vspace{3em}}}
375
+ \caption{Scalability comparison. \system achieves [X]\% of ideal
376
+ linear scaling at [K] nodes, compared to [Y]\% for [baseline].}
377
+ \label{fig:scalability}
378
+ \end{figure}
379
+
380
+ %----------------------------------------------------------------------
381
+ \section{Discussion}
382
+ \label{sec:discussion}
383
+
384
+ % Discuss limitations, lessons learned, and generalizability.
385
+ % OSDI reviewers appreciate honest discussion of limitations.
386
+
387
+ \para{Limitations}
388
+ [Discuss known limitations of your system.]
389
+
390
+ \para{Lessons Learned}
391
+ [Share insights from building and deploying the system.]
392
+
393
+ %----------------------------------------------------------------------
394
+ \section{Related Work}
395
+ \label{sec:related}
396
+
397
+ % Organize by theme, NOT paper-by-paper.
398
+ % Clearly distinguish your work from each category.
399
+
400
+ \para{[Category A] Systems}
401
+ Prior work on [category]~\cite{dean2004mapreduce, abadi2016tensorflow}
402
+ focuses on [aspect]. \system differs by [distinction].
403
+
404
+ \para{[Category B] Approaches}
405
+ [Other approaches]~\cite{lamport1978time, verma2015borg} address [problem]
406
+ through [method]. In contrast, \system [distinction].
407
+
408
+ %----------------------------------------------------------------------
409
+ \section{Conclusion}
410
+ \label{sec:conclusion}
411
+
412
+ We presented \system, a [description] that [key capability].
413
+ Through [technique], \system achieves [improvement] over
414
+ state-of-the-art systems. Our evaluation on [workloads] demonstrates
415
+ [key results]. [Optional: future work direction.]
416
+
417
+ %----------------------------------------------------------------------
418
+ % Bibliography
419
+ % USENIX uses the acm bibliography style
420
+ {\footnotesize \bibliographystyle{acm}
421
+ \bibliography{references}}
422
+
423
+ %----------------------------------------------------------------------
424
+ % Optional: Appendix (after bibliography for USENIX)
425
+ % \appendix
426
+ % \section{Additional Evaluation Results}
427
+ % Include supplementary material here.
428
+
429
+ \end{document}
@@ -0,0 +1,150 @@
1
+ % OSDI 2026 Example Bibliography
2
+ %
3
+ % This file contains example references demonstrating different BibTeX entry
4
+ % types commonly used in systems papers. Replace with your actual references.
5
+ %
6
+ % Entry types demonstrated:
7
+ % inproceedings -- Conference paper (most common in systems)
8
+ % article -- Journal article
9
+ % techreport -- Technical report
10
+ % phdthesis -- Doctoral dissertation
11
+ % misc -- ArXiv preprint, website, or software
12
+ % book -- Book reference
13
+
14
+ %----------------------------------------------------------------------
15
+ % Conference papers (inproceedings) -- most common in systems
16
+ %----------------------------------------------------------------------
17
+
18
+ @inproceedings{dean2004mapreduce,
19
+ author = {Dean, Jeffrey and Ghemawat, Sanjay},
20
+ title = {{MapReduce}: Simplified Data Processing on Large Clusters},
21
+ booktitle = {Proceedings of the 6th USENIX Symposium on Operating Systems
22
+ Design and Implementation (OSDI)},
23
+ year = {2004},
24
+ pages = {137--150},
25
+ address = {San Francisco, CA},
26
+ publisher = {USENIX Association},
27
+ }
28
+
29
+ @inproceedings{abadi2016tensorflow,
30
+ author = {Abadi, Mart\'{\i}n and Barham, Paul and Chen, Jianmin and
31
+ Chen, Zhifeng and Davis, Andy and Dean, Jeffrey and
32
+ Devin, Matthieu and Ghemawat, Sanjay and Irving, Geoffrey and
33
+ Isard, Michael and others},
34
+ title = {{TensorFlow}: A System for Large-Scale Machine Learning},
35
+ booktitle = {Proceedings of the 12th USENIX Symposium on Operating Systems
36
+ Design and Implementation (OSDI)},
37
+ year = {2016},
38
+ pages = {265--283},
39
+ address = {Savannah, GA},
40
+ publisher = {USENIX Association},
41
+ }
42
+
43
+ @inproceedings{moritz2018ray,
44
+ author = {Moritz, Philipp and Nishihara, Robert and Wang, Stephanie and
45
+ Tumanov, Alexey and Liaw, Richard and Liang, Eric and
46
+ Elibol, Melih and Yang, Zongheng and Paul, William and
47
+ Jordan, Michael I. and Stoica, Ion},
48
+ title = {{Ray}: A Distributed Framework for Emerging {AI} Applications},
49
+ booktitle = {Proceedings of the 13th USENIX Symposium on Operating Systems
50
+ Design and Implementation (OSDI)},
51
+ year = {2018},
52
+ pages = {561--577},
53
+ address = {Carlsbad, CA},
54
+ publisher = {USENIX Association},
55
+ }
56
+
57
+ @inproceedings{zaharia2012spark,
58
+ author = {Zaharia, Matei and Chowdhury, Mosharaf and Das, Tathagata and
59
+ Dave, Ankur and Ma, Justin and McCauley, Murphy and
60
+ Franklin, Michael J. and Shenker, Scott and Stoica, Ion},
61
+ title = {Resilient Distributed Datasets: A Fault-Tolerant Abstraction
62
+ for In-Memory Cluster Computing},
63
+ booktitle = {Proceedings of the 9th USENIX Symposium on Networked Systems
64
+ Design and Implementation (NSDI)},
65
+ year = {2012},
66
+ pages = {15--28},
67
+ address = {San Jose, CA},
68
+ publisher = {USENIX Association},
69
+ }
70
+
71
+ @inproceedings{ongaro2014raft,
72
+ author = {Ongaro, Diego and Ousterhout, John},
73
+ title = {In Search of an Understandable Consensus Algorithm},
74
+ booktitle = {Proceedings of the 2014 USENIX Annual Technical Conference
75
+ (USENIX ATC)},
76
+ year = {2014},
77
+ pages = {305--319},
78
+ address = {Philadelphia, PA},
79
+ publisher = {USENIX Association},
80
+ }
81
+
82
+ @inproceedings{verma2015borg,
83
+ author = {Verma, Abhishek and Pedrosa, Luis and Korupolu, Madhukar and
84
+ Oppenheimer, David and Tune, Eric and Wilkes, John},
85
+ title = {Large-Scale Cluster Management at {Google} with {Borg}},
86
+ booktitle = {Proceedings of the 10th European Conference on Computer
87
+ Systems (EuroSys)},
88
+ year = {2015},
89
+ pages = {1--17},
90
+ address = {Bordeaux, France},
91
+ publisher = {ACM},
92
+ }
93
+
94
+ %----------------------------------------------------------------------
95
+ % Journal article (article)
96
+ %----------------------------------------------------------------------
97
+
98
+ @article{lamport1978time,
99
+ author = {Lamport, Leslie},
100
+ title = {Time, Clocks, and the Ordering of Events in a Distributed System},
101
+ journal = {Communications of the ACM},
102
+ volume = {21},
103
+ number = {7},
104
+ pages = {558--565},
105
+ year = {1978},
106
+ doi = {10.1145/359545.359563},
107
+ publisher = {ACM},
108
+ }
109
+
110
+ %----------------------------------------------------------------------
111
+ % Technical report (techreport)
112
+ %----------------------------------------------------------------------
113
+
114
+ @techreport{lamport2001paxos,
115
+ author = {Lamport, Leslie},
116
+ title = {Paxos Made Simple},
117
+ institution = {Microsoft Research},
118
+ year = {2001},
119
+ number = {MSR-TR-2001-33},
120
+ address = {Redmond, WA},
121
+ }
122
+
123
+ %----------------------------------------------------------------------
124
+ % ArXiv preprint (misc)
125
+ %----------------------------------------------------------------------
126
+
127
+ @misc{kwon2023vllm,
128
+ author = {Kwon, Woosuk and Li, Zhuohan and Zhuang, Siyuan and
129
+ Sheng, Ying and Zheng, Lianmin and Yu, Cody Hao and
130
+ Gonzalez, Joseph E. and Zhang, Hao and Stoica, Ion},
131
+ title = {Efficient Memory Management for Large Language Model Serving
132
+ with {PagedAttention}},
133
+ year = {2023},
134
+ eprint = {2309.06180},
135
+ archivePrefix = {arXiv},
136
+ primaryClass = {cs.OS},
137
+ }
138
+
139
+ %----------------------------------------------------------------------
140
+ % PhD thesis (phdthesis)
141
+ %----------------------------------------------------------------------
142
+
143
+ @phdthesis{zaharia2014thesis,
144
+ author = {Zaharia, Matei},
145
+ title = {An Architecture for Fast and General Data Processing on
146
+ Large Clusters},
147
+ school = {University of California, Berkeley},
148
+ year = {2014},
149
+ address = {Berkeley, CA},
150
+ }
@@ -0,0 +1,83 @@
1
+ % USENIX style file for papers
2
+ % usenix-2020-09.sty
3
+ %
4
+ % This is the official USENIX style for conferences including OSDI, NSDI, ATC, etc.
5
+ % Source: https://www.usenix.org/conferences/author-resources/paper-templates
6
+ %
7
+ % NOTE: This is a simplified version for template purposes.
8
+ % For the latest official version, download from:
9
+ % https://www.usenix.org/conferences/author-resources/paper-templates
10
+
11
+ \NeedsTeXFormat{LaTeX2e}
12
+ \ProvidesPackage{usenix-2020-09}[2020/09/01 USENIX Style]
13
+
14
+ % Required packages
15
+ \RequirePackage{mathptmx} % Times Roman font
16
+ \RequirePackage[scaled=0.92]{helvet} % Helvetica for sans-serif
17
+ \RequirePackage{courier} % Courier for monospace
18
+ \RequirePackage{graphicx}
19
+ \RequirePackage{url}
20
+
21
+ % Page layout: 7" x 9" text block on 8.5" x 11" paper
22
+ \setlength{\textheight}{9.0in}
23
+ \setlength{\textwidth}{7.0in}
24
+ \setlength{\columnsep}{0.33in}
25
+ \setlength{\topmargin}{0.0in}
26
+ \setlength{\headheight}{0.0in}
27
+ \setlength{\headsep}{0.0in}
28
+ \setlength{\oddsidemargin}{-0.25in}
29
+ \setlength{\evensidemargin}{-0.25in}
30
+ \setlength{\parindent}{1em}
31
+ \setlength{\parskip}{0pt}
32
+
33
+ % Title formatting
34
+ \renewcommand{\@maketitle}{%
35
+ \newpage
36
+ \null
37
+ \vskip 2em%
38
+ \begin{center}%
39
+ \let \footnote \thanks
40
+ {\LARGE \@title \par}%
41
+ \vskip 1.5em%
42
+ {\large
43
+ \lineskip .5em%
44
+ \begin{tabular}[t]{c}%
45
+ \@author
46
+ \end{tabular}\par}%
47
+ \vskip 1em%
48
+ {\large \@date}%
49
+ \end{center}%
50
+ \par
51
+ \vskip 1.5em}
52
+
53
+ % Section formatting
54
+ \renewcommand{\section}{\@startsection{section}{1}{\z@}%
55
+ {-3.5ex \@plus -1ex \@minus -.2ex}%
56
+ {2.3ex \@plus.2ex}%
57
+ {\normalfont\large\bfseries}}
58
+
59
+ \renewcommand{\subsection}{\@startsection{subsection}{2}{\z@}%
60
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
61
+ {1.5ex \@plus .2ex}%
62
+ {\normalfont\normalsize\bfseries}}
63
+
64
+ \renewcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}%
65
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
66
+ {1.5ex \@plus .2ex}%
67
+ {\normalfont\normalsize\bfseries}}
68
+
69
+ % Footnote formatting
70
+ \renewcommand{\thefootnote}{\fnsymbol{footnote}}
71
+
72
+ % Abstract formatting
73
+ \renewenvironment{abstract}%
74
+ {\begin{quote}\small\textbf{Abstract: }}%
75
+ {\end{quote}}
76
+
77
+ % Float parameters
78
+ \renewcommand{\topfraction}{0.9}
79
+ \renewcommand{\bottomfraction}{0.8}
80
+ \renewcommand{\textfraction}{0.1}
81
+ \renewcommand{\floatpagefraction}{0.8}
82
+
83
+ \endinput