@steipete/summarize 0.8.2 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. package/CHANGELOG.md +114 -1
  2. package/LICENSE +1 -1
  3. package/README.md +309 -182
  4. package/dist/cli.js +1 -1
  5. package/dist/esm/cache.js +72 -4
  6. package/dist/esm/cache.js.map +1 -1
  7. package/dist/esm/config.js +197 -1
  8. package/dist/esm/config.js.map +1 -1
  9. package/dist/esm/content/asset.js +75 -2
  10. package/dist/esm/content/asset.js.map +1 -1
  11. package/dist/esm/daemon/agent.js +547 -0
  12. package/dist/esm/daemon/agent.js.map +1 -0
  13. package/dist/esm/daemon/chat.js +97 -0
  14. package/dist/esm/daemon/chat.js.map +1 -0
  15. package/dist/esm/daemon/cli.js +105 -10
  16. package/dist/esm/daemon/cli.js.map +1 -1
  17. package/dist/esm/daemon/env-snapshot.js +3 -0
  18. package/dist/esm/daemon/env-snapshot.js.map +1 -1
  19. package/dist/esm/daemon/flow-context.js +53 -28
  20. package/dist/esm/daemon/flow-context.js.map +1 -1
  21. package/dist/esm/daemon/launchd.js +27 -0
  22. package/dist/esm/daemon/launchd.js.map +1 -1
  23. package/dist/esm/daemon/process-registry.js +206 -0
  24. package/dist/esm/daemon/process-registry.js.map +1 -0
  25. package/dist/esm/daemon/schtasks.js +64 -0
  26. package/dist/esm/daemon/schtasks.js.map +1 -1
  27. package/dist/esm/daemon/server.js +1034 -52
  28. package/dist/esm/daemon/server.js.map +1 -1
  29. package/dist/esm/daemon/summarize.js +66 -18
  30. package/dist/esm/daemon/summarize.js.map +1 -1
  31. package/dist/esm/daemon/systemd.js +61 -0
  32. package/dist/esm/daemon/systemd.js.map +1 -1
  33. package/dist/esm/flags.js +24 -0
  34. package/dist/esm/flags.js.map +1 -1
  35. package/dist/esm/llm/attachments.js +2 -0
  36. package/dist/esm/llm/attachments.js.map +1 -0
  37. package/dist/esm/llm/errors.js +6 -0
  38. package/dist/esm/llm/errors.js.map +1 -0
  39. package/dist/esm/llm/generate-text.js +206 -356
  40. package/dist/esm/llm/generate-text.js.map +1 -1
  41. package/dist/esm/llm/html-to-markdown.js +1 -2
  42. package/dist/esm/llm/html-to-markdown.js.map +1 -1
  43. package/dist/esm/llm/prompt.js.map +1 -1
  44. package/dist/esm/llm/providers/anthropic.js +126 -0
  45. package/dist/esm/llm/providers/anthropic.js.map +1 -0
  46. package/dist/esm/llm/providers/google.js +78 -0
  47. package/dist/esm/llm/providers/google.js.map +1 -0
  48. package/dist/esm/llm/providers/models.js +111 -0
  49. package/dist/esm/llm/providers/models.js.map +1 -0
  50. package/dist/esm/llm/providers/openai.js +150 -0
  51. package/dist/esm/llm/providers/openai.js.map +1 -0
  52. package/dist/esm/llm/providers/shared.js +48 -0
  53. package/dist/esm/llm/providers/shared.js.map +1 -0
  54. package/dist/esm/llm/providers/types.js +2 -0
  55. package/dist/esm/llm/providers/types.js.map +1 -0
  56. package/dist/esm/llm/transcript-to-markdown.js +1 -2
  57. package/dist/esm/llm/transcript-to-markdown.js.map +1 -1
  58. package/dist/esm/llm/types.js +2 -0
  59. package/dist/esm/llm/types.js.map +1 -0
  60. package/dist/esm/llm/usage.js +69 -0
  61. package/dist/esm/llm/usage.js.map +1 -0
  62. package/dist/esm/logging/daemon.js +124 -0
  63. package/dist/esm/logging/daemon.js.map +1 -0
  64. package/dist/esm/logging/ring-file.js +66 -0
  65. package/dist/esm/logging/ring-file.js.map +1 -0
  66. package/dist/esm/media-cache.js +251 -0
  67. package/dist/esm/media-cache.js.map +1 -0
  68. package/dist/esm/model-auto.js +103 -5
  69. package/dist/esm/model-auto.js.map +1 -1
  70. package/dist/esm/processes.js +2 -0
  71. package/dist/esm/processes.js.map +1 -0
  72. package/dist/esm/refresh-free.js +3 -3
  73. package/dist/esm/refresh-free.js.map +1 -1
  74. package/dist/esm/run/attachments.js +8 -4
  75. package/dist/esm/run/attachments.js.map +1 -1
  76. package/dist/esm/run/bird.js +118 -5
  77. package/dist/esm/run/bird.js.map +1 -1
  78. package/dist/esm/run/cache-state.js +3 -2
  79. package/dist/esm/run/cache-state.js.map +1 -1
  80. package/dist/esm/run/cli-preflight.js +19 -1
  81. package/dist/esm/run/cli-preflight.js.map +1 -1
  82. package/dist/esm/run/constants.js +0 -7
  83. package/dist/esm/run/constants.js.map +1 -1
  84. package/dist/esm/run/finish-line.js +58 -11
  85. package/dist/esm/run/finish-line.js.map +1 -1
  86. package/dist/esm/run/flows/asset/extract.js +70 -0
  87. package/dist/esm/run/flows/asset/extract.js.map +1 -0
  88. package/dist/esm/run/flows/asset/input.js +209 -25
  89. package/dist/esm/run/flows/asset/input.js.map +1 -1
  90. package/dist/esm/run/flows/asset/media-policy.js +3 -0
  91. package/dist/esm/run/flows/asset/media-policy.js.map +1 -0
  92. package/dist/esm/run/flows/asset/media.js +224 -0
  93. package/dist/esm/run/flows/asset/media.js.map +1 -0
  94. package/dist/esm/run/flows/asset/output.js +98 -0
  95. package/dist/esm/run/flows/asset/output.js.map +1 -0
  96. package/dist/esm/run/flows/asset/preprocess.js +92 -16
  97. package/dist/esm/run/flows/asset/preprocess.js.map +1 -1
  98. package/dist/esm/run/flows/asset/summary.js +165 -11
  99. package/dist/esm/run/flows/asset/summary.js.map +1 -1
  100. package/dist/esm/run/flows/url/extract.js +6 -6
  101. package/dist/esm/run/flows/url/extract.js.map +1 -1
  102. package/dist/esm/run/flows/url/flow.js +338 -36
  103. package/dist/esm/run/flows/url/flow.js.map +1 -1
  104. package/dist/esm/run/flows/url/markdown.js +6 -1
  105. package/dist/esm/run/flows/url/markdown.js.map +1 -1
  106. package/dist/esm/run/flows/url/slides-output.js +485 -0
  107. package/dist/esm/run/flows/url/slides-output.js.map +1 -0
  108. package/dist/esm/run/flows/url/slides-text.js +628 -0
  109. package/dist/esm/run/flows/url/slides-text.js.map +1 -0
  110. package/dist/esm/run/flows/url/summary.js +358 -83
  111. package/dist/esm/run/flows/url/summary.js.map +1 -1
  112. package/dist/esm/run/help.js +94 -5
  113. package/dist/esm/run/help.js.map +1 -1
  114. package/dist/esm/run/logging.js +12 -4
  115. package/dist/esm/run/logging.js.map +1 -1
  116. package/dist/esm/run/media-cache-state.js +33 -0
  117. package/dist/esm/run/media-cache-state.js.map +1 -0
  118. package/dist/esm/run/progress.js +19 -1
  119. package/dist/esm/run/progress.js.map +1 -1
  120. package/dist/esm/run/run-context.js +19 -0
  121. package/dist/esm/run/run-context.js.map +1 -0
  122. package/dist/esm/run/run-output.js +1 -1
  123. package/dist/esm/run/run-output.js.map +1 -1
  124. package/dist/esm/run/run-settings.js +182 -0
  125. package/dist/esm/run/run-settings.js.map +1 -0
  126. package/dist/esm/run/runner.js +225 -32
  127. package/dist/esm/run/runner.js.map +1 -1
  128. package/dist/esm/run/slides-cli.js +225 -0
  129. package/dist/esm/run/slides-cli.js.map +1 -0
  130. package/dist/esm/run/slides-render.js +163 -0
  131. package/dist/esm/run/slides-render.js.map +1 -0
  132. package/dist/esm/run/stream-output.js +63 -0
  133. package/dist/esm/run/stream-output.js.map +1 -0
  134. package/dist/esm/run/streaming.js +16 -43
  135. package/dist/esm/run/streaming.js.map +1 -1
  136. package/dist/esm/run/summary-engine.js +59 -41
  137. package/dist/esm/run/summary-engine.js.map +1 -1
  138. package/dist/esm/run/transcriber-cli.js +148 -0
  139. package/dist/esm/run/transcriber-cli.js.map +1 -0
  140. package/dist/esm/shared/sse-events.js +26 -0
  141. package/dist/esm/shared/sse-events.js.map +1 -0
  142. package/dist/esm/shared/streaming-merge.js +44 -0
  143. package/dist/esm/shared/streaming-merge.js.map +1 -0
  144. package/dist/esm/slides/extract.js +1942 -0
  145. package/dist/esm/slides/extract.js.map +1 -0
  146. package/dist/esm/slides/index.js +4 -0
  147. package/dist/esm/slides/index.js.map +1 -0
  148. package/dist/esm/slides/settings.js +73 -0
  149. package/dist/esm/slides/settings.js.map +1 -0
  150. package/dist/esm/slides/store.js +111 -0
  151. package/dist/esm/slides/store.js.map +1 -0
  152. package/dist/esm/slides/types.js +2 -0
  153. package/dist/esm/slides/types.js.map +1 -0
  154. package/dist/esm/tty/osc-progress.js +21 -1
  155. package/dist/esm/tty/osc-progress.js.map +1 -1
  156. package/dist/esm/tty/progress/fetch-html.js +8 -4
  157. package/dist/esm/tty/progress/fetch-html.js.map +1 -1
  158. package/dist/esm/tty/progress/transcript.js +82 -31
  159. package/dist/esm/tty/progress/transcript.js.map +1 -1
  160. package/dist/esm/tty/spinner.js +2 -2
  161. package/dist/esm/tty/spinner.js.map +1 -1
  162. package/dist/esm/tty/theme.js +189 -0
  163. package/dist/esm/tty/theme.js.map +1 -0
  164. package/dist/esm/tty/website-progress.js +17 -13
  165. package/dist/esm/tty/website-progress.js.map +1 -1
  166. package/dist/esm/version.js +1 -1
  167. package/dist/esm/version.js.map +1 -1
  168. package/dist/types/cache.d.ts +14 -2
  169. package/dist/types/config.d.ts +34 -0
  170. package/dist/types/daemon/agent.d.ts +25 -0
  171. package/dist/types/daemon/chat.d.ts +27 -0
  172. package/dist/types/daemon/env-snapshot.d.ts +1 -1
  173. package/dist/types/daemon/flow-context.d.ts +24 -3
  174. package/dist/types/daemon/launchd.d.ts +4 -0
  175. package/dist/types/daemon/process-registry.d.ts +73 -0
  176. package/dist/types/daemon/schtasks.d.ts +4 -0
  177. package/dist/types/daemon/server.d.ts +7 -1
  178. package/dist/types/daemon/summarize.d.ts +47 -5
  179. package/dist/types/daemon/systemd.d.ts +4 -0
  180. package/dist/types/flags.d.ts +1 -0
  181. package/dist/types/llm/attachments.d.ts +6 -0
  182. package/dist/types/llm/errors.d.ts +1 -0
  183. package/dist/types/llm/generate-text.d.ts +29 -13
  184. package/dist/types/llm/prompt.d.ts +7 -2
  185. package/dist/types/llm/providers/anthropic.d.ts +30 -0
  186. package/dist/types/llm/providers/google.d.ts +29 -0
  187. package/dist/types/llm/providers/models.d.ts +27 -0
  188. package/dist/types/llm/providers/openai.d.ts +38 -0
  189. package/dist/types/llm/providers/shared.d.ts +14 -0
  190. package/dist/types/llm/providers/types.d.ts +6 -0
  191. package/dist/types/llm/types.d.ts +5 -0
  192. package/dist/types/llm/usage.d.ts +5 -0
  193. package/dist/types/logging/daemon.d.ts +26 -0
  194. package/dist/types/logging/ring-file.d.ts +10 -0
  195. package/dist/types/media-cache.d.ts +22 -0
  196. package/dist/types/model-auto.d.ts +1 -0
  197. package/dist/types/processes.d.ts +1 -0
  198. package/dist/types/run/attachments.d.ts +9 -6
  199. package/dist/types/run/bird.d.ts +7 -0
  200. package/dist/types/run/constants.d.ts +0 -2
  201. package/dist/types/run/finish-line.d.ts +59 -1
  202. package/dist/types/run/flows/asset/extract.d.ts +18 -0
  203. package/dist/types/run/flows/asset/input.d.ts +12 -2
  204. package/dist/types/run/flows/asset/media-policy.d.ts +2 -0
  205. package/dist/types/run/flows/asset/media.d.ts +21 -0
  206. package/dist/types/run/flows/asset/output.d.ts +42 -0
  207. package/dist/types/run/flows/asset/preprocess.d.ts +22 -2
  208. package/dist/types/run/flows/asset/summary.d.ts +6 -0
  209. package/dist/types/run/flows/url/extract.d.ts +2 -1
  210. package/dist/types/run/flows/url/slides-output.d.ts +66 -0
  211. package/dist/types/run/flows/url/slides-text.d.ts +87 -0
  212. package/dist/types/run/flows/url/summary.d.ts +11 -3
  213. package/dist/types/run/flows/url/types.d.ts +29 -2
  214. package/dist/types/run/help.d.ts +3 -0
  215. package/dist/types/run/logging.d.ts +3 -2
  216. package/dist/types/run/media-cache-state.d.ts +7 -0
  217. package/dist/types/run/progress.d.ts +2 -1
  218. package/dist/types/run/run-context.d.ts +44 -0
  219. package/dist/types/run/run-settings.d.ts +62 -0
  220. package/dist/types/run/slides-cli.d.ts +9 -0
  221. package/dist/types/run/slides-render.d.ts +30 -0
  222. package/dist/types/run/stream-output.d.ts +12 -0
  223. package/dist/types/run/streaming.d.ts +10 -4
  224. package/dist/types/run/summary-engine.d.ts +15 -3
  225. package/dist/types/run/summary-llm.d.ts +2 -2
  226. package/dist/types/run/transcriber-cli.d.ts +8 -0
  227. package/dist/types/shared/sse-events.d.ts +64 -0
  228. package/dist/types/shared/streaming-merge.d.ts +4 -0
  229. package/dist/types/slides/extract.d.ts +42 -0
  230. package/dist/types/slides/index.d.ts +5 -0
  231. package/dist/types/slides/settings.d.ts +20 -0
  232. package/dist/types/slides/store.d.ts +15 -0
  233. package/dist/types/slides/types.d.ts +40 -0
  234. package/dist/types/tty/osc-progress.d.ts +2 -2
  235. package/dist/types/tty/progress/fetch-html.d.ts +3 -1
  236. package/dist/types/tty/progress/transcript.d.ts +3 -1
  237. package/dist/types/tty/spinner.d.ts +3 -1
  238. package/dist/types/tty/theme.d.ts +44 -0
  239. package/dist/types/tty/website-progress.d.ts +3 -1
  240. package/dist/types/version.d.ts +1 -1
  241. package/docs/README.md +13 -8
  242. package/docs/_config.yml +26 -0
  243. package/docs/_layouts/default.html +60 -0
  244. package/docs/agent.md +333 -0
  245. package/docs/assets/site.css +748 -0
  246. package/docs/assets/site.js +72 -0
  247. package/docs/assets/summarize-cli.png +0 -0
  248. package/docs/assets/summarize-extension.png +0 -0
  249. package/docs/assets/youtube-slides.png +0 -0
  250. package/docs/cache.md +29 -3
  251. package/docs/chrome-extension.md +85 -7
  252. package/docs/config.md +74 -2
  253. package/docs/extract-only.md +10 -2
  254. package/docs/index.html +205 -0
  255. package/docs/index.md +25 -0
  256. package/docs/language.md +1 -1
  257. package/docs/llm.md +17 -1
  258. package/docs/manual-tests.md +2 -0
  259. package/docs/media.md +37 -0
  260. package/docs/model-auto.md +2 -1
  261. package/docs/nvidia-onnx-transcription.md +55 -0
  262. package/docs/openai.md +5 -0
  263. package/docs/releasing.md +26 -0
  264. package/docs/site/assets/site.css +399 -228
  265. package/docs/site/assets/summarize-cli.png +0 -0
  266. package/docs/site/assets/summarize-extension.png +0 -0
  267. package/docs/site/docs/chrome-extension.html +89 -0
  268. package/docs/site/docs/config.html +1 -0
  269. package/docs/site/docs/extract-only.html +1 -0
  270. package/docs/site/docs/firecrawl.html +1 -0
  271. package/docs/site/docs/index.html +5 -0
  272. package/docs/site/docs/llm.html +1 -0
  273. package/docs/site/docs/openai.html +1 -0
  274. package/docs/site/docs/website.html +1 -0
  275. package/docs/site/docs/youtube.html +1 -0
  276. package/docs/site/index.html +148 -84
  277. package/docs/slides.md +74 -0
  278. package/docs/timestamps.md +103 -0
  279. package/docs/website.md +13 -0
  280. package/docs/youtube.md +16 -0
  281. package/package.json +22 -18
  282. package/dist/esm/daemon/request-settings.js +0 -91
  283. package/dist/esm/daemon/request-settings.js.map +0 -1
  284. package/dist/types/daemon/request-settings.d.ts +0 -27
