@organizaone/o1-code 0.14.1 → 0.15.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 (275) hide show
  1. package/bundled/qc-helper/docs/configuration/settings.md +9 -4
  2. package/bundled/qc-helper/docs/features/commands.md +45 -44
  3. package/bundled/qc-helper/docs/features/remote-sessions.md +102 -0
  4. package/chunks/{MaxSizedBox-K6LS4AHI.js → MaxSizedBox-O7G2ZRYR.js} +20 -20
  5. package/chunks/{StandaloneSessionPicker-VAKM7ZGE.js → StandaloneSessionPicker-BIGZLIRY.js} +37 -37
  6. package/chunks/{acp-subagent-executor-VUIOR2ET.js → acp-subagent-executor-A7RO7LHH.js} +22 -22
  7. package/chunks/{acpAgent-NJVBZXCP.js → acpAgent-AFGYYTUH.js} +63 -63
  8. package/chunks/{agent-VHLE7AET.js → agent-PV23LGME.js} +11 -11
  9. package/chunks/{agent-headless-BJF6NKGR.js → agent-headless-PEA6NNMN.js} +11 -11
  10. package/chunks/{all-providers-3TZIHJW7.js → all-providers-FZ4ESP4Z.js} +2 -2
  11. package/chunks/{anthropicContentGenerator-VB7JA4B3.js → anthropicContentGenerator-XWCHKKOI.js} +5 -5
  12. package/chunks/{bridge-3FUGH7LN.js → bridge-7L53A4AM.js} +22 -22
  13. package/chunks/{chunk-XUJZPD2H.js → chunk-2DQNWI5T.js} +3 -3
  14. package/chunks/{chunk-T7FPP3WA.js → chunk-2RSWDZVO.js} +96 -52
  15. package/chunks/{chunk-NWQNQ2JQ.js → chunk-35KQ7CDI.js} +5 -5
  16. package/chunks/{chunk-74D4F6ZR.js → chunk-3ERDAKD7.js} +1 -1
  17. package/chunks/{chunk-Z277EETV.js → chunk-3FJHPBCE.js} +1 -1
  18. package/chunks/{chunk-JNEJLREI.js → chunk-3ZMBFNPV.js} +1 -1
  19. package/chunks/{chunk-I4J3GC2D.js → chunk-46H5ZP7X.js} +1 -1
  20. package/chunks/{chunk-VVJHO662.js → chunk-4DRJFWXS.js} +3 -3
  21. package/chunks/{chunk-5A5PF6UU.js → chunk-4EVSBPVF.js} +1 -1
  22. package/chunks/{chunk-VJCVMHU2.js → chunk-4JSCCVOO.js} +7 -7
  23. package/chunks/{chunk-6VO6YKJ3.js → chunk-4LXE6MLF.js} +1 -1
  24. package/chunks/{chunk-SHIS7KCU.js → chunk-4XNNJAVK.js} +2 -2
  25. package/chunks/{chunk-MPL3BISR.js → chunk-52L6JTMO.js} +3 -3
  26. package/chunks/{chunk-CSPWXNJC.js → chunk-5G7PI5O3.js} +2 -2
  27. package/chunks/{chunk-JDJVJMXU.js → chunk-5GR3V3II.js} +2 -2
  28. package/chunks/{chunk-R2Q36SDT.js → chunk-5OYTF5XP.js} +1 -1
  29. package/chunks/{chunk-A643DATS.js → chunk-6R2MXKWJ.js} +9 -6
  30. package/chunks/{chunk-EJWEWKFL.js → chunk-7DKVPPL3.js} +2 -2
  31. package/chunks/{chunk-DBH5ZQ3X.js → chunk-7EF7MDGB.js} +3 -3
  32. package/chunks/{chunk-SMZJAMZI.js → chunk-7NVHSJXM.js} +7 -7
  33. package/chunks/{chunk-YPFJPIKO.js → chunk-7UZZDG7L.js} +202 -31
  34. package/chunks/{chunk-TIYFDYIF.js → chunk-AEGEUWVC.js} +1 -1
  35. package/chunks/{chunk-XFQMTQBE.js → chunk-AVLRJ5GO.js} +10 -10
  36. package/chunks/{chunk-JFWM2L2S.js → chunk-AX74MBBW.js} +2 -2
  37. package/chunks/{chunk-WORDJV7E.js → chunk-AYCEQ2OH.js} +2 -2
  38. package/chunks/{chunk-P2AKC25G.js → chunk-B2EKPHXQ.js} +1 -1
  39. package/chunks/{chunk-QXTSKDFW.js → chunk-BYF5YB4S.js} +2 -2
  40. package/chunks/{chunk-X7TMJR6A.js → chunk-CCW5CSV7.js} +4 -4
  41. package/chunks/{chunk-32O4NVPN.js → chunk-CMW56OJG.js} +13 -13
  42. package/chunks/{chunk-N6MH3XSG.js → chunk-CRGQG4ZJ.js} +2 -2
  43. package/chunks/{chunk-5VNWNZZ4.js → chunk-DAB7MOET.js} +1 -1
  44. package/chunks/{chunk-5WA2C3YU.js → chunk-DTA6JUKZ.js} +1 -1
  45. package/chunks/{chunk-R2EIRELD.js → chunk-DWT44BB5.js} +2 -2
  46. package/chunks/{chunk-KXUAXTBE.js → chunk-DWX6K4EP.js} +1 -1
  47. package/chunks/{chunk-GAEZNPGF.js → chunk-DXXRKDEZ.js} +3 -3
  48. package/chunks/{chunk-MZ3XMTPL.js → chunk-FADOMWAI.js} +1 -1
  49. package/chunks/{chunk-ACVOTRTG.js → chunk-FF4G3BYI.js} +73 -33
  50. package/chunks/{chunk-GVGCZY46.js → chunk-FFWWJHI7.js} +4 -4
  51. package/chunks/{chunk-ND36AMUP.js → chunk-FI36HOVR.js} +1 -1
  52. package/chunks/{chunk-SRDLL4JM.js → chunk-FSDDJVL4.js} +3 -3
  53. package/chunks/{chunk-BFCJISSV.js → chunk-FXYJP742.js} +2 -2
  54. package/chunks/{chunk-4ENDHWP4.js → chunk-GEO7X3EN.js} +55 -2
  55. package/chunks/{chunk-5RGWMVLI.js → chunk-HODHQG2A.js} +2 -2
  56. package/chunks/{chunk-ACL45DSG.js → chunk-HRQT6PTP.js} +5 -5
  57. package/chunks/{chunk-XX4IZ2SW.js → chunk-HSJMAQII.js} +5 -5
  58. package/chunks/{chunk-JSAYXOQE.js → chunk-HYZ7GRES.js} +2 -2
  59. package/chunks/{chunk-URNH2X7M.js → chunk-I32MCMVV.js} +4 -4
  60. package/chunks/{chunk-YSK3J7RQ.js → chunk-JEDXP6FR.js} +1 -1
  61. package/chunks/{chunk-WB2AB6LU.js → chunk-JFCIZ63D.js} +2 -2
  62. package/chunks/{chunk-WBPIFM2X.js → chunk-JKXGHDQ2.js} +551 -5
  63. package/chunks/{chunk-ZZVIBILR.js → chunk-KEPNWFUD.js} +9 -1
  64. package/chunks/{chunk-2EGCBKYN.js → chunk-LB4ZZJJM.js} +1 -1
  65. package/chunks/{chunk-M6VRFWLT.js → chunk-LE5TRASB.js} +2 -2
  66. package/chunks/{chunk-URRLGWTK.js → chunk-LFUSSHHB.js} +1 -1
  67. package/chunks/{chunk-NQH5WCUX.js → chunk-LPF2XDE2.js} +7 -7
  68. package/chunks/{chunk-7N5GDAXK.js → chunk-MLAF3GLB.js} +3 -0
  69. package/chunks/{chunk-N5LF4EE4.js → chunk-MMXQXZWA.js} +4 -4
  70. package/chunks/{chunk-HHMGHAVL.js → chunk-NAURON7F.js} +1 -1
  71. package/chunks/{chunk-HBB3LYMT.js → chunk-NUSAKUTH.js} +1 -1
  72. package/chunks/{chunk-LPFK3TO2.js → chunk-O6GD6SFV.js} +4 -0
  73. package/chunks/{chunk-4OYDPQIT.js → chunk-OF73JBMF.js} +3 -3
  74. package/chunks/{chunk-TM5ELIJT.js → chunk-P7FKRAJ6.js} +3 -3
  75. package/chunks/{chunk-3UNHYRK5.js → chunk-PDZGLV3P.js} +8 -8
  76. package/chunks/{chunk-KCHIGNQ3.js → chunk-QMJ6GWQX.js} +1 -1
  77. package/chunks/{chunk-DKDXWZAA.js → chunk-QO72AGKU.js} +2 -2
  78. package/chunks/{chunk-5YPMVUV3.js → chunk-QPVENQJH.js} +5 -5
  79. package/chunks/{chunk-SGMEBT6K.js → chunk-QWO3KT35.js} +2 -2
  80. package/chunks/{chunk-3C53Y3EH.js → chunk-R27K7DNS.js} +5 -5
  81. package/chunks/{chunk-3HS7IEMU.js → chunk-R3ZENPTG.js} +1 -1
  82. package/chunks/{chunk-DXNQVFM7.js → chunk-RBG3RNDF.js} +1 -1
  83. package/chunks/{chunk-Q27JDWE5.js → chunk-RDQZ4Z3T.js} +2 -2
  84. package/chunks/{chunk-XS3WCMRG.js → chunk-RJ56P2F7.js} +1 -1
  85. package/chunks/{chunk-YSHODLWP.js → chunk-RONJ4ZC5.js} +3 -3
  86. package/chunks/{chunk-RBN3RLF6.js → chunk-T74COXKF.js} +13 -13
  87. package/chunks/{chunk-NSHGO4SD.js → chunk-TIJEMBWQ.js} +1 -1
  88. package/chunks/{chunk-GHM4HUC7.js → chunk-UVGSFQ4I.js} +3 -3
  89. package/chunks/{chunk-HVXQBQY4.js → chunk-VH24XB23.js} +1 -1
  90. package/chunks/{chunk-5LMV3DCZ.js → chunk-WE52DYQN.js} +2 -2
  91. package/chunks/{chunk-XS3QHNTA.js → chunk-WOGFLOFT.js} +4 -4
  92. package/chunks/{chunk-5EQBVEDH.js → chunk-XJLSYFTS.js} +3 -3
  93. package/chunks/{chunk-AWE7GF4J.js → chunk-XMF6AIIL.js} +3 -3
  94. package/chunks/{chunk-JIF2TEKH.js → chunk-XPSDYGLU.js} +1 -1
  95. package/chunks/{chunk-ZHJX6KFO.js → chunk-XXM44WQ5.js} +8 -2
  96. package/chunks/{chunk-JJPU5RIJ.js → chunk-Y3JWAVRJ.js} +1 -1
  97. package/chunks/{chunk-2V7HIDQH.js → chunk-Y5JTX5BE.js} +2 -2
  98. package/chunks/{chunk-62X5BQMO.js → chunk-YBQLV5NQ.js} +5 -5
  99. package/chunks/{chunk-FUA6Z2U4.js → chunk-YHCW34AJ.js} +1 -1
  100. package/chunks/{chunk-MFPRAXI5.js → chunk-YT5BWAWH.js} +1 -1
  101. package/chunks/{chunk-BWSTJ4LI.js → chunk-ZG3ZB6LH.js} +3 -3
  102. package/chunks/{chunk-7OFHGQYG.js → chunk-ZHRNMGGR.js} +2 -2
  103. package/chunks/{codex-subagent-executor-NGTRWYIK.js → codex-subagent-executor-JBCVWY67.js} +22 -22
  104. package/chunks/{contextCommand-7GVOH5VF.js → contextCommand-PLGPX4BU.js} +22 -22
  105. package/chunks/{core-runtime-POJAS25N.js → core-runtime-AOXGKBMN.js} +20 -20
  106. package/chunks/{create-sub-session-QCYXUHFL.js → create-sub-session-OGKW35EJ.js} +21 -21
  107. package/chunks/{daemon-git-worktree-guard-D3RHUHVC.js → daemon-git-worktree-guard-MHUJPQU4.js} +20 -20
  108. package/chunks/{daemon-status-provider-R3KRR4AS.js → daemon-status-provider-VR3TJW6Y.js} +26 -26
  109. package/chunks/{daemon-trust-policy-5NYWDYOB.js → daemon-trust-policy-HIIJ3AW2.js} +27 -27
  110. package/chunks/{daemon-trust-policy-monitor-I73M3BZX.js → daemon-trust-policy-monitor-CP2PTB7Z.js} +27 -27
  111. package/chunks/{deferred-core-runtime-S2JMS2IS.js → deferred-core-runtime-YN2YQOS3.js} +20 -20
  112. package/chunks/{edit-FAI2CHTP.js → edit-MKZIJJFV.js} +13 -13
  113. package/chunks/{en-SHMOSKM6.js → en-IMODPCQQ.js} +49 -1
  114. package/chunks/{enterPlanMode-KX7IPPYT.js → enterPlanMode-2JDPJDOI.js} +11 -11
  115. package/chunks/{environment-MVOVD7JZ.js → environment-PJB6G3DC.js} +23 -23
  116. package/chunks/{errors-DSEHKEKP.js → errors-RCPKPF4D.js} +22 -22
  117. package/chunks/{execution-tool-XRAFGCPA.js → execution-tool-QXSN5SIB.js} +13 -13
  118. package/chunks/{execution-worker-VKPVJNIG.js → execution-worker-JZMBO7AU.js} +16 -16
  119. package/chunks/{exitPlanMode-3TY5ONOY.js → exitPlanMode-B6VQ7WU4.js} +11 -11
  120. package/chunks/{fast-path-NAKYI5AD.js → fast-path-WTTSHBHO.js} +3 -3
  121. package/chunks/{fast-path-settings-YKLDHHCG.js → fast-path-settings-FIMIXD3V.js} +2 -2
  122. package/chunks/{glob-7WS7EQ5K.js → glob-GYFLWO23.js} +11 -11
  123. package/chunks/{goal-tools-5WVEBKPG.js → goal-tools-NQKMSURK.js} +11 -11
  124. package/chunks/{handleAutoUpdate-PDYNM2OD.js → handleAutoUpdate-SMCAKDKC.js} +23 -23
  125. package/chunks/{i18n-C475G3CR.js → i18n-M37YB75J.js} +21 -21
  126. package/chunks/{initializer-U77RJ3RD.js → initializer-7QNGXIFH.js} +27 -27
  127. package/chunks/{installationInfo-KJT5UHT6.js → installationInfo-WYK5GZ76.js} +20 -20
  128. package/chunks/{list-B5DL4CMZ.js → list-Q5BU32SE.js} +29 -29
  129. package/chunks/{list-agents-NYXZC74C.js → list-agents-A7UJ6VXZ.js} +2 -2
  130. package/chunks/{llm-V3GR2JCY.js → llm-FIJJDU6O.js} +53 -53
  131. package/chunks/{llm-content-generator-WSOLYSIS.js → llm-content-generator-TL62ECGM.js} +4 -4
  132. package/chunks/{loadedSettingsAdapter-RUVHFDOM.js → loadedSettingsAdapter-NQPUHSAO.js} +27 -27
  133. package/chunks/{local-execution-environment-ODOGTJ6F.js → local-execution-environment-T2TD4DV6.js} +16 -16
  134. package/chunks/{loggingContentGenerator-DLRB334C.js → loggingContentGenerator-3FNNMRBZ.js} +11 -11
  135. package/chunks/{managed-npm-update-NQTZYPEF.js → managed-npm-update-LGPY3TA6.js} +20 -20
  136. package/chunks/{mcp-WCOE7Y3F.js → mcp-J3A5XLOV.js} +27 -27
  137. package/chunks/{model-call-collection-X2EWPR6V.js → model-call-collection-5U5N23HQ.js} +1 -1
  138. package/chunks/{model-configuration-BUJWNHTG.js → model-configuration-MZ6CUBPJ.js} +28 -28
  139. package/chunks/{modelConfigUtils-HLTTOLV5.js → modelConfigUtils-5SJN5MCH.js} +22 -22
  140. package/chunks/{monitor-R5SGEUKX.js → monitor-3B7HPA37.js} +11 -11
  141. package/chunks/{nonInteractiveCli-TKBS5ML2.js → nonInteractiveCli-ENHKPCSB.js} +55 -55
  142. package/chunks/{nonInteractiveToolExecutor-JJFTNXHA.js → nonInteractiveToolExecutor-I6XHNZQV.js} +12 -12
  143. package/chunks/{notebook-edit-33OGSCHE.js → notebook-edit-BOPJ7HJ5.js} +12 -12
  144. package/chunks/{omni-CMDCQ3UQ.js → omni-NDS6RRPE.js} +9 -9
  145. package/chunks/{openaiContentGenerator-M5UV2BQJ.js → openaiContentGenerator-FD6PKK7U.js} +6 -6
  146. package/chunks/{openaiResponsesContentGenerator-S5ECTVDG.js → openaiResponsesContentGenerator-CX5BJT3H.js} +4 -4
  147. package/chunks/{processUtils-GDZ7TOHZ.js → processUtils-DYLWKVGY.js} +2 -2
  148. package/chunks/{prompt-terminal-ledger-PGEHFQ7H.js → prompt-terminal-ledger-GVYJCNHN.js} +21 -21
  149. package/chunks/{pt-IU7FRCNS.js → pt-JCXCCW4Y.js} +49 -1
  150. package/chunks/{reactive-degrade-ASMEPJ5Z.js → reactive-degrade-PWOKK52Z.js} +8 -8
  151. package/chunks/{read-file-2EDHAVNT.js → read-file-QNL7JRBN.js} +1 -1
  152. package/chunks/{resumeHistoryUtils-QW3OYHXI.js → resumeHistoryUtils-FBULSJIP.js} +24 -24
  153. package/chunks/{ripGrep-76TJJQGO.js → ripGrep-4XTRKASX.js} +1 -1
  154. package/chunks/{run-o1-code-serve-WIDKXLJF.js → run-o1-code-serve-FXAMAHOO.js} +34 -34
  155. package/chunks/{sandboxConfig-R3UG3IOZ.js → sandboxConfig-QCO5DWYQ.js} +20 -20
  156. package/chunks/{scheduled-tasks-4UBCLNXS.js → scheduled-tasks-NSSH5VOP.js} +25 -25
  157. package/chunks/{scheduler-AH4TSEXQ.js → scheduler-56522BVY.js} +22 -22
  158. package/chunks/{send-message-OSS7K7GE.js → send-message-H6B5EST3.js} +2 -2
  159. package/chunks/{serve-A4BJAAZE.js → serve-XPMWF6P2.js} +27 -27
  160. package/chunks/{server-ZDI6GJOC.js → server-3HJUOXO6.js} +52 -52
  161. package/chunks/{session-DK3CRCPB.js → session-2ZGNP3JN.js} +56 -56
  162. package/chunks/{session-J5MWNWYV.js → session-USLQVMHK.js} +2 -2
  163. package/chunks/{session-attachments-root-44FEUUR2.js → session-attachments-root-CSR65ITD.js} +20 -20
  164. package/chunks/{session-pr-refresh-ZGKQBFME.js → session-pr-refresh-7VHDYKI5.js} +24 -24
  165. package/chunks/{settings-FAWXGNOI.js → settings-7D3KTPDJ.js} +26 -26
  166. package/chunks/{shell-2TAJP2XL.js → shell-3MMVXNLH.js} +11 -11
  167. package/chunks/{skill-DNIK7OZQ.js → skill-VD4DNOVA.js} +1 -1
  168. package/chunks/{skill-settings-AK7CSZAS.js → skill-settings-6G6KNY75.js} +26 -26
  169. package/chunks/{spawnChannel-IOCLK2X3.js → spawnChannel-3G2ZEX6N.js} +21 -21
  170. package/chunks/{standalone-update-DVOARXLA.js → standalone-update-6WHFCPQK.js} +22 -22
  171. package/chunks/{startInteractiveUI-NTVZYIDU.js → startInteractiveUI-IE3JBVIA.js} +3881 -2676
  172. package/chunks/{team-create-XP7DRQAK.js → team-create-INVD7CZA.js} +11 -11
  173. package/chunks/{team-plan-approval-GOAS57I3.js → team-plan-approval-X3RPLEM5.js} +11 -11
  174. package/chunks/{terminal-image-renderer-YCLREPL4.js → terminal-image-renderer-QKR7JHLJ.js} +20 -20
  175. package/chunks/{theme-manager-XVYTKW34.js → theme-manager-JZIWFQFR.js} +20 -20
  176. package/chunks/{tool-result-media-RGRXVT5T.js → tool-result-media-UR3332TH.js} +9 -9
  177. package/chunks/{tool-search-ZMAKKG5I.js → tool-search-VFXZN2VC.js} +1 -1
  178. package/chunks/{total-session-admission-I5UDK7FQ.js → total-session-admission-GBM7FPBI.js} +22 -22
  179. package/chunks/{trustedFolders-QTPG7HMS.js → trustedFolders-GBAOKT4A.js} +21 -21
  180. package/chunks/{update-relaunch-SGPQQMNN.js → update-relaunch-FQYXBQMI.js} +5 -5
  181. package/chunks/{updateCheck-T5ZZGRHM.js → updateCheck-HDD2DZ6Y.js} +22 -22
  182. package/chunks/{upload-config-EZ62EOKL.js → upload-config-NJJI7MOI.js} +6 -6
  183. package/chunks/{useAutoAcceptIndicator-JF6JC7LL.js → useAutoAcceptIndicator-GITM657T.js} +29 -29
  184. package/chunks/{validateNonInterActiveAuth-S6X4XLNK.js → validateNonInterActiveAuth-O7MD6UW4.js} +52 -52
  185. package/chunks/{version-7F4SOHPI.js → version-TX6H2U3L.js} +1 -1
  186. package/chunks/{web-fetch-OO7L367T.js → web-fetch-RVYBM4NU.js} +1 -1
  187. package/chunks/{web-search-VN7PBUQ6.js → web-search-B6W4C5JM.js} +7 -7
  188. package/chunks/{workflow-IWSW5MOB.js → workflow-KR7EAPUM.js} +12 -12
  189. package/chunks/{workspace-providers-status-ZVH5MCVN.js → workspace-providers-status-2G6MBEVA.js} +31 -31
  190. package/chunks/{workspace-registration-store-ROZOUOYK.js → workspace-registration-store-OH6P3EPH.js} +1 -1
  191. package/chunks/{workspace-registry-CROM24XQ.js → workspace-registry-Y35XQZCS.js} +22 -22
  192. package/chunks/{workspace-runtime-coordinator-NAE37OW5.js → workspace-runtime-coordinator-U3URIEFA.js} +22 -22
  193. package/chunks/{workspace-service-VUQF5IQG.js → workspace-service-WC5WYXT6.js} +30 -30
  194. package/chunks/{workspace-skills-status-DLRICTEZ.js → workspace-skills-status-HKPF4YQD.js} +27 -27
  195. package/chunks/{workspace-trust-reconciler-ZUL5PMCB.js → workspace-trust-reconciler-3UQXQCWY.js} +29 -29
  196. package/chunks/{write-file-5SDNS6TZ.js → write-file-GTT4MO5C.js} +13 -13
  197. package/chunks/{zoom-image-PCKYJ2PJ.js → zoom-image-2KVDIK5E.js} +1 -1
  198. package/cli.js +13 -13
  199. package/execution-worker.js +1 -1
  200. package/export-transcript-document.js +1 -1
  201. package/locales/en.js +75 -0
  202. package/locales/pt.js +77 -0
  203. package/package.json +2 -2
  204. package/release-notes.json +6 -0
  205. package/vendor/o1-connect/.lintstagedrc.mjs +7 -0
  206. package/vendor/o1-connect/README.md +9 -8
  207. package/vendor/o1-connect/VENDOR.json +4 -4
  208. package/vendor/o1-connect/lib.d.mts +124 -2
  209. package/vendor/o1-connect/lib.mjs +532 -7
  210. package/vendor/tree-sitter/tree-sitter-bash.wasm +0 -0
  211. package/vendor/tree-sitter/tree-sitter.wasm +0 -0
  212. package/web-shell/assets/{abnfDiagram-VCTEODGH-BbovwPw2.js → abnfDiagram-VCTEODGH-Dh4ud-bV.js} +1 -1
  213. package/web-shell/assets/{arc-Wui7aPtG.js → arc-CzedV-8_.js} +1 -1
  214. package/web-shell/assets/{architectureDiagram-5GKGNRK7-3WH5ESB7.js → architectureDiagram-5GKGNRK7-DcdBEH6f.js} +1 -1
  215. package/web-shell/assets/{blockDiagram-NRAW4CY4-C36UiMl-.js → blockDiagram-NRAW4CY4-uDeURqM8.js} +1 -1
  216. package/web-shell/assets/{c4Diagram-UCG6FXSJ-DdnwgcM1.js → c4Diagram-UCG6FXSJ-810hyXoQ.js} +1 -1
  217. package/web-shell/assets/channel-v3XEMgos.js +1 -0
  218. package/web-shell/assets/{chunk-2Q5K7J3B-khFNk3ao.js → chunk-2Q5K7J3B-Mk0ldZt-.js} +1 -1
  219. package/web-shell/assets/{chunk-5VM5RSS4-DDLDZsfl.js → chunk-5VM5RSS4-Bz2kOVPI.js} +1 -1
  220. package/web-shell/assets/{chunk-F27PBJKO-aLJmSbub.js → chunk-F27PBJKO-CAjzX5Mt.js} +1 -1
  221. package/web-shell/assets/{chunk-G27WJ6UU-B_GSvc5F.js → chunk-G27WJ6UU-DqvudZ0O.js} +1 -1
  222. package/web-shell/assets/{chunk-JWPE2WC7-d8m9ubln.js → chunk-JWPE2WC7-Dw-KeS8S.js} +1 -1
  223. package/web-shell/assets/{chunk-LCL6LL3I-Bf5h6VmG.js → chunk-LCL6LL3I-DNF6ysro.js} +1 -1
  224. package/web-shell/assets/{chunk-POPQ4Y6H-Czd6y3Dp.js → chunk-POPQ4Y6H-DWU0wpHI.js} +1 -1
  225. package/web-shell/assets/{chunk-SVP7TREG-B03axGPa.js → chunk-SVP7TREG-BQOJiqUJ.js} +1 -1
  226. package/web-shell/assets/{chunk-XXDRQBXY-N33vsGyF.js → chunk-XXDRQBXY-icpdUXXf.js} +1 -1
  227. package/web-shell/assets/classDiagram-DTDB5LWJ-B9FB6o4A.js +1 -0
  228. package/web-shell/assets/classDiagram-v2-JRS7N3AN-B9FB6o4A.js +1 -0
  229. package/web-shell/assets/{cose-bilkent-JH36ORCC-CH_b8j1f.js → cose-bilkent-JH36ORCC-BS-UzOw7.js} +1 -1
  230. package/web-shell/assets/{cynefin-OW5HDTMX-CpdeeUn4.js → cynefin-OW5HDTMX-BWgRJWKh.js} +1 -1
  231. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-CpTzaCzt.js → cynefinDiagram-5FMLGOSQ-C6kE3QdM.js} +1 -1
  232. package/web-shell/assets/{dagre-3AP2YEHR-BTtggthC.js → dagre-3AP2YEHR-DHbMoz2D.js} +1 -1
  233. package/web-shell/assets/{diagram-S7CK7UJ4-BKgOiJsS.js → diagram-S7CK7UJ4-8S4HP9wv.js} +1 -1
  234. package/web-shell/assets/{diagram-UQ7AKVKN-I12M4b-_.js → diagram-UQ7AKVKN-CDM_fDvK.js} +1 -1
  235. package/web-shell/assets/{diagram-VSXAHHWV-C5EuyQ1H.js → diagram-VSXAHHWV-Jt_YgGmQ.js} +1 -1
  236. package/web-shell/assets/{diagram-VX7I27RA-CcsSRsvO.js → diagram-VX7I27RA-jgA2EN0U.js} +1 -1
  237. package/web-shell/assets/{diagram-Z3DM3KII-tNMV05Fn.js → diagram-Z3DM3KII-34lWgOek.js} +1 -1
  238. package/web-shell/assets/{ebnfDiagram-PWID7BFC-liAtArsc.js → ebnfDiagram-PWID7BFC-DkXkay_a.js} +1 -1
  239. package/web-shell/assets/{erDiagram-SSCWMZ5O-I4lmr_zI.js → erDiagram-SSCWMZ5O-2F7Ae8PJ.js} +1 -1
  240. package/web-shell/assets/{flowDiagram-A5DVABFB-nEXpsOvo.js → flowDiagram-A5DVABFB-DEp8HZ1Z.js} +1 -1
  241. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-Dw75s1-O.js → ganttDiagram-EL5Y4UJY-DB9PwX6e.js} +1 -1
  242. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-DiLeptZ9.js → gitGraphDiagram-WWUBYQGX-CIudOlp-.js} +1 -1
  243. package/web-shell/assets/{index-BrTCjwfu.js → index-BLTYMaXa.js} +3 -3
  244. package/web-shell/assets/{index-BH44b2De.js → index-DsGnZKQl.js} +1 -1
  245. package/web-shell/assets/{infoDiagram-RXCK75RN-DCcJ_WXa.js → infoDiagram-RXCK75RN-Csm0vHSo.js} +1 -1
  246. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-Cj6CqTSd.js → ishikawaDiagram-5VMMS53U-CLJXnHlY.js} +1 -1
  247. package/web-shell/assets/{journeyDiagram-EYS64GPL-CJXzA_hz.js → journeyDiagram-EYS64GPL-Cf92U7ZB.js} +1 -1
  248. package/web-shell/assets/{kanban-definition-3QL26DDD-DdNe_a61.js → kanban-definition-3QL26DDD-Dh7Te4fu.js} +1 -1
  249. package/web-shell/assets/{layout-DaXP6yO1.js → layout-B5ALjnq4.js} +1 -1
  250. package/web-shell/assets/{linear-B-jZU9Hq.js → linear-CGxKsCj8.js} +1 -1
  251. package/web-shell/assets/{mermaid.core-CIdivnr2.js → mermaid.core-B_e-IZNF.js} +6 -6
  252. package/web-shell/assets/{mindmap-definition-FBJOCRG2-D0W4HbAm.js → mindmap-definition-FBJOCRG2-BftMDT3T.js} +1 -1
  253. package/web-shell/assets/{pegDiagram-XKGWAZYB-BXa0Luv-.js → pegDiagram-XKGWAZYB-CruSZoUh.js} +1 -1
  254. package/web-shell/assets/{pieDiagram-E7YTZNPT-CWQYQAXk.js → pieDiagram-E7YTZNPT-Bi9haYEh.js} +1 -1
  255. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-C2rr5v8g.js → quadrantDiagram-AXDQQJYC-BY4w8seK.js} +1 -1
  256. package/web-shell/assets/{railroadDiagram-O6MQD6OU-Ixq2-sNq.js → railroadDiagram-O6MQD6OU-moN3YnCi.js} +1 -1
  257. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-Bkiw-rJU.js → requirementDiagram-EFPCY7ZU-B--U5ed4.js} +1 -1
  258. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-fdyaOOD3.js → sankeyDiagram-P5KCCOFB-DD3-WWOa.js} +1 -1
  259. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-DwyYk-Nn.js → sequenceDiagram-WJ2MYXX4-7AYhwUmK.js} +1 -1
  260. package/web-shell/assets/{sizeCapture-X5ZJPWSS-73pmJ9p5.js → sizeCapture-X5ZJPWSS-DM0iKsnv.js} +1 -1
  261. package/web-shell/assets/{stateDiagram-HBIQ2CUA-BuVhfbnT.js → stateDiagram-HBIQ2CUA-DpTV0LVR.js} +1 -1
  262. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-BePrySOz.js +1 -0
  263. package/web-shell/assets/{swimlanes-XN3QIQJK-CzJEsLmd.js → swimlanes-XN3QIQJK-CsGNhmi3.js} +1 -1
  264. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-PnJ6YOB7.js +8 -0
  265. package/web-shell/assets/{timeline-definition-24CTP7MA-DY2tlsbK.js → timeline-definition-24CTP7MA-C4M08jyd.js} +1 -1
  266. package/web-shell/assets/{vennDiagram-4TSXK5OY-jOnpk6UN.js → vennDiagram-4TSXK5OY-B3fw4hM4.js} +1 -1
  267. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-ns8qvGAq.js → wardleyDiagram-VM6X3IG4-DC9yoqPT.js} +1 -1
  268. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-BVvufFM8.js → xychartDiagram-S5SC5T6Z-BgQUydcN.js} +1 -1
  269. package/web-shell/index.html +1 -1
  270. package/web-shell/sw.js +1 -1
  271. package/web-shell/assets/channel-laaanioB.js +0 -1
  272. package/web-shell/assets/classDiagram-DTDB5LWJ-vy7HfQpt.js +0 -1
  273. package/web-shell/assets/classDiagram-v2-JRS7N3AN-vy7HfQpt.js +0 -1
  274. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-Behbwxmi.js +0 -1
  275. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-xalmucUq.js +0 -8
