@getpaseo/server 0.1.34 → 0.1.37

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 (163) hide show
  1. package/dist/scripts/daemon-runner.js +31 -1
  2. package/dist/scripts/daemon-runner.js.map +1 -1
  3. package/dist/scripts/supervisor.js +16 -6
  4. package/dist/scripts/supervisor.js.map +1 -1
  5. package/dist/server/client/daemon-client.d.ts +175 -0
  6. package/dist/server/client/daemon-client.d.ts.map +1 -1
  7. package/dist/server/client/daemon-client.js +235 -0
  8. package/dist/server/client/daemon-client.js.map +1 -1
  9. package/dist/server/server/agent/agent-manager.d.ts +13 -0
  10. package/dist/server/server/agent/agent-manager.d.ts.map +1 -1
  11. package/dist/server/server/agent/agent-manager.js +53 -0
  12. package/dist/server/server/agent/agent-manager.js.map +1 -1
  13. package/dist/server/server/agent/agent-storage.d.ts +10 -10
  14. package/dist/server/server/agent/agent-storage.js +9 -4
  15. package/dist/server/server/agent/agent-storage.js.map +1 -1
  16. package/dist/server/server/agent/provider-launch-config.d.ts.map +1 -1
  17. package/dist/server/server/agent/provider-launch-config.js +38 -1
  18. package/dist/server/server/agent/provider-launch-config.js.map +1 -1
  19. package/dist/server/server/agent/providers/claude-agent.d.ts.map +1 -1
  20. package/dist/server/server/agent/providers/claude-agent.js +24 -5
  21. package/dist/server/server/agent/providers/claude-agent.js.map +1 -1
  22. package/dist/server/server/agent/providers/codex/tool-call-mapper.d.ts.map +1 -1
  23. package/dist/server/server/agent/providers/codex/tool-call-mapper.js +42 -7
  24. package/dist/server/server/agent/providers/codex/tool-call-mapper.js.map +1 -1
  25. package/dist/server/server/agent/providers/opencode-agent.d.ts.map +1 -1
  26. package/dist/server/server/agent/providers/opencode-agent.js +106 -0
  27. package/dist/server/server/agent/providers/opencode-agent.js.map +1 -1
  28. package/dist/server/server/agent-attention-policy.d.ts +1 -1
  29. package/dist/server/server/agent-attention-policy.d.ts.map +1 -1
  30. package/dist/server/server/bootstrap.d.ts.map +1 -1
  31. package/dist/server/server/bootstrap.js +57 -18
  32. package/dist/server/server/bootstrap.js.map +1 -1
  33. package/dist/server/server/chat/chat-mentions.d.ts +31 -0
  34. package/dist/server/server/chat/chat-mentions.d.ts.map +1 -0
  35. package/dist/server/server/chat/chat-mentions.js +71 -0
  36. package/dist/server/server/chat/chat-mentions.js.map +1 -0
  37. package/dist/server/server/chat/chat-rpc-schemas.d.ts +728 -0
  38. package/dist/server/server/chat/chat-rpc-schemas.d.ts.map +1 -0
  39. package/dist/server/server/chat/chat-rpc-schemas.js +103 -0
  40. package/dist/server/server/chat/chat-rpc-schemas.js.map +1 -0
  41. package/dist/server/server/chat/chat-service.d.ts +74 -0
  42. package/dist/server/server/chat/chat-service.d.ts.map +1 -0
  43. package/dist/server/server/chat/chat-service.js +330 -0
  44. package/dist/server/server/chat/chat-service.js.map +1 -0
  45. package/dist/server/server/chat/chat-types.d.ts +75 -0
  46. package/dist/server/server/chat/chat-types.d.ts.map +1 -0
  47. package/dist/server/server/chat/chat-types.js +22 -0
  48. package/dist/server/server/chat/chat-types.js.map +1 -0
  49. package/dist/server/server/checkout-diff-manager.d.ts +41 -0
  50. package/dist/server/server/checkout-diff-manager.d.ts.map +1 -0
  51. package/dist/server/server/checkout-diff-manager.js +272 -0
  52. package/dist/server/server/checkout-diff-manager.js.map +1 -0
  53. package/dist/server/server/checkout-git-utils.d.ts +9 -0
  54. package/dist/server/server/checkout-git-utils.d.ts.map +1 -0
  55. package/dist/server/server/checkout-git-utils.js +37 -0
  56. package/dist/server/server/checkout-git-utils.js.map +1 -0
  57. package/dist/server/server/loop/rpc-schemas.d.ts +2937 -0
  58. package/dist/server/server/loop/rpc-schemas.d.ts.map +1 -0
  59. package/dist/server/server/loop/rpc-schemas.js +159 -0
  60. package/dist/server/server/loop/rpc-schemas.js.map +1 -0
  61. package/dist/server/server/loop-service.d.ts +520 -0
  62. package/dist/server/server/loop-service.d.ts.map +1 -0
  63. package/dist/server/server/loop-service.js +741 -0
  64. package/dist/server/server/loop-service.js.map +1 -0
  65. package/dist/server/server/persisted-config.d.ts +10 -10
  66. package/dist/server/server/schedule/cron.d.ts +4 -0
  67. package/dist/server/server/schedule/cron.d.ts.map +1 -0
  68. package/dist/server/server/schedule/cron.js +103 -0
  69. package/dist/server/server/schedule/cron.js.map +1 -0
  70. package/dist/server/server/schedule/rpc-schemas.d.ts +2773 -0
  71. package/dist/server/server/schedule/rpc-schemas.d.ts.map +1 -0
  72. package/dist/server/server/schedule/rpc-schemas.js +112 -0
  73. package/dist/server/server/schedule/rpc-schemas.js.map +1 -0
  74. package/dist/server/server/schedule/service.d.ts +39 -0
  75. package/dist/server/server/schedule/service.d.ts.map +1 -0
  76. package/dist/server/server/schedule/service.js +397 -0
  77. package/dist/server/server/schedule/service.js.map +1 -0
  78. package/dist/server/server/schedule/store.d.ts +13 -0
  79. package/dist/server/server/schedule/store.d.ts.map +1 -0
  80. package/dist/server/server/schedule/store.js +56 -0
  81. package/dist/server/server/schedule/store.js.map +1 -0
  82. package/dist/server/server/schedule/types.d.ts +710 -0
  83. package/dist/server/server/schedule/types.d.ts.map +1 -0
  84. package/dist/server/server/schedule/types.js +73 -0
  85. package/dist/server/server/schedule/types.js.map +1 -0
  86. package/dist/server/server/session.d.ts +40 -19
  87. package/dist/server/server/session.d.ts.map +1 -1
  88. package/dist/server/server/session.js +778 -567
  89. package/dist/server/server/session.js.map +1 -1
  90. package/dist/server/server/speech/providers/local/sherpa/sherpa-runtime-env.d.ts.map +1 -1
  91. package/dist/server/server/speech/providers/local/sherpa/sherpa-runtime-env.js +19 -3
  92. package/dist/server/server/speech/providers/local/sherpa/sherpa-runtime-env.js.map +1 -1
  93. package/dist/server/server/websocket-server.d.ts +12 -1
  94. package/dist/server/server/websocket-server.d.ts.map +1 -1
  95. package/dist/server/server/websocket-server.js +71 -14
  96. package/dist/server/server/websocket-server.js.map +1 -1
  97. package/dist/server/shared/messages.d.ts +37933 -16895
  98. package/dist/server/shared/messages.d.ts.map +1 -1
  99. package/dist/server/shared/messages.js +41 -0
  100. package/dist/server/shared/messages.js.map +1 -1
  101. package/dist/server/terminal/terminal-manager.js +2 -2
  102. package/dist/server/terminal/terminal-manager.js.map +1 -1
  103. package/dist/server/utils/checkout-git.d.ts +12 -0
  104. package/dist/server/utils/checkout-git.d.ts.map +1 -1
  105. package/dist/server/utils/checkout-git.js +73 -3
  106. package/dist/server/utils/checkout-git.js.map +1 -1
  107. package/dist/server/utils/directory-suggestions.js +20 -4
  108. package/dist/server/utils/directory-suggestions.js.map +1 -1
  109. package/dist/src/server/agent/agent-manager.js +53 -0
  110. package/dist/src/server/agent/agent-manager.js.map +1 -1
  111. package/dist/src/server/agent/agent-storage.js +9 -4
  112. package/dist/src/server/agent/agent-storage.js.map +1 -1
  113. package/dist/src/server/agent/provider-launch-config.js +38 -1
  114. package/dist/src/server/agent/provider-launch-config.js.map +1 -1
  115. package/dist/src/server/agent/providers/claude-agent.js +24 -5
  116. package/dist/src/server/agent/providers/claude-agent.js.map +1 -1
  117. package/dist/src/server/agent/providers/codex/tool-call-mapper.js +42 -7
  118. package/dist/src/server/agent/providers/codex/tool-call-mapper.js.map +1 -1
  119. package/dist/src/server/agent/providers/opencode-agent.js +106 -0
  120. package/dist/src/server/agent/providers/opencode-agent.js.map +1 -1
  121. package/dist/src/server/bootstrap.js +57 -18
  122. package/dist/src/server/bootstrap.js.map +1 -1
  123. package/dist/src/server/chat/chat-mentions.js +71 -0
  124. package/dist/src/server/chat/chat-mentions.js.map +1 -0
  125. package/dist/src/server/chat/chat-rpc-schemas.js +103 -0
  126. package/dist/src/server/chat/chat-rpc-schemas.js.map +1 -0
  127. package/dist/src/server/chat/chat-service.js +330 -0
  128. package/dist/src/server/chat/chat-service.js.map +1 -0
  129. package/dist/src/server/chat/chat-types.js +22 -0
  130. package/dist/src/server/chat/chat-types.js.map +1 -0
  131. package/dist/src/server/checkout-diff-manager.js +272 -0
  132. package/dist/src/server/checkout-diff-manager.js.map +1 -0
  133. package/dist/src/server/checkout-git-utils.js +37 -0
  134. package/dist/src/server/checkout-git-utils.js.map +1 -0
  135. package/dist/src/server/loop/rpc-schemas.js +159 -0
  136. package/dist/src/server/loop/rpc-schemas.js.map +1 -0
  137. package/dist/src/server/loop-service.js +741 -0
  138. package/dist/src/server/loop-service.js.map +1 -0
  139. package/dist/src/server/schedule/cron.js +103 -0
  140. package/dist/src/server/schedule/cron.js.map +1 -0
  141. package/dist/src/server/schedule/rpc-schemas.js +112 -0
  142. package/dist/src/server/schedule/rpc-schemas.js.map +1 -0
  143. package/dist/src/server/schedule/service.js +397 -0
  144. package/dist/src/server/schedule/service.js.map +1 -0
  145. package/dist/src/server/schedule/store.js +56 -0
  146. package/dist/src/server/schedule/store.js.map +1 -0
  147. package/dist/src/server/schedule/types.js +73 -0
  148. package/dist/src/server/schedule/types.js.map +1 -0
  149. package/dist/src/server/session.js +778 -567
  150. package/dist/src/server/session.js.map +1 -1
  151. package/dist/src/server/speech/providers/local/sherpa/sherpa-runtime-env.js +19 -3
  152. package/dist/src/server/speech/providers/local/sherpa/sherpa-runtime-env.js.map +1 -1
  153. package/dist/src/server/websocket-server.js +71 -14
  154. package/dist/src/server/websocket-server.js.map +1 -1
  155. package/dist/src/shared/messages.js +41 -0
  156. package/dist/src/shared/messages.js.map +1 -1
  157. package/dist/src/terminal/terminal-manager.js +2 -2
  158. package/dist/src/terminal/terminal-manager.js.map +1 -1
  159. package/dist/src/utils/checkout-git.js +73 -3
  160. package/dist/src/utils/checkout-git.js.map +1 -1
  161. package/dist/src/utils/directory-suggestions.js +20 -4
  162. package/dist/src/utils/directory-suggestions.js.map +1 -1
  163. package/package.json +4 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loop-service.js","sourceRoot":"","sources":["../../../src/server/loop-service.ts"],"names":[],"mappings":"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"}
