@raidiant/notifai 11.7.1-beta.2 → 12.0.0-beta.5

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 (409) hide show
  1. package/CHANGELOG.md +56 -4
  2. package/NOTICE +16 -0
  3. package/THIRD_PARTY_NOTICES +725 -0
  4. package/bin/notifai.mjs +11387 -0
  5. package/data/install.ps1 +318 -0
  6. package/data/release.json +1 -0
  7. package/inventory.json +1 -0
  8. package/npm-adapter-files.json +52 -0
  9. package/package.json +14 -44
  10. package/README.md +0 -168
  11. package/dist/agent-update-notice.d.ts +0 -7
  12. package/dist/agent-update-notice.js +0 -77
  13. package/dist/agent-update-notice.js.map +0 -1
  14. package/dist/atomic-file.d.ts +0 -30
  15. package/dist/atomic-file.js +0 -148
  16. package/dist/atomic-file.js.map +0 -1
  17. package/dist/attendant-update.d.ts +0 -15
  18. package/dist/attendant-update.js +0 -96
  19. package/dist/attendant-update.js.map +0 -1
  20. package/dist/claude-wake.d.ts +0 -108
  21. package/dist/claude-wake.js +0 -369
  22. package/dist/claude-wake.js.map +0 -1
  23. package/dist/cli-bin.d.ts +0 -26
  24. package/dist/cli-bin.js +0 -220
  25. package/dist/cli-bin.js.map +0 -1
  26. package/dist/cli-contract.d.ts +0 -16
  27. package/dist/cli-contract.js +0 -27
  28. package/dist/cli-contract.js.map +0 -1
  29. package/dist/cli-release.d.ts +0 -36
  30. package/dist/cli-release.js +0 -85
  31. package/dist/cli-release.js.map +0 -1
  32. package/dist/client.d.ts +0 -109
  33. package/dist/client.js +0 -217
  34. package/dist/client.js.map +0 -1
  35. package/dist/codex-answer-control.d.ts +0 -14
  36. package/dist/codex-answer-control.js +0 -41
  37. package/dist/codex-answer-control.js.map +0 -1
  38. package/dist/codex-answer-presentation.d.ts +0 -18
  39. package/dist/codex-answer-presentation.js +0 -113
  40. package/dist/codex-answer-presentation.js.map +0 -1
  41. package/dist/codex-input-lifecycle.d.ts +0 -10
  42. package/dist/codex-input-lifecycle.js +0 -63
  43. package/dist/codex-input-lifecycle.js.map +0 -1
  44. package/dist/codex-native-control.d.ts +0 -13
  45. package/dist/codex-native-control.js +0 -120
  46. package/dist/codex-native-control.js.map +0 -1
  47. package/dist/codex-native-turn.d.ts +0 -37
  48. package/dist/codex-native-turn.js +0 -155
  49. package/dist/codex-native-turn.js.map +0 -1
  50. package/dist/codex-question-bindings.d.ts +0 -76
  51. package/dist/codex-question-bindings.js +0 -151
  52. package/dist/codex-question-bindings.js.map +0 -1
  53. package/dist/codex-queue-control.d.ts +0 -21
  54. package/dist/codex-queue-control.js +0 -59
  55. package/dist/codex-queue-control.js.map +0 -1
  56. package/dist/codex-tool-messages.d.ts +0 -7
  57. package/dist/codex-tool-messages.js +0 -126
  58. package/dist/codex-tool-messages.js.map +0 -1
  59. package/dist/codex-wake.d.ts +0 -58
  60. package/dist/codex-wake.js +0 -135
  61. package/dist/codex-wake.js.map +0 -1
  62. package/dist/command-session.d.ts +0 -14
  63. package/dist/command-session.js +0 -31
  64. package/dist/command-session.js.map +0 -1
  65. package/dist/commands-acknowledge.d.ts +0 -13
  66. package/dist/commands-acknowledge.js +0 -116
  67. package/dist/commands-acknowledge.js.map +0 -1
  68. package/dist/commands-agent-sessions.d.ts +0 -6
  69. package/dist/commands-agent-sessions.js +0 -51
  70. package/dist/commands-agent-sessions.js.map +0 -1
  71. package/dist/commands-ask.d.ts +0 -62
  72. package/dist/commands-ask.js +0 -503
  73. package/dist/commands-ask.js.map +0 -1
  74. package/dist/commands-auth.d.ts +0 -76
  75. package/dist/commands-auth.js +0 -421
  76. package/dist/commands-auth.js.map +0 -1
  77. package/dist/commands-close.d.ts +0 -6
  78. package/dist/commands-close.js +0 -273
  79. package/dist/commands-close.js.map +0 -1
  80. package/dist/commands-config.d.ts +0 -31
  81. package/dist/commands-config.js +0 -272
  82. package/dist/commands-config.js.map +0 -1
  83. package/dist/commands-core.d.ts +0 -145
  84. package/dist/commands-core.js +0 -190
  85. package/dist/commands-core.js.map +0 -1
  86. package/dist/commands-devices.d.ts +0 -41
  87. package/dist/commands-devices.js +0 -144
  88. package/dist/commands-devices.js.map +0 -1
  89. package/dist/commands-doctor.d.ts +0 -25
  90. package/dist/commands-doctor.js +0 -1553
  91. package/dist/commands-doctor.js.map +0 -1
  92. package/dist/commands-guidance.d.ts +0 -27
  93. package/dist/commands-guidance.js +0 -150
  94. package/dist/commands-guidance.js.map +0 -1
  95. package/dist/commands-harness-context.d.ts +0 -57
  96. package/dist/commands-harness-context.js +0 -102
  97. package/dist/commands-harness-context.js.map +0 -1
  98. package/dist/commands-hook-attend.d.ts +0 -70
  99. package/dist/commands-hook-attend.js +0 -655
  100. package/dist/commands-hook-attend.js.map +0 -1
  101. package/dist/commands-hook-diagnostics.d.ts +0 -37
  102. package/dist/commands-hook-diagnostics.js +0 -136
  103. package/dist/commands-hook-diagnostics.js.map +0 -1
  104. package/dist/commands-hook-install.d.ts +0 -26
  105. package/dist/commands-hook-install.js +0 -784
  106. package/dist/commands-hook-install.js.map +0 -1
  107. package/dist/commands-hook-run.d.ts +0 -29
  108. package/dist/commands-hook-run.js +0 -933
  109. package/dist/commands-hook-run.js.map +0 -1
  110. package/dist/commands-hook-shape.d.ts +0 -19
  111. package/dist/commands-hook-shape.js +0 -48
  112. package/dist/commands-hook-shape.js.map +0 -1
  113. package/dist/commands-init.d.ts +0 -42
  114. package/dist/commands-init.js +0 -901
  115. package/dist/commands-init.js.map +0 -1
  116. package/dist/commands-io.d.ts +0 -2
  117. package/dist/commands-io.js +0 -117
  118. package/dist/commands-io.js.map +0 -1
  119. package/dist/commands-logs.d.ts +0 -30
  120. package/dist/commands-logs.js +0 -201
  121. package/dist/commands-logs.js.map +0 -1
  122. package/dist/commands-native-acknowledge.d.ts +0 -8
  123. package/dist/commands-native-acknowledge.js +0 -114
  124. package/dist/commands-native-acknowledge.js.map +0 -1
  125. package/dist/commands-project.d.ts +0 -4
  126. package/dist/commands-project.js +0 -41
  127. package/dist/commands-project.js.map +0 -1
  128. package/dist/commands-receive.d.ts +0 -3
  129. package/dist/commands-receive.js +0 -59
  130. package/dist/commands-receive.js.map +0 -1
  131. package/dist/commands-send-support.d.ts +0 -59
  132. package/dist/commands-send-support.js +0 -258
  133. package/dist/commands-send-support.js.map +0 -1
  134. package/dist/commands-send.d.ts +0 -34
  135. package/dist/commands-send.js +0 -900
  136. package/dist/commands-send.js.map +0 -1
  137. package/dist/commands-setup-proof.d.ts +0 -43
  138. package/dist/commands-setup-proof.js +0 -134
  139. package/dist/commands-setup-proof.js.map +0 -1
  140. package/dist/commands-skill.d.ts +0 -21
  141. package/dist/commands-skill.js +0 -199
  142. package/dist/commands-skill.js.map +0 -1
  143. package/dist/commands-sounds.d.ts +0 -12
  144. package/dist/commands-sounds.js +0 -35
  145. package/dist/commands-sounds.js.map +0 -1
  146. package/dist/commands-update-check.d.ts +0 -6
  147. package/dist/commands-update-check.js +0 -102
  148. package/dist/commands-update-check.js.map +0 -1
  149. package/dist/commands-update-resume.d.ts +0 -7
  150. package/dist/commands-update-resume.js +0 -143
  151. package/dist/commands-update-resume.js.map +0 -1
  152. package/dist/commands-update-skill.d.ts +0 -5
  153. package/dist/commands-update-skill.js +0 -36
  154. package/dist/commands-update-skill.js.map +0 -1
  155. package/dist/commands-update.d.ts +0 -11
  156. package/dist/commands-update.js +0 -286
  157. package/dist/commands-update.js.map +0 -1
  158. package/dist/commands.d.ts +0 -26
  159. package/dist/commands.js +0 -27
  160. package/dist/commands.js.map +0 -1
  161. package/dist/config-schema.d.ts +0 -62
  162. package/dist/config-schema.js +0 -302
  163. package/dist/config-schema.js.map +0 -1
  164. package/dist/config.d.ts +0 -181
  165. package/dist/config.js +0 -357
  166. package/dist/config.js.map +0 -1
  167. package/dist/credentials.d.ts +0 -96
  168. package/dist/credentials.js +0 -342
  169. package/dist/credentials.js.map +0 -1
  170. package/dist/file-lock.d.ts +0 -34
  171. package/dist/file-lock.js +0 -367
  172. package/dist/file-lock.js.map +0 -1
  173. package/dist/generated-session-label.d.ts +0 -2
  174. package/dist/generated-session-label.js +0 -152
  175. package/dist/generated-session-label.js.map +0 -1
  176. package/dist/guidance-content.d.ts +0 -53
  177. package/dist/guidance-content.js +0 -248
  178. package/dist/guidance-content.js.map +0 -1
  179. package/dist/guidance-render.d.ts +0 -25
  180. package/dist/guidance-render.js +0 -47
  181. package/dist/guidance-render.js.map +0 -1
  182. package/dist/guidance.d.ts +0 -69
  183. package/dist/guidance.js +0 -173
  184. package/dist/guidance.js.map +0 -1
  185. package/dist/harness-session-title.d.ts +0 -22
  186. package/dist/harness-session-title.js +0 -74
  187. package/dist/harness-session-title.js.map +0 -1
  188. package/dist/harnesses.d.ts +0 -65
  189. package/dist/harnesses.js +0 -159
  190. package/dist/harnesses.js.map +0 -1
  191. package/dist/hermes-attendant.d.ts +0 -38
  192. package/dist/hermes-attendant.js +0 -337
  193. package/dist/hermes-attendant.js.map +0 -1
  194. package/dist/hermes-plugin.d.ts +0 -11
  195. package/dist/hermes-plugin.js +0 -299
  196. package/dist/hermes-plugin.js.map +0 -1
  197. package/dist/hook-acknowledgements.d.ts +0 -70
  198. package/dist/hook-acknowledgements.js +0 -490
  199. package/dist/hook-acknowledgements.js.map +0 -1
  200. package/dist/hook-adapter.d.ts +0 -48
  201. package/dist/hook-adapter.js +0 -419
  202. package/dist/hook-adapter.js.map +0 -1
  203. package/dist/hook-events.d.ts +0 -105
  204. package/dist/hook-events.js +0 -130
  205. package/dist/hook-events.js.map +0 -1
  206. package/dist/hook-gates.d.ts +0 -7
  207. package/dist/hook-gates.js +0 -20
  208. package/dist/hook-gates.js.map +0 -1
  209. package/dist/hook-input.d.ts +0 -10
  210. package/dist/hook-input.js +0 -64
  211. package/dist/hook-input.js.map +0 -1
  212. package/dist/hook-lifecycle.d.ts +0 -112
  213. package/dist/hook-lifecycle.js +0 -2031
  214. package/dist/hook-lifecycle.js.map +0 -1
  215. package/dist/hook-project-sessions.d.ts +0 -28
  216. package/dist/hook-project-sessions.js +0 -141
  217. package/dist/hook-project-sessions.js.map +0 -1
  218. package/dist/hook-question-lock.d.ts +0 -29
  219. package/dist/hook-question-lock.js +0 -217
  220. package/dist/hook-question-lock.js.map +0 -1
  221. package/dist/hook-question-retirement.d.ts +0 -74
  222. package/dist/hook-question-retirement.js +0 -314
  223. package/dist/hook-question-retirement.js.map +0 -1
  224. package/dist/hook-question-state.d.ts +0 -58
  225. package/dist/hook-question-state.js +0 -239
  226. package/dist/hook-question-state.js.map +0 -1
  227. package/dist/hook-session-state.d.ts +0 -127
  228. package/dist/hook-session-state.js +0 -488
  229. package/dist/hook-session-state.js.map +0 -1
  230. package/dist/hook-types.d.ts +0 -476
  231. package/dist/hook-types.js +0 -4
  232. package/dist/hook-types.js.map +0 -1
  233. package/dist/injection-render.d.ts +0 -36
  234. package/dist/injection-render.js +0 -61
  235. package/dist/injection-render.js.map +0 -1
  236. package/dist/install-hooks.d.ts +0 -470
  237. package/dist/install-hooks.js +0 -1622
  238. package/dist/install-hooks.js.map +0 -1
  239. package/dist/integration-health.d.ts +0 -26
  240. package/dist/integration-health.js +0 -133
  241. package/dist/integration-health.js.map +0 -1
  242. package/dist/interactive.d.ts +0 -22
  243. package/dist/interactive.js +0 -644
  244. package/dist/interactive.js.map +0 -1
  245. package/dist/invocation-context.d.ts +0 -47
  246. package/dist/invocation-context.js +0 -164
  247. package/dist/invocation-context.js.map +0 -1
  248. package/dist/local-path.d.ts +0 -7
  249. package/dist/local-path.js +0 -27
  250. package/dist/local-path.js.map +0 -1
  251. package/dist/logging.d.ts +0 -157
  252. package/dist/logging.js +0 -599
  253. package/dist/logging.js.map +0 -1
  254. package/dist/main-run.d.ts +0 -1
  255. package/dist/main-run.js +0 -42
  256. package/dist/main-run.js.map +0 -1
  257. package/dist/main.d.ts +0 -2
  258. package/dist/main.js +0 -12
  259. package/dist/main.js.map +0 -1
  260. package/dist/native-answer-operation.d.ts +0 -70
  261. package/dist/native-answer-operation.js +0 -247
  262. package/dist/native-answer-operation.js.map +0 -1
  263. package/dist/native-skills.d.ts +0 -64
  264. package/dist/native-skills.js +0 -167
  265. package/dist/native-skills.js.map +0 -1
  266. package/dist/node-floor.d.ts +0 -19
  267. package/dist/node-floor.js +0 -32
  268. package/dist/node-floor.js.map +0 -1
  269. package/dist/npm-invocation.d.ts +0 -34
  270. package/dist/npm-invocation.js +0 -53
  271. package/dist/npm-invocation.js.map +0 -1
  272. package/dist/openclaw-continuation-bridge.d.ts +0 -7
  273. package/dist/openclaw-continuation-bridge.js +0 -64
  274. package/dist/openclaw-continuation-bridge.js.map +0 -1
  275. package/dist/openclaw-gateway-readiness.d.ts +0 -1
  276. package/dist/openclaw-gateway-readiness.js +0 -24
  277. package/dist/openclaw-gateway-readiness.js.map +0 -1
  278. package/dist/openclaw-generation.d.ts +0 -21
  279. package/dist/openclaw-generation.js +0 -115
  280. package/dist/openclaw-generation.js.map +0 -1
  281. package/dist/openclaw-message-bridge.d.ts +0 -8
  282. package/dist/openclaw-message-bridge.js +0 -93
  283. package/dist/openclaw-message-bridge.js.map +0 -1
  284. package/dist/openclaw-pending.d.ts +0 -8
  285. package/dist/openclaw-pending.js +0 -47
  286. package/dist/openclaw-pending.js.map +0 -1
  287. package/dist/openclaw-plugin.d.ts +0 -75
  288. package/dist/openclaw-plugin.js +0 -1353
  289. package/dist/openclaw-plugin.js.map +0 -1
  290. package/dist/openclaw-session-access.d.ts +0 -12
  291. package/dist/openclaw-session-access.js +0 -79
  292. package/dist/openclaw-session-access.js.map +0 -1
  293. package/dist/opencode-plugin.d.ts +0 -88
  294. package/dist/opencode-plugin.js +0 -286
  295. package/dist/opencode-plugin.js.map +0 -1
  296. package/dist/orca-session-title.d.ts +0 -11
  297. package/dist/orca-session-title.js +0 -111
  298. package/dist/orca-session-title.js.map +0 -1
  299. package/dist/pack-feedback-slice.d.ts +0 -35
  300. package/dist/pack-feedback-slice.js +0 -126
  301. package/dist/pack-feedback-slice.js.map +0 -1
  302. package/dist/pairing-qr.d.ts +0 -5
  303. package/dist/pairing-qr.js +0 -24
  304. package/dist/pairing-qr.js.map +0 -1
  305. package/dist/pending-pairing.d.ts +0 -38
  306. package/dist/pending-pairing.js +0 -70
  307. package/dist/pending-pairing.js.map +0 -1
  308. package/dist/platform.d.ts +0 -67
  309. package/dist/platform.js +0 -140
  310. package/dist/platform.js.map +0 -1
  311. package/dist/process-identity.d.ts +0 -26
  312. package/dist/process-identity.js +0 -82
  313. package/dist/process-identity.js.map +0 -1
  314. package/dist/program.d.ts +0 -59
  315. package/dist/program.js +0 -691
  316. package/dist/program.js.map +0 -1
  317. package/dist/project-enablement.d.ts +0 -21
  318. package/dist/project-enablement.js +0 -71
  319. package/dist/project-enablement.js.map +0 -1
  320. package/dist/question-settlement-process.d.ts +0 -17
  321. package/dist/question-settlement-process.js +0 -35
  322. package/dist/question-settlement-process.js.map +0 -1
  323. package/dist/question-timing.d.ts +0 -46
  324. package/dist/question-timing.js +0 -48
  325. package/dist/question-timing.js.map +0 -1
  326. package/dist/readiness.d.ts +0 -153
  327. package/dist/readiness.js +0 -149
  328. package/dist/readiness.js.map +0 -1
  329. package/dist/release.d.ts +0 -31
  330. package/dist/release.js +0 -52
  331. package/dist/release.js.map +0 -1
  332. package/dist/send-attempts.d.ts +0 -26
  333. package/dist/send-attempts.js +0 -139
  334. package/dist/send-attempts.js.map +0 -1
  335. package/dist/send.d.ts +0 -115
  336. package/dist/send.js +0 -421
  337. package/dist/send.js.map +0 -1
  338. package/dist/session-activation.d.ts +0 -13
  339. package/dist/session-activation.js +0 -64
  340. package/dist/session-activation.js.map +0 -1
  341. package/dist/session-attendant-probe.d.ts +0 -85
  342. package/dist/session-attendant-probe.js +0 -173
  343. package/dist/session-attendant-probe.js.map +0 -1
  344. package/dist/session-attendant-state.d.ts +0 -70
  345. package/dist/session-attendant-state.js +0 -256
  346. package/dist/session-attendant-state.js.map +0 -1
  347. package/dist/session-attendant.d.ts +0 -143
  348. package/dist/session-attendant.js +0 -520
  349. package/dist/session-attendant.js.map +0 -1
  350. package/dist/session-delivery.d.ts +0 -249
  351. package/dist/session-delivery.js +0 -576
  352. package/dist/session-delivery.js.map +0 -1
  353. package/dist/session-handoff.d.ts +0 -98
  354. package/dist/session-handoff.js +0 -118
  355. package/dist/session-handoff.js.map +0 -1
  356. package/dist/session-input-wakes.d.ts +0 -78
  357. package/dist/session-input-wakes.js +0 -239
  358. package/dist/session-input-wakes.js.map +0 -1
  359. package/dist/session-inputs.d.ts +0 -57
  360. package/dist/session-inputs.js +0 -434
  361. package/dist/session-inputs.js.map +0 -1
  362. package/dist/session-labels.d.ts +0 -56
  363. package/dist/session-labels.js +0 -396
  364. package/dist/session-labels.js.map +0 -1
  365. package/dist/session-message-handoff.d.ts +0 -39
  366. package/dist/session-message-handoff.js +0 -107
  367. package/dist/session-message-handoff.js.map +0 -1
  368. package/dist/setup-destinations.d.ts +0 -23
  369. package/dist/setup-destinations.js +0 -44
  370. package/dist/setup-destinations.js.map +0 -1
  371. package/dist/skill-integrity.d.ts +0 -54
  372. package/dist/skill-integrity.js +0 -164
  373. package/dist/skill-integrity.js.map +0 -1
  374. package/dist/skill-source/manifest.json +0 -40
  375. package/dist/skill-source/notifai/SKILL.md +0 -350
  376. package/dist/skill-source/notifai/references/diagnostics.md +0 -36
  377. package/dist/skill-source/notifai/references/harness-setup.md +0 -384
  378. package/dist/skill-source/notifai/references/native-questions.md +0 -51
  379. package/dist/skill-source/notifai/references/notes-and-edits.md +0 -54
  380. package/dist/skill-source/notifai/references/send-details.md +0 -14
  381. package/dist/skill-source/notifai/references/updates.md +0 -116
  382. package/dist/skill-source/notifai/references/writing-examples.md +0 -56
  383. package/dist/sound-ref.d.ts +0 -23
  384. package/dist/sound-ref.js +0 -28
  385. package/dist/sound-ref.js.map +0 -1
  386. package/dist/ui/banner.d.ts +0 -22
  387. package/dist/ui/banner.js +0 -87
  388. package/dist/ui/banner.js.map +0 -1
  389. package/dist/ui/config-view.d.ts +0 -30
  390. package/dist/ui/config-view.js +0 -108
  391. package/dist/ui/config-view.js.map +0 -1
  392. package/dist/ui/help.d.ts +0 -44
  393. package/dist/ui/help.js +0 -107
  394. package/dist/ui/help.js.map +0 -1
  395. package/dist/ui/theme.d.ts +0 -90
  396. package/dist/ui/theme.js +0 -244
  397. package/dist/ui/theme.js.map +0 -1
  398. package/dist/update-handoff.d.ts +0 -29
  399. package/dist/update-handoff.js +0 -69
  400. package/dist/update-handoff.js.map +0 -1
  401. package/dist/url-policy.d.ts +0 -85
  402. package/dist/url-policy.js +0 -369
  403. package/dist/url-policy.js.map +0 -1
  404. package/dist/version.d.ts +0 -40
  405. package/dist/version.js +0 -132
  406. package/dist/version.js.map +0 -1
  407. package/dist/wake-support.d.ts +0 -40
  408. package/dist/wake-support.js +0 -95
  409. package/dist/wake-support.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands-update.js","sourceRoot":"","sources":["../src/commands-update.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- export { EXIT, updateCliCommand, type CommandDeps, type CommandIo, type CommandSpinner, } from './commands-core.js';
