language-operator 0.1.81 → 0.1.82

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 (427) hide show
  1. checksums.yaml +4 -4
  2. data/.claude/agents/README.md +16 -0
  3. data/.claude/agents/changelog-writer.md +181 -0
  4. data/.claude/hooks/README.md +43 -0
  5. data/.claude/hooks/node_modules/.bin/esbuild +1 -0
  6. data/.claude/hooks/node_modules/.bin/tsc +1 -0
  7. data/.claude/hooks/node_modules/.bin/tsserver +1 -0
  8. data/.claude/hooks/node_modules/.bin/tsx +1 -0
  9. data/.claude/hooks/node_modules/.package-lock.json +136 -0
  10. data/.claude/hooks/node_modules/@esbuild/linux-x64/README.md +3 -0
  11. data/.claude/hooks/node_modules/@esbuild/linux-x64/bin/esbuild +0 -0
  12. data/.claude/hooks/node_modules/@esbuild/linux-x64/package.json +20 -0
  13. data/.claude/hooks/node_modules/@types/node/LICENSE +21 -0
  14. data/.claude/hooks/node_modules/@types/node/README.md +15 -0
  15. data/.claude/hooks/node_modules/@types/node/assert/strict.d.ts +105 -0
  16. data/.claude/hooks/node_modules/@types/node/assert.d.ts +955 -0
  17. data/.claude/hooks/node_modules/@types/node/async_hooks.d.ts +623 -0
  18. data/.claude/hooks/node_modules/@types/node/buffer.buffer.d.ts +466 -0
  19. data/.claude/hooks/node_modules/@types/node/buffer.d.ts +1810 -0
  20. data/.claude/hooks/node_modules/@types/node/child_process.d.ts +1428 -0
  21. data/.claude/hooks/node_modules/@types/node/cluster.d.ts +486 -0
  22. data/.claude/hooks/node_modules/@types/node/compatibility/iterators.d.ts +21 -0
  23. data/.claude/hooks/node_modules/@types/node/console.d.ts +151 -0
  24. data/.claude/hooks/node_modules/@types/node/constants.d.ts +20 -0
  25. data/.claude/hooks/node_modules/@types/node/crypto.d.ts +4065 -0
  26. data/.claude/hooks/node_modules/@types/node/dgram.d.ts +564 -0
  27. data/.claude/hooks/node_modules/@types/node/diagnostics_channel.d.ts +576 -0
  28. data/.claude/hooks/node_modules/@types/node/dns/promises.d.ts +503 -0
  29. data/.claude/hooks/node_modules/@types/node/dns.d.ts +922 -0
  30. data/.claude/hooks/node_modules/@types/node/domain.d.ts +166 -0
  31. data/.claude/hooks/node_modules/@types/node/events.d.ts +1054 -0
  32. data/.claude/hooks/node_modules/@types/node/fs/promises.d.ts +1316 -0
  33. data/.claude/hooks/node_modules/@types/node/fs.d.ts +4676 -0
  34. data/.claude/hooks/node_modules/@types/node/globals.d.ts +150 -0
  35. data/.claude/hooks/node_modules/@types/node/globals.typedarray.d.ts +101 -0
  36. data/.claude/hooks/node_modules/@types/node/http.d.ts +2143 -0
  37. data/.claude/hooks/node_modules/@types/node/http2.d.ts +2480 -0
  38. data/.claude/hooks/node_modules/@types/node/https.d.ts +399 -0
  39. data/.claude/hooks/node_modules/@types/node/index.d.ts +115 -0
  40. data/.claude/hooks/node_modules/@types/node/inspector/promises.d.ts +41 -0
  41. data/.claude/hooks/node_modules/@types/node/inspector.d.ts +224 -0
  42. data/.claude/hooks/node_modules/@types/node/inspector.generated.d.ts +4226 -0
  43. data/.claude/hooks/node_modules/@types/node/module.d.ts +819 -0
  44. data/.claude/hooks/node_modules/@types/node/net.d.ts +933 -0
  45. data/.claude/hooks/node_modules/@types/node/os.d.ts +507 -0
  46. data/.claude/hooks/node_modules/@types/node/package.json +155 -0
  47. data/.claude/hooks/node_modules/@types/node/path/posix.d.ts +8 -0
  48. data/.claude/hooks/node_modules/@types/node/path/win32.d.ts +8 -0
  49. data/.claude/hooks/node_modules/@types/node/path.d.ts +187 -0
  50. data/.claude/hooks/node_modules/@types/node/perf_hooks.d.ts +621 -0
  51. data/.claude/hooks/node_modules/@types/node/process.d.ts +2097 -0
  52. data/.claude/hooks/node_modules/@types/node/punycode.d.ts +117 -0
  53. data/.claude/hooks/node_modules/@types/node/querystring.d.ts +152 -0
  54. data/.claude/hooks/node_modules/@types/node/quic.d.ts +910 -0
  55. data/.claude/hooks/node_modules/@types/node/readline/promises.d.ts +161 -0
  56. data/.claude/hooks/node_modules/@types/node/readline.d.ts +541 -0
  57. data/.claude/hooks/node_modules/@types/node/repl.d.ts +415 -0
  58. data/.claude/hooks/node_modules/@types/node/sea.d.ts +162 -0
  59. data/.claude/hooks/node_modules/@types/node/sqlite.d.ts +937 -0
  60. data/.claude/hooks/node_modules/@types/node/stream/consumers.d.ts +38 -0
  61. data/.claude/hooks/node_modules/@types/node/stream/promises.d.ts +211 -0
  62. data/.claude/hooks/node_modules/@types/node/stream/web.d.ts +296 -0
  63. data/.claude/hooks/node_modules/@types/node/stream.d.ts +1760 -0
  64. data/.claude/hooks/node_modules/@types/node/string_decoder.d.ts +67 -0
  65. data/.claude/hooks/node_modules/@types/node/test/reporters.d.ts +96 -0
  66. data/.claude/hooks/node_modules/@types/node/test.d.ts +2239 -0
  67. data/.claude/hooks/node_modules/@types/node/timers/promises.d.ts +108 -0
  68. data/.claude/hooks/node_modules/@types/node/timers.d.ts +159 -0
  69. data/.claude/hooks/node_modules/@types/node/tls.d.ts +1194 -0
  70. data/.claude/hooks/node_modules/@types/node/trace_events.d.ts +197 -0
  71. data/.claude/hooks/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +462 -0
  72. data/.claude/hooks/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  73. data/.claude/hooks/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +36 -0
  74. data/.claude/hooks/node_modules/@types/node/ts5.6/index.d.ts +117 -0
  75. data/.claude/hooks/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  76. data/.claude/hooks/node_modules/@types/node/ts5.7/index.d.ts +117 -0
  77. data/.claude/hooks/node_modules/@types/node/tty.d.ts +250 -0
  78. data/.claude/hooks/node_modules/@types/node/url.d.ts +519 -0
  79. data/.claude/hooks/node_modules/@types/node/util/types.d.ts +558 -0
  80. data/.claude/hooks/node_modules/@types/node/util.d.ts +1653 -0
  81. data/.claude/hooks/node_modules/@types/node/v8.d.ts +979 -0
  82. data/.claude/hooks/node_modules/@types/node/vm.d.ts +1180 -0
  83. data/.claude/hooks/node_modules/@types/node/wasi.d.ts +202 -0
  84. data/.claude/hooks/node_modules/@types/node/web-globals/abortcontroller.d.ts +59 -0
  85. data/.claude/hooks/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  86. data/.claude/hooks/node_modules/@types/node/web-globals/console.d.ts +9 -0
  87. data/.claude/hooks/node_modules/@types/node/web-globals/crypto.d.ts +39 -0
  88. data/.claude/hooks/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
  89. data/.claude/hooks/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  90. data/.claude/hooks/node_modules/@types/node/web-globals/events.d.ts +106 -0
  91. data/.claude/hooks/node_modules/@types/node/web-globals/fetch.d.ts +54 -0
  92. data/.claude/hooks/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  93. data/.claude/hooks/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  94. data/.claude/hooks/node_modules/@types/node/web-globals/navigator.d.ts +25 -0
  95. data/.claude/hooks/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  96. data/.claude/hooks/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  97. data/.claude/hooks/node_modules/@types/node/web-globals/streams.d.ts +115 -0
  98. data/.claude/hooks/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  99. data/.claude/hooks/node_modules/@types/node/web-globals/url.d.ts +24 -0
  100. data/.claude/hooks/node_modules/@types/node/worker_threads.d.ts +714 -0
  101. data/.claude/hooks/node_modules/@types/node/zlib.d.ts +618 -0
  102. data/.claude/hooks/node_modules/esbuild/LICENSE.md +21 -0
  103. data/.claude/hooks/node_modules/esbuild/README.md +3 -0
  104. data/.claude/hooks/node_modules/esbuild/bin/esbuild +0 -0
  105. data/.claude/hooks/node_modules/esbuild/install.js +289 -0
  106. data/.claude/hooks/node_modules/esbuild/lib/main.d.ts +716 -0
  107. data/.claude/hooks/node_modules/esbuild/lib/main.js +2242 -0
  108. data/.claude/hooks/node_modules/esbuild/package.json +49 -0
  109. data/.claude/hooks/node_modules/get-tsconfig/LICENSE +21 -0
  110. data/.claude/hooks/node_modules/get-tsconfig/README.md +235 -0
  111. data/.claude/hooks/node_modules/get-tsconfig/dist/index.cjs +7 -0
  112. data/.claude/hooks/node_modules/get-tsconfig/dist/index.d.cts +2088 -0
  113. data/.claude/hooks/node_modules/get-tsconfig/dist/index.d.mts +2088 -0
  114. data/.claude/hooks/node_modules/get-tsconfig/dist/index.mjs +7 -0
  115. data/.claude/hooks/node_modules/get-tsconfig/package.json +46 -0
  116. data/.claude/hooks/node_modules/resolve-pkg-maps/LICENSE +21 -0
  117. data/.claude/hooks/node_modules/resolve-pkg-maps/README.md +216 -0
  118. data/.claude/hooks/node_modules/resolve-pkg-maps/dist/index.cjs +1 -0
  119. data/.claude/hooks/node_modules/resolve-pkg-maps/dist/index.d.cts +11 -0
  120. data/.claude/hooks/node_modules/resolve-pkg-maps/dist/index.d.mts +11 -0
  121. data/.claude/hooks/node_modules/resolve-pkg-maps/dist/index.mjs +1 -0
  122. data/.claude/hooks/node_modules/resolve-pkg-maps/package.json +42 -0
  123. data/.claude/hooks/node_modules/tsx/LICENSE +21 -0
  124. data/.claude/hooks/node_modules/tsx/README.md +32 -0
  125. data/.claude/hooks/node_modules/tsx/dist/cjs/api/index.cjs +1 -0
  126. data/.claude/hooks/node_modules/tsx/dist/cjs/api/index.d.cts +35 -0
  127. data/.claude/hooks/node_modules/tsx/dist/cjs/api/index.d.mts +35 -0
  128. data/.claude/hooks/node_modules/tsx/dist/cjs/api/index.mjs +1 -0
  129. data/.claude/hooks/node_modules/tsx/dist/cjs/index.cjs +1 -0
  130. data/.claude/hooks/node_modules/tsx/dist/cjs/index.mjs +1 -0
  131. data/.claude/hooks/node_modules/tsx/dist/cli.cjs +54 -0
  132. data/.claude/hooks/node_modules/tsx/dist/cli.mjs +55 -0
  133. data/.claude/hooks/node_modules/tsx/dist/client-BQVF1NaW.mjs +1 -0
  134. data/.claude/hooks/node_modules/tsx/dist/client-D6NvIMSC.cjs +1 -0
  135. data/.claude/hooks/node_modules/tsx/dist/esm/api/index.cjs +1 -0
  136. data/.claude/hooks/node_modules/tsx/dist/esm/api/index.d.cts +35 -0
  137. data/.claude/hooks/node_modules/tsx/dist/esm/api/index.d.mts +35 -0
  138. data/.claude/hooks/node_modules/tsx/dist/esm/api/index.mjs +1 -0
  139. data/.claude/hooks/node_modules/tsx/dist/esm/index.cjs +2 -0
  140. data/.claude/hooks/node_modules/tsx/dist/esm/index.mjs +2 -0
  141. data/.claude/hooks/node_modules/tsx/dist/get-pipe-path-BHW2eJdv.mjs +1 -0
  142. data/.claude/hooks/node_modules/tsx/dist/get-pipe-path-BoR10qr8.cjs +1 -0
  143. data/.claude/hooks/node_modules/tsx/dist/index-7AaEi15b.mjs +14 -0
  144. data/.claude/hooks/node_modules/tsx/dist/index-BWFBUo6r.cjs +1 -0
  145. data/.claude/hooks/node_modules/tsx/dist/index-gbaejti9.mjs +1 -0
  146. data/.claude/hooks/node_modules/tsx/dist/index-gckBtVBf.cjs +14 -0
  147. data/.claude/hooks/node_modules/tsx/dist/lexer-DQCqS3nf.mjs +3 -0
  148. data/.claude/hooks/node_modules/tsx/dist/lexer-DgIbo0BU.cjs +3 -0
  149. data/.claude/hooks/node_modules/tsx/dist/loader.cjs +1 -0
  150. data/.claude/hooks/node_modules/tsx/dist/loader.mjs +1 -0
  151. data/.claude/hooks/node_modules/tsx/dist/node-features-_8ZFwP_x.mjs +1 -0
  152. data/.claude/hooks/node_modules/tsx/dist/node-features-roYmp9jK.cjs +1 -0
  153. data/.claude/hooks/node_modules/tsx/dist/package-CeBgXWuR.mjs +1 -0
  154. data/.claude/hooks/node_modules/tsx/dist/package-Dxt5kIHw.cjs +1 -0
  155. data/.claude/hooks/node_modules/tsx/dist/patch-repl.cjs +1 -0
  156. data/.claude/hooks/node_modules/tsx/dist/patch-repl.mjs +1 -0
  157. data/.claude/hooks/node_modules/tsx/dist/preflight.cjs +1 -0
  158. data/.claude/hooks/node_modules/tsx/dist/preflight.mjs +1 -0
  159. data/.claude/hooks/node_modules/tsx/dist/register-2sWVXuRQ.cjs +1 -0
  160. data/.claude/hooks/node_modules/tsx/dist/register-B7jrtLTO.mjs +1 -0
  161. data/.claude/hooks/node_modules/tsx/dist/register-CFH5oNdT.mjs +4 -0
  162. data/.claude/hooks/node_modules/tsx/dist/register-D46fvsV_.cjs +4 -0
  163. data/.claude/hooks/node_modules/tsx/dist/repl.cjs +3 -0
  164. data/.claude/hooks/node_modules/tsx/dist/repl.mjs +3 -0
  165. data/.claude/hooks/node_modules/tsx/dist/require-D4F1Lv60.cjs +1 -0
  166. data/.claude/hooks/node_modules/tsx/dist/require-DQxpCAr4.mjs +1 -0
  167. data/.claude/hooks/node_modules/tsx/dist/suppress-warnings.cjs +1 -0
  168. data/.claude/hooks/node_modules/tsx/dist/suppress-warnings.mjs +1 -0
  169. data/.claude/hooks/node_modules/tsx/dist/temporary-directory-B83uKxJF.cjs +1 -0
  170. data/.claude/hooks/node_modules/tsx/dist/temporary-directory-CwHp0_NW.mjs +1 -0
  171. data/.claude/hooks/node_modules/tsx/dist/types-Cxp8y2TL.d.ts +5 -0
  172. data/.claude/hooks/node_modules/tsx/package.json +68 -0
  173. data/.claude/hooks/node_modules/typescript/LICENSE.txt +55 -0
  174. data/.claude/hooks/node_modules/typescript/README.md +50 -0
  175. data/.claude/hooks/node_modules/typescript/SECURITY.md +41 -0
  176. data/.claude/hooks/node_modules/typescript/ThirdPartyNoticeText.txt +193 -0
  177. data/.claude/hooks/node_modules/typescript/bin/tsc +2 -0
  178. data/.claude/hooks/node_modules/typescript/bin/tsserver +2 -0
  179. data/.claude/hooks/node_modules/typescript/lib/_tsc.js +133818 -0
  180. data/.claude/hooks/node_modules/typescript/lib/_tsserver.js +659 -0
  181. data/.claude/hooks/node_modules/typescript/lib/_typingsInstaller.js +222 -0
  182. data/.claude/hooks/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +2122 -0
  183. data/.claude/hooks/node_modules/typescript/lib/de/diagnosticMessages.generated.json +2122 -0
  184. data/.claude/hooks/node_modules/typescript/lib/es/diagnosticMessages.generated.json +2122 -0
  185. data/.claude/hooks/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +2122 -0
  186. data/.claude/hooks/node_modules/typescript/lib/it/diagnosticMessages.generated.json +2122 -0
  187. data/.claude/hooks/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +2122 -0
  188. data/.claude/hooks/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +2122 -0
  189. data/.claude/hooks/node_modules/typescript/lib/lib.d.ts +22 -0
  190. data/.claude/hooks/node_modules/typescript/lib/lib.decorators.d.ts +384 -0
  191. data/.claude/hooks/node_modules/typescript/lib/lib.decorators.legacy.d.ts +22 -0
  192. data/.claude/hooks/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +41 -0
  193. data/.claude/hooks/node_modules/typescript/lib/lib.dom.d.ts +39429 -0
  194. data/.claude/hooks/node_modules/typescript/lib/lib.dom.iterable.d.ts +571 -0
  195. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.collection.d.ts +147 -0
  196. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.core.d.ts +597 -0
  197. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.d.ts +28 -0
  198. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.generator.d.ts +77 -0
  199. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.iterable.d.ts +605 -0
  200. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.promise.d.ts +81 -0
  201. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.proxy.d.ts +128 -0
  202. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.reflect.d.ts +144 -0
  203. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.symbol.d.ts +46 -0
  204. data/.claude/hooks/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +326 -0
  205. data/.claude/hooks/node_modules/typescript/lib/lib.es2016.array.include.d.ts +116 -0
  206. data/.claude/hooks/node_modules/typescript/lib/lib.es2016.d.ts +21 -0
  207. data/.claude/hooks/node_modules/typescript/lib/lib.es2016.full.d.ts +23 -0
  208. data/.claude/hooks/node_modules/typescript/lib/lib.es2016.intl.d.ts +31 -0
  209. data/.claude/hooks/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +21 -0
  210. data/.claude/hooks/node_modules/typescript/lib/lib.es2017.d.ts +26 -0
  211. data/.claude/hooks/node_modules/typescript/lib/lib.es2017.date.d.ts +31 -0
  212. data/.claude/hooks/node_modules/typescript/lib/lib.es2017.full.d.ts +23 -0
  213. data/.claude/hooks/node_modules/typescript/lib/lib.es2017.intl.d.ts +44 -0
  214. data/.claude/hooks/node_modules/typescript/lib/lib.es2017.object.d.ts +49 -0
  215. data/.claude/hooks/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +135 -0
  216. data/.claude/hooks/node_modules/typescript/lib/lib.es2017.string.d.ts +45 -0
  217. data/.claude/hooks/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +53 -0
  218. data/.claude/hooks/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +77 -0
  219. data/.claude/hooks/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +53 -0
  220. data/.claude/hooks/node_modules/typescript/lib/lib.es2018.d.ts +24 -0
  221. data/.claude/hooks/node_modules/typescript/lib/lib.es2018.full.d.ts +24 -0
  222. data/.claude/hooks/node_modules/typescript/lib/lib.es2018.intl.d.ts +83 -0
  223. data/.claude/hooks/node_modules/typescript/lib/lib.es2018.promise.d.ts +30 -0
  224. data/.claude/hooks/node_modules/typescript/lib/lib.es2018.regexp.d.ts +37 -0
  225. data/.claude/hooks/node_modules/typescript/lib/lib.es2019.array.d.ts +79 -0
  226. data/.claude/hooks/node_modules/typescript/lib/lib.es2019.d.ts +24 -0
  227. data/.claude/hooks/node_modules/typescript/lib/lib.es2019.full.d.ts +24 -0
  228. data/.claude/hooks/node_modules/typescript/lib/lib.es2019.intl.d.ts +23 -0
  229. data/.claude/hooks/node_modules/typescript/lib/lib.es2019.object.d.ts +33 -0
  230. data/.claude/hooks/node_modules/typescript/lib/lib.es2019.string.d.ts +37 -0
  231. data/.claude/hooks/node_modules/typescript/lib/lib.es2019.symbol.d.ts +24 -0
  232. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.bigint.d.ts +765 -0
  233. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.d.ts +27 -0
  234. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.date.d.ts +42 -0
  235. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.full.d.ts +24 -0
  236. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.intl.d.ts +474 -0
  237. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.number.d.ts +28 -0
  238. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.promise.d.ts +47 -0
  239. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +99 -0
  240. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.string.d.ts +44 -0
  241. data/.claude/hooks/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +41 -0
  242. data/.claude/hooks/node_modules/typescript/lib/lib.es2021.d.ts +23 -0
  243. data/.claude/hooks/node_modules/typescript/lib/lib.es2021.full.d.ts +24 -0
  244. data/.claude/hooks/node_modules/typescript/lib/lib.es2021.intl.d.ts +166 -0
  245. data/.claude/hooks/node_modules/typescript/lib/lib.es2021.promise.d.ts +48 -0
  246. data/.claude/hooks/node_modules/typescript/lib/lib.es2021.string.d.ts +33 -0
  247. data/.claude/hooks/node_modules/typescript/lib/lib.es2021.weakref.d.ts +78 -0
  248. data/.claude/hooks/node_modules/typescript/lib/lib.es2022.array.d.ts +121 -0
  249. data/.claude/hooks/node_modules/typescript/lib/lib.es2022.d.ts +25 -0
  250. data/.claude/hooks/node_modules/typescript/lib/lib.es2022.error.d.ts +75 -0
  251. data/.claude/hooks/node_modules/typescript/lib/lib.es2022.full.d.ts +24 -0
  252. data/.claude/hooks/node_modules/typescript/lib/lib.es2022.intl.d.ts +145 -0
  253. data/.claude/hooks/node_modules/typescript/lib/lib.es2022.object.d.ts +26 -0
  254. data/.claude/hooks/node_modules/typescript/lib/lib.es2022.regexp.d.ts +39 -0
  255. data/.claude/hooks/node_modules/typescript/lib/lib.es2022.string.d.ts +25 -0
  256. data/.claude/hooks/node_modules/typescript/lib/lib.es2023.array.d.ts +924 -0
  257. data/.claude/hooks/node_modules/typescript/lib/lib.es2023.collection.d.ts +21 -0
  258. data/.claude/hooks/node_modules/typescript/lib/lib.es2023.d.ts +22 -0
  259. data/.claude/hooks/node_modules/typescript/lib/lib.es2023.full.d.ts +24 -0
  260. data/.claude/hooks/node_modules/typescript/lib/lib.es2023.intl.d.ts +56 -0
  261. data/.claude/hooks/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +65 -0
  262. data/.claude/hooks/node_modules/typescript/lib/lib.es2024.collection.d.ts +29 -0
  263. data/.claude/hooks/node_modules/typescript/lib/lib.es2024.d.ts +26 -0
  264. data/.claude/hooks/node_modules/typescript/lib/lib.es2024.full.d.ts +24 -0
  265. data/.claude/hooks/node_modules/typescript/lib/lib.es2024.object.d.ts +29 -0
  266. data/.claude/hooks/node_modules/typescript/lib/lib.es2024.promise.d.ts +35 -0
  267. data/.claude/hooks/node_modules/typescript/lib/lib.es2024.regexp.d.ts +25 -0
  268. data/.claude/hooks/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +68 -0
  269. data/.claude/hooks/node_modules/typescript/lib/lib.es2024.string.d.ts +29 -0
  270. data/.claude/hooks/node_modules/typescript/lib/lib.es5.d.ts +4601 -0
  271. data/.claude/hooks/node_modules/typescript/lib/lib.es6.d.ts +23 -0
  272. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.array.d.ts +35 -0
  273. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.collection.d.ts +96 -0
  274. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.d.ts +29 -0
  275. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.decorators.d.ts +28 -0
  276. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.disposable.d.ts +193 -0
  277. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.error.d.ts +24 -0
  278. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.float16.d.ts +445 -0
  279. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.full.d.ts +24 -0
  280. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.intl.d.ts +21 -0
  281. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.iterator.d.ts +148 -0
  282. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.promise.d.ts +34 -0
  283. data/.claude/hooks/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +25 -0
  284. data/.claude/hooks/node_modules/typescript/lib/lib.scripthost.d.ts +322 -0
  285. data/.claude/hooks/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +41 -0
  286. data/.claude/hooks/node_modules/typescript/lib/lib.webworker.d.ts +13150 -0
  287. data/.claude/hooks/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +23 -0
  288. data/.claude/hooks/node_modules/typescript/lib/lib.webworker.iterable.d.ts +340 -0
  289. data/.claude/hooks/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +2122 -0
  290. data/.claude/hooks/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +2122 -0
  291. data/.claude/hooks/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +2122 -0
  292. data/.claude/hooks/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +2122 -0
  293. data/.claude/hooks/node_modules/typescript/lib/tsc.js +8 -0
  294. data/.claude/hooks/node_modules/typescript/lib/tsserver.js +8 -0
  295. data/.claude/hooks/node_modules/typescript/lib/tsserverlibrary.d.ts +17 -0
  296. data/.claude/hooks/node_modules/typescript/lib/tsserverlibrary.js +21 -0
  297. data/.claude/hooks/node_modules/typescript/lib/typesMap.json +497 -0
  298. data/.claude/hooks/node_modules/typescript/lib/typescript.d.ts +11437 -0
  299. data/.claude/hooks/node_modules/typescript/lib/typescript.js +200276 -0
  300. data/.claude/hooks/node_modules/typescript/lib/typingsInstaller.js +8 -0
  301. data/.claude/hooks/node_modules/typescript/lib/watchGuard.js +53 -0
  302. data/.claude/hooks/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +2122 -0
  303. data/.claude/hooks/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +2122 -0
  304. data/.claude/hooks/node_modules/typescript/package.json +120 -0
  305. data/.claude/hooks/node_modules/undici-types/LICENSE +21 -0
  306. data/.claude/hooks/node_modules/undici-types/README.md +6 -0
  307. data/.claude/hooks/node_modules/undici-types/agent.d.ts +32 -0
  308. data/.claude/hooks/node_modules/undici-types/api.d.ts +43 -0
  309. data/.claude/hooks/node_modules/undici-types/balanced-pool.d.ts +29 -0
  310. data/.claude/hooks/node_modules/undici-types/cache-interceptor.d.ts +172 -0
  311. data/.claude/hooks/node_modules/undici-types/cache.d.ts +36 -0
  312. data/.claude/hooks/node_modules/undici-types/client-stats.d.ts +15 -0
  313. data/.claude/hooks/node_modules/undici-types/client.d.ts +108 -0
  314. data/.claude/hooks/node_modules/undici-types/connector.d.ts +34 -0
  315. data/.claude/hooks/node_modules/undici-types/content-type.d.ts +21 -0
  316. data/.claude/hooks/node_modules/undici-types/cookies.d.ts +30 -0
  317. data/.claude/hooks/node_modules/undici-types/diagnostics-channel.d.ts +74 -0
  318. data/.claude/hooks/node_modules/undici-types/dispatcher.d.ts +276 -0
  319. data/.claude/hooks/node_modules/undici-types/env-http-proxy-agent.d.ts +22 -0
  320. data/.claude/hooks/node_modules/undici-types/errors.d.ts +161 -0
  321. data/.claude/hooks/node_modules/undici-types/eventsource.d.ts +66 -0
  322. data/.claude/hooks/node_modules/undici-types/fetch.d.ts +211 -0
  323. data/.claude/hooks/node_modules/undici-types/formdata.d.ts +108 -0
  324. data/.claude/hooks/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  325. data/.claude/hooks/node_modules/undici-types/global-origin.d.ts +7 -0
  326. data/.claude/hooks/node_modules/undici-types/h2c-client.d.ts +73 -0
  327. data/.claude/hooks/node_modules/undici-types/handlers.d.ts +15 -0
  328. data/.claude/hooks/node_modules/undici-types/header.d.ts +160 -0
  329. data/.claude/hooks/node_modules/undici-types/index.d.ts +80 -0
  330. data/.claude/hooks/node_modules/undici-types/interceptors.d.ts +39 -0
  331. data/.claude/hooks/node_modules/undici-types/mock-agent.d.ts +68 -0
  332. data/.claude/hooks/node_modules/undici-types/mock-call-history.d.ts +111 -0
  333. data/.claude/hooks/node_modules/undici-types/mock-client.d.ts +27 -0
  334. data/.claude/hooks/node_modules/undici-types/mock-errors.d.ts +12 -0
  335. data/.claude/hooks/node_modules/undici-types/mock-interceptor.d.ts +94 -0
  336. data/.claude/hooks/node_modules/undici-types/mock-pool.d.ts +27 -0
  337. data/.claude/hooks/node_modules/undici-types/package.json +55 -0
  338. data/.claude/hooks/node_modules/undici-types/patch.d.ts +29 -0
  339. data/.claude/hooks/node_modules/undici-types/pool-stats.d.ts +19 -0
  340. data/.claude/hooks/node_modules/undici-types/pool.d.ts +41 -0
  341. data/.claude/hooks/node_modules/undici-types/proxy-agent.d.ts +29 -0
  342. data/.claude/hooks/node_modules/undici-types/readable.d.ts +68 -0
  343. data/.claude/hooks/node_modules/undici-types/retry-agent.d.ts +8 -0
  344. data/.claude/hooks/node_modules/undici-types/retry-handler.d.ts +125 -0
  345. data/.claude/hooks/node_modules/undici-types/snapshot-agent.d.ts +109 -0
  346. data/.claude/hooks/node_modules/undici-types/util.d.ts +18 -0
  347. data/.claude/hooks/node_modules/undici-types/utility.d.ts +7 -0
  348. data/.claude/hooks/node_modules/undici-types/webidl.d.ts +341 -0
  349. data/.claude/hooks/node_modules/undici-types/websocket.d.ts +186 -0
  350. data/.claude/hooks/package-lock.json +562 -0
  351. data/.claude/hooks/package.json +19 -0
  352. data/.claude/hooks/skill-activation-prompt.sh +11 -0
  353. data/.claude/hooks/skill-activation-prompt.ts +185 -0
  354. data/.claude/hooks/tsconfig.json +12 -0
  355. data/.claude/settings.json +33 -0
  356. data/.claude/skills/README.md +29 -0
  357. data/.claude/skills/ruby-gem-development/SKILL.md +293 -0
  358. data/.claude/skills/skill-rules.json +117 -0
  359. data/.claude/skills/thor-cli-development/SKILL.md +431 -0
  360. data/CHANGELOG.md +7 -0
  361. data/Gemfile.lock +3 -1
  362. data/completions/{_aictl → _langop} +37 -37
  363. data/completions/{aictl.bash → langop.bash} +16 -16
  364. data/completions/langop.fish +114 -0
  365. data/components/agent/Gemfile +1 -1
  366. data/components/tool/Gemfile +1 -1
  367. data/docs/README.md +10 -10
  368. data/docs/agent-internals.md +1 -1
  369. data/docs/cheat-sheet.md +76 -76
  370. data/docs/cli-reference.md +71 -71
  371. data/docs/how-agents-work.md +1 -1
  372. data/docs/installation.md +30 -30
  373. data/docs/quickstart.md +30 -30
  374. data/docs/using-tools.md +11 -11
  375. data/docs/webhooks.md +6 -6
  376. data/examples/ux_helpers_demo.rb +4 -4
  377. data/lib/language_operator/agent/task_executor.rb +0 -37
  378. data/lib/language_operator/agent/web_server.rb +311 -323
  379. data/lib/language_operator/cli/commands/agent/base.rb +16 -15
  380. data/lib/language_operator/cli/commands/agent/code_operations.rb +6 -6
  381. data/lib/language_operator/cli/commands/agent/helpers/synthesis_watcher.rb +1 -1
  382. data/lib/language_operator/cli/commands/agent/lifecycle.rb +2 -2
  383. data/lib/language_operator/cli/commands/agent/logs.rb +2 -2
  384. data/lib/language_operator/cli/commands/agent/workspace.rb +8 -8
  385. data/lib/language_operator/cli/commands/cluster.rb +172 -158
  386. data/lib/language_operator/cli/commands/install.rb +878 -81
  387. data/lib/language_operator/cli/commands/model/base.rb +7 -6
  388. data/lib/language_operator/cli/commands/organization.rb +61 -0
  389. data/lib/language_operator/cli/commands/persona.rb +10 -8
  390. data/lib/language_operator/cli/commands/status.rb +83 -13
  391. data/lib/language_operator/cli/commands/system/exec.rb +10 -10
  392. data/lib/language_operator/cli/commands/system/schema.rb +6 -6
  393. data/lib/language_operator/cli/commands/system/synthesis_template.rb +6 -6
  394. data/lib/language_operator/cli/commands/system/synthesize.rb +14 -14
  395. data/lib/language_operator/cli/commands/system/validate_template.rb +4 -4
  396. data/lib/language_operator/cli/commands/tool/base.rb +1 -1
  397. data/lib/language_operator/cli/commands/tool/install.rb +2 -2
  398. data/lib/language_operator/cli/commands/tool/search.rb +3 -3
  399. data/lib/language_operator/cli/commands/ui.rb +173 -0
  400. data/lib/language_operator/cli/commands/use.rb +80 -9
  401. data/lib/language_operator/cli/errors/suggestions.rb +21 -21
  402. data/lib/language_operator/cli/formatters/progress_formatter.rb +2 -1
  403. data/lib/language_operator/cli/formatters/table_formatter.rb +21 -1
  404. data/lib/language_operator/cli/helpers/cluster_validator.rb +2 -2
  405. data/lib/language_operator/cli/helpers/health_checker.rb +263 -0
  406. data/lib/language_operator/cli/helpers/kubeconfig_validator.rb +3 -3
  407. data/lib/language_operator/cli/helpers/ux_helper.rb +4 -3
  408. data/lib/language_operator/cli/main.rb +30 -21
  409. data/lib/language_operator/cli/wizards/model_wizard.rb +7 -5
  410. data/lib/language_operator/config/cluster_config.rb +3 -3
  411. data/lib/language_operator/constants/kubernetes_labels.rb +1 -1
  412. data/lib/language_operator/kubernetes/client.rb +53 -109
  413. data/lib/language_operator/kubernetes/resource_builder.rb +46 -14
  414. data/lib/language_operator/templates/schema/agent_dsl_openapi.yaml +1 -1
  415. data/lib/language_operator/templates/schema/agent_dsl_schema.json +1 -1
  416. data/lib/language_operator/utils/org_context.rb +100 -0
  417. data/lib/language_operator/version.rb +1 -1
  418. data/synth/001/Makefile +1 -1
  419. data/synth/002/Makefile +1 -1
  420. data/synth/003/Makefile +1 -1
  421. data/synth/004/Makefile +1 -1
  422. metadata +384 -11
  423. data/completions/aictl.fish +0 -114
  424. data/lib/language_operator/agent/event_config.rb +0 -172
  425. data/lib/language_operator/cli/commands/quickstart.rb +0 -22
  426. data/lib/language_operator/cli/wizards/quickstart_wizard.rb +0 -561
  427. /data/bin/{aictl → langop} +0 -0