@@ -0,0 +1,97 @@
1
+ import { streamTextWithContext } from '../llm/generate-text.js';
2
+ import { buildAutoModelAttempts } from '../model-auto.js';
3
+ import { parseRequestedModelId } from '../model-spec.js';
4
+ import { resolveEnvState } from '../run/run-env.js';
5
+ const SYSTEM_PROMPT = `You are Summarize Chat.
6
+
7
+ You answer questions about the current page content. Keep responses concise and grounded in the page.`;
8
+ function normalizeMessages(messages) {
9
+ return messages.map((message) => ({
10
+ ...message,
11
+ timestamp: message.timestamp ?? Date.now(),
12
+ }));
13
+ }
14
+ function buildContext({ pageUrl, pageTitle, pageContent, messages, }) {
15
+ const header = pageTitle ? `${pageTitle} (${pageUrl})` : pageUrl;
16
+ const systemPrompt = `${SYSTEM_PROMPT}\n\nPage:\n${header}\n\nContent:\n${pageContent}`;
17
+ return { systemPrompt, messages: normalizeMessages(messages) };
18
+ }
19
+ function resolveApiKeys(env) {
20
+ const envState = resolveEnvState({ env, envForRun: env, configForCli: null });
21
+ return {
22
+ xaiApiKey: envState.xaiApiKey,
23
+ openaiApiKey: envState.apiKey ?? envState.openaiTranscriptionKey,
24
+ googleApiKey: envState.googleApiKey,
25
+ anthropicApiKey: envState.anthropicApiKey,
26
+ openrouterApiKey: envState.openrouterApiKey,
27
+ };
28
+ }
29
+ export async function streamChatResponse({ env, fetchImpl, session: _session, pageUrl, pageTitle, pageContent, messages, modelOverride, pushToSession, emitMeta, }) {
30
+ const apiKeys = resolveApiKeys(env);
31
+ const context = buildContext({ pageUrl, pageTitle, pageContent, messages });
32
+ const resolveModel = () => {
33
+ if (modelOverride && modelOverride.trim().length > 0) {
34
+ const requested = parseRequestedModelId(modelOverride);
35
+ if (requested.kind === 'auto') {
36
+ return null;
37
+ }
38
+ if (requested.transport === 'cli') {
39
+ throw new Error('CLI models are not supported in the daemon');
40
+ }
41
+ return {
42
+ userModelId: requested.userModelId,
43
+ modelId: requested.llmModelId,
44
+ forceOpenRouter: requested.forceOpenRouter,
45
+ };
46
+ }
47
+ return null;
48
+ };
49
+ const resolved = resolveModel();
50
+ if (resolved) {
51
+ emitMeta({ model: resolved.userModelId });
52
+ const result = await streamTextWithContext({
53
+ modelId: resolved.modelId,
54
+ apiKeys,
55
+ context,
56
+ timeoutMs: 30_000,
57
+ fetchImpl,
58
+ forceOpenRouter: resolved.forceOpenRouter,
59
+ });
60
+ for await (const chunk of result.textStream) {
61
+ pushToSession({ event: 'content', data: chunk });
62
+ }
63
+ pushToSession({ event: 'metrics' });
64
+ return;
65
+ }
66
+ const envState = resolveEnvState({ env, envForRun: env, configForCli: null });
67
+ const attempts = buildAutoModelAttempts({
68
+ kind: 'text',
69
+ promptTokens: null,
70
+ desiredOutputTokens: null,
71
+ requiresVideoUnderstanding: false,
72
+ env: envState.envForAuto,
73
+ config: null,
74
+ catalog: null,
75
+ openrouterProvidersFromEnv: null,
76
+ cliAvailability: envState.cliAvailability,
77
+ });
78
+ const attempt = attempts.find((entry) => entry.transport !== 'cli' && entry.llmModelId);
79
+ if (!attempt || !attempt.llmModelId) {
80
+ throw new Error('No model available for chat');
81
+ }
82
+ emitMeta({ model: attempt.userModelId });
83
+ const result = await streamTextWithContext({
84
+ modelId: attempt.llmModelId,
85
+ apiKeys,
86
+ context,
87
+ timeoutMs: 30_000,
88
+ fetchImpl,
89
+ forceOpenRouter: attempt.forceOpenRouter,
90
+ });
91
+ for await (const chunk of result.textStream) {
92
+ pushToSession({ event: 'content', data: chunk });
93
+ }
94
+ pushToSession({ event: 'metrics' });
95
+ void _session;
96
+ }
97
+ //# sourceMappingURL=chat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/daemon/chat.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,10 @@ import { readDaemonConfig, writeDaemonConfig } from './config.js';
5
5
  import { DAEMON_HOST, DAEMON_PORT_DEFAULT } from './constants.js';