2
- export { accessStatusCommand, authStatusCommand, loginCommand, logoutCommand, } from './commands-auth.js';
3
- export { canDeviceReceive, capabilitiesCommand, deviceInventory, devicesCommand, } from './commands-devices.js';
4
- export { soundsCommand } from './commands-sounds.js';
5
- export { contradictingAnswer, repliesCommand, sendCommand, statusCommand, } from './commands-send.js';
6
- /** @public The private service's CLI contract test drives replies through this. */
7
- export { waitForReply } from './commands-send-support.js';
8
- export { acknowledgeCommand } from './commands-acknowledge.js';
9
- export { receiveCommand } from './commands-receive.js';
10
- export { askCommand, buildQuestions, reportAskFailure } from './commands-ask.js';
11
- export { closeCommand } from './commands-close.js';
12
- export { describeHookFailure, hookDefersDiagnosticsUntilAfterCleanup, hookRunCommand, } from './commands-hook-run.js';
13
- export { hooksInstallCommand, hooksUninstallCommand } from './commands-hook-install.js';
14
- export { configExplainCommand, configSetCommand, configShowCommand, configUnsetCommand, } from './commands-config.js';
15
- export { guidanceSetCommand, guidanceShowCommand, guidanceUnsetCommand, } from './commands-guidance.js';
16
- export { logsCommand, parseSince } from './commands-logs.js';
17
- export { SKILLS_SOURCE } from './commands-skill.js';
18
- export { initCommand, projectSlugFrom } from './commands-init.js';
19
- export { assessReadiness, doctorCommand } from './commands-doctor.js';
20
- export { cliUpdateCheckCommand } from './commands-update-check.js';
21
- export { cliUpdateCommand } from './commands-update.js';
22
- export { projectDisableCommand, projectEnableCommand, projectStatusCommand, } from './commands-project.js';
23
- export { agentSessionRenameCommand } from './commands-agent-sessions.js';
24
- export { realIo } from './commands-io.js';
25
- export { updateSkillCommand } from './commands-update-skill.js';
26
- export { updateResumeCommand } from './commands-update-resume.js';
package/dist/commands.js DELETED
@@ -1,27 +0,0 @@
1
- export { EXIT, updateCliCommand, } from './commands-core.js';
2
- export { accessStatusCommand, authStatusCommand, loginCommand, logoutCommand, } from './commands-auth.js';
3
- export { canDeviceReceive, capabilitiesCommand, deviceInventory, devicesCommand, } from './commands-devices.js';
4
- export { soundsCommand } from './commands-sounds.js';
5
- export { contradictingAnswer, repliesCommand, sendCommand, statusCommand, } from './commands-send.js';
6
- /** @public The private service's CLI contract test drives replies through this. */
7
- export { waitForReply } from './commands-send-support.js';
8
- export { acknowledgeCommand } from './commands-acknowledge.js';
9
- export { receiveCommand } from './commands-receive.js';
10
- export { askCommand, buildQuestions, reportAskFailure } from './commands-ask.js';
11
- export { closeCommand } from './commands-close.js';
12
- export { describeHookFailure, hookDefersDiagnosticsUntilAfterCleanup, hookRunCommand, } from './commands-hook-run.js';
13
- export { hooksInstallCommand, hooksUninstallCommand } from './commands-hook-install.js';
14
- export { configExplainCommand, configSetCommand, configShowCommand, configUnsetCommand, } from './commands-config.js';
15
- export { guidanceSetCommand, guidanceShowCommand, guidanceUnsetCommand, } from './commands-guidance.js';
16
- export { logsCommand, parseSince } from './commands-logs.js';
17
- export { SKILLS_SOURCE } from './commands-skill.js';
18
- export { initCommand, projectSlugFrom } from './commands-init.js';
19
- export { assessReadiness, doctorCommand } from './commands-doctor.js';
20
- export { cliUpdateCheckCommand } from './commands-update-check.js';
21
- export { cliUpdateCommand } from './commands-update.js';
22
- export { projectDisableCommand, projectEnableCommand, projectStatusCommand, } from './commands-project.js';
23
- export { agentSessionRenameCommand } from './commands-agent-sessions.js';
24
- export { realIo } from './commands-io.js';
25
- export { updateSkillCommand } from './commands-update-skill.js';
26
- export { updateResumeCommand } from './commands-update-resume.js';
27
- //# sourceMappingURL=commands.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,gBAAgB,GAIjB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACZ,aAAa,GACd,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,cAAc,GACf,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,WAAW,EACX,aAAa,GACd,MAAM,oBAAoB,CAAA;AAC3B,mFAAmF;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EACL,mBAAmB,EACnB,sCAAsC,EACtC,cAAc,GACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACvF,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAA;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA"}
@@ -1,62 +0,0 @@
1
- import { type ConfigKey } from './config.js';
2
- export type ConfigKind = 'string' | 'url' | 'integer' | 'boolean' | 'enum' | 'list';
3
- /**
4
- * Which surface a key belongs to. Grouping is the difference between a flat
5
- * list of keys and a few short ones a reader can hold in their head.
6
- */
7
- export type ConfigGroup = 'questions' | 'delivery' | 'project' | 'trust' | 'diagnostics';
8
- export declare const CONFIG_GROUPS: {
9
- id: ConfigGroup;
10
- title: string;
11
- blurb: string;
12
- }[];
13
- export interface ConfigKeyInfo {
14
- key: ConfigKey;
15
- /** Human words for the key, used as a list label. */
16
- label: string;
17
- group: ConfigGroup;
18
- kind: ConfigKind;
19
- /** One line. Must fit beside a value without wrapping on an 80-column terminal. */
20
- summary: string;
21
- /** The full explanation, shown when the reader asks about this key. */
22
- detail: string;
23
- /** Allowed values for `enum`. */
24
- choices?: readonly string[];
25
- /** What a choice means, keyed by choice. */
26
- choiceHints?: Record<string, string>;
27
- /** Unit suffix rendered after numbers, e.g. `s`. */
28
- unit?: string;
29
- /** What the key means when it holds no value. */
30
- unsetMeans?: string;
31
- /** A valid value, for error messages and placeholders. */
32
- example?: string;
33
- /**
34
- * Advanced keys are hidden behind an explicit reveal in the interactive
35
- * settings screen. They are still listed by `config show` — hiding a value
36
- * that is in force would be worse than showing one nobody needs.
37
- */
38
- advanced?: boolean;
39
- }
40
- export declare function configInfo(key: ConfigKey): ConfigKeyInfo;
41
- /** Every key in its group, in the order a reader should meet them. */
42
- export declare function configKeysByGroup(group: ConfigGroup): ConfigKeyInfo[];
43
- /** Bounds rendered the way an error message wants them, or null. */
44
- export declare function boundsHint(key: ConfigKey): string | null;
45
- /** What a `config set` caller may legally pass, phrased for an error message. */
46
- export declare function acceptedValues(key: ConfigKey): string;
47
- /** How a resolved value should read in a list. */
48
- export declare function formatValue(key: ConfigKey, value: unknown): string;
49
- /**
50
- * Where a value came from, in words rather than in a tagged path.
51
- *
52
- * `global:/Users/you/.config/notifai/config.toml` answers "which file" but not
53
- * "why is this the value" — and the second question is the one someone reading
54
- * `config show` is actually asking. The path is still available for anyone
55
- * about to edit the file; it is just no longer the whole answer.
56
- */
57
- export declare function describeSource(source: string): {
58
- label: string;
59
- path: string | null;
60
- };
61
- /** Seconds as something a person reads: `300s` is true, `5m` is legible. */
62
- export declare function formatDuration(value: number, unit: string): string;
@@ -1,302 +0,0 @@
1
- /**
2
- * What every configuration key means, in the reader's words.
3
- *
4
- * `config.ts` already documented every key carefully — but in TypeScript
5
- * comments, which is the one audience that never needed them. Someone running
6
- * `notifai config show` saw `ask_grace_seconds = 0` and had no way to learn
7
- * what it did short of reading the source, so this module is that knowledge
8
- * moved to where it can be printed.
9
- *
10
- * It is the single source for `config show`, `config set`'s errors, `config
11
- * explain`, the help footer, and the interactive settings screen. One
12
- * description, rendered five ways, so the surfaces cannot disagree.
13
- *
14
- * `summary` is the one-line form that fits beside a value in a list.
15
- * `detail` is the paragraph shown once the reader has asked for this key
16
- * specifically — progressive disclosure, so the list of settings stays a list
17
- * and not an essay.
18
- */
19
- import { CLI_SOUNDS, INTERRUPTION_LEVELS } from '@raidiant/notifai-protocol';
20
- import { LOG_LEVELS, configBounds } from './config.js';
21
- export const CONFIG_GROUPS = [
22
- {
23
- id: 'questions',
24
- title: 'Questions',
25
- blurb: 'Whether a question an agent registered may leave this terminal and reach your devices, and how soon.',
26
- },
27
- {
28
- id: 'delivery',
29
- title: 'Delivery defaults',
30
- blurb: 'What a notification looks and behaves like when a command does not say otherwise.',
31
- },
32
- {
33
- id: 'project',
34
- title: 'This project',
35
- blurb: 'How work in this directory identifies itself. House rules for agents live in `notifai guidance`.',
36
- },
37
- {
38
- id: 'trust',
39
- title: 'Network trust',
40
- blurb: 'Origins this machine may fetch from or open beyond the safe defaults. Only you can widen these — a repository cannot.',
41
- },
42
- {
43
- id: 'diagnostics',
44
- title: 'Local logs',
45
- blurb: 'What this machine records about its own activity, so an agent can find out afterwards what happened.',
46
- },
47
- ];
48
- const INFO = {
49
- ask_notifications: {
50
- label: 'Send questions to my devices',
51
- group: 'questions',
52
- kind: 'boolean',
53
- summary: 'Whether a registered question may reach your Companion devices at all',
54
- detail: 'Controls registered-question routing. When off, `notifai ask` refuses new registrations and Question Routing does not submit pending local registrations. It does not disable ordinary sends or the separate blocking `send --reply` flow, and it does not withdraw questions already submitted. Turn it off to pause question routing without uninstalling harness hooks.',
55
- example: 'true',
56
- },
57
- ask_grace_seconds: {
58
- label: 'Terminal-first grace',
59
- group: 'questions',
60
- kind: 'integer',
61
- unit: 's',
62
- summary: 'Optional delay before a question may reach your devices',
63
- detail: 'Zero (the default) starts question submission immediately when the agent registers it. Set a positive duration to offer the terminal an exclusive answer window first; the timer is measured from the moment the agent asked.\n\nThis controls when the question reaches devices, not how the harness returns the answer afterward. Claude Code waits out of band on macOS/Linux; on Windows its Stop stays held. Codex observes answers out of band and queues only a wake-up; current answers and notes drain at supported hooks or an exact-session receive command.',
64
- example: '0',
65
- },
66
- reply_window_seconds: {
67
- label: 'How long an answer is accepted',
68
- group: 'questions',
69
- kind: 'integer',
70
- unit: 's',
71
- summary: 'How long the service keeps accepting your answer to a question',
72
- detail: 'A question stays answerable for this long after it reaches the service. The default is a day, so a question that arrives while you are away is still yours to answer when you come back.\n\nQuestion Routing owns the exact Agent Session return path for this complete window. Claude Code waits out of band and wakes the Agent Session on macOS/Linux; on Windows its Stop stays held and returns the answer as the same Agent Session continuation. Codex queues a content-free wake-up for the exact thread; queue success proves wake storage, and a stopped thread consumes it only when reopened. This is separate from `--reply-timeout`, which controls how long a direct `send --reply` command blocks.',
73
- example: '86400',
74
- },
75
- sound: {
76
- label: 'Sound',
77
- group: 'delivery',
78
- kind: 'enum',
79
- choices: CLI_SOUNDS,
80
- choiceHints: {
81
- default: 'Device default',
82
- done: 'the completion chime',
83
- attention: 'a distinct attention tone',
84
- alert: 'the most insistent tone',
85
- none: 'silent — arrives without a sound',
86
- },
87
- summary: 'Set the sound notifications from here use',
88
- detail: 'Setting this pins one sound for every notification sent from here, whatever kind it is. Shipped names are `default` (Device default), `done`, `attention`, `alert`, and `none`; an Account custom sound name or id from `notifai sounds` is accepted too.\n\nLeave it unset and each notification arrives with the sound its kind implies: the completion chime when work finished, the most insistent tone when it failed, a distinct attention tone for a question or blocked work, and Device default for ordinary news. A common explicit preference is `none`, to make a noisy project completely silent.',
89
- unsetMeans: 'not set; each kind brings its own sound',
90
- },
91
- interruption_level: {
92
- label: 'Interruption level',
93
- group: 'delivery',
94
- kind: 'enum',
95
- choices: INTERRUPTION_LEVELS,
96
- choiceHints: {
97
- passive: 'no sound or wake — waits in the notification list',
98
- active: 'wakes the screen and plays the sound',
99
- time_sensitive: 'marks the notification urgent; Focus breakthrough is not available yet',
100
- },
101
- summary: 'Set how insistently notifications reach Apple devices',
102
- detail: 'Apple interruption level controls how hard a notification tries to reach you in the operating system\'s terms. Setting this pins one Apple-only level for sends from here; kind chooses the sound, never this. Android does not accept caller-selected interruption levels: its product-owned channels and your device settings own attention.\n\nLeave this unset to omit the field and let each destination use its normal behavior. `time_sensitive` is accepted on Apple platforms and marks the notification urgent, but Focus breakthrough is not available yet — run `notifai capabilities --platform <platform>` for the exact contract.',
103
- unsetMeans: 'not specified; each destination uses its normal behavior',
104
- },
105
- devices: {
106
- label: 'Default devices',
107
- group: 'delivery',
108
- kind: 'list',
109
- summary: 'Which of your devices receive by default',
110
- detail: 'A comma-separated list of device ids. When set, notifications go only to these devices unless a command overrides it.\n\nRun `notifai devices` to see the ids and which of them can currently receive.',
111
- unsetMeans: 'every device that can receive',
112
- example: 'dev_abc123,dev_def456',
113
- },
114
- ttl_seconds: {
115
- label: 'Delivery window',
116
- group: 'delivery',
117
- kind: 'integer',
118
- unit: 's',
119
- summary: 'How long the service keeps trying to deliver before giving up',
120
- detail: 'A notification for a device that is off or offline is held for this long and delivered when the device reappears. After it lapses the notification is dropped rather than arriving stale.\n\nThe default of 86400 is one day.',
121
- example: '86400',
122
- },
123
- wait_seconds: {
124
- label: 'Wait for outcomes',
125
- group: 'delivery',
126
- kind: 'integer',
127
- unit: 's',
128
- summary: 'How long `send` waits to report what happened to a notification',
129
- detail: 'After a notification is accepted, `notifai send` can wait for the delivery outcome so its exit code reflects what actually happened rather than only that the service took it.\n\nSet to 0 to return as soon as the service accepts, which is the fastest option and the one that tells you least.',
130
- example: '10',
131
- },
132
- collapse_key: {
133
- label: 'Collapse key',
134
- group: 'delivery',
135
- kind: 'string',
136
- summary: 'Replace earlier notifications carrying the same key',
137
- detail: 'Two notifications sharing a collapse key do not stack — the newer one replaces the older on the lock screen. This is how a status that changes repeatedly stays one line instead of becoming twenty.\n\nSetting it here applies one key to everything sent from here, which is usually too broad; most uses pass `--collapse-key` per send instead.',
138
- unsetMeans: 'each notification stands on its own',
139
- advanced: true,
140
- },
141
- project: {
142
- label: 'Project id',
143
- group: 'project',
144
- kind: 'string',
145
- summary: 'The name this project reports itself as',
146
- detail: 'Stamped on every notification sent from this directory, and how the companion apps group and filter what arrives. When unset, the CLI infers a stable identifier from Git (shared across linked worktrees) or the current directory. Set it in `.notifai/config.toml` only when that inferred name is not the identity you want.',
147
- unsetMeans: 'inferred from Git or the current directory',
148
- example: 'my-app',
149
- },
150
- media_origins: {
151
- label: 'Extra image origins',
152
- group: 'trust',
153
- kind: 'list',
154
- summary: 'Origins remote --image URLs may use beyond public HTTPS',
155
- detail: 'By default a remote `--image` URL must be HTTPS to a publicly routable host, and every redirect hop is held to the same rule — an agent given a hostile URL cannot be used to reach this machine\'s local network. List an exact origin (`scheme://host[:port]`) here to allow a self-hosted or intranet image server, including plain-http ones.\n\nThis key is yours alone: it is read from your machine and personal-project configuration and ignored in the repository\'s shared `.notifai/config.toml`, so a cloned repository can never widen it.',
156
- unsetMeans: 'public HTTPS only',
157
- example: 'http://imgs.intranet.example:8080',
158
- advanced: true,
159
- },
160
- approve_origins: {
161
- label: 'Extra approval origins',
162
- group: 'trust',
163
- kind: 'list',
164
- summary: 'Dashboard origins a pairing approval link may open',
165
- detail: 'During `notifai login` the server names the browser page where you approve this machine. The CLI opens that link only when it is the Notifai dashboard, the origin you are pairing with, or loopback. If you self-host with the dashboard on its own origin, list that exact origin (`scheme://host[:port]`) here.\n\nThis key is yours alone: it is read from your machine and personal-project configuration and ignored in the repository\'s shared `.notifai/config.toml`, so a cloned repository can never widen it.',
166
- unsetMeans: 'the Notifai dashboard, the pairing origin, and loopback',
167
- example: 'https://dash.selfhost.example',
168
- advanced: true,
169
- },
170
- log_level: {
171
- label: 'Log level',
172
- group: 'diagnostics',
173
- kind: 'enum',
174
- choices: LOG_LEVELS,
175
- choiceHints: {
176
- off: 'record nothing',
177
- error: 'only failures',
178
- info: 'commands, notifications, and every question decision',
179
- debug: 'adds config resolution and per-request detail',
180
- },
181
- summary: 'How much this machine records about what it did',
182
- detail: 'Notifai keeps a local record of what it did — every command, every notification, and in particular every decision a harness hook made about whether a question could leave the terminal. Hooks run headless, so without this there is no account of them at all: `notifai logs` is how an agent finds out afterwards why a question never reached your device.\n\nThe log never leaves this machine. It is not uploaded, and nothing sends it anywhere.\n\n`debug` also records which config layer won and the detail of each request, which is what to turn on when something is behaving in a way the ordinary log does not explain.',
183
- example: 'info',
184
- },
185
- log_max_bytes: {
186
- label: 'Log file size',
187
- group: 'diagnostics',
188
- kind: 'integer',
189
- summary: 'How large the log grows before it is rotated',
190
- detail: 'When the active log reaches this size it is renamed aside and a fresh one starts. Together with the number of files kept, this is the whole disk budget: nothing here grows without a ceiling.',
191
- advanced: true,
192
- example: '2000000',
193
- },
194
- log_max_files: {
195
- label: 'Log files kept',
196
- group: 'diagnostics',
197
- kind: 'integer',
198
- summary: 'How many rotated log files are kept before the oldest is deleted',
199
- detail: 'Counts the active file. At the defaults — three files of two megabytes — the logs occupy about six megabytes, which is weeks of ordinary agent traffic.\n\nRaise it when you need to look further back than the log currently reaches; lower it to one to keep only the file being written.',
200
- advanced: true,
201
- example: '3',
202
- },
203
- };
204
- export function configInfo(key) {
205
- return { key, ...INFO[key] };
206
- }
207
- /** Every key in its group, in the order a reader should meet them. */
208
- export function configKeysByGroup(group) {
209
- return Object.keys(INFO)
210
- .filter((key) => INFO[key].group === group)
211
- .map((key) => configInfo(key));
212
- }
213
- /** Bounds rendered the way an error message wants them, or null. */
214
- export function boundsHint(key) {
215
- const bounds = configBounds(key);
216
- if (bounds === undefined)
217
- return null;
218
- const info = INFO[key];
219
- const unit = info.unit ?? '';
220
- return `${bounds.min}${unit}–${bounds.max}${unit}`;
221
- }
222
- /** What a `config set` caller may legally pass, phrased for an error message. */
223
- export function acceptedValues(key) {
224
- const info = INFO[key];
225
- if (key === 'sound') {
226
- return `${CLI_SOUNDS.join(', ')}, a custom sound id, or a custom sound name`;
227
- }
228
- switch (info.kind) {
229
- case 'boolean':
230
- return 'true or false';
231
- case 'enum':
232
- return (info.choices ?? []).join(', ');
233
- case 'integer': {
234
- const bounds = boundsHint(key);
235
- return bounds === null ? 'a whole number' : `a whole number from ${bounds}`;
236
- }
237
- case 'list':
238
- return 'a comma-separated list';
239
- case 'url':
240
- return 'a URL';
241
- case 'string':
242
- return 'any text';
243
- }
244
- }
245
- /** How a resolved value should read in a list. */
246
- export function formatValue(key, value) {
247
- const info = INFO[key];
248
- if (value === null || value === undefined)
249
- return info.unsetMeans ?? 'not set';
250
- if (Array.isArray(value))
251
- return value.length === 0 ? (info.unsetMeans ?? 'not set') : value.join(', ');
252
- if (typeof value === 'boolean')
253
- return value ? 'yes' : 'no';
254
- if (typeof value === 'number' && info.unit !== undefined)
255
- return formatDuration(value, info.unit);
256
- return String(value);
257
- }
258
- /**
259
- * Where a value came from, in words rather than in a tagged path.
260
- *
261
- * `global:/Users/you/.config/notifai/config.toml` answers "which file" but not
262
- * "why is this the value" — and the second question is the one someone reading
263
- * `config show` is actually asking. The path is still available for anyone
264
- * about to edit the file; it is just no longer the whole answer.
265
- */
266
- export function describeSource(source) {
267
- if (source === 'default')
268
- return { label: 'default', path: null };
269
- if (source === 'flag')
270
- return { label: 'this command', path: null };
271
- if (source === 'env')
272
- return { label: 'environment', path: null };
273
- const separator = source.indexOf(':');
274
- if (separator === -1)
275
- return { label: source, path: null };
276
- const layer = source.slice(0, separator);
277
- const filePath = source.slice(separator + 1);
278
- const labels = {
279
- session: 'this session',
280
- 'project-local': 'this project (personal)',
281
- project: 'this project (shared)',
282
- global: 'this machine',
283
- };
284
- return { label: labels[layer] ?? layer, path: filePath === '' ? null : filePath };
285
- }
286
- /** Seconds as something a person reads: `300s` is true, `5m` is legible. */
287
- export function formatDuration(value, unit) {
288
- if (unit !== 's')
289
- return `${value}${unit}`;
290
- if (value === 0)
291
- return '0s (immediately)';
292
- if (value < 60)
293
- return `${value}s`;
294
- if (value % 86400 === 0)
295
- return `${value / 86400}d`;
296
- if (value % 3600 === 0)
297
- return `${value / 3600}h`;
298
- if (value % 60 === 0)
299
- return `${value / 60}m`;
300
- return `${Math.floor(value / 60)}m ${value % 60}s`;
301
- }
302
- //# sourceMappingURL=config-schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-schema.js","sourceRoot":"","sources":["../src/config-schema.ts"],"names":[],"mappings":"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"}