@@ -0,0 +1,415 @@
1
+ /**
2
+ * The `node:repl` module provides a Read-Eval-Print-Loop (REPL) implementation
3
+ * that is available both as a standalone program or includible in other
4
+ * applications. It can be accessed using:
5
+ *
6
+ * ```js
7
+ * import repl from 'node:repl';
8
+ * ```
9
+ * @see [source](https://github.com/nodejs/node/blob/v25.x/lib/repl.js)
10
+ */
11
+ declare module "node:repl" {
12
+ import { AsyncCompleter, Completer, Interface, InterfaceEventMap } from "node:readline";
13
+ import { InspectOptions } from "node:util";
14
+ import { Context } from "node:vm";
15
+ interface ReplOptions {
16
+ /**
17
+ * The input prompt to display.
18
+ * @default "> "
19
+ */
20
+ prompt?: string | undefined;
21
+ /**
22
+ * The `Readable` stream from which REPL input will be read.
23
+ * @default process.stdin
24
+ */
25
+ input?: NodeJS.ReadableStream | undefined;
26
+ /**
27
+ * The `Writable` stream to which REPL output will be written.
28
+ * @default process.stdout
29
+ */
30
+ output?: NodeJS.WritableStream | undefined;
31
+ /**
32
+ * If `true`, specifies that the output should be treated as a TTY terminal, and have
33
+ * ANSI/VT100 escape codes written to it.
34
+ * Default: checking the value of the `isTTY` property on the output stream upon
35
+ * instantiation.
36
+ */
37
+ terminal?: boolean | undefined;
38
+ /**
39
+ * The function to be used when evaluating each given line of input.
40
+ * **Default:** an async wrapper for the JavaScript `eval()` function. An `eval` function can
41
+ * error with `repl.Recoverable` to indicate the input was incomplete and prompt for
42
+ * additional lines. See the [custom evaluation functions](https://nodejs.org/dist/latest-v25.x/docs/api/repl.html#custom-evaluation-functions)
43
+ * section for more details.
44
+ */
45
+ eval?: REPLEval | undefined;
46
+ /**
47
+ * Defines if the repl prints output previews or not.
48
+ * @default `true` Always `false` in case `terminal` is falsy.
49
+ */
50
+ preview?: boolean | undefined;
51
+ /**
52
+ * If `true`, specifies that the default `writer` function should include ANSI color
53
+ * styling to REPL output. If a custom `writer` function is provided then this has no
54
+ * effect.
55
+ * @default the REPL instance's `terminal` value
56
+ */
57
+ useColors?: boolean | undefined;
58
+ /**
59
+ * If `true`, specifies that the default evaluation function will use the JavaScript
60
+ * `global` as the context as opposed to creating a new separate context for the REPL
61
+ * instance. The node CLI REPL sets this value to `true`.
62
+ * @default false
63
+ */
64
+ useGlobal?: boolean | undefined;
65
+ /**
66
+ * If `true`, specifies that the default writer will not output the return value of a
67
+ * command if it evaluates to `undefined`.
68
+ * @default false
69
+ */
70
+ ignoreUndefined?: boolean | undefined;
71
+ /**
72
+ * The function to invoke to format the output of each command before writing to `output`.
73
+ * @default a wrapper for `util.inspect`
74
+ *
75
+ * @see https://nodejs.org/dist/latest-v25.x/docs/api/repl.html#repl_customizing_repl_output
76
+ */
77
+ writer?: REPLWriter | undefined;
78
+ /**
79
+ * An optional function used for custom Tab auto completion.
80
+ *
81
+ * @see https://nodejs.org/dist/latest-v25.x/docs/api/readline.html#readline_use_of_the_completer_function
82
+ */
83
+ completer?: Completer | AsyncCompleter | undefined;
84
+ /**
85
+ * A flag that specifies whether the default evaluator executes all JavaScript commands in
86
+ * strict mode or default (sloppy) mode.
87
+ * Accepted values are:
88
+ * - `repl.REPL_MODE_SLOPPY` - evaluates expressions in sloppy mode.
89
+ * - `repl.REPL_MODE_STRICT` - evaluates expressions in strict mode. This is equivalent to
90
+ * prefacing every repl statement with `'use strict'`.
91
+ */
92
+ replMode?: typeof REPL_MODE_SLOPPY | typeof REPL_MODE_STRICT | undefined;
93
+ /**
94
+ * Stop evaluating the current piece of code when `SIGINT` is received, i.e. `Ctrl+C` is
95
+ * pressed. This cannot be used together with a custom `eval` function.
96
+ * @default false
97
+ */
98
+ breakEvalOnSigint?: boolean | undefined;
99
+ }
100
+ type REPLEval = (
101
+ this: REPLServer,
102
+ evalCmd: string,
103
+ context: Context,
104
+ file: string,
105
+ cb: (err: Error | null, result: any) => void,
106
+ ) => void;
107
+ type REPLWriter = (this: REPLServer, obj: any) => string;
108
+ /**
109
+ * This is the default "writer" value, if none is passed in the REPL options,
110
+ * and it can be overridden by custom print functions.
111
+ */
112
+ const writer: REPLWriter & {
113
+ options: InspectOptions;
114
+ };
115
+ type REPLCommandAction = (this: REPLServer, text: string) => void;
116
+ interface REPLCommand {
117
+ /**
118
+ * Help text to be displayed when `.help` is entered.
119
+ */
120
+ help?: string | undefined;
121
+ /**
122
+ * The function to execute, optionally accepting a single string argument.
123
+ */
124
+ action: REPLCommandAction;
125
+ }
126
+ interface REPLServerSetupHistoryOptions {
127
+ filePath?: string | undefined;
128
+ size?: number | undefined;
129
+ removeHistoryDuplicates?: boolean | undefined;
130
+ onHistoryFileLoaded?: ((err: Error | null, repl: REPLServer) => void) | undefined;
131
+ }
132
+ interface REPLServerEventMap extends InterfaceEventMap {
133
+ "exit": [];
134
+ "reset": [context: Context];
135
+ }
136
+ /**
137
+ * Instances of `repl.REPLServer` are created using the {@link start} method
138
+ * or directly using the JavaScript `new` keyword.
139
+ *
140
+ * ```js
141
+ * import repl from 'node:repl';
142
+ *
143
+ * const options = { useColors: true };
144
+ *
145
+ * const firstInstance = repl.start(options);
146
+ * const secondInstance = new repl.REPLServer(options);
147
+ * ```
148
+ * @since v0.1.91
149
+ */
150
+ class REPLServer extends Interface {
151
+ /**
152
+ * NOTE: According to the documentation:
153
+ *
154
+ * > Instances of `repl.REPLServer` are created using the `repl.start()` method and
155
+ * > _should not_ be created directly using the JavaScript `new` keyword.
156
+ *
157
+ * `REPLServer` cannot be subclassed due to implementation specifics in NodeJS.
158
+ *
159
+ * @see https://nodejs.org/dist/latest-v25.x/docs/api/repl.html#repl_class_replserver
160
+ */
161
+ private constructor();
162
+ /**
163
+ * The `vm.Context` provided to the `eval` function to be used for JavaScript
164
+ * evaluation.
165
+ */
166
+ readonly context: Context;
167
+ /**
168
+ * @deprecated since v14.3.0 - Use `input` instead.
169
+ */
170
+ readonly inputStream: NodeJS.ReadableStream;
171
+ /**
172
+ * @deprecated since v14.3.0 - Use `output` instead.
173
+ */
174
+ readonly outputStream: NodeJS.WritableStream;
175
+ /**
176
+ * The `Readable` stream from which REPL input will be read.
177
+ */
178
+ readonly input: NodeJS.ReadableStream;
179
+ /**
180
+ * The `Writable` stream to which REPL output will be written.
181
+ */
182
+ readonly output: NodeJS.WritableStream;
183
+ /**
184
+ * The commands registered via `replServer.defineCommand()`.
185
+ */
186
+ readonly commands: NodeJS.ReadOnlyDict<REPLCommand>;
187
+ /**
188
+ * A value indicating whether the REPL is currently in "editor mode".
189
+ *
190
+ * @see https://nodejs.org/dist/latest-v25.x/docs/api/repl.html#repl_commands_and_special_keys
191
+ */
192
+ readonly editorMode: boolean;
193
+ /**
194
+ * A value indicating whether the `_` variable has been assigned.
195
+ *
196
+ * @see https://nodejs.org/dist/latest-v25.x/docs/api/repl.html#repl_assignment_of_the_underscore_variable
197
+ */
198
+ readonly underscoreAssigned: boolean;
199
+ /**
200
+ * The last evaluation result from the REPL (assigned to the `_` variable inside of the REPL).
201
+ *
202
+ * @see https://nodejs.org/dist/latest-v25.x/docs/api/repl.html#repl_assignment_of_the_underscore_variable
203
+ */
204
+ readonly last: any;
205
+ /**
206
+ * A value indicating whether the `_error` variable has been assigned.
207
+ *
208
+ * @since v9.8.0
209
+ * @see https://nodejs.org/dist/latest-v25.x/docs/api/repl.html#repl_assignment_of_the_underscore_variable
210
+ */
211
+ readonly underscoreErrAssigned: boolean;
212
+ /**
213
+ * The last error raised inside the REPL (assigned to the `_error` variable inside of the REPL).
214
+ *
215
+ * @since v9.8.0
216
+ * @see https://nodejs.org/dist/latest-v25.x/docs/api/repl.html#repl_assignment_of_the_underscore_variable
217
+ */
218
+ readonly lastError: any;
219
+ /**
220
+ * Specified in the REPL options, this is the function to be used when evaluating each
221
+ * given line of input. If not specified in the REPL options, this is an async wrapper
222
+ * for the JavaScript `eval()` function.
223
+ */
224
+ readonly eval: REPLEval;
225
+ /**
226
+ * Specified in the REPL options, this is a value indicating whether the default
227
+ * `writer` function should include ANSI color styling to REPL output.
228
+ */
229
+ readonly useColors: boolean;
230
+ /**
231
+ * Specified in the REPL options, this is a value indicating whether the default `eval`
232
+ * function will use the JavaScript `global` as the context as opposed to creating a new
233
+ * separate context for the REPL instance.
234
+ */
235
+ readonly useGlobal: boolean;
236
+ /**
237
+ * Specified in the REPL options, this is a value indicating whether the default `writer`
238
+ * function should output the result of a command if it evaluates to `undefined`.
239
+ */
240
+ readonly ignoreUndefined: boolean;
241
+ /**
242
+ * Specified in the REPL options, this is the function to invoke to format the output of
243
+ * each command before writing to `outputStream`. If not specified in the REPL options,
244
+ * this will be a wrapper for `util.inspect`.
245
+ */
246
+ readonly writer: REPLWriter;
247
+ /**
248
+ * Specified in the REPL options, this is the function to use for custom Tab auto-completion.
249
+ */
250
+ readonly completer: Completer | AsyncCompleter;
251
+ /**
252
+ * Specified in the REPL options, this is a flag that specifies whether the default `eval`
253
+ * function should execute all JavaScript commands in strict mode or default (sloppy) mode.
254
+ * Possible values are:
255
+ * - `repl.REPL_MODE_SLOPPY` - evaluates expressions in sloppy mode.
256
+ * - `repl.REPL_MODE_STRICT` - evaluates expressions in strict mode. This is equivalent to
257
+ * prefacing every repl statement with `'use strict'`.
258
+ */
259
+ readonly replMode: typeof REPL_MODE_SLOPPY | typeof REPL_MODE_STRICT;
260
+ /**
261
+ * The `replServer.defineCommand()` method is used to add new `.`\-prefixed commands
262
+ * to the REPL instance. Such commands are invoked by typing a `.` followed by the `keyword`. The `cmd` is either a `Function` or an `Object` with the following
263
+ * properties:
264
+ *
265
+ * The following example shows two new commands added to the REPL instance:
266
+ *
267
+ * ```js
268
+ * import repl from 'node:repl';
269
+ *
270
+ * const replServer = repl.start({ prompt: '> ' });
271
+ * replServer.defineCommand('sayhello', {
272
+ * help: 'Say hello',
273
+ * action(name) {
274
+ * this.clearBufferedCommand();
275
+ * console.log(`Hello, ${name}!`);
276
+ * this.displayPrompt();
277
+ * },
278
+ * });
279
+ * replServer.defineCommand('saybye', function saybye() {
280
+ * console.log('Goodbye!');
281
+ * this.close();
282
+ * });
283
+ * ```
284
+ *
285
+ * The new commands can then be used from within the REPL instance:
286
+ *
287
+ * ```console
288
+ * > .sayhello Node.js User
289
+ * Hello, Node.js User!
290
+ * > .saybye
291
+ * Goodbye!
292
+ * ```
293
+ * @since v0.3.0
294
+ * @param keyword The command keyword (_without_ a leading `.` character).
295
+ * @param cmd The function to invoke when the command is processed.
296
+ */
297
+ defineCommand(keyword: string, cmd: REPLCommandAction | REPLCommand): void;
298
+ /**
299
+ * The `replServer.displayPrompt()` method readies the REPL instance for input
300
+ * from the user, printing the configured `prompt` to a new line in the `output` and resuming the `input` to accept new input.
301
+ *
302
+ * When multi-line input is being entered, a pipe `'|'` is printed rather than the
303
+ * 'prompt'.
304
+ *
305
+ * When `preserveCursor` is `true`, the cursor placement will not be reset to `0`.
306
+ *
307
+ * The `replServer.displayPrompt` method is primarily intended to be called from
308
+ * within the action function for commands registered using the `replServer.defineCommand()` method.
309
+ * @since v0.1.91
310
+ */
311
+ displayPrompt(preserveCursor?: boolean): void;
312
+ /**
313
+ * The `replServer.clearBufferedCommand()` method clears any command that has been
314
+ * buffered but not yet executed. This method is primarily intended to be
315
+ * called from within the action function for commands registered using the `replServer.defineCommand()` method.
316
+ * @since v9.0.0
317
+ */
318
+ clearBufferedCommand(): void;
319
+ /**
320
+ * Initializes a history log file for the REPL instance. When executing the
321
+ * Node.js binary and using the command-line REPL, a history file is initialized
322
+ * by default. However, this is not the case when creating a REPL
323
+ * programmatically. Use this method to initialize a history log file when working
324
+ * with REPL instances programmatically.
325
+ * @since v11.10.0
326
+ * @param historyPath the path to the history file
327
+ * @param callback called when history writes are ready or upon error
328
+ */
329
+ setupHistory(historyPath: string, callback: (err: Error | null, repl: this) => void): void;
330
+ setupHistory(
331
+ historyConfig?: REPLServerSetupHistoryOptions,
332
+ callback?: (err: Error | null, repl: this) => void,
333
+ ): void;
334
+ // #region InternalEventEmitter
335
+ addListener<E extends keyof REPLServerEventMap>(
336
+ eventName: E,
337
+ listener: (...args: REPLServerEventMap[E]) => void,
338
+ ): this;
339
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
340
+ emit<E extends keyof REPLServerEventMap>(eventName: E, ...args: REPLServerEventMap[E]): boolean;
341
+ emit(eventName: string | symbol, ...args: any[]): boolean;
342
+ listenerCount<E extends keyof REPLServerEventMap>(
343
+ eventName: E,
344
+ listener?: (...args: REPLServerEventMap[E]) => void,
345
+ ): number;
346
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
347
+ listeners<E extends keyof REPLServerEventMap>(eventName: E): ((...args: REPLServerEventMap[E]) => void)[];
348
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
349
+ off<E extends keyof REPLServerEventMap>(eventName: E, listener: (...args: REPLServerEventMap[E]) => void): this;
350
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
351
+ on<E extends keyof REPLServerEventMap>(eventName: E, listener: (...args: REPLServerEventMap[E]) => void): this;
352
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
353
+ once<E extends keyof REPLServerEventMap>(
354
+ eventName: E,
355
+ listener: (...args: REPLServerEventMap[E]) => void,
356
+ ): this;
357
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
358
+ prependListener<E extends keyof REPLServerEventMap>(
359
+ eventName: E,
360
+ listener: (...args: REPLServerEventMap[E]) => void,
361
+ ): this;
362
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
363
+ prependOnceListener<E extends keyof REPLServerEventMap>(
364
+ eventName: E,
365
+ listener: (...args: REPLServerEventMap[E]) => void,
366
+ ): this;
367
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
368
+ rawListeners<E extends keyof REPLServerEventMap>(eventName: E): ((...args: REPLServerEventMap[E]) => void)[];
369
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
370
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
371
+ removeAllListeners<E extends keyof REPLServerEventMap>(eventName?: E): this;
372
+ removeAllListeners(eventName?: string | symbol): this;
373
+ removeListener<E extends keyof REPLServerEventMap>(
374
+ eventName: E,
375
+ listener: (...args: REPLServerEventMap[E]) => void,
376
+ ): this;
377
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
378
+ // #endregion
379
+ }
380
+ /**
381
+ * A flag passed in the REPL options. Evaluates expressions in sloppy mode.
382
+ */
383
+ const REPL_MODE_SLOPPY: unique symbol;
384
+ /**
385
+ * A flag passed in the REPL options. Evaluates expressions in strict mode.
386
+ * This is equivalent to prefacing every repl statement with `'use strict'`.
387
+ */
388
+ const REPL_MODE_STRICT: unique symbol;
389
+ /**
390
+ * The `repl.start()` method creates and starts a {@link REPLServer} instance.
391
+ *
392
+ * If `options` is a string, then it specifies the input prompt:
393
+ *
394
+ * ```js
395
+ * import repl from 'node:repl';
396
+ *
397
+ * // a Unix style prompt
398
+ * repl.start('$ ');
399
+ * ```
400
+ * @since v0.1.91
401
+ */
402
+ function start(options?: string | ReplOptions): REPLServer;
403
+ /**
404
+ * Indicates a recoverable error that a `REPLServer` can use to support multi-line input.
405
+ *
406
+ * @see https://nodejs.org/dist/latest-v25.x/docs/api/repl.html#repl_recoverable_errors
407
+ */
408
+ class Recoverable extends SyntaxError {
409
+ err: Error;
410
+ constructor(err: Error);
411
+ }
412
+ }
413
+ declare module "repl" {
414
+ export * from "node:repl";
415
+ }
@@ -0,0 +1,162 @@
1
+ /**
2
+ * This feature allows the distribution of a Node.js application conveniently to a
3
+ * system that does not have Node.js installed.
4
+ *
5
+ * Node.js supports the creation of [single executable applications](https://github.com/nodejs/single-executable) by allowing
6
+ * the injection of a blob prepared by Node.js, which can contain a bundled script,
7
+ * into the `node` binary. During start up, the program checks if anything has been
8
+ * injected. If the blob is found, it executes the script in the blob. Otherwise
9
+ * Node.js operates as it normally does.
10
+ *
11
+ * The single executable application feature currently only supports running a
12
+ * single embedded script using the `CommonJS` module system.
13
+ *
14
+ * Users can create a single executable application from their bundled script
15
+ * with the `node` binary itself and any tool which can inject resources into the
16
+ * binary.
17
+ *
18
+ * Here are the steps for creating a single executable application using one such
19
+ * tool, [postject](https://github.com/nodejs/postject):
20
+ *
21
+ * 1. Create a JavaScript file:
22
+ * ```bash
23
+ * echo 'console.log(`Hello, ${process.argv[2]}!`);' > hello.js
24
+ * ```
25
+ * 2. Create a configuration file building a blob that can be injected into the
26
+ * single executable application (see `Generating single executable preparation blobs` for details):
27
+ * ```bash
28
+ * echo '{ "main": "hello.js", "output": "sea-prep.blob" }' > sea-config.json
29
+ * ```
30
+ * 3. Generate the blob to be injected:
31
+ * ```bash
32
+ * node --experimental-sea-config sea-config.json
33
+ * ```
34
+ * 4. Create a copy of the `node` executable and name it according to your needs:
35
+ * * On systems other than Windows:
36
+ * ```bash
37
+ * cp $(command -v node) hello
38
+ * ```
39
+ * * On Windows:
40
+ * ```text
41
+ * node -e "require('fs').copyFileSync(process.execPath, 'hello.exe')"
42
+ * ```
43
+ * The `.exe` extension is necessary.
44
+ * 5. Remove the signature of the binary (macOS and Windows only):
45
+ * * On macOS:
46
+ * ```bash
47
+ * codesign --remove-signature hello
48
+ * ```
49
+ * * On Windows (optional):
50
+ * [signtool](https://learn.microsoft.com/en-us/windows/win32/seccrypto/signtool) can be used from the installed [Windows SDK](https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/).
51
+ * If this step is
52
+ * skipped, ignore any signature-related warning from postject.
53
+ * ```powershell
54
+ * signtool remove /s hello.exe
55
+ * ```
56
+ * 6. Inject the blob into the copied binary by running `postject` with
57
+ * the following options:
58
+ * * `hello` / `hello.exe` \- The name of the copy of the `node` executable
59
+ * created in step 4.
60
+ * * `NODE_SEA_BLOB` \- The name of the resource / note / section in the binary
61
+ * where the contents of the blob will be stored.
62
+ * * `sea-prep.blob` \- The name of the blob created in step 1.
63
+ * * `--sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2` \- The [fuse](https://www.electronjs.org/docs/latest/tutorial/fuses) used by the Node.js project to detect if a file has been
64
+ * injected.
65
+ * * `--macho-segment-name NODE_SEA` (only needed on macOS) - The name of the
66
+ * segment in the binary where the contents of the blob will be
67
+ * stored.
68
+ * To summarize, here is the required command for each platform:
69
+ * * On Linux:
70
+ * ```bash
71
+ * npx postject hello NODE_SEA_BLOB sea-prep.blob \
72
+ * --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2
73
+ * ```
74
+ * * On Windows - PowerShell:
75
+ * ```powershell
76
+ * npx postject hello.exe NODE_SEA_BLOB sea-prep.blob `
77
+ * --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2
78
+ * ```
79
+ * * On Windows - Command Prompt:
80
+ * ```text
81
+ * npx postject hello.exe NODE_SEA_BLOB sea-prep.blob ^
82
+ * --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2
83
+ * ```
84
+ * * On macOS:
85
+ * ```bash
86
+ * npx postject hello NODE_SEA_BLOB sea-prep.blob \
87
+ * --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2 \
88
+ * --macho-segment-name NODE_SEA
89
+ * ```
90
+ * 7. Sign the binary (macOS and Windows only):
91
+ * * On macOS:
92
+ * ```bash
93
+ * codesign --sign - hello
94
+ * ```
95
+ * * On Windows (optional):
96
+ * A certificate needs to be present for this to work. However, the unsigned
97
+ * binary would still be runnable.
98
+ * ```powershell
99
+ * signtool sign /fd SHA256 hello.exe
100
+ * ```
101
+ * 8. Run the binary:
102
+ * * On systems other than Windows
103
+ * ```console
104
+ * $ ./hello world
105
+ * Hello, world!
106
+ * ```
107
+ * * On Windows
108
+ * ```console
109
+ * $ .\hello.exe world
110
+ * Hello, world!
111
+ * ```
112
+ * @since v19.7.0, v18.16.0
113
+ * @experimental
114
+ * @see [source](https://github.com/nodejs/node/blob/v25.x/src/node_sea.cc)
115
+ */
116
+ declare module "node:sea" {
117
+ type AssetKey = string;
118
+ /**
119
+ * @since v20.12.0
120
+ * @return Whether this script is running inside a single-executable application.
121
+ */
122
+ function isSea(): boolean;
123
+ /**
124
+ * This method can be used to retrieve the assets configured to be bundled into the
125
+ * single-executable application at build time.
126
+ * An error is thrown when no matching asset can be found.
127
+ * @since v20.12.0
128
+ */
129
+ function getAsset(key: AssetKey): ArrayBuffer;
130
+ function getAsset(key: AssetKey, encoding: string): string;
131
+ /**
132
+ * Similar to `sea.getAsset()`, but returns the result in a [`Blob`](https://developer.mozilla.org/en-US/docs/Web/API/Blob).
133
+ * An error is thrown when no matching asset can be found.
134
+ * @since v20.12.0
135
+ */
136
+ function getAssetAsBlob(key: AssetKey, options?: {
137
+ type: string;
138
+ }): Blob;
139
+ /**
140
+ * This method can be used to retrieve the assets configured to be bundled into the
141
+ * single-executable application at build time.
142
+ * An error is thrown when no matching asset can be found.
143
+ *
144
+ * Unlike `sea.getRawAsset()` or `sea.getAssetAsBlob()`, this method does not
145
+ * return a copy. Instead, it returns the raw asset bundled inside the executable.
146
+ *
147
+ * For now, users should avoid writing to the returned array buffer. If the
148
+ * injected section is not marked as writable or not aligned properly,
149
+ * writes to the returned array buffer is likely to result in a crash.
150
+ * @since v20.12.0
151
+ */
152
+ function getRawAsset(key: AssetKey): ArrayBuffer;
153
+ /**
154
+ * This method can be used to retrieve an array of all the keys of assets
155
+ * embedded into the single-executable application.
156
+ * An error is thrown when not running inside a single-executable application.
157
+ * @since v24.8.0
158
+ * @returns An array containing all the keys of the assets
159
+ * embedded in the executable. If no assets are embedded, returns an empty array.
160
+ */
161
+ function getAssetKeys(): string[];
162
+ }