package/locales/en.js CHANGED
@@ -3396,4 +3396,79 @@ export default {
3396
3396
  '(Use Enter to select, Tab to switch scope)',
3397
3397
  'this project only': 'this project only',
3398
3398
  'Next: {{commands}}': 'Next: {{commands}}',
3399
+ // Remote sessions (/rc)
3400
+ 'Mirror this session to your OrganizaOne account page and take input from there':
3401
+ 'Mirror this session to your OrganizaOne account page and take input from there',
3402
+ '[off | status | name <name>]': '[off | status | name <name>]',
3403
+ 'Remote sessions are not available in this session.':
3404
+ 'Remote sessions are not available in this session.',
3405
+ 'Remote mode is not on.': 'Remote mode is not on.',
3406
+ 'Remote mode is off; the session ended on the account page.':
3407
+ 'Remote mode is off; the session ended on the account page.',
3408
+ 'Usage: /rc name <name>': 'Usage: /rc name <name>',
3409
+ 'Remote session renamed to {{name}}.': 'Remote session renamed to {{name}}.',
3410
+ 'Usage: /rc [off | status | name <name>]':
3411
+ 'Usage: /rc [off | status | name <name>]',
3412
+ 'remote: active · 1 viewer': 'remote: active · 1 viewer',
3413
+ 'remote: active · {{count}} viewers': 'remote: active · {{count}} viewers',
3414
+ 'remote: reconnecting': 'remote: reconnecting',
3415
+ 'remote: ended: {{reason}}': 'remote: ended: {{reason}}',
3416
+ 'Remote sessions are off for this session (remote.enabled, or O1CODE_DISABLE_REMOTE).':
3417
+ 'Remote sessions are off for this session (remote.enabled, or O1CODE_DISABLE_REMOTE).',
3418
+ 'Remote needs the OrganizaOne sign-in: connect with "Sign in with your account" or the o1-gateway device code (/auth).':
3419
+ 'Remote needs the OrganizaOne sign-in: connect with "Sign in with your account" or the o1-gateway device code (/auth).',
3420
+ 'Your plan does not include remote sessions. See your account at {{url}}.':
3421
+ 'Your plan does not include remote sessions. See your account at {{url}}.',
3422
+ 'The OrganizaOne gateway did not answer about this key. Try again in a moment.':
3423
+ 'The OrganizaOne gateway did not answer about this key. Try again in a moment.',
3424
+ 'remote.viaTunnel is "always", but this session has no o1-connect tunnel open.':
3425
+ 'remote.viaTunnel is "always", but this session has no o1-connect tunnel open.',
3426
+ 'remote.viaTunnel is "never", but this session only reaches OrganizaOne through the o1-connect tunnel.':
3427
+ 'remote.viaTunnel is "never", but this session only reaches OrganizaOne through the o1-connect tunnel.',
3428
+ 'Your plan allows no more remote sessions at once. Live now: {{sessions}}.':
3429
+ 'Your plan allows no more remote sessions at once. Live now: {{sessions}}.',
3430
+ 'Your plan allows no more remote sessions at once.':
3431
+ 'Your plan allows no more remote sessions at once.',
3432
+ 'The gateway refused the remote session ({{code}}): {{message}}':
3433
+ 'The gateway refused the remote session ({{code}}): {{message}}',
3434
+ 'Remote mode could not start.': 'Remote mode could not start.',
3435
+ 'Name: {{name}}': 'Name: {{name}}',
3436
+ 'Open: {{url}}': 'Open: {{url}}',
3437
+ '/rc off ends it.': '/rc off ends it.',
3438
+ 'Remote mode is off.': 'Remote mode is off.',
3439
+ '/rc turns it on.': '/rc turns it on.',
3440
+ 'Remote mode is on as "{{name}}": {{url}}':
3441
+ 'Remote mode is on as "{{name}}": {{url}}',
3442
+ 'A viewer opened this session on the account page ({{count}} watching).':
3443
+ 'A viewer opened this session on the account page ({{count}} watching).',
3444
+ 'A viewer left the account page ({{count}} watching).':
3445
+ 'A viewer left the account page ({{count}} watching).',
3446
+ 'Remote: the gateway is away; reconnecting.':
3447
+ 'Remote: the gateway is away; reconnecting.',
3448
+ 'Remote: connected to the gateway again.':
3449
+ 'Remote: connected to the gateway again.',
3450
+ 'Remote mode ended: {{reason}}.': 'Remote mode ended: {{reason}}.',
3451
+ '[from the account page] {{text}}': '[from the account page] {{text}}',
3452
+ 'Answered from the account page: {{label}}':
3453
+ 'Answered from the account page: {{label}}',
3454
+ 'Remote sessions': 'Remote sessions',
3455
+ 'The OrganizaOne gateway will mirror this terminal to your account page: what you type, what the model answers, each tool call and its result, and the questions the terminal asks.':
3456
+ 'The OrganizaOne gateway will mirror this terminal to your account page: what you type, what the model answers, each tool call and its result, and the questions the terminal asks.',
3457
+ 'From the page you can type prompts, stop a turn, compact or clear the session, and answer permissions and questions. Shell access, /resume, plugins and the approval mode stay in the terminal.':
3458
+ 'From the page you can type prompts, stop a turn, compact or clear the session, and answer permissions and questions. Shell access, /resume, plugins and the approval mode stay in the terminal.',
3459
+ 'The gateway relays the session and keeps none of its content; it records that a session existed, who viewed it, and each decision and who answered it.':
3460
+ 'The gateway relays the session and keeps none of its content; it records that a session existed, who viewed it, and each decision and who answered it.',
3461
+ 'Enter to continue · Esc to cancel. Shown once.':
3462
+ 'Enter to continue · Esc to cancel. Shown once.',
3463
+ 'Connecting to the OrganizaOne gateway…':
3464
+ 'Connecting to the OrganizaOne gateway…',
3465
+ 'Remote mode is on as "{{name}}". Open this address on your account page, or scan the code:':
3466
+ 'Remote mode is on as "{{name}}". Open this address on your account page, or scan the code:',
3467
+ 'Esc closes this; /rc off ends the session.':
3468
+ 'Esc closes this; /rc off ends the session.',
3469
+ 'The QR code does not fit this terminal; open the address instead.':
3470
+ 'The QR code does not fit this terminal; open the address instead.',
3471
+ Continue: 'Continue',
3472
+ 'Disconnect remote control': 'Disconnect remote control',
3473
+ Other: 'Other',
3399
3474
  };
