@runweave/server-linux-x64 0.1.7 → 0.1.9

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 (352) hide show
  1. package/manifest.json +1487 -156
  2. package/native.tar.gz +0 -0
  3. package/package.json +1 -1
  4. package/payload/.agents/plugins/marketplace.json +20 -0
  5. package/payload/app-server/build-info.json +3 -3
  6. package/payload/app-server/index.cjs +1 -1
  7. package/payload/backend/build-info.json +4 -4
  8. package/payload/backend/index.cjs +2416 -1684
  9. package/payload/backend/ios-simulators/pool.py +3 -3
  10. package/payload/backend/scheduled-tasks-sqlite-worker.cjs +224 -171
  11. package/payload/frontend/dist/assets/{_baseUniq-i1Ki3twP.js → _baseUniq-qHFga5V8.js} +1 -1
  12. package/payload/frontend/dist/assets/{access-DK9V0f3W.js → access-DgHvmn15.js} +1 -1
  13. package/payload/frontend/dist/assets/{advanced-B13lWv1d.js → advanced-C1Fh14vw.js} +1 -1
  14. package/payload/frontend/dist/assets/{appearance-DumRYmkD.js → appearance-Bs7cSXqO.js} +1 -1
  15. package/payload/frontend/dist/assets/{arc-HKn3_xyV.js → arc-E3iYHQG_.js} +1 -1
  16. package/payload/frontend/dist/assets/{architectureDiagram-Q4EWVU46-C09x7b94.js → architectureDiagram-Q4EWVU46-DgpYpTb9.js} +1 -1
  17. package/payload/frontend/dist/assets/{blockDiagram-DXYQGD6D-CFLFTR6d.js → blockDiagram-DXYQGD6D-CfFOEKZ7.js} +1 -1
  18. package/payload/frontend/dist/assets/{c4Diagram-AHTNJAMY-8P8Q-xqC.js → c4Diagram-AHTNJAMY-BxlHBUj3.js} +1 -1
  19. package/payload/frontend/dist/assets/channel-amxyNKnk.js +1 -0
  20. package/payload/frontend/dist/assets/{chunk-4BX2VUAB-B1KEkTal.js → chunk-4BX2VUAB-xWocgDo8.js} +1 -1
  21. package/payload/frontend/dist/assets/{chunk-4TB4RGXK-Bu_Z47kJ.js → chunk-4TB4RGXK-Bl1cNICf.js} +1 -1
  22. package/payload/frontend/dist/assets/{chunk-55IACEB6-xzHVCHyi.js → chunk-55IACEB6-DVtE836u.js} +1 -1
  23. package/payload/frontend/dist/assets/{chunk-EDXVE4YY-h3HAW06h.js → chunk-EDXVE4YY-Dbd3tDCr.js} +1 -1
  24. package/payload/frontend/dist/assets/{chunk-FMBD7UC4-CQ4faPSh.js → chunk-FMBD7UC4-MPJaTsyN.js} +1 -1
  25. package/payload/frontend/dist/assets/{chunk-OYMX7WX6-CubmLoGT.js → chunk-OYMX7WX6-D3LuudlW.js} +1 -1
  26. package/payload/frontend/dist/assets/{chunk-QZHKN3VN-xk0zKNja.js → chunk-QZHKN3VN-Dn1aF6iQ.js} +1 -1
  27. package/payload/frontend/dist/assets/{chunk-YZCP3GAM-CHpTv8sd.js → chunk-YZCP3GAM-jZYbHnCw.js} +1 -1
  28. package/payload/frontend/dist/assets/classDiagram-6PBFFD2Q-B8cTijjT.js +1 -0
  29. package/payload/frontend/dist/assets/classDiagram-v2-HSJHXN6E-B8cTijjT.js +1 -0
  30. package/payload/frontend/dist/assets/clone-xzI2eGRI.js +1 -0
  31. package/payload/frontend/dist/assets/connection-V2iI-6rM.js +12 -0
  32. package/payload/frontend/dist/assets/{connections-A7InZw2T.js → connections-G_Q7342g.js} +1 -1
  33. package/payload/frontend/dist/assets/{cose-bilkent-S5V4N54A-CQn27vi_.js → cose-bilkent-S5V4N54A-75FLD3RS.js} +1 -1
  34. package/payload/frontend/dist/assets/{dagre-KV5264BT-CClOwB9v.js → dagre-KV5264BT-DEm-DpJL.js} +1 -1
  35. package/payload/frontend/dist/assets/{desktop-BgryfXXM.js → desktop-g5JC-CQd.js} +1 -1
  36. package/payload/frontend/dist/assets/{diagram-5BDNPKRD-DcUJOAmV.js → diagram-5BDNPKRD-BV6P2UTy.js} +1 -1
  37. package/payload/frontend/dist/assets/{diagram-G4DWMVQ6-DdabmTwk.js → diagram-G4DWMVQ6-DuCK-MM2.js} +1 -1
  38. package/payload/frontend/dist/assets/{diagram-MMDJMWI5-DmcxjBIk.js → diagram-MMDJMWI5-D5_GlPgO.js} +1 -1
  39. package/payload/frontend/dist/assets/{diagram-TYMM5635-BUSpXaiN.js → diagram-TYMM5635-QRbOYR1P.js} +1 -1
  40. package/payload/frontend/dist/assets/{erDiagram-SMLLAGMA-vkAXcv5_.js → erDiagram-SMLLAGMA-DefCheAw.js} +1 -1
  41. package/payload/frontend/dist/assets/{flowDiagram-DWJPFMVM-BHDU7BUJ.js → flowDiagram-DWJPFMVM-DVzyWIso.js} +1 -1
  42. package/payload/frontend/dist/assets/{ganttDiagram-T4ZO3ILL-C3lAG7_6.js → ganttDiagram-T4ZO3ILL-BJaClUEF.js} +1 -1
  43. package/payload/frontend/dist/assets/{gitGraphDiagram-UUTBAWPF-DHLyYJf7.js → gitGraphDiagram-UUTBAWPF-BLfbApNz.js} +1 -1
  44. package/payload/frontend/dist/assets/{graph-Bp5bIzXM.js → graph-C-YqFh68.js} +1 -1
  45. package/payload/frontend/dist/assets/{image-DkcKNLTV.js → image-CZo_2Awc.js} +1 -1
  46. package/payload/frontend/dist/assets/{index-BUS7FSlk.js → index-6q2aeqkt.js} +95 -105
  47. package/payload/frontend/dist/assets/{infoDiagram-42DDH7IO-CVp9zvmA.js → infoDiagram-42DDH7IO-BakVOutT.js} +1 -1
  48. package/payload/frontend/dist/assets/{ishikawaDiagram-UXIWVN3A-D07QPX3O.js → ishikawaDiagram-UXIWVN3A-D_1Oa5Dc.js} +1 -1
  49. package/payload/frontend/dist/assets/{journeyDiagram-VCZTEJTY-D-iZPDHM.js → journeyDiagram-VCZTEJTY-Y8TVFv6B.js} +1 -1
  50. package/payload/frontend/dist/assets/{kanban-definition-6JOO6SKY-BR4eWb08.js → kanban-definition-6JOO6SKY-DxeNhTIB.js} +1 -1
  51. package/payload/frontend/dist/assets/{layout-Cyv0DyJm.js → layout-5cMeOTAp.js} +1 -1
  52. package/payload/frontend/dist/assets/{linear-D5M7Pvj1.js → linear-Bnc3ev5g.js} +1 -1
  53. package/payload/frontend/dist/assets/main-3TPtEl66.js +706 -0
  54. package/payload/frontend/dist/assets/main-D4_uoZQa.css +33 -0
  55. package/payload/frontend/dist/assets/{min-BFlloFGg.js → min-BRXKkrS8.js} +1 -1
  56. package/payload/frontend/dist/assets/{mindmap-definition-QFDTVHPH-AKUF178o.js → mindmap-definition-QFDTVHPH-RYZO_BEr.js} +1 -1
  57. package/payload/frontend/dist/assets/{monitoring-B2okceCB.js → monitoring-Fv7kZ4s6.js} +1 -1
  58. package/payload/frontend/dist/assets/{notifications-0lql4_qJ.js → notifications-BzrYqyMH.js} +1 -1
  59. package/payload/frontend/dist/assets/{pieDiagram-DEJITSTG-CRiHmwn7.js → pieDiagram-DEJITSTG-Bzw0dhjz.js} +1 -1
  60. package/payload/frontend/dist/assets/{quadrantDiagram-34T5L4WZ-CzXrq7IJ.js → quadrantDiagram-34T5L4WZ-CQJY_msa.js} +1 -1
  61. package/payload/frontend/dist/assets/{record-content-DTCQKbEj.js → record-content-B7-6olQt.js} +1 -1
  62. package/payload/frontend/dist/assets/{requirementDiagram-MS252O5E-Bbn5ulLV.js → requirementDiagram-MS252O5E-DuP8hAV8.js} +1 -1
  63. package/payload/frontend/dist/assets/{sankeyDiagram-XADWPNL6-D9ZZ46pQ.js → sankeyDiagram-XADWPNL6-D-fQnCZZ.js} +1 -1
  64. package/payload/frontend/dist/assets/{sequenceDiagram-FGHM5R23-DxOP2gDa.js → sequenceDiagram-FGHM5R23-DaZNEccV.js} +1 -1
  65. package/payload/frontend/dist/assets/{stateDiagram-FHFEXIEX-NF_Qq5Cq.js → stateDiagram-FHFEXIEX-CkOLt5R1.js} +1 -1
  66. package/payload/frontend/dist/assets/stateDiagram-v2-QKLJ7IA2-atg1K4nB.js +1 -0
  67. package/payload/frontend/dist/assets/{status-2U71YpVe.js → status-CIIPajZp.js} +1 -1
  68. package/payload/frontend/dist/assets/suiji-C453W-Sg.js +1 -0
  69. package/payload/frontend/dist/assets/{svg-DpI3GSCw.js → svg-BUqAWGtg.js} +1 -1
  70. package/payload/frontend/dist/assets/{tabs-CYKuiiHg.js → tabs-Cwlp1Meu.js} +1 -1
  71. package/payload/frontend/dist/assets/{timeline-definition-GMOUNBTQ-ChEZSNF_.js → timeline-definition-GMOUNBTQ-BOKDMwHS.js} +1 -1
  72. package/payload/frontend/dist/assets/{vennDiagram-DHZGUBPP-Ch26SNbB.js → vennDiagram-DHZGUBPP-fSZjDS41.js} +1 -1
  73. package/payload/frontend/dist/assets/{wardley-RL74JXVD-D0ap5vv0.js → wardley-RL74JXVD-D1KIsvoD.js} +1 -1
  74. package/payload/frontend/dist/assets/{wardleyDiagram-NUSXRM2D-btdjsmHO.js → wardleyDiagram-NUSXRM2D-FMe67dwE.js} +1 -1
  75. package/payload/frontend/dist/assets/{xychartDiagram-5P7HB3ND-CklPtFGT.js → xychartDiagram-5P7HB3ND-B9AM9_9w.js} +1 -1
  76. package/payload/frontend/dist/build-info.json +4 -4
  77. package/payload/frontend/dist/companion.html +1 -1
  78. package/payload/frontend/dist/index.html +3 -3
  79. package/payload/packages/agent-bridge/src/install-pi.mjs +81 -0
  80. package/payload/plugins/pi/dist/SKILL.md +22 -0
  81. package/payload/plugins/pi/dist/bridge/app-server-client.cjs +82 -0
  82. package/payload/plugins/pi/dist/bridge/feishu_stop_notify.sh +169 -0
  83. package/payload/plugins/pi/dist/bridge/runweave-hook-bridge.cjs +583 -0
  84. package/payload/plugins/pi/dist/bridge/runweave-hook-completion.cjs +42 -0
  85. package/payload/plugins/pi/dist/bridge/runweave-hook-payload.cjs +578 -0
  86. package/payload/plugins/pi/dist/bridge/runweave-task-supervision.cjs +167 -0
  87. package/payload/plugins/pi/dist/runweave.js +316 -0
  88. package/payload/plugins/toolkit/.codex-plugin/plugin.json +31 -0
  89. package/payload/plugins/toolkit/README.md +185 -0
  90. package/payload/plugins/toolkit/hooks/AGENTS.md +6 -0
  91. package/payload/plugins/toolkit/hooks/app-server-client.cjs +82 -0
  92. package/payload/plugins/toolkit/hooks/feishu_stop_notify.sh +169 -0
  93. package/payload/plugins/toolkit/hooks/runweave-hook-bridge.cjs +583 -0
  94. package/payload/plugins/toolkit/hooks/runweave-hook-completion.cjs +42 -0
  95. package/payload/plugins/toolkit/hooks/runweave-hook-dispatch.cjs +123 -0
  96. package/payload/plugins/toolkit/hooks/runweave-hook-payload.cjs +578 -0
  97. package/payload/plugins/toolkit/hooks/runweave-task-supervision.cjs +167 -0
  98. package/payload/plugins/toolkit/hooks.json +108 -0
  99. package/payload/plugins/toolkit/skills/acceptance/SKILL.md +70 -0
  100. package/payload/plugins/toolkit/skills/acceptance/agents/openai.yaml +4 -0
  101. package/payload/plugins/toolkit/skills/acceptance/references/capture.md +38 -0
  102. package/payload/plugins/toolkit/skills/acceptance/references/delivery.md +54 -0
  103. package/payload/plugins/toolkit/skills/acceptance/references/gallery-contract.md +84 -0
  104. package/payload/plugins/toolkit/skills/acceptance/references/gallery-copy.md +34 -0
  105. package/payload/plugins/toolkit/skills/acceptance/references/video.md +52 -0
  106. package/payload/plugins/toolkit/skills/acceptance/scripts/capture.py +137 -0
  107. package/payload/plugins/toolkit/skills/acceptance/scripts/common.py +63 -0
  108. package/payload/plugins/toolkit/skills/acceptance/scripts/gallery.py +353 -0
  109. package/payload/plugins/toolkit/skills/acceptance/scripts/preview.py +109 -0
  110. package/payload/plugins/toolkit/skills/acceptance/scripts/video.py +283 -0
  111. package/payload/plugins/toolkit/skills/acceptance/templates/reader.css +576 -0
  112. package/payload/plugins/toolkit/skills/acceptance/templates/reader.html +63 -0
  113. package/payload/plugins/toolkit/skills/acceptance/templates/reader.js +326 -0
  114. package/payload/plugins/toolkit/skills/acceptance/templates/viewer.css +55 -0
  115. package/payload/plugins/toolkit/skills/acceptance-gallery/SKILL.md +8 -0
  116. package/payload/plugins/toolkit/skills/acceptance-gallery/agents/openai.yaml +6 -0
  117. package/payload/plugins/toolkit/skills/acceptance-gallery/references/capture-and-copy.md +3 -0
  118. package/payload/plugins/toolkit/skills/acceptance-gallery/references/content-contract.md +3 -0
  119. package/payload/plugins/toolkit/skills/acceptance-gallery/scripts/gallery.py +9 -0
  120. package/payload/plugins/toolkit/skills/acceptance-video/SKILL.md +8 -0
  121. package/payload/plugins/toolkit/skills/acceptance-video/agents/openai.yaml +6 -0
  122. package/payload/plugins/toolkit/skills/acceptance-video/references/input-and-capture.md +3 -0
  123. package/payload/plugins/toolkit/skills/acceptance-video/references/mobile-review.md +3 -0
  124. package/payload/plugins/toolkit/skills/acceptance-video/scripts/capture.py +9 -0
  125. package/payload/plugins/toolkit/skills/acceptance-video/scripts/video.py +9 -0
  126. package/payload/plugins/toolkit/skills/agent-device/SKILL.md +86 -0
  127. package/payload/plugins/toolkit/skills/agent-device/agents/openai.yaml +4 -0
  128. package/payload/plugins/toolkit/skills/agent-device/references/ios-setup.md +36 -0
  129. package/payload/plugins/toolkit/skills/agent-device/scripts/device.py +398 -0
  130. package/payload/plugins/toolkit/skills/agent-device/scripts/resources.py +248 -0
  131. package/payload/plugins/toolkit/skills/architecture-flow-prototyping/SKILL.md +128 -0
  132. package/payload/plugins/toolkit/skills/architecture-flow-prototyping/agents/openai.yaml +4 -0
  133. package/payload/plugins/toolkit/skills/architecture-flow-prototyping/references/architecture-flow-checklist.md +59 -0
  134. package/payload/plugins/toolkit/skills/architecture-flow-prototyping/references/architecture-flow-guide.md +135 -0
  135. package/payload/plugins/toolkit/skills/architecture-flow-prototyping/references/architecture-flow-handoff-template.md +57 -0
  136. package/payload/plugins/toolkit/skills/ask-first/SKILL.md +81 -0
  137. package/payload/plugins/toolkit/skills/brainstorming/SKILL.md +41 -0
  138. package/payload/plugins/toolkit/skills/browse-record/SKILL.md +35 -0
  139. package/payload/plugins/toolkit/skills/browse-record/references/app-usage.md +19 -0
  140. package/payload/plugins/toolkit/skills/browse-record/references/daily-reporting.md +115 -0
  141. package/payload/plugins/toolkit/skills/browse-record/references/zhihu.md +33 -0
  142. package/payload/plugins/toolkit/skills/browse-record/scripts/app_usage.py +110 -0
  143. package/payload/plugins/toolkit/skills/browse-record/scripts/browse_job.py +385 -0
  144. package/payload/plugins/toolkit/skills/browse-record/scripts/zhihu-read.js +126 -0
  145. package/payload/plugins/toolkit/skills/browse-record/scripts/zhihu_http.py +273 -0
  146. package/payload/plugins/toolkit/skills/clear-technical-explanations/LICENSE +21 -0
  147. package/payload/plugins/toolkit/skills/clear-technical-explanations/SKILL.md +103 -0
  148. package/payload/plugins/toolkit/skills/code-grounded-requirements/SKILL.md +54 -0
  149. package/payload/plugins/toolkit/skills/daily-doc-maintenance/SKILL.md +151 -0
  150. package/payload/plugins/toolkit/skills/daily-record/SKILL.md +63 -0
  151. package/payload/plugins/toolkit/skills/daily-record/agents/openai.yaml +4 -0
  152. package/payload/plugins/toolkit/skills/daily-record/references/browser-history.md +6 -0
  153. package/payload/plugins/toolkit/skills/daily-record/references/feishu.md +90 -0
  154. package/payload/plugins/toolkit/skills/daily-record/references/scheduled-reporting.md +144 -0
  155. package/payload/plugins/toolkit/skills/daily-record/references/scheduled-task.template.json +15 -0
  156. package/payload/plugins/toolkit/skills/daily-record/references/suiji-work-records.md +57 -0
  157. package/payload/plugins/toolkit/skills/daily-record/scripts/feishu.py +280 -0
  158. package/payload/plugins/toolkit/skills/daily-record/scripts/job.py +416 -0
  159. package/payload/plugins/toolkit/skills/daily-record/scripts/job_browser.py +77 -0
  160. package/payload/plugins/toolkit/skills/daily-record/scripts/job_facts.py +132 -0
  161. package/payload/plugins/toolkit/skills/daily-record/scripts/job_isolation.py +69 -0
  162. package/payload/plugins/toolkit/skills/daily-record/scripts/job_materials.py +154 -0
  163. package/payload/plugins/toolkit/skills/daily-record/scripts/job_screen.py +77 -0
  164. package/payload/plugins/toolkit/skills/daily-record/scripts/job_state.py +309 -0
  165. package/payload/plugins/toolkit/skills/daily-refactor/SKILL.md +101 -0
  166. package/payload/plugins/toolkit/skills/daily-refactor/scripts/compare-architecture-reports.mjs +168 -0
  167. package/payload/plugins/toolkit/skills/debugging-strategies/SKILL.md +38 -0
  168. package/payload/plugins/toolkit/skills/debugging-strategies/resources/implementation-playbook.md +520 -0
  169. package/payload/plugins/toolkit/skills/diagnostic-log-debugging/SKILL.md +79 -0
  170. package/payload/plugins/toolkit/skills/doc-coauthoring/SKILL.md +64 -0
  171. package/payload/plugins/toolkit/skills/eli5/LICENSE +21 -0
  172. package/payload/plugins/toolkit/skills/eli5/SKILL.md +18 -0
  173. package/payload/plugins/toolkit/skills/experience/SKILL.md +71 -0
  174. package/payload/plugins/toolkit/skills/experience/package.json +13 -0
  175. package/payload/plugins/toolkit/skills/git-advanced-workflows/SKILL.md +457 -0
  176. package/payload/plugins/toolkit/skills/github-pr/SKILL.md +109 -0
  177. package/payload/plugins/toolkit/skills/github-pr/scripts/github-access.mjs +292 -0
  178. package/payload/plugins/toolkit/skills/github-pr/scripts/preflight.mjs +191 -0
  179. package/payload/plugins/toolkit/skills/github-pr/scripts/source-worktree.mjs +354 -0
  180. package/payload/plugins/toolkit/skills/grill-with-docs/SKILL.md +66 -0
  181. package/payload/plugins/toolkit/skills/grill-with-docs/agents/openai.yaml +6 -0
  182. package/payload/plugins/toolkit/skills/grilling/SKILL.md +14 -0
  183. package/payload/plugins/toolkit/skills/handoff/SKILL.md +98 -0
  184. package/payload/plugins/toolkit/skills/karpathy-guidelines/SKILL.md +73 -0
  185. package/payload/plugins/toolkit/skills/playwright-cli/SKILL.md +562 -0
  186. package/payload/plugins/toolkit/skills/playwright-cli/references/element-attributes.md +23 -0
  187. package/payload/plugins/toolkit/skills/playwright-cli/references/playwright-tests.md +39 -0
  188. package/payload/plugins/toolkit/skills/playwright-cli/references/request-mocking.md +87 -0
  189. package/payload/plugins/toolkit/skills/playwright-cli/references/running-code.md +240 -0
  190. package/payload/plugins/toolkit/skills/playwright-cli/references/session-management.md +226 -0
  191. package/payload/plugins/toolkit/skills/playwright-cli/references/spec-driven-testing.md +312 -0
  192. package/payload/plugins/toolkit/skills/playwright-cli/references/storage-state.md +275 -0
  193. package/payload/plugins/toolkit/skills/playwright-cli/references/test-generation.md +138 -0
  194. package/payload/plugins/toolkit/skills/playwright-cli/references/tracing.md +142 -0
  195. package/payload/plugins/toolkit/skills/playwright-cli/references/video-recording.md +157 -0
  196. package/payload/plugins/toolkit/skills/playwright-cli/templates/standalone.config.json +7 -0
  197. package/payload/plugins/toolkit/skills/product-exploration/SKILL.md +64 -0
  198. package/payload/plugins/toolkit/skills/product-exploration/agents/openai.yaml +5 -0
  199. package/payload/plugins/toolkit/skills/prototype-first-development/SKILL.md +134 -0
  200. package/payload/plugins/toolkit/skills/prototype-first-development/references/html-prototype-template/README.md +88 -0
  201. package/payload/plugins/toolkit/skills/prototype-first-development/references/html-prototype-template/app.js +145 -0
  202. package/payload/plugins/toolkit/skills/prototype-first-development/references/html-prototype-template/index.html +229 -0
  203. package/payload/plugins/toolkit/skills/prototype-first-development/references/html-prototype-template/mock-state.json +60 -0
  204. package/payload/plugins/toolkit/skills/prototype-first-development/references/implementation-plan-handoff-template.md +61 -0
  205. package/payload/plugins/toolkit/skills/prototype-first-development/references/prototype-workflow-checklist.md +64 -0
  206. package/payload/plugins/toolkit/skills/publish-runweave-server/SKILL.md +64 -0
  207. package/payload/plugins/toolkit/skills/publish-runweave-server/agents/openai.yaml +4 -0
  208. package/payload/plugins/toolkit/skills/react-best-practices/AGENTS.md +3227 -0
  209. package/payload/plugins/toolkit/skills/react-best-practices/README.md +127 -0
  210. package/payload/plugins/toolkit/skills/react-best-practices/SKILL.md +143 -0
  211. package/payload/plugins/toolkit/skills/react-best-practices/metadata.json +15 -0
  212. package/payload/plugins/toolkit/skills/react-best-practices/rules/advanced/event-handler-refs.md +55 -0
  213. package/payload/plugins/toolkit/skills/react-best-practices/rules/advanced/init-once.md +42 -0
  214. package/payload/plugins/toolkit/skills/react-best-practices/rules/advanced/use-latest.md +39 -0
  215. package/payload/plugins/toolkit/skills/react-best-practices/rules/async/api-routes.md +38 -0
  216. package/payload/plugins/toolkit/skills/react-best-practices/rules/async/defer-await.md +80 -0
  217. package/payload/plugins/toolkit/skills/react-best-practices/rules/async/dependencies.md +52 -0
  218. package/payload/plugins/toolkit/skills/react-best-practices/rules/async/parallel.md +28 -0
  219. package/payload/plugins/toolkit/skills/react-best-practices/rules/async/suspense-boundaries.md +99 -0
  220. package/payload/plugins/toolkit/skills/react-best-practices/rules/bundle/barrel-imports.md +59 -0
  221. package/payload/plugins/toolkit/skills/react-best-practices/rules/bundle/conditional.md +37 -0
  222. package/payload/plugins/toolkit/skills/react-best-practices/rules/bundle/defer-third-party.md +49 -0
  223. package/payload/plugins/toolkit/skills/react-best-practices/rules/bundle/dynamic-imports.md +35 -0
  224. package/payload/plugins/toolkit/skills/react-best-practices/rules/bundle/preload.md +46 -0
  225. package/payload/plugins/toolkit/skills/react-best-practices/rules/client/event-listeners.md +78 -0
  226. package/payload/plugins/toolkit/skills/react-best-practices/rules/client/localstorage-schema.md +77 -0
  227. package/payload/plugins/toolkit/skills/react-best-practices/rules/client/passive-event-listeners.md +48 -0
  228. package/payload/plugins/toolkit/skills/react-best-practices/rules/client/swr-dedup.md +56 -0
  229. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/batch-dom-css.md +110 -0
  230. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/cache-function-results.md +80 -0
  231. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/cache-property-access.md +28 -0
  232. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/cache-storage.md +70 -0
  233. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/combine-iterations.md +32 -0
  234. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/early-exit.md +50 -0
  235. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/flatmap-filter.md +55 -0
  236. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/hoist-regexp.md +45 -0
  237. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/index-maps.md +37 -0
  238. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/length-check-first.md +50 -0
  239. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/min-max-loop.md +82 -0
  240. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/set-map-lookups.md +24 -0
  241. package/payload/plugins/toolkit/skills/react-best-practices/rules/js/tosorted-immutable.md +57 -0
  242. package/payload/plugins/toolkit/skills/react-best-practices/rules/meta/sections.md +46 -0
  243. package/payload/plugins/toolkit/skills/react-best-practices/rules/meta/template.md +28 -0
  244. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/activity.md +26 -0
  245. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/animate-svg-wrapper.md +38 -0
  246. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/conditional-render.md +32 -0
  247. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/content-visibility.md +38 -0
  248. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/hoist-jsx.md +36 -0
  249. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/hydration-no-flicker.md +72 -0
  250. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/hydration-suppress-warning.md +26 -0
  251. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/resource-hints.md +89 -0
  252. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/script-defer-async.md +71 -0
  253. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/svg-precision.md +28 -0
  254. package/payload/plugins/toolkit/skills/react-best-practices/rules/rendering/usetransition-loading.md +75 -0
  255. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/defer-reads.md +39 -0
  256. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/dependencies.md +45 -0
  257. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/derived-state-no-effect.md +40 -0
  258. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/derived-state.md +29 -0
  259. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/functional-setstate.md +77 -0
  260. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/lazy-state-init.md +58 -0
  261. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/memo-with-default-value.md +36 -0
  262. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/memo.md +44 -0
  263. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/move-effect-to-event.md +45 -0
  264. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/no-inline-components.md +83 -0
  265. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/simple-expression-in-memo.md +35 -0
  266. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/transitions.md +40 -0
  267. package/payload/plugins/toolkit/skills/react-best-practices/rules/rerender/use-ref-transient-values.md +73 -0
  268. package/payload/plugins/toolkit/skills/react-best-practices/rules/server/after-nonblocking.md +74 -0
  269. package/payload/plugins/toolkit/skills/react-best-practices/rules/server/auth-actions.md +96 -0
  270. package/payload/plugins/toolkit/skills/react-best-practices/rules/server/cache-lru.md +41 -0
  271. package/payload/plugins/toolkit/skills/react-best-practices/rules/server/cache-react.md +76 -0
  272. package/payload/plugins/toolkit/skills/react-best-practices/rules/server/dedup-props.md +65 -0
  273. package/payload/plugins/toolkit/skills/react-best-practices/rules/server/hoist-static-io.md +139 -0
  274. package/payload/plugins/toolkit/skills/react-best-practices/rules/server/parallel-fetching.md +83 -0
  275. package/payload/plugins/toolkit/skills/react-best-practices/rules/server/serialization.md +38 -0
  276. package/payload/plugins/toolkit/skills/recorded-browser-mcp-verification/SKILL.md +8 -0
  277. package/payload/plugins/toolkit/skills/recorded-browser-mcp-verification/agents/openai.yaml +6 -0
  278. package/payload/plugins/toolkit/skills/reproduce-before-fix/SKILL.md +93 -0
  279. package/payload/plugins/toolkit/skills/reproduce-before-fix/agents/openai.yaml +7 -0
  280. package/payload/plugins/toolkit/skills/review-only/SKILL.md +72 -0
  281. package/payload/plugins/toolkit/skills/review-with-runtime-evidence/SKILL.md +134 -0
  282. package/payload/plugins/toolkit/skills/review-with-runtime-evidence/agents/openai.yaml +7 -0
  283. package/payload/plugins/toolkit/skills/review-with-runtime-evidence/references/contracts.md +114 -0
  284. package/payload/plugins/toolkit/skills/review-with-runtime-evidence/scripts/classify-runtime-verdict.mjs +140 -0
  285. package/payload/plugins/toolkit/skills/review-with-runtime-evidence/scripts/run-static-review.mjs +389 -0
  286. package/payload/plugins/toolkit/skills/review-with-runtime-evidence/scripts/static-review-contract.mjs +243 -0
  287. package/payload/plugins/toolkit/skills/run-test-cases/SKILL.md +63 -0
  288. package/payload/plugins/toolkit/skills/runweave-change-validation/SKILL.md +196 -0
  289. package/payload/plugins/toolkit/skills/runweave-change-validation/agents/openai.yaml +7 -0
  290. package/payload/plugins/toolkit/skills/runweave-change-validation/scripts/assert-dev-session-status.mjs +181 -0
  291. package/payload/plugins/toolkit/skills/runweave-dev-session/SKILL.md +126 -0
  292. package/payload/plugins/toolkit/skills/runweave-dev-session/agents/openai.yaml +7 -0
  293. package/payload/plugins/toolkit/skills/runweave-management/SKILL.md +47 -0
  294. package/payload/plugins/toolkit/skills/scheduled-task/SKILL.md +35 -0
  295. package/payload/plugins/toolkit/skills/shadcn/SKILL.md +245 -0
  296. package/payload/plugins/toolkit/skills/shadcn/agents/openai.yml +5 -0
  297. package/payload/plugins/toolkit/skills/shadcn/assets/shadcn-small.png +0 -0
  298. package/payload/plugins/toolkit/skills/shadcn/assets/shadcn.png +0 -0
  299. package/payload/plugins/toolkit/skills/shadcn/cli.md +276 -0
  300. package/payload/plugins/toolkit/skills/shadcn/customization.md +209 -0
  301. package/payload/plugins/toolkit/skills/shadcn/evals/evals.json +47 -0
  302. package/payload/plugins/toolkit/skills/shadcn/mcp.md +94 -0
  303. package/payload/plugins/toolkit/skills/shadcn/rules/base-vs-radix.md +310 -0
  304. package/payload/plugins/toolkit/skills/shadcn/rules/composition.md +197 -0
  305. package/payload/plugins/toolkit/skills/shadcn/rules/forms.md +198 -0
  306. package/payload/plugins/toolkit/skills/shadcn/rules/icons.md +101 -0
  307. package/payload/plugins/toolkit/skills/shadcn/rules/styling.md +163 -0
  308. package/payload/plugins/toolkit/skills/suiji/SKILL.md +54 -0
  309. package/payload/plugins/toolkit/skills/suiji/references/api.md +72 -0
  310. package/payload/plugins/toolkit/skills/suiji/references/source-adapter.md +40 -0
  311. package/payload/plugins/toolkit/skills/suiji/references/work-records.md +36 -0
  312. package/payload/plugins/toolkit/skills/suiji/scripts/source_adapter.py +46 -0
  313. package/payload/plugins/toolkit/skills/suiji/scripts/suiji.py +358 -0
  314. package/payload/plugins/toolkit/skills/suiji/scripts/work_records.py +328 -0
  315. package/payload/plugins/toolkit/skills/suiji/scripts/work_reports.py +75 -0
  316. package/payload/plugins/toolkit/skills/sync-branch-hard-reset/SKILL.md +59 -0
  317. package/payload/plugins/toolkit/skills/update-runweave-backend/SKILL.md +90 -0
  318. package/payload/plugins/toolkit/skills/update-runweave-backend/agents/openai.yaml +4 -0
  319. package/payload/plugins/toolkit/skills/update-runweave-backend/references/npm-update.md +68 -0
  320. package/payload/plugins/toolkit/skills/update-runweave-backend/references/systemd.md +34 -0
  321. package/payload/plugins/toolkit/skills/update-runweave-desktop/SKILL.md +102 -0
  322. package/payload/plugins/toolkit/skills/update-runweave-ios/SKILL.md +16 -0
  323. package/payload/plugins/toolkit/skills/update-runweave-ios/references/ios-wireless-recovery.md +54 -0
  324. package/payload/plugins/toolkit/skills/using-rw/SKILL.md +265 -0
  325. package/payload/plugins/toolkit/skills/write-plan/SKILL.md +72 -0
  326. package/payload/plugins/toolkit/skills/write-test-cases/SKILL.md +100 -0
  327. package/payload/plugins/toolkit/skills/write-test-cases/assets/test-plan-template.yaml +15 -0
  328. package/payload/plugins/toolkit/skills/write-test-cases/references/coverage-checklist.md +75 -0
  329. package/payload/plugins/toolkit/skills/write-test-cases/references/design-techniques.md +91 -0
  330. package/payload/plugins/toolkit/skills/youtube-reading/SKILL.md +35 -0
  331. package/payload/plugins/toolkit/skills/youtube-reading/agents/openai.yaml +4 -0
  332. package/payload/plugins/toolkit/skills/youtube-reading/assets/runtime-lock.json +92 -0
  333. package/payload/plugins/toolkit/skills/youtube-reading/references/content-contract.md +52 -0
  334. package/payload/plugins/toolkit/skills/youtube-reading/references/setup.md +70 -0
  335. package/payload/plugins/toolkit/skills/youtube-reading/requirements.lock +9 -0
  336. package/payload/plugins/toolkit/skills/youtube-reading/scripts/artifacts.py +206 -0
  337. package/payload/plugins/toolkit/skills/youtube-reading/scripts/runtime.py +424 -0
  338. package/payload/plugins/toolkit/skills/youtube-reading/scripts/youtube_reading.py +314 -0
  339. package/payload/plugins/toolkit-release.json +1 -0
  340. package/payload/scripts/toolkit/codex-state.mjs +75 -0
  341. package/payload/scripts/toolkit/release.mjs +210 -0
  342. package/payload/scripts/toolkit/sync-runtime.mjs +108 -0
  343. package/payload/scripts/toolkit/sync.mjs +585 -0
  344. package/payload/frontend/dist/assets/channel-CuSisha8.js +0 -1
  345. package/payload/frontend/dist/assets/classDiagram-6PBFFD2Q-ClJkT7PY.js +0 -1
  346. package/payload/frontend/dist/assets/classDiagram-v2-HSJHXN6E-ClJkT7PY.js +0 -1
  347. package/payload/frontend/dist/assets/clone-CPcyXi9g.js +0 -1
  348. package/payload/frontend/dist/assets/connection-BhcgnOMb.js +0 -12
  349. package/payload/frontend/dist/assets/main-BDBhLSX2.js +0 -696
  350. package/payload/frontend/dist/assets/main-Cg6Oo1xK.css +0 -33
  351. package/payload/frontend/dist/assets/stateDiagram-v2-QKLJ7IA2-DhdOfEAv.js +0 -1
  352. package/payload/frontend/dist/assets/suiji-DXtfgwxj.js +0 -1