@@ -363,11 +363,11 @@ export declare const PersistedConfigSchema: z.ZodObject<{
363
363
  level: z.ZodOptional<z.ZodEnum<["trace", "debug", "info", "warn", "error", "fatal"]>>;
364
364
  format: z.ZodOptional<z.ZodEnum<["pretty", "json"]>>;
365
365
  }, "strict", z.ZodTypeAny, {
366
- format?: "pretty" | "json" | undefined;
367
366
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
368
- }, {
369
367
  format?: "pretty" | "json" | undefined;
368
+ }, {
370
369
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
370
+ format?: "pretty" | "json" | undefined;
371
371
  }>>;
372
372
  file: z.ZodOptional<z.ZodObject<{
373
373
  level: z.ZodOptional<z.ZodEnum<["trace", "debug", "info", "warn", "error", "fatal"]>>;
@@ -398,6 +398,7 @@ export declare const PersistedConfigSchema: z.ZodObject<{
398
398
  } | undefined;
399
399
  }>>;
400
400
  }, "strict", z.ZodTypeAny, {
401
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
401
402
  format?: "pretty" | "json" | undefined;
402
403
  file?: {
403
404
  path?: string | undefined;
@@ -407,12 +408,12 @@ export declare const PersistedConfigSchema: z.ZodObject<{
407
408
  maxFiles?: number | undefined;
408
409
  } | undefined;
409
410
  } | undefined;
410
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
411
411
  console?: {
412
- format?: "pretty" | "json" | undefined;
413
412
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
413
+ format?: "pretty" | "json" | undefined;
414
414
  } | undefined;
415
415
  }, {
416
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
416
417
  format?: "pretty" | "json" | undefined;
417
418
  file?: {
418
419
  path?: string | undefined;
@@ -422,14 +423,14 @@ export declare const PersistedConfigSchema: z.ZodObject<{
422
423
  maxFiles?: number | undefined;
423
424
  } | undefined;
424
425
  } | undefined;
425
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
426
426
  console?: {
427
- format?: "pretty" | "json" | undefined;
428
427
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
428
+ format?: "pretty" | "json" | undefined;
429
429
  } | undefined;
430
430
  }>>;