package/locales/pt.js CHANGED
@@ -3704,4 +3704,81 @@ export default {
3704
3704
  '(Enter seleciona, Tab troca o escopo)',
3705
3705
  'this project only': 'só neste projeto',
3706
3706
  'Next: {{commands}}': 'Próximo: {{commands}}',
3707
+ // Remote sessions (/rc)
3708
+ 'Mirror this session to your OrganizaOne account page and take input from there':
3709
+ 'Espelhar esta sessão na página da sua conta OrganizaOne e receber entrada de lá',
3710
+ '[off | status | name <name>]': '[off | status | name <nome>]',
3711
+ 'Remote sessions are not available in this session.':
3712
+ 'Sessões remotas não estão disponíveis nesta sessão.',
3713
+ 'Remote mode is not on.': 'O modo remoto não está ligado.',
3714
+ 'Remote mode is off; the session ended on the account page.':
3715
+ 'Modo remoto desligado; a sessão foi encerrada na página da conta.',
3716
+ 'Usage: /rc name <name>': 'Uso: /rc name <nome>',
3717
+ 'Remote session renamed to {{name}}.':
3718
+ 'Sessão remota renomeada para {{name}}.',
3719
+ 'Usage: /rc [off | status | name <name>]':
3720
+ 'Uso: /rc [off | status | name <nome>]',
3721
+ 'remote: active · 1 viewer': 'remoto: ativo · 1 visualizador',
3722
+ 'remote: active · {{count}} viewers':
3723
+ 'remoto: ativo · {{count}} visualizadores',
3724
+ 'remote: reconnecting': 'remoto: reconectando',
3725
+ 'remote: ended: {{reason}}': 'remoto: encerrado: {{reason}}',
3726
+ 'Remote sessions are off for this session (remote.enabled, or O1CODE_DISABLE_REMOTE).':
3727
+ 'Sessões remotas estão desligadas nesta sessão (remote.enabled ou O1CODE_DISABLE_REMOTE).',
3728
+ 'Remote needs the OrganizaOne sign-in: connect with "Sign in with your account" or the o1-gateway device code (/auth).':
3729
+ 'O modo remoto precisa do login OrganizaOne: conecte com "Entrar com sua conta" ou com o código de dispositivo do o1-gateway (/auth).',
3730
+ 'Your plan does not include remote sessions. See your account at {{url}}.':
3731
+ 'Seu plano não inclui sessões remotas. Veja sua conta em {{url}}.',
3732
+ 'The OrganizaOne gateway did not answer about this key. Try again in a moment.':
3733
+ 'O gateway OrganizaOne não respondeu sobre esta chave. Tente de novo em instantes.',
3734
+ 'remote.viaTunnel is "always", but this session has no o1-connect tunnel open.':
3735
+ 'remote.viaTunnel está em "always", mas esta sessão não tem um túnel o1-connect aberto.',
3736
+ 'remote.viaTunnel is "never", but this session only reaches OrganizaOne through the o1-connect tunnel.':
3737
+ 'remote.viaTunnel está em "never", mas esta sessão só alcança a OrganizaOne pelo túnel o1-connect.',
3738
+ 'Your plan allows no more remote sessions at once. Live now: {{sessions}}.':
3739
+ 'Seu plano não permite mais sessões remotas ao mesmo tempo. Ativas agora: {{sessions}}.',
3740
+ 'Your plan allows no more remote sessions at once.':
3741
+ 'Seu plano não permite mais sessões remotas ao mesmo tempo.',
3742
+ 'The gateway refused the remote session ({{code}}): {{message}}':
3743
+ 'O gateway recusou a sessão remota ({{code}}): {{message}}',
3744
+ 'Remote mode could not start.': 'O modo remoto não pôde iniciar.',
3745
+ 'Name: {{name}}': 'Nome: {{name}}',
3746
+ 'Open: {{url}}': 'Abrir: {{url}}',
3747
+ '/rc off ends it.': '/rc off encerra.',
3748
+ 'Remote mode is off.': 'Modo remoto desligado.',
3749
+ '/rc turns it on.': '/rc liga.',
3750
+ 'Remote mode is on as "{{name}}": {{url}}':
3751
+ 'Modo remoto ligado como "{{name}}": {{url}}',
3752
+ 'A viewer opened this session on the account page ({{count}} watching).':
3753
+ 'Um visualizador abriu esta sessão na página da conta ({{count}} assistindo).',
3754
+ 'A viewer left the account page ({{count}} watching).':
3755
+ 'Um visualizador saiu da página da conta ({{count}} assistindo).',
3756
+ 'Remote: the gateway is away; reconnecting.':
3757
+ 'Remoto: o gateway está fora; reconectando.',
3758
+ 'Remote: connected to the gateway again.':
3759
+ 'Remoto: conectado ao gateway de novo.',
3760
+ 'Remote mode ended: {{reason}}.': 'Modo remoto encerrado: {{reason}}.',
3761
+ '[from the account page] {{text}}': '[da página da conta] {{text}}',
3762
+ 'Answered from the account page: {{label}}':
3763
+ 'Respondido pela página da conta: {{label}}',
3764
+ 'Remote sessions': 'Sessões remotas',
3765
+ 'The OrganizaOne gateway will mirror this terminal to your account page: what you type, what the model answers, each tool call and its result, and the questions the terminal asks.':
3766
+ 'O gateway OrganizaOne vai espelhar este terminal na página da sua conta: o que você digita, o que o modelo responde, cada chamada de ferramenta e seu resultado, e as perguntas que o terminal faz.',
3767
+ 'From the page you can type prompts, stop a turn, compact or clear the session, and answer permissions and questions. Shell access, /resume, plugins and the approval mode stay in the terminal.':
3768
+ 'Pela página você pode digitar prompts, interromper um turno, compactar ou limpar a sessão, e responder permissões e perguntas. Acesso ao shell, /resume, plugins e o modo de aprovação ficam no terminal.',
3769
+ 'The gateway relays the session and keeps none of its content; it records that a session existed, who viewed it, and each decision and who answered it.':
3770
+ 'O gateway retransmite a sessão e não guarda nada do conteúdo; registra que uma sessão existiu, quem a viu, e cada decisão e quem respondeu.',
3771
+ 'Enter to continue · Esc to cancel. Shown once.':
3772
+ 'Enter continua · Esc cancela. Mostrado uma vez.',
3773
+ 'Connecting to the OrganizaOne gateway…':
3774
+ 'Conectando ao gateway OrganizaOne…',
3775
+ 'Remote mode is on as "{{name}}". Open this address on your account page, or scan the code:':
3776
+ 'Modo remoto ligado como "{{name}}". Abra este endereço na página da sua conta ou leia o código:',
3777
+ 'Esc closes this; /rc off ends the session.':
3778
+ 'Esc fecha isto; /rc off encerra a sessão.',
3779
+ 'The QR code does not fit this terminal; open the address instead.':
3780
+ 'O código QR não cabe neste terminal; abra o endereço.',
3781
+ Continue: 'Continuar',
3782
+ 'Disconnect remote control': 'Desconectar controle remoto',
3783
+ Other: 'Outra resposta',
3707
3784
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@organizaone/o1-code",
3
- "version": "0.14.1",
3
+ "version": "0.15.0",
4
4
  "description": "O1-Code - AI-powered coding assistant",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -42,7 +42,7 @@
42
42
  "release-notes.json"
43
43
  ],