6
6
  import { mergeDaemonEnv } from './env-merge.js';
7
7
  import { buildEnvSnapshotFromEnv } from './env-snapshot.js';
8
- import { installLaunchAgent, isLaunchAgentLoaded, restartLaunchAgent, uninstallLaunchAgent, } from './launchd.js';
9
- import { installScheduledTask, isScheduledTaskInstalled, restartScheduledTask, uninstallScheduledTask, } from './schtasks.js';
8
+ import { installLaunchAgent, isLaunchAgentLoaded, readLaunchAgentProgramArguments, restartLaunchAgent, uninstallLaunchAgent, } from './launchd.js';
9
+ import { installScheduledTask, isScheduledTaskInstalled, readScheduledTaskCommand, restartScheduledTask, uninstallScheduledTask, } from './schtasks.js';
10
10
  import { runDaemonServer } from './server.js';
11
- import { installSystemdService, isSystemdServiceEnabled, restartSystemdService, uninstallSystemdService, } from './systemd.js';
11
+ import { installSystemdService, isSystemdServiceEnabled, readSystemdServiceExecStart, restartSystemdService, uninstallSystemdService, } from './systemd.js';
12
12
  function readArgValue(argv, name) {
13
13
  const eq = argv.find((a) => a.startsWith(`${name}=`));
14
14
  if (eq)
@@ -81,6 +81,9 @@ function resolveDaemonService() {
81
81
  }
82
82
  throw new Error(`Daemon service install not supported on ${process.platform}`);
83
83
  }