431
431
  }, "strict", z.ZodTypeAny, {
432
432
  log?: {
433
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
433
434
  format?: "pretty" | "json" | undefined;
434
435
  file?: {
435
436
  path?: string | undefined;
@@ -439,10 +440,9 @@ export declare const PersistedConfigSchema: z.ZodObject<{
439
440
  maxFiles?: number | undefined;
440
441
  } | undefined;
441
442
  } | undefined;
442
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
443
443
  console?: {
444
- format?: "pretty" | "json" | undefined;
445
444
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
445
+ format?: "pretty" | "json" | undefined;
446
446
  } | undefined;
447
447
  } | undefined;
448
448
  version?: 1 | undefined;
@@ -519,6 +519,7 @@ export declare const PersistedConfigSchema: z.ZodObject<{
519
519
  } | undefined;
520
520
  }, {
521
521
  log?: {
522
+ level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
522
523
  format?: "pretty" | "json" | undefined;
523
524
  file?: {
524
525
  path?: string | undefined;
@@ -528,10 +529,9 @@ export declare const PersistedConfigSchema: z.ZodObject<{
528
529
  maxFiles?: number | undefined;
529
530
  } | undefined;
530
531
  } | undefined;
531
- level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
532
532
  console?: {
533
- format?: "pretty" | "json" | undefined;
534
533
  level?: "error" | "info" | "fatal" | "warn" | "debug" | "trace" | undefined;
534
+ format?: "pretty" | "json" | undefined;
535
535
  } | undefined;
536
536
  } | undefined;
537
537
  version?: 1 | undefined;
@@ -0,0 +1,4 @@
1
+ import type { ScheduleCadence } from "./types.js";
2
+ export declare function validateScheduleCadence(cadence: ScheduleCadence): void;
3
+ export declare function computeNextRunAt(cadence: ScheduleCadence, after: Date): Date;
4
+ //# sourceMappingURL=cron.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cron.d.ts","sourceRoot":"","sources":["../../../../src/server/schedule/cron.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAiHlD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAItE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,CA8B5E"}
@@ -0,0 +1,103 @@
1
+ function buildValueSet(values) {
2
+ return new Set(values);
3
+ }
4
+ function createRange(start, end, step) {
5
+ const values = [];
6
+ for (let value = start; value <= end; value += step) {
7
+ values.push(value);
8
+ }
9
+ return values;
10
+ }
11
+ function parseField(source, bounds) {
12
+ const trimmed = source.trim();
13
+ if (!trimmed) {
14
+ throw new Error(`Invalid cron ${bounds.name} field`);
15
+ }
16
+ const values = new Set();
17
+ for (const rawPart of trimmed.split(",")) {
18
+ const part = rawPart.trim();
19
+ if (!part) {
20
+ throw new Error(`Invalid cron ${bounds.name} field`);
21
+ }
22
+ const [base, stepSource] = part.split("/");
23
+ const step = stepSource === undefined ? 1 : Number.parseInt(stepSource, 10);
24
+ if (!Number.isInteger(step) || step <= 0) {
25
+ throw new Error(`Invalid cron ${bounds.name} step`);
26
+ }
27
+ if (base === "*") {
28
+ for (const value of createRange(bounds.min, bounds.max, step)) {
29
+ values.add(value);
30
+ }
31
+ continue;
32
+ }
33
+ const rangeMatch = base.match(/^(\d+)-(\d+)$/);
34
+ if (rangeMatch) {
35
+ const start = Number.parseInt(rangeMatch[1], 10);
36
+ const end = Number.parseInt(rangeMatch[2], 10);
37
+ if (start > end || start < bounds.min || end > bounds.max) {
38
+ throw new Error(`Invalid cron ${bounds.name} range`);
39
+ }
40
+ for (const value of createRange(start, end, step)) {
41
+ values.add(value);
42
+ }
43
+ continue;
44
+ }
45
+ const value = Number.parseInt(base, 10);
46
+ if (!Number.isInteger(value) || value < bounds.min || value > bounds.max) {
47
+ throw new Error(`Invalid cron ${bounds.name} value`);
48
+ }
49
+ values.add(value);
50
+ }
51
+ const allowed = buildValueSet(values);
52
+ return {
53
+ matches(value) {
54
+ return allowed.has(value);
55
+ },
56
+ };
57
+ }
58
+ function parseCronExpression(expression) {
59
+ const parts = expression.trim().split(/\s+/);
60
+ if (parts.length !== 5) {
61
+ throw new Error("Cron expressions must have 5 fields");
62
+ }
63
+ return {
64
+ minute: parseField(parts[0], { min: 0, max: 59, name: "minute" }),
65
+ hour: parseField(parts[1], { min: 0, max: 23, name: "hour" }),
66
+ dayOfMonth: parseField(parts[2], { min: 1, max: 31, name: "day-of-month" }),
67
+ month: parseField(parts[3], { min: 1, max: 12, name: "month" }),
68
+ dayOfWeek: parseField(parts[4], { min: 0, max: 6, name: "day-of-week" }),
69
+ };
70
+ }
71
+ function startOfNextMinute(date) {
72
+ return new Date(Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), date.getUTCHours(), date.getUTCMinutes() + 1, 0, 0));
73
+ }
74
+ export function validateScheduleCadence(cadence) {
75
+ if (cadence.type === "cron") {
76
+ parseCronExpression(cadence.expression);
77
+ }
78
+ }
79
+ export function computeNextRunAt(cadence, after) {
80
+ if (cadence.type === "every") {
81
+ return new Date(after.getTime() + cadence.everyMs);
82
+ }
83
+ const cron = parseCronExpression(cadence.expression);
84
+ const limit = 366 * 24 * 60;
85
+ let cursor = startOfNextMinute(after);
86
+ for (let index = 0; index < limit; index += 1) {
87
+ const minute = cursor.getUTCMinutes();
88
+ const hour = cursor.getUTCHours();
89
+ const dayOfMonth = cursor.getUTCDate();
90
+ const month = cursor.getUTCMonth() + 1;
91
+ const dayOfWeek = cursor.getUTCDay();
92
+ if (cron.minute.matches(minute) &&
93
+ cron.hour.matches(hour) &&
94
+ cron.dayOfMonth.matches(dayOfMonth) &&
95
+ cron.month.matches(month) &&
96
+ cron.dayOfWeek.matches(dayOfWeek)) {
97
+ return cursor;
98
+ }
99
+ cursor = new Date(cursor.getTime() + 60000);
100
+ }
101
+ throw new Error(`Unable to compute next run time for cron expression: ${cadence.expression}`);
102
+ }
103
+ //# sourceMappingURL=cron.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cron.js","sourceRoot":"","sources":["../../../../src/server/schedule/cron.ts"],"names":[],"mappings":"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"}