@getpaseo/server 0.1.37 → 0.1.38
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.
- package/dist/scripts/dev-runner.js +1 -1
- package/dist/scripts/dev-runner.js.map +1 -1
- package/dist/scripts/{daemon-runner.js → supervisor-entrypoint.js} +7 -9
- package/dist/scripts/supervisor-entrypoint.js.map +1 -0
- package/dist/scripts/supervisor.js +17 -1
- package/dist/scripts/supervisor.js.map +1 -1
- package/dist/server/server/bootstrap.d.ts +0 -4
- package/dist/server/server/bootstrap.d.ts.map +1 -1
- package/dist/server/server/bootstrap.js +8 -22
- package/dist/server/server/bootstrap.js.map +1 -1
- package/dist/server/server/index.js +0 -4
- package/dist/server/server/index.js.map +1 -1
- package/dist/server/server/pid-lock.d.ts +7 -2
- package/dist/server/server/pid-lock.d.ts.map +1 -1
- package/dist/server/server/pid-lock.js +21 -0
- package/dist/server/server/pid-lock.js.map +1 -1
- package/dist/server/server/session.d.ts.map +1 -1
- package/dist/server/server/session.js +2 -2
- package/dist/server/server/session.js.map +1 -1
- package/dist/src/server/pid-lock.js +21 -0
- package/dist/src/server/pid-lock.js.map +1 -1
- package/package.json +3 -3
- package/dist/scripts/daemon-runner.js.map +0 -1
- package/dist/src/server/agent/activity-curator.js +0 -243
- package/dist/src/server/agent/activity-curator.js.map +0 -1
- package/dist/src/server/agent/agent-manager.js +0 -1855
- package/dist/src/server/agent/agent-manager.js.map +0 -1
- package/dist/src/server/agent/agent-metadata-generator.js +0 -161
- package/dist/src/server/agent/agent-metadata-generator.js.map +0 -1
- package/dist/src/server/agent/agent-projections.js +0 -254
- package/dist/src/server/agent/agent-projections.js.map +0 -1
- package/dist/src/server/agent/agent-response-loop.js +0 -304
- package/dist/src/server/agent/agent-response-loop.js.map +0 -1
- package/dist/src/server/agent/agent-sdk-types.js +0 -12
- package/dist/src/server/agent/agent-sdk-types.js.map +0 -1
- package/dist/src/server/agent/agent-storage.js +0 -302
- package/dist/src/server/agent/agent-storage.js.map +0 -1
- package/dist/src/server/agent/agent-title-limits.js +0 -3
- package/dist/src/server/agent/agent-title-limits.js.map +0 -1
- package/dist/src/server/agent/audio-utils.js +0 -19
- package/dist/src/server/agent/audio-utils.js.map +0 -1
- package/dist/src/server/agent/dictation-debug.js +0 -50
- package/dist/src/server/agent/dictation-debug.js.map +0 -1
- package/dist/src/server/agent/mcp-server.js +0 -754
- package/dist/src/server/agent/mcp-server.js.map +0 -1
- package/dist/src/server/agent/orchestrator-instructions.js +0 -51
- package/dist/src/server/agent/orchestrator-instructions.js.map +0 -1
- package/dist/src/server/agent/pcm16-resampler.js +0 -63
- package/dist/src/server/agent/pcm16-resampler.js.map +0 -1
- package/dist/src/server/agent/provider-launch-config.js +0 -213
- package/dist/src/server/agent/provider-launch-config.js.map +0 -1
- package/dist/src/server/agent/provider-manifest.js +0 -127
- package/dist/src/server/agent/provider-manifest.js.map +0 -1
- package/dist/src/server/agent/provider-registry.js +0 -45
- package/dist/src/server/agent/provider-registry.js.map +0 -1
- package/dist/src/server/agent/providers/claude/partial-json.js +0 -306
- package/dist/src/server/agent/providers/claude/partial-json.js.map +0 -1
- package/dist/src/server/agent/providers/claude/sdk-model-resolver.js +0 -104
- package/dist/src/server/agent/providers/claude/sdk-model-resolver.js.map +0 -1
- package/dist/src/server/agent/providers/claude/sidechain-tracker.js +0 -230
- package/dist/src/server/agent/providers/claude/sidechain-tracker.js.map +0 -1
- package/dist/src/server/agent/providers/claude/task-notification-tool-call.js +0 -267
- package/dist/src/server/agent/providers/claude/task-notification-tool-call.js.map +0 -1
- package/dist/src/server/agent/providers/claude/tool-call-detail-parser.js +0 -121
- package/dist/src/server/agent/providers/claude/tool-call-detail-parser.js.map +0 -1
- package/dist/src/server/agent/providers/claude/tool-call-mapper.js +0 -252
- package/dist/src/server/agent/providers/claude/tool-call-mapper.js.map +0 -1
- package/dist/src/server/agent/providers/claude-agent.js +0 -3166
- package/dist/src/server/agent/providers/claude-agent.js.map +0 -1
- package/dist/src/server/agent/providers/codex/tool-call-detail-parser.js +0 -104
- package/dist/src/server/agent/providers/codex/tool-call-detail-parser.js.map +0 -1
- package/dist/src/server/agent/providers/codex/tool-call-mapper.js +0 -758
- package/dist/src/server/agent/providers/codex/tool-call-mapper.js.map +0 -1
- package/dist/src/server/agent/providers/codex-app-server-agent.js +0 -2949
- package/dist/src/server/agent/providers/codex-app-server-agent.js.map +0 -1
- package/dist/src/server/agent/providers/codex-rollout-timeline.js +0 -544
- package/dist/src/server/agent/providers/codex-rollout-timeline.js.map +0 -1
- package/dist/src/server/agent/providers/opencode/tool-call-detail-parser.js +0 -39
- package/dist/src/server/agent/providers/opencode/tool-call-detail-parser.js.map +0 -1
- package/dist/src/server/agent/providers/opencode/tool-call-mapper.js +0 -144
- package/dist/src/server/agent/providers/opencode/tool-call-mapper.js.map +0 -1
- package/dist/src/server/agent/providers/opencode-agent.js +0 -1193
- package/dist/src/server/agent/providers/opencode-agent.js.map +0 -1
- package/dist/src/server/agent/providers/tool-call-detail-primitives.js +0 -686
- package/dist/src/server/agent/providers/tool-call-detail-primitives.js.map +0 -1
- package/dist/src/server/agent/providers/tool-call-mapper-utils.js +0 -115
- package/dist/src/server/agent/providers/tool-call-mapper-utils.js.map +0 -1
- package/dist/src/server/agent/recordings-debug.js +0 -19
- package/dist/src/server/agent/recordings-debug.js.map +0 -1
- package/dist/src/server/agent/stt-debug.js +0 -33
- package/dist/src/server/agent/stt-debug.js.map +0 -1
- package/dist/src/server/agent/stt-manager.js +0 -232
- package/dist/src/server/agent/stt-manager.js.map +0 -1
- package/dist/src/server/agent/timeline-append.js +0 -27
- package/dist/src/server/agent/timeline-append.js.map +0 -1
- package/dist/src/server/agent/timeline-projection.js +0 -215
- package/dist/src/server/agent/timeline-projection.js.map +0 -1
- package/dist/src/server/agent/tool-name-normalization.js +0 -45
- package/dist/src/server/agent/tool-name-normalization.js.map +0 -1
- package/dist/src/server/agent/tts-debug.js +0 -24
- package/dist/src/server/agent/tts-debug.js.map +0 -1
- package/dist/src/server/agent/tts-manager.js +0 -374
- package/dist/src/server/agent/tts-manager.js.map +0 -1
- package/dist/src/server/agent/wait-for-agent-tracker.js +0 -53
- package/dist/src/server/agent/wait-for-agent-tracker.js.map +0 -1
- package/dist/src/server/agent-attention-policy.js +0 -40
- package/dist/src/server/agent-attention-policy.js.map +0 -1
- package/dist/src/server/allowed-hosts.js +0 -94
- package/dist/src/server/allowed-hosts.js.map +0 -1
- package/dist/src/server/bootstrap.js +0 -620
- package/dist/src/server/bootstrap.js.map +0 -1
- package/dist/src/server/chat/chat-mentions.js +0 -71
- package/dist/src/server/chat/chat-mentions.js.map +0 -1
- package/dist/src/server/chat/chat-rpc-schemas.js +0 -103
- package/dist/src/server/chat/chat-rpc-schemas.js.map +0 -1
- package/dist/src/server/chat/chat-service.js +0 -330
- package/dist/src/server/chat/chat-service.js.map +0 -1
- package/dist/src/server/chat/chat-types.js +0 -22
- package/dist/src/server/chat/chat-types.js.map +0 -1
- package/dist/src/server/checkout-diff-manager.js +0 -272
- package/dist/src/server/checkout-diff-manager.js.map +0 -1
- package/dist/src/server/checkout-git-utils.js +0 -37
- package/dist/src/server/checkout-git-utils.js.map +0 -1
- package/dist/src/server/client-message-id.js +0 -12
- package/dist/src/server/client-message-id.js.map +0 -1
- package/dist/src/server/config.js +0 -73
- package/dist/src/server/config.js.map +0 -1
- package/dist/src/server/connection-offer.js +0 -59
- package/dist/src/server/connection-offer.js.map +0 -1
- package/dist/src/server/daemon-keypair.js +0 -40
- package/dist/src/server/daemon-keypair.js.map +0 -1
- package/dist/src/server/daemon-version.js +0 -22
- package/dist/src/server/daemon-version.js.map +0 -1
- package/dist/src/server/dictation/dictation-stream-manager.js +0 -571
- package/dist/src/server/dictation/dictation-stream-manager.js.map +0 -1
- package/dist/src/server/file-download/token-store.js +0 -40
- package/dist/src/server/file-download/token-store.js.map +0 -1
- package/dist/src/server/file-explorer/service.js +0 -180
- package/dist/src/server/file-explorer/service.js.map +0 -1
- package/dist/src/server/json-utils.js +0 -45
- package/dist/src/server/json-utils.js.map +0 -1
- package/dist/src/server/loop/rpc-schemas.js +0 -159
- package/dist/src/server/loop/rpc-schemas.js.map +0 -1
- package/dist/src/server/loop-service.js +0 -741
- package/dist/src/server/loop-service.js.map +0 -1
- package/dist/src/server/messages.js +0 -29
- package/dist/src/server/messages.js.map +0 -1
- package/dist/src/server/package-version.js +0 -46
- package/dist/src/server/package-version.js.map +0 -1
- package/dist/src/server/pairing-offer.js +0 -45
- package/dist/src/server/pairing-offer.js.map +0 -1
- package/dist/src/server/pairing-qr.js +0 -45
- package/dist/src/server/pairing-qr.js.map +0 -1
- package/dist/src/server/path-utils.js +0 -20
- package/dist/src/server/path-utils.js.map +0 -1
- package/dist/src/server/persisted-config.js +0 -265
- package/dist/src/server/persisted-config.js.map +0 -1
- package/dist/src/server/persistence-hooks.js +0 -60
- package/dist/src/server/persistence-hooks.js.map +0 -1
- package/dist/src/server/push/push-service.js +0 -68
- package/dist/src/server/push/push-service.js.map +0 -1
- package/dist/src/server/push/token-store.js +0 -70
- package/dist/src/server/push/token-store.js.map +0 -1
- package/dist/src/server/relay-transport.js +0 -461
- package/dist/src/server/relay-transport.js.map +0 -1
- package/dist/src/server/schedule/cron.js +0 -103
- package/dist/src/server/schedule/cron.js.map +0 -1
- package/dist/src/server/schedule/rpc-schemas.js +0 -112
- package/dist/src/server/schedule/rpc-schemas.js.map +0 -1
- package/dist/src/server/schedule/service.js +0 -397
- package/dist/src/server/schedule/service.js.map +0 -1
- package/dist/src/server/schedule/store.js +0 -56
- package/dist/src/server/schedule/store.js.map +0 -1
- package/dist/src/server/schedule/types.js +0 -73
- package/dist/src/server/schedule/types.js.map +0 -1
- package/dist/src/server/server-id.js +0 -63
- package/dist/src/server/server-id.js.map +0 -1
- package/dist/src/server/session.js +0 -6381
- package/dist/src/server/session.js.map +0 -1
- package/dist/src/server/speech/audio.js +0 -101
- package/dist/src/server/speech/audio.js.map +0 -1
- package/dist/src/server/speech/provider-resolver.js +0 -7
- package/dist/src/server/speech/provider-resolver.js.map +0 -1
- package/dist/src/server/speech/providers/local/config.js +0 -74
- package/dist/src/server/speech/providers/local/config.js.map +0 -1
- package/dist/src/server/speech/providers/local/models.js +0 -17
- package/dist/src/server/speech/providers/local/models.js.map +0 -1
- package/dist/src/server/speech/providers/local/pocket/pocket-tts-onnx.js +0 -436
- package/dist/src/server/speech/providers/local/pocket/pocket-tts-onnx.js.map +0 -1
- package/dist/src/server/speech/providers/local/runtime.js +0 -238
- package/dist/src/server/speech/providers/local/runtime.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/model-catalog.js +0 -166
- package/dist/src/server/speech/providers/local/sherpa/model-catalog.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/model-downloader.js +0 -165
- package/dist/src/server/speech/providers/local/sherpa/model-downloader.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/sherpa-offline-recognizer.js +0 -73
- package/dist/src/server/speech/providers/local/sherpa/sherpa-offline-recognizer.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/sherpa-online-recognizer.js +0 -84
- package/dist/src/server/speech/providers/local/sherpa/sherpa-online-recognizer.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/sherpa-onnx-loader.js +0 -11
- package/dist/src/server/speech/providers/local/sherpa/sherpa-onnx-loader.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/sherpa-onnx-node-loader.js +0 -102
- package/dist/src/server/speech/providers/local/sherpa/sherpa-onnx-node-loader.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/sherpa-parakeet-realtime-session.js +0 -135
- package/dist/src/server/speech/providers/local/sherpa/sherpa-parakeet-realtime-session.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/sherpa-parakeet-stt.js +0 -130
- package/dist/src/server/speech/providers/local/sherpa/sherpa-parakeet-stt.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/sherpa-realtime-session.js +0 -110
- package/dist/src/server/speech/providers/local/sherpa/sherpa-realtime-session.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/sherpa-stt.js +0 -138
- package/dist/src/server/speech/providers/local/sherpa/sherpa-stt.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/sherpa-tts.js +0 -98
- package/dist/src/server/speech/providers/local/sherpa/sherpa-tts.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/silero-vad-provider.js +0 -23
- package/dist/src/server/speech/providers/local/sherpa/silero-vad-provider.js.map +0 -1
- package/dist/src/server/speech/providers/local/sherpa/silero-vad-session.js +0 -107
- package/dist/src/server/speech/providers/local/sherpa/silero-vad-session.js.map +0 -1
- package/dist/src/server/speech/providers/openai/config.js +0 -80
- package/dist/src/server/speech/providers/openai/config.js.map +0 -1
- package/dist/src/server/speech/providers/openai/realtime-transcription-session.js +0 -168
- package/dist/src/server/speech/providers/openai/realtime-transcription-session.js.map +0 -1
- package/dist/src/server/speech/providers/openai/runtime.js +0 -112
- package/dist/src/server/speech/providers/openai/runtime.js.map +0 -1
- package/dist/src/server/speech/providers/openai/stt.js +0 -206
- package/dist/src/server/speech/providers/openai/stt.js.map +0 -1
- package/dist/src/server/speech/providers/openai/tts.js +0 -46
- package/dist/src/server/speech/providers/openai/tts.js.map +0 -1
- package/dist/src/server/speech/speech-config-resolver.js +0 -102
- package/dist/src/server/speech/speech-config-resolver.js.map +0 -1
- package/dist/src/server/speech/speech-provider.js +0 -2
- package/dist/src/server/speech/speech-provider.js.map +0 -1
- package/dist/src/server/speech/speech-runtime.js +0 -530
- package/dist/src/server/speech/speech-runtime.js.map +0 -1
- package/dist/src/server/speech/speech-types.js +0 -8
- package/dist/src/server/speech/speech-types.js.map +0 -1
- package/dist/src/server/speech/turn-detection-provider.js +0 -2
- package/dist/src/server/speech/turn-detection-provider.js.map +0 -1
- package/dist/src/server/utils/diff-highlighter.js +0 -257
- package/dist/src/server/utils/diff-highlighter.js.map +0 -1
- package/dist/src/server/voice/fixed-duration-pcm-ring-buffer.js +0 -35
- package/dist/src/server/voice/fixed-duration-pcm-ring-buffer.js.map +0 -1
- package/dist/src/server/voice/voice-turn-controller.js +0 -159
- package/dist/src/server/voice/voice-turn-controller.js.map +0 -1
- package/dist/src/server/voice-config.js +0 -51
- package/dist/src/server/voice-config.js.map +0 -1
- package/dist/src/server/voice-mcp-bridge-command.js +0 -31
- package/dist/src/server/voice-mcp-bridge-command.js.map +0 -1
- package/dist/src/server/voice-mcp-bridge.js +0 -109
- package/dist/src/server/voice-mcp-bridge.js.map +0 -1
- package/dist/src/server/voice-permission-policy.js +0 -13
- package/dist/src/server/voice-permission-policy.js.map +0 -1
- package/dist/src/server/voice-types.js +0 -2
- package/dist/src/server/voice-types.js.map +0 -1
- package/dist/src/server/websocket-server.js +0 -1048
- package/dist/src/server/websocket-server.js.map +0 -1
- package/dist/src/server/workspace-registry-bootstrap.js +0 -98
- package/dist/src/server/workspace-registry-bootstrap.js.map +0 -1
- package/dist/src/server/workspace-registry-model.js +0 -175
- package/dist/src/server/workspace-registry-model.js.map +0 -1
- package/dist/src/server/workspace-registry.js +0 -151
- package/dist/src/server/workspace-registry.js.map +0 -1
- package/dist/src/server/worktree-bootstrap.js +0 -508
- package/dist/src/server/worktree-bootstrap.js.map +0 -1
- package/dist/src/shared/agent-attention-notification.js +0 -130
- package/dist/src/shared/agent-attention-notification.js.map +0 -1
- package/dist/src/shared/agent-lifecycle.js +0 -8
- package/dist/src/shared/agent-lifecycle.js.map +0 -1
- package/dist/src/shared/connection-offer.js +0 -17
- package/dist/src/shared/connection-offer.js.map +0 -1
- package/dist/src/shared/daemon-endpoints.js +0 -122
- package/dist/src/shared/daemon-endpoints.js.map +0 -1
- package/dist/src/shared/messages.js +0 -2107
- package/dist/src/shared/messages.js.map +0 -1
- package/dist/src/shared/path-utils.js +0 -16
- package/dist/src/shared/path-utils.js.map +0 -1
- package/dist/src/shared/terminal-stream-protocol.js +0 -99
- package/dist/src/shared/terminal-stream-protocol.js.map +0 -1
- package/dist/src/shared/tool-call-display.js +0 -122
- package/dist/src/shared/tool-call-display.js.map +0 -1
- package/dist/src/terminal/terminal-manager.js +0 -136
- package/dist/src/terminal/terminal-manager.js.map +0 -1
- package/dist/src/terminal/terminal.js +0 -333
- package/dist/src/terminal/terminal.js.map +0 -1
- package/dist/src/utils/checkout-git.js +0 -1518
- package/dist/src/utils/checkout-git.js.map +0 -1
- package/dist/src/utils/directory-suggestions.js +0 -671
- package/dist/src/utils/directory-suggestions.js.map +0 -1
- package/dist/src/utils/path.js +0 -15
- package/dist/src/utils/path.js.map +0 -1
- package/dist/src/utils/project-icon.js +0 -389
- package/dist/src/utils/project-icon.js.map +0 -1
- package/dist/src/utils/worktree-metadata.js +0 -116
- package/dist/src/utils/worktree-metadata.js.map +0 -1
- package/dist/src/utils/worktree.js +0 -744
- package/dist/src/utils/worktree.js.map +0 -1
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { randomBytes } from "node:crypto";
|
|
2
|
-
import { mkdir, readFile, readdir, rm, writeFile } from "node:fs/promises";
|
|
3
|
-
import { join } from "node:path";
|
|
4
|
-
import { StoredScheduleSchema } from "./types.js";
|
|
5
|
-
function generateScheduleId() {
|
|
6
|
-
return randomBytes(4).toString("hex");
|
|
7
|
-
}
|
|
8
|
-
export class ScheduleStore {
|
|
9
|
-
constructor(dir) {
|
|
10
|
-
this.dir = dir;
|
|
11
|
-
}
|
|
12
|
-
filePath(id) {
|
|
13
|
-
return join(this.dir, `${id}.json`);
|
|
14
|
-
}
|
|
15
|
-
async ensureDir() {
|
|
16
|
-
await mkdir(this.dir, { recursive: true });
|
|
17
|
-
}
|
|
18
|
-
async list() {
|
|
19
|
-
await this.ensureDir();
|
|
20
|
-
const entries = await readdir(this.dir, { withFileTypes: true });
|
|
21
|
-
const schedules = await Promise.all(entries
|
|
22
|
-
.filter((entry) => entry.isFile() && entry.name.endsWith(".json"))
|
|
23
|
-
.map(async (entry) => {
|
|
24
|
-
const content = await readFile(join(this.dir, entry.name), "utf-8");
|
|
25
|
-
return StoredScheduleSchema.parse(JSON.parse(content));
|
|
26
|
-
}));
|
|
27
|
-
return schedules.sort((left, right) => left.createdAt.localeCompare(right.createdAt));
|
|
28
|
-
}
|
|
29
|
-
async get(id) {
|
|
30
|
-
await this.ensureDir();
|
|
31
|
-
try {
|
|
32
|
-
const content = await readFile(this.filePath(id), "utf-8");
|
|
33
|
-
return StoredScheduleSchema.parse(JSON.parse(content));
|
|
34
|
-
}
|
|
35
|
-
catch (error) {
|
|
36
|
-
if (error.code === "ENOENT") {
|
|
37
|
-
return null;
|
|
38
|
-
}
|
|
39
|
-
throw error;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
async create(schedule) {
|
|
43
|
-
const created = { ...schedule, id: generateScheduleId() };
|
|
44
|
-
await this.put(created);
|
|
45
|
-
return created;
|
|
46
|
-
}
|
|
47
|
-
async put(schedule) {
|
|
48
|
-
await this.ensureDir();
|
|
49
|
-
await writeFile(this.filePath(schedule.id), JSON.stringify(schedule, null, 2), "utf-8");
|
|
50
|
-
}
|
|
51
|
-
async delete(id) {
|
|
52
|
-
await this.ensureDir();
|
|
53
|
-
await rm(this.filePath(id), { force: true });
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/server/schedule/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
import { AgentProviderSchema } from "../agent/provider-manifest.js";
|
|
3
|
-
export const ScheduleStatusSchema = z.enum(["active", "paused", "completed"]);
|
|
4
|
-
export const ScheduleCadenceSchema = z.discriminatedUnion("type", [
|
|
5
|
-
z.object({
|
|
6
|
-
type: z.literal("every"),
|
|
7
|
-
everyMs: z.number().int().positive(),
|
|
8
|
-
}),
|
|
9
|
-
z.object({
|
|
10
|
-
type: z.literal("cron"),
|
|
11
|
-
expression: z.string().trim().min(1),
|
|
12
|
-
}),
|
|
13
|
-
]);
|
|
14
|
-
export const ScheduleTargetSchema = z.discriminatedUnion("type", [
|
|
15
|
-
z.object({
|
|
16
|
-
type: z.literal("agent"),
|
|
17
|
-
agentId: z.string().uuid(),
|
|
18
|
-
}),
|
|
19
|
-
z.object({
|
|
20
|
-
type: z.literal("new-agent"),
|
|
21
|
-
config: z.object({
|
|
22
|
-
provider: AgentProviderSchema,
|
|
23
|
-
cwd: z.string().trim().min(1),
|
|
24
|
-
modeId: z.string().trim().min(1).optional(),
|
|
25
|
-
model: z.string().trim().min(1).optional(),
|
|
26
|
-
thinkingOptionId: z.string().trim().min(1).optional(),
|
|
27
|
-
title: z.string().trim().min(1).nullable().optional(),
|
|
28
|
-
approvalPolicy: z.string().trim().min(1).optional(),
|
|
29
|
-
sandboxMode: z.string().trim().min(1).optional(),
|
|
30
|
-
networkAccess: z.boolean().optional(),
|
|
31
|
-
webSearch: z.boolean().optional(),
|
|
32
|
-
extra: z
|
|
33
|
-
.object({
|
|
34
|
-
codex: z.record(z.unknown()).optional(),
|
|
35
|
-
claude: z.record(z.unknown()).optional(),
|
|
36
|
-
})
|
|
37
|
-
.partial()
|
|
38
|
-
.optional(),
|
|
39
|
-
systemPrompt: z.string().optional(),
|
|
40
|
-
mcpServers: z.record(z.unknown()).optional(),
|
|
41
|
-
}),
|
|
42
|
-
}),
|
|
43
|
-
]);
|
|
44
|
-
export const ScheduleRunSchema = z.object({
|
|
45
|
-
id: z.string(),
|
|
46
|
-
scheduledFor: z.string(),
|
|
47
|
-
startedAt: z.string(),
|
|
48
|
-
endedAt: z.string().nullable(),
|
|
49
|
-
status: z.enum(["running", "succeeded", "failed"]),
|
|
50
|
-
agentId: z.string().uuid().nullable(),
|
|
51
|
-
output: z.string().nullable(),
|
|
52
|
-
error: z.string().nullable(),
|
|
53
|
-
});
|
|
54
|
-
export const StoredScheduleSchema = z.object({
|
|
55
|
-
id: z.string(),
|
|
56
|
-
name: z.string().nullable(),
|
|
57
|
-
prompt: z.string().min(1),
|
|
58
|
-
cadence: ScheduleCadenceSchema,
|
|
59
|
-
target: ScheduleTargetSchema,
|
|
60
|
-
status: ScheduleStatusSchema,
|
|
61
|
-
createdAt: z.string(),
|
|
62
|
-
updatedAt: z.string(),
|
|
63
|
-
nextRunAt: z.string().nullable(),
|
|
64
|
-
lastRunAt: z.string().nullable(),
|
|
65
|
-
pausedAt: z.string().nullable(),
|
|
66
|
-
expiresAt: z.string().nullable(),
|
|
67
|
-
maxRuns: z.number().int().positive().nullable(),
|
|
68
|
-
runs: z.array(ScheduleRunSchema),
|
|
69
|
-
});
|
|
70
|
-
export const ScheduleSummarySchema = StoredScheduleSchema.omit({
|
|
71
|
-
runs: true,
|
|
72
|
-
});
|
|
73
|
-
//# sourceMappingURL=types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/server/schedule/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;AAG9E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAChE,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACxB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;KACrC,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACvB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KACrC,CAAC;CACH,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC/D,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACxB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;KAC3B,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;QAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;YACf,QAAQ,EAAE,mBAAmB;YAC7B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC3C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC1C,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;YACrD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YACrD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;YACnD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;YAChD,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YACrC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YACjC,KAAK,EAAE,CAAC;iBACL,MAAM,CAAC;gBACN,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;gBACvC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;aACzC,CAAC;iBACD,OAAO,EAAE;iBACT,QAAQ,EAAE;YACb,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACnC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;SAC7C,CAAC;KACH,CAAC;CACH,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAClD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACrC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,OAAO,EAAE,qBAAqB;IAC9B,MAAM,EAAE,oBAAoB;IAC5B,MAAM,EAAE,oBAAoB;IAC5B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC/C,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;CACjC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,IAAI,CAAC;IAC7D,IAAI,EAAE,IAAI;CACX,CAAC,CAAC"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import { existsSync, readFileSync, writeFileSync } from "node:fs";
|
|
3
|
-
import { randomBytes } from "node:crypto";
|
|
4
|
-
const SERVER_ID_FILENAME = "server-id";
|
|
5
|
-
function getLogger(logger) {
|
|
6
|
-
return logger?.child({ module: "server-id" });
|
|
7
|
-
}
|
|
8
|
-
function getServerIdPath(paseoHome) {
|
|
9
|
-
return path.join(paseoHome, SERVER_ID_FILENAME);
|
|
10
|
-
}
|
|
11
|
-
function generateServerId() {
|
|
12
|
-
// 9 bytes -> 12 base64url chars; keep it short + URL-safe.
|
|
13
|
-
const rand = randomBytes(9).toString("base64url");
|
|
14
|
-
return `srv_${rand}`;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Stable daemon identifier scoped to a given $PASEO_HOME.
|
|
18
|
-
*
|
|
19
|
-
* - Persisted to `$PASEO_HOME/server-id`
|
|
20
|
-
* - Can be overridden via `PASEO_SERVER_ID` (useful for tests)
|
|
21
|
-
*/
|
|
22
|
-
export function getOrCreateServerId(paseoHome, options) {
|
|
23
|
-
const env = options?.env ?? process.env;
|
|
24
|
-
const log = getLogger(options?.logger);
|
|
25
|
-
const serverIdPath = getServerIdPath(paseoHome);
|
|
26
|
-
const envOverride = typeof env.PASEO_SERVER_ID === "string" && env.PASEO_SERVER_ID.trim().length > 0
|
|
27
|
-
? env.PASEO_SERVER_ID.trim()
|
|
28
|
-
: null;
|
|
29
|
-
if (envOverride) {
|
|
30
|
-
// Persist the override for consistent identity across restarts.
|
|
31
|
-
if (!existsSync(serverIdPath)) {
|
|
32
|
-
try {
|
|
33
|
-
writeFileSync(serverIdPath, `${envOverride}\n`, "utf8");
|
|
34
|
-
log?.info({ serverId: envOverride }, "Persisted PASEO_SERVER_ID override");
|
|
35
|
-
}
|
|
36
|
-
catch (error) {
|
|
37
|
-
log?.warn({ error }, "Failed to persist PASEO_SERVER_ID override");
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
return envOverride;
|
|
41
|
-
}
|
|
42
|
-
if (existsSync(serverIdPath)) {
|
|
43
|
-
try {
|
|
44
|
-
const raw = readFileSync(serverIdPath, "utf8");
|
|
45
|
-
const parsed = raw.trim();
|
|
46
|
-
if (parsed.length > 0) {
|
|
47
|
-
return parsed;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
catch (error) {
|
|
51
|
-
log?.warn({ error }, "Failed to read server-id file, regenerating");
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
const created = generateServerId();
|
|
55
|
-
try {
|
|
56
|
-
writeFileSync(serverIdPath, `${created}\n`, "utf8");
|
|
57
|
-
}
|
|
58
|
-
catch (error) {
|
|
59
|
-
log?.warn({ error }, "Failed to persist serverId (continuing with in-memory id)");
|
|
60
|
-
}
|
|
61
|
-
return created;
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=server-id.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server-id.js","sourceRoot":"","sources":["../../../src/server/server-id.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAQ1C,MAAM,kBAAkB,GAAG,WAAW,CAAC;AAEvC,SAAS,SAAS,CAAC,MAA8B;IAC/C,OAAO,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB;IACxC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,gBAAgB;IACvB,2DAA2D;IAC3D,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAClD,OAAO,OAAO,IAAI,EAAE,CAAC;AACvB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,SAAiB,EACjB,OAA0D;IAE1D,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACxC,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IAEhD,MAAM,WAAW,GACf,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ,IAAI,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAC9E,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE;QAC5B,CAAC,CAAC,IAAI,CAAC;IAEX,IAAI,WAAW,EAAE,CAAC;QAChB,gEAAgE;QAChE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC;gBACH,aAAa,CAAC,YAAY,EAAE,GAAG,WAAW,IAAI,EAAE,MAAM,CAAC,CAAC;gBACxD,GAAG,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,oCAAoC,CAAC,CAAC;YAC7E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,4CAA4C,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,6CAA6C,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IACnC,IAAI,CAAC;QACH,aAAa,CAAC,YAAY,EAAE,GAAG,OAAO,IAAI,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,2DAA2D,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|