44
44
  "config": {
45
- "sandboxImageUri": "ghcr.io/organizaone/o1-code:0.14.1"
45
+ "sandboxImageUri": "ghcr.io/organizaone/o1-code:0.15.0"
46
46
  },
47
47
  "dependencies": {},
48
48
  "optionalDependencies": {
@@ -1,4 +1,10 @@
1
1
  {
2
+ "0.15.0": {
3
+ "highlights": [
4
+ "Remote sessions",
5
+ "The vendored o1-connect library is 9.9.0, which adds openRemote."
6
+ ]
7
+ },
2
8
  "0.14.1": {
3
9
  "highlights": [
4
10
  "A blocked Goal says how to move on"
@@ -0,0 +1,7 @@
1
+ // Copyright 2026 o1-code contributors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export default {
5
+ 'lib.mjs': 'node --check',
6
+ '*.{json,md}': 'prettier --write',
7
+ };
@@ -4,7 +4,8 @@ The client library of o1-gateway (OrganizaOne AI Gateway), used by the "o1-gatew
4
4
  provider: the pinned tunnel of `o1-connect run` started inside o1-code, with a loopback endpoint
5
5
  that speaks the proxy's API and swaps the device token in.
6
6
 
7
- - `lib.mjs`: the library, one dependency-free ES module (`node:` modules only).
7
+ - `lib.mjs`: the library, one dependency-free ES module (`node:` modules only). Since 9.9.0 it
8
+ also exports `openRemote`, the terminal's side of a remote session (contract §5).
8
9
  - `lib.d.mts`: its types.
9
10
 
10
11
  Both are copied, never loaded at run time: the library is what protects the session on a network
@@ -15,13 +16,13 @@ dependency, and update `VENDOR.json` with the new version and hashes; the test
15
16
  The local lint-staged configuration checks the library's syntax without formatting it, so
16
17
  pre-commit checks preserve the upstream bytes and their recorded hash.
17
18
 
18
- | | |
19
- | ----------------------------------- | -------------------------------------------------------------------------------------- |
20
- | Version | 9.4.0 (`// o1-connect-lib 9.4.0`) |
21
- | Source | `github.com/organizaone/o1-gateway`, commit `eb849d839dca8a53958885bb0cfe1320b09fd24b` |
22
- | `lib.mjs` SHA-256 | `06c4176a6cfd975c70e8c079bdb93ed1024e3076090c77d066d12cef5a305db1` |
23
- | `lib.d.mts` SHA-256 | `852feb8f9dbb324c5118e9ca8d92371abc2364b0536e161bfb7682fd1dd6eafe` |
24
- | Checked against local gateway build | 2026-10-06, source and copy compared with `Get-FileHash` |
19
+ | | |
20
+ | --------------------------- | -------------------------------------------------------------------------------------- |
21
+ | Version | 9.9.0 (`// o1-connect-lib 9.9.0`) |
22
+ | Source | `github.com/organizaone/o1-gateway`, commit `a7234d36eca4d9bc6b73c68d26494e21a44b6cae` |
23
+ | `lib.mjs` SHA-256 | `3f1784b067660cfd2866a023885948f1a246c029ee9a3dc73f1a126072c7d0fb` |
24
+ | `lib.d.mts` SHA-256 | `242576aa4d42aa82665f7bd570b5b0f432e2df497e7ed0586ceb850b3fe250e4` |
25
+ | Checked against the gateway | 2026-10-11, `https://api.organizaone.com/client/lib.mjs.sha256` compared with `shasum` |
25
26
 
26
27
  License: MIT (the banner of each file).
27
28
 
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "o1-connect-lib",
3
- "version": "9.4.0",
3
+ "version": "9.9.0",
4
4
  "source": "https://github.com/organizaone/o1-gateway",
5
- "commit": "eb849d839dca8a53958885bb0cfe1320b09fd24b",
5
+ "commit": "a7234d36eca4d9bc6b73c68d26494e21a44b6cae",
6
6
  "files": {
7
- "lib.mjs": "06c4176a6cfd975c70e8c079bdb93ed1024e3076090c77d066d12cef5a305db1",
8
- "lib.d.mts": "852feb8f9dbb324c5118e9ca8d92371abc2364b0536e161bfb7682fd1dd6eafe"
7
+ "lib.mjs": "3f1784b067660cfd2866a023885948f1a246c029ee9a3dc73f1a126072c7d0fb",
8
+ "lib.d.mts": "242576aa4d42aa82665f7bd570b5b0f432e2df497e7ed0586ceb850b3fe250e4"
9
9
  }
10
10
  }
@@ -1,4 +1,4 @@
1
- // o1-connect-lib 9.4.0 - https://github.com/organizaone/o1-gateway (MIT)
1
+ // o1-connect-lib 9.9.0 - https://github.com/organizaone/o1-gateway (MIT)
2
2
  /**
3
3
  * o1-connect as a library (docs/O1-CODE-LOGIN.md §3): the pinned tunnel
4
4
  * of `o1-connect run`, started inside the host app instead of as a
@@ -14,6 +14,9 @@
14
14
  * proxy's API with the device token swapped in, and returns its base URL, a
15
15
  * per-session key for it, and close().
16
16
  * - forget({ store }) deletes the saved configuration.
17
+ * - openRemote({ connection | baseUrl + apiKey, session, history }) puts a
18
+ * terminal session in remote mode (remote.ts, §5): the gateway mirrors what
19
+ * the app sends to the owner's browser and hands back its input and answers.
17
20
  *
18
21
  * Secrets (the device token) live only in the app's SecretStore and in this
19
22
  * process's memory: the library writes no file, sets no environment
@@ -57,7 +60,13 @@ export type O1ConnectErrorCode =
57
60
  /** The local port asked for is taken. */
58
61
  | "port_in_use"
59
62
  /** The loopback endpoint could not listen for another reason (EACCES, EADDRNOTAVAIL: a port the OS reserves or forbids); the message names it. */
60
- | "port_unavailable";
63
+ | "port_unavailable"
64
+ /** The gateway refused the remote session before it opened; the `cause` is `{ status, code }` (the HTTP status, 0 for a `bye`, and the gateway's code or the bye's reason). */
65
+ | "remote_refused"
66
+ /** The upgrade was answered by something that is not a remote session's gateway. */
67
+ | "remote_protocol"
68
+ /** A decision was closed before a viewer answered it (in the terminal, by its expiry, or with the session). */
69
+ | "decision_closed";
61
70
  export declare class O1ConnectError extends Error {
62
71
  readonly code: O1ConnectErrorCode;
63
72
  constructor(code: O1ConnectErrorCode, message: string, options?: {
@@ -130,6 +139,119 @@ export interface Connection {
130
139
  /** Stops the tunnel and the endpoint; resolves once the port is free. Safe to call twice. */
131
140
  close(): Promise<void>;
132
141
  }
142
+ export type RemoteState = "online" | "reconnecting" | "ended";
143
+ export type RemoteDecisionKind = "can_use_tool" | "ask_user" | "plan";
144
+ export type RemoteCommandName = "interrupt" | "compact" | "clear" | "model" | "effort";
145
+ /** The terminal session going remote, as the gateway and a viewer name it. */
146
+ export interface RemoteSessionInfo {
147
+ /** The session's own id: the same id re-opens the same remote session (and keeps a viewer's URL) within four hours. */
148
+ id: string;
149
+ /** Shown to the viewer (the host's name and a suffix, as a rule). */
150
+ name: string;
151
+ /** A hint of the working directory, for the viewer's list; never a secret. */
152
+ cwd?: string;
153
+ /** The terminal's version. */
154
+ version: string;
155
+ approvalMode: string;
156
+ model: string;
157
+ }
158
+ export interface RemoteDecisionOption {
159
+ value: string;
160
+ label: string;
161
+ danger?: boolean;
162
+ }
163
+ /** A question the terminal puts to its viewers too: a tool's permission, a question to the user, a plan. */
164
+ export interface RemoteDecisionRequest {
165
+ id: string;
166
+ kind: RemoteDecisionKind;
167
+ /** ISO time; the gateway holds the request open at most an hour. */
168
+ expiresAt: string;
169
+ title: string;
170
+ summary: string;
171
+ options: RemoteDecisionOption[];
172
+ }
173
+ export interface RemoteDecision {
174
+ outcome: string;
175
+ payload?: unknown;
176
+ by: "remote";
177
+ }
178
+ export interface RemoteAgentEvents {
179
+ /** A viewer typed a prompt: for the terminal's own queue. */
180
+ input: {
181
+ id: string;
182
+ text: string;
183
+ };
184
+ /** A viewer ran one of the commands allowed remotely. */
185
+ command: {
186
+ id: string;
187
+ name: RemoteCommandName;
188
+ args?: Record<string, unknown>;
189
+ };
190
+ /** A viewer answered a decision (requestDecision's promise resolves with it too). */
191
+ decision: {
192
+ id: string;
193
+ outcome: string;
194
+ payload?: unknown;
195
+ };
196
+ viewer: {
197
+ op: "attached" | "detached";
198
+ count: number;
199
+ };
200
+ /** online after a reconnection, reconnecting while the gateway is away, ended with why (a `bye`'s reason, or `closed`). */
201
+ state: {
202
+ state: RemoteState;
203
+ reason?: string;
204
+ };
205
+ /** The gateway refused one of this side's frames (`code`, and the frame's `id` when it had one). */
206
+ error: {
207
+ code: string;
208
+ id?: string;
209
+ };
210
+ }
211
+ export interface RemoteOpenOptions {
212
+ /** The gateway's base URL (https; http for a loopback host in tests), with `apiKey`. */
213
+ baseUrl?: string;
214
+ /** Or an open() connection: the session rides its pinned tunnel with its device key. */
215
+ connection?: Connection;
216
+ /** The device key, with `baseUrl`. */
217
+ apiKey?: string;
218
+ session: RemoteSessionInfo;
219
+ /** The session's recent events, for a viewer's first screen (the newest that fit 512 KiB); a function is read at every hello. */
220
+ history?: unknown[] | (() => unknown[]);
221
+ /** Lines without content (ids, counts, reasons); default: none. */
222
+ log?(line: string): void;
223
+ }
224
+ export interface RemoteAgent {
225
+ readonly remoteId: string;
226
+ /** Where a viewer opens the session (the account page). */
227
+ readonly url: string;
228
+ readonly state: RemoteState;
229
+ /** One event of the session, as the terminal shows it (opaque to the gateway). */
230
+ send(ev: unknown): void;
231
+ status(s: {
232
+ state: "idle" | "streaming" | "awaiting";
233
+ model?: string;
234
+ approvalMode?: string;
235
+ }): void;
236
+ /** Asks the viewers; resolves with the first viewer's answer, rejects `decision_closed` once closeDecision runs (the terminal answered first) or the session ends. */
237
+ requestDecision(req: RemoteDecisionRequest): Promise<RemoteDecision>;
238
+ /** The request is no longer open: answered in the terminal (`local`), by a viewer (`remote`, after the promise resolved), or expired. */
239
+ closeDecision(id: string, by: "local" | "remote" | "expired", outcome?: string | null): void;
240
+ /** Subscribes; the function returned unsubscribes. */
241
+ on<K extends keyof RemoteAgentEvents>(event: K, fn: (e: RemoteAgentEvents[K]) => void): () => void;
242
+ /** Leaves remote mode: the gateway ends the session at once and tells the viewers. Safe to call twice. */
243
+ close(): Promise<void>;
244
+ }
245
+ /**
246
+ * Puts a terminal session in remote mode: an outbound connection to the
247
+ * gateway's `/remote/agent` (through `connection`'s tunnel, or straight to
248
+ * `baseUrl` with `apiKey`), the session's hello, and the gateway's ready.
249
+ * Resolves once viewers may attach; rejects `remote_refused` when the
250
+ * gateway will not have it (the key, the plan, a ceiling), with why in the
251
+ * `cause`. The agent reconnects on its own and ends only on a refusal it
252
+ * cannot mend or on close().
253
+ */
254
+ export declare function openRemote(opts: RemoteOpenOptions): Promise<RemoteAgent>;
133
255
  /**
134
256
  * Reads the code, has the app confirm every key's fingerprint, then saves the
135
257
  * configuration under `name` in the store (replacing any there). Nothing is