@@ -0,0 +1,576 @@
1
+ :root {
2
+ color-scheme: light;
3
+ --paper: #f5f6f1;
4
+ --card: #fff;
5
+ --ink: #203b3b;
6
+ --muted: #60716e;
7
+ --line: #dce3db;
8
+ --green: #12624e;
9
+ --wash: #e8eee5;
10
+ --warn: #77551e;
11
+ font:
12
+ 16px/1.75 -apple-system,
13
+ BlinkMacSystemFont,
14
+ "PingFang SC",
15
+ "Microsoft YaHei",
16
+ sans-serif;
17
+ }
18
+ * {
19
+ box-sizing: border-box;
20
+ }
21
+ body {
22
+ margin: 0;
23
+ background: var(--paper);
24
+ color: var(--ink);
25
+ }
26
+ [hidden] {
27
+ display: none !important;
28
+ }
29
+ button,
30
+ a,
31
+ summary {
32
+ -webkit-tap-highlight-color: transparent;
33
+ }
34
+ button {
35
+ font: inherit;
36
+ cursor: pointer;
37
+ background: white;
38
+ color: var(--ink);
39
+ border: 1px solid var(--line);
40
+ border-radius: 8px;
41
+ padding: 8px 16px;
42
+ }
43
+ button:hover:not(:disabled) {
44
+ background: var(--wash);
45
+ border-color: #aebdaf;
46
+ }
47
+ button:disabled {
48
+ opacity: 0.4;
49
+ cursor: default;
50
+ }
51
+ button[aria-pressed="true"] {
52
+ background: var(--green);
53
+ color: white;
54
+ }
55
+ a {
56
+ color: var(--green);
57
+ text-underline-offset: 4px;
58
+ }
59
+ a:focus-visible,
60
+ button:focus-visible,
61
+ summary:focus-visible,
62
+ [tabindex]:focus-visible {
63
+ outline: 3px solid #397e65;
64
+ outline-offset: 4px;
65
+ }
66
+ h1,
67
+ h2,
68
+ h3,
69
+ p {
70
+ margin: 0;
71
+ }
72
+ h1 {
73
+ font-size: clamp(23px, 3vw, 34px);
74
+ font-weight: 650;
75
+ line-height: 1.4;
76
+ letter-spacing: -0.03em;
77
+ }
78
+ h2 {
79
+ font-size: clamp(23px, 2.4vw, 31px);
80
+ line-height: 1.45;
81
+ letter-spacing: -0.025em;
82
+ }
83
+ h3 {
84
+ font-size: 17px;
85
+ }
86
+ p,
87
+ li,
88
+ h1,
89
+ h2,
90
+ h3,
91
+ a,
92
+ summary,
93
+ pre {
94
+ overflow-wrap: anywhere;
95
+ }
96
+ summary {
97
+ cursor: pointer;
98
+ }
99
+ ul {
100
+ padding-left: 22px;
101
+ }
102
+ .masthead {
103
+ max-width: 1400px;
104
+ margin: auto;
105
+ padding: 28px 44px 22px;
106
+ }
107
+ .brand {
108
+ font-size: 12px;
109
+ letter-spacing: 1.5px;
110
+ color: var(--green);
111
+ margin-bottom: 10px;
112
+ }
113
+ .brand span {
114
+ margin: 0 5px;
115
+ }
116
+ .task-line {
117
+ display: flex;
118
+ align-items: center;
119
+ justify-content: space-between;
120
+ gap: 18px;
121
+ }
122
+ .task-line button {
123
+ flex-shrink: 0;
124
+ }
125
+ .masthead > p {
126
+ color: var(--muted);
127
+ font-size: 14px;
128
+ margin-top: 8px;
129
+ max-width: 960px;
130
+ }
131
+ .masthead details {
132
+ font-size: 13px;
133
+ color: var(--muted);
134
+ margin-top: 10px;
135
+ }
136
+ .masthead details ul {
137
+ margin: 6px 0;
138
+ }
139
+ .workspace {
140
+ max-width: 1400px;
141
+ margin: auto;
142
+ display: grid;
143
+ grid-template-columns: 214px minmax(0, 1fr);
144
+ gap: 32px;
145
+ padding: 0 44px 122px;
146
+ }
147
+ .directory {
148
+ padding-top: 19px;
149
+ }
150
+ .directory > details {
151
+ position: sticky;
152
+ top: 20px;
153
+ }
154
+ .directory summary {
155
+ color: var(--muted);
156
+ font-size: 12px;
157
+ letter-spacing: 1px;
158
+ margin-bottom: 16px;
159
+ }
160
+ .directory nav {
161
+ display: grid;
162
+ gap: 5px;
163
+ }
164
+ .directory a {
165
+ display: flex;
166
+ gap: 12px;
167
+ align-items: baseline;
168
+ text-decoration: none;
169
+ color: var(--muted);
170
+ font-size: 13px;
171
+ padding: 10px 12px;
172
+ border: 1px solid transparent;
173
+ border-radius: 7px;
174
+ line-height: 1.7;
175
+ }
176
+ .directory a span:first-child {
177
+ font:
178
+ 12px ui-monospace,
179
+ monospace;
180
+ color: #87978c;
181
+ flex-shrink: 0;
182
+ }
183
+ .directory a[aria-current="page"] {
184
+ background: var(--wash);
185
+ border-color: #d6e1d3;
186
+ color: var(--green);
187
+ font-weight: 600;
188
+ }
189
+ .directory a:hover {
190
+ background: #ecf0e8;
191
+ }
192
+ .directory-note {
193
+ font-size: 12px;
194
+ color: #879187;
195
+ margin: 32px 12px;
196
+ }
197
+ .page {
198
+ border: 1px solid var(--line);
199
+ background: var(--card);
200
+ border-radius: 14px;
201
+ padding: 30px 34px;
202
+ margin-bottom: 24px;
203
+ min-width: 0;
204
+ box-shadow: 0 4px 20px #243e3010;
205
+ }
206
+ .page-heading:focus {
207
+ outline: none;
208
+ }
209
+ .eyebrow {
210
+ font-size: 12px;
211
+ letter-spacing: 1px;
212
+ color: var(--muted);
213
+ margin-bottom: 10px;
214
+ }
215
+ .description {
216
+ font-size: 16px;
217
+ max-width: 850px;
218
+ margin: 12px 0 20px;
219
+ color: #475e58;
220
+ white-space: pre-wrap;
221
+ }
222
+ .look-at {
223
+ font-size: 13px;
224
+ padding: 12px 16px;
225
+ background: #edf3e8;
226
+ border-radius: 6px;
227
+ margin: 18px 0;
228
+ }
229
+ .limits {
230
+ font-size: 13px;
231
+ color: var(--warn);
232
+ border-left: 3px solid #c2a060;
233
+ padding: 8px 14px;
234
+ margin: 14px 0;
235
+ background: #faf6ed;
236
+ }
237
+ .limits ul {
238
+ margin: 0;
239
+ }
240
+ .evidence-label {
241
+ font-size: 12px;
242
+ color: var(--warn);
243
+ margin: 8px 0;
244
+ }
245
+ .media-grid {
246
+ display: grid;
247
+ gap: 20px;
248
+ }
249
+ .compare {
250
+ grid-template-columns: repeat(2, minmax(0, 1fr));
251
+ }
252
+ .sequence {
253
+ gap: 28px;
254
+ }
255
+ .sequence-note {
256
+ font-size: 12px;
257
+ color: var(--muted);
258
+ margin: 10px 0;
259
+ }
260
+ figure {
261
+ margin: 0;
262
+ min-width: 0;
263
+ }
264
+ figcaption {
265
+ display: flex;
266
+ align-items: baseline;
267
+ justify-content: space-between;
268
+ gap: 12px;
269
+ margin-bottom: 8px;
270
+ font-size: 13px;
271
+ line-height: 1.7;
272
+ }
273
+ figcaption strong {
274
+ font-weight: 600;
275
+ }
276
+ figcaption a {
277
+ font-size: 12px;
278
+ flex-shrink: 0;
279
+ }
280
+ .image-stage {
281
+ background: #edf0eb;
282
+ border: 1px solid var(--line);
283
+ border-radius: 8px;
284
+ padding: 12px;
285
+ display: flex;
286
+ justify-content: center;
287
+ align-items: flex-start;
288
+ min-width: 0;
289
+ }
290
+ .image-stage > a {
291
+ display: block;
292
+ max-width: 100%;
293
+ line-height: 0;
294
+ }
295
+ .image-stage img {
296
+ display: block;
297
+ max-width: 100%;
298
+ max-height: 62vh;
299
+ width: auto;
300
+ height: auto;
301
+ border-radius: 3px;
302
+ }
303
+ .compare .image-stage img {
304
+ max-height: 570px;
305
+ }
306
+ .crop {
307
+ position: relative;
308
+ overflow: hidden;
309
+ max-width: 100%;
310
+ border-radius: 3px;
311
+ }
312
+ .crop img {
313
+ position: absolute;
314
+ max-width: none;
315
+ max-height: none;
316
+ border-radius: 0;
317
+ height: auto;
318
+ }
319
+ .crop-note,
320
+ .origin {
321
+ font-size: 11px;
322
+ color: var(--muted);
323
+ margin-top: 7px;
324
+ }
325
+ .media-error {
326
+ color: #874329;
327
+ background: #fff0e5;
328
+ padding: 24px;
329
+ font-size: 14px;
330
+ line-height: 1.7;
331
+ }
332
+ .text-evidence {
333
+ white-space: pre-wrap;
334
+ word-break: break-word;
335
+ font:
336
+ 13px/1.85 ui-monospace,
337
+ SFMono-Regular,
338
+ Menlo,
339
+ monospace;
340
+ border: 1px solid var(--line);
341
+ background: #f5f7f2;
342
+ padding: 20px;
343
+ border-radius: 8px;
344
+ max-height: 55vh;
345
+ overflow: auto;
346
+ margin: 0;
347
+ }
348
+ .sources {
349
+ border-top: 1px solid var(--line);
350
+ margin-top: 24px;
351
+ padding-top: 15px;
352
+ font-size: 12px;
353
+ color: var(--muted);
354
+ }
355
+ .sources > summary {
356
+ display: list-item;
357
+ }
358
+ .source-item {
359
+ margin-top: 14px;
360
+ }
361
+ .source-item p {
362
+ margin-top: 4px;
363
+ }
364
+ .source-item pre {
365
+ margin-top: 8px;
366
+ max-height: 32vh;
367
+ font-size: 12px;
368
+ }
369
+ .navigation {
370
+ position: fixed;
371
+ bottom: 0;
372
+ left: 0;
373
+ right: 0;
374
+ background: #f5f6f1f2;
375
+ backdrop-filter: blur(14px);
376
+ border-top: 1px solid var(--line);
377
+ display: flex;
378
+ align-items: center;
379
+ justify-content: space-between;
380
+ gap: 24px;
381
+ padding: 16px max(30px, calc((100vw - 1312px) / 2));
382
+ z-index: 3;
383
+ }
384
+ .navigation button {
385
+ min-width: 116px;
386
+ }
387
+ .position {
388
+ text-align: center;
389
+ display: flex;
390
+ flex-direction: column;
391
+ min-width: 0;
392
+ }
393
+ .position > span:first-child {
394
+ font:
395
+ 14px ui-monospace,
396
+ monospace;
397
+ color: var(--green);
398
+ }
399
+ .position > span:last-child {
400
+ color: var(--muted);
401
+ font-size: 12px;
402
+ white-space: nowrap;
403
+ overflow: hidden;
404
+ text-overflow: ellipsis;
405
+ max-width: 45vw;
406
+ }
407
+ .notice {
408
+ position: fixed;
409
+ bottom: 92px;
410
+ left: 50%;
411
+ transform: translateX(-50%);
412
+ max-width: 90vw;
413
+ background: #203b3b;
414
+ color: #fff;
415
+ border-radius: 8px;
416
+ padding: 10px 18px;
417
+ font-size: 13px;
418
+ z-index: 4;
419
+ }
420
+ .fatal {
421
+ padding: 30px;
422
+ color: #874329;
423
+ }
424
+ .sr-only,
425
+ .skip-link:not(:focus) {
426
+ position: absolute;
427
+ width: 1px;
428
+ height: 1px;
429
+ padding: 0;
430
+ margin: -1px;
431
+ overflow: hidden;
432
+ clip: rect(0, 0, 0, 0);
433
+ white-space: nowrap;
434
+ border: 0;
435
+ }
436
+ .skip-link:focus {
437
+ display: block;
438
+ padding: 10px;
439
+ }
440
+ .expanded .page {
441
+ display: block;
442
+ }
443
+ .expanded .text-evidence {
444
+ max-height: none;
445
+ }
446
+ .single-task .workspace {
447
+ grid-template-columns: minmax(0, 1fr);
448
+ max-width: 1100px;
449
+ }
450
+ .single-task .directory {
451
+ display: none;
452
+ }
453
+ @media (max-width: 760px) {
454
+ .masthead {
455
+ padding: 22px 18px 18px;
456
+ }
457
+ .brand {
458
+ font-size: 11px;
459
+ }
460
+ .task-line {
461
+ align-items: flex-start;
462
+ gap: 10px;
463
+ }
464
+ .task-line button {
465
+ font-size: 12px;
466
+ padding: 8px 10px;
467
+ }
468
+ .workspace {
469
+ display: block;
470
+ padding: 0 14px 120px;
471
+ }
472
+ .directory {
473
+ padding: 0 4px 16px;
474
+ }
475
+ .directory summary {
476
+ margin-bottom: 8px;
477
+ }
478
+ .directory nav {
479
+ max-height: 240px;
480
+ overflow: auto;
481
+ }
482
+ .directory-note {
483
+ display: none;
484
+ }
485
+ .page {
486
+ padding: 22px 18px;
487
+ border-radius: 10px;
488
+ }
489
+ .compare {
490
+ grid-template-columns: 1fr;
491
+ }
492
+ .description {
493
+ font-size: 15px;
494
+ }
495
+ .image-stage {
496
+ padding: 7px;
497
+ }
498
+ .image-stage img {
499
+ max-height: none;
500
+ }
501
+ .compare .image-stage img {
502
+ max-height: none;
503
+ }
504
+ .navigation {
505
+ padding: 12px 14px;
506
+ gap: 8px;
507
+ }
508
+ .navigation button {
509
+ min-width: 0;
510
+ font-size: 13px;
511
+ padding: 9px 11px;
512
+ }
513
+ .position > span:last-child {
514
+ max-width: 35vw;
515
+ font-size: 11px;
516
+ }
517
+ .text-evidence {
518
+ padding: 12px;
519
+ font-size: 12px;
520
+ }
521
+ .notice {
522
+ bottom: 82px;
523
+ }
524
+ .single-task .workspace {
525
+ padding-bottom: 35px;
526
+ }
527
+ }
528
+ @media print {
529
+ body {
530
+ background: #fff;
531
+ }
532
+ .masthead {
533
+ padding: 0 0 20px;
534
+ }
535
+ .workspace {
536
+ display: block;
537
+ padding: 0;
538
+ max-width: none;
539
+ }
540
+ .directory,
541
+ .navigation,
542
+ #expand,
543
+ .notice,
544
+ .skip-link {
545
+ display: none !important;
546
+ }
547
+ .page,
548
+ .page[hidden] {
549
+ display: block !important;
550
+ break-inside: avoid;
551
+ box-shadow: none;
552
+ margin: 0 0 20px;
553
+ }
554
+ .image-stage img {
555
+ max-height: 500px;
556
+ }
557
+ .text-evidence {
558
+ max-height: none;
559
+ overflow: visible;
560
+ }
561
+ .sources {
562
+ break-inside: avoid;
563
+ }
564
+ .limits {
565
+ background: #fff;
566
+ }
567
+ .page {
568
+ border-color: #aaa;
569
+ }
570
+ details > summary {
571
+ display: none;
572
+ }
573
+ details::details-content {
574
+ content-visibility: visible;
575
+ }
576
+ }
@@ -0,0 +1,63 @@
1
+ <!doctype html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width,initial-scale=1" />
6
+ <meta name="referrer" content="no-referrer" />
7
+ <link rel="icon" href="data:," />
8
+ <title>@@TITLE@@</title>
9
+ <link rel="stylesheet" href="reader.css" />
10
+ <link rel="stylesheet" href="viewer.css" />
11
+ <script id="gallery-data" type="application/json">
12
+ @@DATA@@
13
+ </script>
14
+ <script src="reader.js" defer></script>
15
+ </head>
16
+ <body>
17
+ <a class="skip-link" href="#pages">跳到本页内容</a>
18
+ <header class="masthead">
19
+ <div class="brand">
20
+ 图文验收 <span aria-hidden="true">/</span>
21
+ <span id="material-kind"></span>
22
+ </div>
23
+ <div class="task-line">
24
+ <h1 id="task-title"></h1>
25
+ <button id="expand" type="button" aria-pressed="false">展开全部</button>
26
+ </div>
27
+ <p id="task-scope"></p>
28
+ <details id="task-limits" hidden>
29
+ <summary>本次材料的范围</summary>
30
+ <ul></ul>
31
+ </details>
32
+ </header>
33
+ <div class="workspace">
34
+ <aside class="directory">
35
+ <details id="directory-details" open>
36
+ <summary>阅读目录</summary>
37
+ <nav aria-label="页面目录" id="directory"></nav>
38
+ </details>
39
+ <p class="directory-note">每页一个问题<br />图片与说明一起看</p>
40
+ </aside>
41
+ <main id="pages" tabindex="-1"></main>
42
+ </div>
43
+ <footer id="navigation" class="navigation" aria-label="翻页">
44
+ <button id="previous" type="button">← 上一页</button>
45
+ <div class="position">
46
+ <span id="page-count"></span><span id="page-name"></span>
47
+ </div>
48
+ <button id="next" type="button">下一页 →</button>
49
+ </footer>
50
+ <p id="notice" role="status" aria-live="polite" class="notice" hidden></p>
51
+ <div
52
+ id="announcement"
53
+ class="sr-only"
54
+ aria-live="polite"
55
+ aria-atomic="true"
56
+ ></div>
57
+ <noscript
58
+ ><p class="fatal">
59
+ 请启用 JavaScript 查看图文。原始材料仍位于同目录的 assets 文件夹。
60
+ </p></noscript
61
+ >
62
+ </body>
63
+ </html>