84
+ async function sleep(ms) {
85
+ await new Promise((resolve) => setTimeout(resolve, ms));
86
+ }
84
87
  async function waitForHealth({ fetchImpl, port, timeoutMs, }) {
85
88
  const url = `http://${DAEMON_HOST}:${port}/health`;
86
89
  const startedAt = Date.now();
@@ -98,6 +101,25 @@ async function waitForHealth({ fetchImpl, port, timeoutMs, }) {
98
101
  }
99
102
  throw new Error(`Daemon not reachable at ${url}`);
100
103
  }
104
+ async function waitForHealthWithRetries({ fetchImpl, port, attempts, timeoutMs, delayMs, }) {
105
+ let lastError = null;
106
+ for (let attempt = 0; attempt < attempts; attempt += 1) {
107
+ try {
108
+ await waitForHealth({ fetchImpl, port, timeoutMs });
109
+ return;
110
+ }
111
+ catch (err) {
112
+ lastError = err;
113
+ if (attempt < attempts - 1) {
114
+ const backoff = Math.round(delayMs * 1.6 ** attempt);
115
+ await sleep(backoff);
116
+ }
117
+ }
118
+ }
119
+ throw lastError instanceof Error
120
+ ? lastError
121
+ : new Error(`Daemon not reachable at ${DAEMON_HOST}:${port}`);
122
+ }
101
123
  async function checkAuth({ fetchImpl, token, port, }) {
102
124
  try {
103
125
  const res = await fetchImpl(`http://${DAEMON_HOST}:${port}/v1/ping`, {
@@ -109,6 +131,18 @@ async function checkAuth({ fetchImpl, token, port, }) {
109
131
  return false;
110
132
  }
111
133
  }
134
+ async function checkAuthWithRetries({ fetchImpl, token, port, attempts, delayMs, }) {
135
+ for (let attempt = 0; attempt < attempts; attempt += 1) {
136
+ const ok = await checkAuth({ fetchImpl, token, port });
137
+ if (ok)
138
+ return true;
139
+ if (attempt < attempts - 1) {
140
+ const backoff = Math.round(delayMs * 1.4 ** attempt);
141
+ await sleep(backoff);
142
+ }
143
+ }
144
+ return false;
145
+ }
112
146
  async function resolveCliEntrypointPathForService() {
113
147
  const argv1 = process.argv[1];
114
148
  if (!argv1)
@@ -181,6 +215,24 @@ async function resolveDaemonProgramArguments({ dev, }) {
181
215
  workingDirectory: repoRoot,
182
216
  };
183
217
  }
218
+ function formatProgramArguments(args) {
219
+ return args
220
+ .map((arg) => {
221
+ if (!/[\s"]/g.test(arg))
222
+ return arg;
223
+ return `"${arg.replace(/"/g, '\\"')}"`;
224
+ })
225
+ .join(' ');
226
+ }
227
+ async function readInstalledDaemonCommand(env) {
228
+ if (process.platform === 'darwin')
229
+ return readLaunchAgentProgramArguments(env);
230
+ if (process.platform === 'linux')
231
+ return readSystemdServiceExecStart(env);
232
+ if (process.platform === 'win32')
233
+ return readScheduledTaskCommand(env);
234
+ return null;
235
+ }
184
236
  export async function handleDaemonRequest({ normalizedArgv, envForRun, fetchImpl, stdout, stderr, }) {
185
237
  if (normalizedArgv[0]?.toLowerCase() !== 'daemon')
186
238
  return false;
@@ -206,11 +258,24 @@ export async function handleDaemonRequest({ normalizedArgv, envForRun, fetchImpl
206
258
  });
207
259
  const { programArguments, workingDirectory } = await resolveDaemonProgramArguments({ dev });
208
260
  await service.install({ env: envForRun, stdout, programArguments, workingDirectory });
209
- await waitForHealth({ fetchImpl, port, timeoutMs: 5000 });
210
- const authed = await checkAuth({ fetchImpl, token: token.trim(), port });
261
+ await waitForHealthWithRetries({ fetchImpl, port, attempts: 5, timeoutMs: 5000, delayMs: 500 });
262
+ const authed = await checkAuthWithRetries({
263
+ fetchImpl,
264
+ token: token.trim(),
265
+ port,
266
+ attempts: 5,
267
+ delayMs: 400,
268
+ });
211
269
  if (!authed)
212
270
  throw new Error('Daemon is up but auth failed (token mismatch?)');
213
271
  stdout.write(`Daemon config: ${configPath}\n`);
272
+ const installedCommand = await readInstalledDaemonCommand(envForRun);
273
+ if (installedCommand?.programArguments?.length) {
274
+ stdout.write(`Daemon command: ${formatProgramArguments(installedCommand.programArguments)}\n`);
275
+ if (installedCommand.workingDirectory) {
276
+ stdout.write(`Daemon cwd: ${installedCommand.workingDirectory}\n`);
277
+ }
278
+ }
214
279
  stdout.write(`OK: daemon is running and authenticated.\n`);
215
280
  return true;
216
281
  }
@@ -225,7 +290,7 @@ export async function handleDaemonRequest({ normalizedArgv, envForRun, fetchImpl
225
290
  const loaded = await service.isLoaded({ env: envForRun });
226
291
  const healthy = await (async () => {
227
292
  try {
228
- await waitForHealth({ fetchImpl, port: cfg.port, timeoutMs: 800 });
293
+ await waitForHealth({ fetchImpl, port: cfg.port, timeoutMs: 1000 });
229
294
  return true;
230
295
  }
231
296
  catch {
@@ -254,10 +319,40 @@ export async function handleDaemonRequest({ normalizedArgv, envForRun, fetchImpl
254
319
  return true;
255
320
  }
256
321
  await service.restart({ stdout });
257
- await waitForHealth({ fetchImpl, port: cfg.port, timeoutMs: 5000 });
258
- const authed = await checkAuth({ fetchImpl, token: cfg.token, port: cfg.port });
259
- if (!authed)
260
- throw new Error('Daemon restarted but auth failed (token mismatch?)');
322
+ const installedCommand = await readInstalledDaemonCommand(envForRun);
323
+ if (installedCommand?.programArguments?.length) {
324
+ stdout.write(`Daemon command: ${formatProgramArguments(installedCommand.programArguments)}\n`);
325
+ if (installedCommand.workingDirectory) {
326
+ stdout.write(`Daemon cwd: ${installedCommand.workingDirectory}\n`);
327
+ }
328
+ }
329
+ await sleep(8000);
330
+ let healthy = true;
331
+ try {
332
+ await waitForHealthWithRetries({
333
+ fetchImpl,
334
+ port: cfg.port,
335
+ attempts: 3,
336
+ timeoutMs: 15000,
337
+ delayMs: 500,
338
+ });
339
+ }
340
+ catch {
341
+ healthy = false;
342
+ }
343
+ const authed = healthy
344
+ ? await checkAuthWithRetries({
345
+ fetchImpl,
346
+ token: cfg.token,
347
+ port: cfg.port,
348
+ attempts: 5,
349
+ delayMs: 400,
350
+ })
351
+ : false;
352
+ if (!healthy || !authed) {
353
+ stdout.write('Restarted daemon. It is still starting; run "summarize daemon status" in a few seconds.\n');
354
+ return true;
355
+ }
261
356
  stdout.write('OK: daemon restarted and authenticated.\n');
262
357
  return true;
263
358
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/daemon/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/daemon/cli.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,9 @@ const ENV_KEYS = [
22
22
  'YT_DLP_PATH',
23
23
  'FAL_KEY',
24
24
  'SUMMARIZE_MODEL',
25
+ 'SUMMARIZE_TRANSCRIBER',
26
+ 'SUMMARIZE_ONNX_PARAKEET_CMD',
27
+ 'SUMMARIZE_ONNX_CANARY_CMD',
25
28
  'CLAUDE_PATH',
26
29
  'CODEX_PATH',
27
30
  'GEMINI_PATH',
@@ -1 +1 @@
1
- {"version":3,"file":"env-snapshot.js","sourceRoot":"","sources":["../../../src/daemon/env-snapshot.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG;IACf,MAAM;IACN,aAAa;IACb,cAAc;IACd,gBAAgB;IAChB,iBAAiB;IACjB,oBAAoB;IACpB,6BAA6B;IAC7B,cAAc;IACd,aAAa;IACb,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,iBAAiB;IACjB,iBAAiB;IACjB,8BAA8B;IAC9B,gBAAgB;IAChB,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,iBAAiB;IACjB,aAAa;IACb,SAAS;IACT,iBAAiB;IACjB,aAAa;IACb,YAAY;IACZ,aAAa;IACb,UAAU;CACF,CAAA;AAIV,MAAM,UAAU,uBAAuB,CAAC,GAAuC;IAC7E,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;QACpB,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,SAAQ;QACrC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QACxB,IAAI,CAAC,KAAK;YAAE,SAAQ;QACpB,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAClB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"env-snapshot.js","sourceRoot":"","sources":["../../../src/daemon/env-snapshot.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG;IACf,MAAM;IACN,aAAa;IACb,cAAc;IACd,gBAAgB;IAChB,iBAAiB;IACjB,oBAAoB;IACpB,6BAA6B;IAC7B,cAAc;IACd,aAAa;IACb,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,iBAAiB;IACjB,iBAAiB;IACjB,8BAA8B;IAC9B,gBAAgB;IAChB,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,iBAAiB;IACjB,aAAa;IACb,SAAS;IACT,iBAAiB;IACjB,uBAAuB;IACvB,6BAA6B;IAC7B,2BAA2B;IAC3B,aAAa;IACb,YAAY;IACZ,aAAa;IACb,UAAU;CACF,CAAA;AAIV,MAAM,UAAU,uBAAuB,CAAC,GAAuC;IAC7E,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;QACpB,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,SAAQ;QACrC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QACxB,IAAI,CAAC,KAAK;YAAE,SAAQ;QACpB,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAClB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -1,13 +1,12 @@
1
- import { execFile } from 'node:child_process';
2
1
  import { Writable } from 'node:stream';
2
+ import { execFileTracked } from '../processes.js';
3
3
  import { summarizeAsset as summarizeAssetFlow } from '../run/flows/asset/summary.js';
4
- import { resolveConfigState } from '../run/run-config.js';
5
- import { resolveEnvState } from '../run/run-env.js';
4
+ import { resolveRunContextState } from '../run/run-context.js';
6
5
  import { createRunMetrics } from '../run/run-metrics.js';
7
6
  import { resolveModelSelection } from '../run/run-models.js';
8
7
  import { resolveDesiredOutputTokens } from '../run/run-output.js';
8
+ import { resolveOutputLanguageSetting, resolveSummaryLength, } from '../run/run-settings.js';
9
9
  import { createSummaryEngine } from '../run/summary-engine.js';
10
- import { resolveDaemonOutputLanguage, resolveDaemonSummaryLength, } from './request-settings.js';
11
10
  function createWritableFromTextSink(sink) {
12
11
  const stream = new Writable({
13
12
  write(chunk, _encoding, callback) {
@@ -21,18 +20,37 @@ function createWritableFromTextSink(sink) {
21
20
  return stream;
22
21
  }
23
22
  export function createDaemonUrlFlowContext(args) {
24
- const { env, fetchImpl, cache, modelOverride, promptOverride, lengthRaw, languageRaw, maxExtractCharacters, overrides, hooks, runStartedAtMs, stdoutSink, } = args;
25
- const envForRun = env;
23
+ const { env, fetchImpl, cache, mediaCache = null, modelOverride, promptOverride, lengthRaw, languageRaw, maxExtractCharacters, format, overrides, extractOnly, slides, hooks, runStartedAtMs, stdoutSink, } = args;
24
+ const envForRun = { ...env };
26
25
  const languageExplicitlySet = typeof languageRaw === 'string' && Boolean(languageRaw.trim());
27
- const { config, configPath, outputLanguage: outputLanguageFromConfig, openaiWhisperUsdPerMinute, videoMode, cliConfigForRun, configForCli, openaiUseChatCompletions, configModelLabel, } = resolveConfigState({
26
+ const { lengthArg } = resolveSummaryLength(lengthRaw);
27
+ const resolvedOverrides = overrides ?? {
28
+ firecrawlMode: null,
29
+ markdownMode: null,
30
+ preprocessMode: null,
31
+ youtubeMode: null,
32
+ videoMode: null,
33
+ transcriptTimestamps: null,
34
+ forceSummary: null,
35
+ timeoutMs: null,
36
+ retries: null,
37
+ maxOutputTokensArg: null,
38
+ transcriber: null,
39
+ };
40
+ if (resolvedOverrides.transcriber) {
41
+ envForRun.SUMMARIZE_TRANSCRIBER = resolvedOverrides.transcriber;
42
+ }
43
+ const videoModeOverride = resolvedOverrides.videoMode;
44
+ const resolvedFormat = format === 'markdown' ? 'markdown' : 'text';
45
+ const { config, configPath, outputLanguage: outputLanguageFromConfig, openaiWhisperUsdPerMinute, videoMode, cliConfigForRun, configForCli, openaiUseChatCompletions, configModelLabel, apiKey, openrouterApiKey, openrouterConfigured, openaiTranscriptionKey, xaiApiKey, googleApiKey, anthropicApiKey, zaiApiKey, zaiBaseUrl, providerBaseUrls, firecrawlApiKey, firecrawlConfigured, googleConfigured, anthropicConfigured, cliAvailability, envForAuto, apifyToken, ytDlpPath, falApiKey, } = resolveRunContextState({
46
+ env: envForRun,
28
47
  envForRun,
29
- programOpts: { videoMode: 'auto' },
48
+ programOpts: { videoMode: videoModeOverride ?? 'auto' },
30
49
  languageExplicitlySet,
31
- videoModeExplicitlySet: false,
50
+ videoModeExplicitlySet: videoModeOverride != null,
32
51
  cliFlagPresent: false,
33
52
  cliProviderArg: null,
34
53
  });
35
- const { apiKey, openrouterApiKey, openrouterConfigured, openaiTranscriptionKey, xaiApiKey, googleApiKey, anthropicApiKey, zaiApiKey, zaiBaseUrl, providerBaseUrls, firecrawlApiKey, firecrawlConfigured, googleConfigured, anthropicConfigured, cliAvailability, envForAuto, apifyToken, ytDlpPath, falApiKey, } = resolveEnvState({ env: envForRun, envForRun, configForCli });
36
54
  const { requestedModel, requestedModelInput, requestedModelLabel, isNamedModelSelection, wantsFreeNamedModel, configForModelSelection, isFallbackModel, } = resolveModelSelection({
37
55
  config,
38
56
  configForCli,
@@ -41,16 +59,6 @@ export function createDaemonUrlFlowContext(args) {
41
59
  explicitModelArg: modelOverride?.trim() ? modelOverride.trim() : null,
42
60
  });
43
61
  const fixedModelSpec = requestedModel.kind === 'fixed' ? requestedModel : null;
44
- const { lengthArg } = resolveDaemonSummaryLength(lengthRaw);
45
- const resolvedOverrides = overrides ?? {
46
- firecrawlMode: null,
47
- markdownMode: null,
48
- preprocessMode: null,
49
- youtubeMode: null,
50
- timeoutMs: null,
51
- retries: null,
52
- maxOutputTokensArg: null,
53
- };
54
62
  const maxOutputTokensArg = resolvedOverrides.maxOutputTokensArg;
55
63
  const desiredOutputTokens = resolveDesiredOutputTokens({ lengthArg, maxOutputTokensArg });
56
64
  const metrics = createRunMetrics({ env: envForRun, fetchImpl, maxOutputTokensArg });
@@ -59,18 +67,19 @@ export function createDaemonUrlFlowContext(args) {
59
67
  const timeoutMs = resolvedOverrides.timeoutMs ?? 120_000;
60
68
  const retries = resolvedOverrides.retries ?? 1;
61
69
  const firecrawlMode = resolvedOverrides.firecrawlMode ?? 'off';
62
- const markdownMode = resolvedOverrides.markdownMode ?? 'readability';
63
- const preprocessMode = resolvedOverrides.preprocessMode ?? 'off';
70
+ const markdownMode = resolvedOverrides.markdownMode ?? (resolvedFormat === 'markdown' ? 'readability' : 'off');
71
+ const preprocessMode = resolvedOverrides.preprocessMode ?? 'auto';
64
72
  const youtubeMode = resolvedOverrides.youtubeMode ?? 'auto';
65
73
  const summaryEngine = createSummaryEngine({
66
74
  env: envForRun,
67
75
  envForRun,
68
76
  stdout,
69
77
  stderr,
70
- execFileImpl: execFile,
78
+ execFileImpl: execFileTracked,
71
79
  timeoutMs,
72
80
  retries,
73
81
  streamingEnabled: true,
82
+ streamingOutputMode: 'delta',
74
83
  plain: true,
75
84
  verbose: false,
76
85
  verboseColor: false,
@@ -97,7 +106,7 @@ export function createDaemonUrlFlowContext(args) {
97
106
  zai: { apiKey: zaiApiKey, baseUrl: zaiBaseUrl },
98
107
  providerBaseUrls,
99
108
  });
100
- const outputLanguage = resolveDaemonOutputLanguage({
109
+ const outputLanguage = resolveOutputLanguageSetting({
101
110
  raw: languageRaw,
102
111
  fallback: outputLanguageFromConfig,
103
112
  });
@@ -115,11 +124,13 @@ export function createDaemonUrlFlowContext(args) {
115
124
  envForRun,
116
125
  stdout,
117
126
  stderr,
118
- execFileImpl: execFile,
127
+ execFileImpl: execFileTracked,
119
128
  timeoutMs,
120
129
  preprocessMode,
121
130
  format: 'text',
131
+ extractMode: extractOnly ?? false,
122
132
  lengthArg,
133
+ forceSummary: resolvedOverrides.forceSummary ?? false,
123
134
  outputLanguage,
124
135
  videoMode,
125
136
  fixedModelSpec,
@@ -155,6 +166,8 @@ export function createDaemonUrlFlowContext(args) {
155
166
  estimateCostUsd: metrics.estimateCostUsd,
156
167
  llmCalls: metrics.llmCalls,
157
168
  cache,
169
+ summaryCacheBypass: false,
170
+ mediaCache,
158
171
  apiStatus: {
159
172
  xaiApiKey,
160
173
  apiKey,
@@ -174,27 +187,30 @@ export function createDaemonUrlFlowContext(args) {
174
187
  envForRun,
175
188
  stdout,
176
189
  stderr,
177
- execFileImpl: execFile,
190
+ execFileImpl: execFileTracked,
178
191
  fetch: metrics.trackedFetch,
179
192
  },
180
193
  flags: {
181
194
  timeoutMs,
182
195
  maxExtractCharacters,
183
196
  retries,
184
- format: 'text',
197
+ format: resolvedFormat,
185
198
  markdownMode,
186
199
  preprocessMode,
187
200
  youtubeMode,
188
201
  firecrawlMode,
189
202
  videoMode,
203
+ transcriptTimestamps: resolvedOverrides.transcriptTimestamps ?? false,
190
204
  outputLanguage,
191
205
  lengthArg,
206
+ forceSummary: resolvedOverrides.forceSummary ?? false,
192
207
  promptOverride,
193
208
  lengthInstruction,
194
209
  languageInstruction,
210
+ summaryCacheBypass: false,
195
211
  maxOutputTokensArg,
196
212
  json: false,
197
- extractMode: false,
213
+ extractMode: extractOnly ?? false,
198
214
  metricsEnabled: false,
199
215
  metricsDetailed: false,
200
216
  shouldComputeReport: false,
@@ -202,10 +218,14 @@ export function createDaemonUrlFlowContext(args) {
202
218
  verbose: false,
203
219
  verboseColor: false,
204
220
  progressEnabled: false,
221
+ streamMode: 'on',
205
222
  streamingEnabled: true,
206
223
  plain: true,
207
224
  configPath,
208
225
  configModelLabel,
226
+ slides: slides ?? null,
227
+ slidesDebug: false,
228
+ slidesOutput: false,
209
229
  },
210
230
  model: {
211
231
  requestedModel,
@@ -245,9 +265,14 @@ export function createDaemonUrlFlowContext(args) {
245
265
  llmCalls: metrics.llmCalls,
246
266
  },
247
267
  cache,
268
+ mediaCache,
248
269
  hooks: {
249
270
  onModelChosen: hooks?.onModelChosen ?? null,
250
271
  onExtracted: hooks?.onExtracted ?? null,
272
+ onSlidesExtracted: hooks?.onSlidesExtracted ?? null,
273
+ onSlidesProgress: hooks?.onSlidesProgress ?? null,
274
+ onSlidesDone: hooks?.onSlidesDone ?? null,
275
+ onSlideChunk: hooks?.onSlideChunk ?? undefined,
251
276
  onLinkPreviewProgress: hooks?.onLinkPreviewProgress ?? null,
252
277
  onSummaryCached: hooks?.onSummaryCached ?? null,
253
278
  setTranscriptionCost: metrics.setTranscriptionCost,
@@ -1 +1 @@
1
- {"version":3,"file":"flow-context.js","sourceRoot":"","sources":["../../../src/daemon/flow-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow-context.js","sourceRoot":"","sources":["../../../src/daemon/flow-context.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,33 @@ function plistEscape(value) {
31
31
  .replaceAll('"', '&quot;')
32
32
  .replaceAll("'", '&apos;');
33
33
  }
34
+ function plistUnescape(value) {
35
+ return value
36
+ .replaceAll('&apos;', "'")
37
+ .replaceAll('&quot;', '"')
38
+ .replaceAll('&gt;', '>')
39
+ .replaceAll('&lt;', '<')
40
+ .replaceAll('&amp;', '&');
41
+ }
42
+ export async function readLaunchAgentProgramArguments(env) {
43
+ const plistPath = resolveLaunchAgentPlistPath(env);
44
+ try {
45
+ const plist = await fs.readFile(plistPath, 'utf8');
46
+ const programMatch = plist.match(/<key>ProgramArguments<\/key>\s*<array>([\s\S]*?)<\/array>/i);
47
+ if (!programMatch)
48
+ return null;
49
+ const args = Array.from(programMatch[1].matchAll(/<string>([\s\S]*?)<\/string>/gi)).map((match) => plistUnescape(match[1] ?? '').trim());
50
+ const workingDirMatch = plist.match(/<key>WorkingDirectory<\/key>\s*<string>([\s\S]*?)<\/string>/i);
51
+ const workingDirectory = workingDirMatch ? plistUnescape(workingDirMatch[1] ?? '').trim() : '';
52
+ return {
53
+ programArguments: args.filter(Boolean),
54
+ ...(workingDirectory ? { workingDirectory } : {}),
55
+ };
56
+ }
57
+ catch {
58
+ return null;
59
+ }
60
+ }
34
61
  export function buildLaunchAgentPlist({ label = DAEMON_LAUNCH_AGENT_LABEL, programArguments, workingDirectory, stdoutPath, stderrPath, }) {
35
62
  const argsXml = programArguments
36
63
  .map((arg) => `\n <string>${plistEscape(arg)}</string>`)