@getpaseo/protocol 0.1.110 → 0.2.0-beta.2
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/agent-types.d.ts +2 -0
- package/dist/binary-frames/file-transfer.d.ts +1 -0
- package/dist/binary-frames/file-transfer.js +1 -0
- package/dist/client-capabilities.d.ts +2 -0
- package/dist/client-capabilities.js +6 -0
- package/dist/forge-manifest.d.ts +66 -0
- package/dist/forge-manifest.js +92 -0
- package/dist/generated/validation/ws-outbound.aot.js +40705 -30038
- package/dist/git-remote.js +2 -1
- package/dist/messages.d.ts +4430 -125
- package/dist/messages.js +618 -22
- package/dist/paseo-config-schema.d.ts +21 -0
- package/dist/paseo-config-schema.js +19 -0
- package/dist/provider-manifest.d.ts +1 -0
- package/dist/provider-manifest.js +23 -6
- package/dist/schedule/cadence.d.ts +6 -0
- package/dist/schedule/cadence.js +28 -0
- package/dist/validation/ws-outbound-schema-metadata.d.ts +673 -16
- package/package.json +1 -1
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
export declare const PaseoServicePortAllocationSchema: z.ZodObject<{
|
|
3
|
+
range: z.ZodOptional<z.ZodString>;
|
|
4
|
+
portScript: z.ZodOptional<z.ZodString>;
|
|
5
|
+
}, z.core.$strict>;
|
|
2
6
|
export declare function normalizeLifecycleCommands(commands: unknown): string[];
|
|
3
7
|
export declare const PaseoLifecycleCommandRawSchema: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>;
|
|
4
8
|
export declare const PaseoScriptEntryRawSchema: z.ZodObject<{
|
|
@@ -10,6 +14,10 @@ export declare const PaseoWorktreeConfigRawSchema: z.ZodObject<{
|
|
|
10
14
|
setup: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
|
|
11
15
|
teardown: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
|
|
12
16
|
terminals: z.ZodOptional<z.ZodUnknown>;
|
|
17
|
+
servicePorts: z.ZodOptional<z.ZodObject<{
|
|
18
|
+
range: z.ZodOptional<z.ZodString>;
|
|
19
|
+
portScript: z.ZodOptional<z.ZodString>;
|
|
20
|
+
}, z.core.$strict>>;
|
|
13
21
|
}, z.core.$loose>;
|
|
14
22
|
export declare const PaseoMetadataGenerationEntrySchema: z.ZodCatch<z.ZodObject<{
|
|
15
23
|
instructions: z.ZodOptional<z.ZodString>;
|
|
@@ -33,6 +41,10 @@ export declare const PaseoConfigRawSchema: z.ZodObject<{
|
|
|
33
41
|
setup: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
|
|
34
42
|
teardown: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
|
|
35
43
|
terminals: z.ZodOptional<z.ZodUnknown>;
|
|
44
|
+
servicePorts: z.ZodOptional<z.ZodObject<{
|
|
45
|
+
range: z.ZodOptional<z.ZodString>;
|
|
46
|
+
portScript: z.ZodOptional<z.ZodString>;
|
|
47
|
+
}, z.core.$strict>>;
|
|
36
48
|
}, z.core.$loose>>;
|
|
37
49
|
scripts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
38
50
|
type: z.ZodOptional<z.ZodUnknown>;
|
|
@@ -56,6 +68,10 @@ export declare const PaseoConfigRawSchema: z.ZodObject<{
|
|
|
56
68
|
}, z.core.$loose>;
|
|
57
69
|
export declare const WorktreeConfigSchema: z.ZodCatch<z.ZodObject<{
|
|
58
70
|
terminals: z.ZodOptional<z.ZodUnknown>;
|
|
71
|
+
servicePorts: z.ZodOptional<z.ZodObject<{
|
|
72
|
+
range: z.ZodOptional<z.ZodString>;
|
|
73
|
+
portScript: z.ZodOptional<z.ZodString>;
|
|
74
|
+
}, z.core.$strict>>;
|
|
59
75
|
setup: z.ZodPipe<z.ZodOptional<z.ZodUnknown>, z.ZodTransform<string[], unknown>>;
|
|
60
76
|
teardown: z.ZodPipe<z.ZodOptional<z.ZodUnknown>, z.ZodTransform<string[], unknown>>;
|
|
61
77
|
}, z.core.$loose>>;
|
|
@@ -67,6 +83,10 @@ export declare const ScriptEntrySchema: z.ZodCatch<z.ZodObject<{
|
|
|
67
83
|
export declare const PaseoConfigSchema: z.ZodCatch<z.ZodObject<{
|
|
68
84
|
worktree: z.ZodOptional<z.ZodCatch<z.ZodObject<{
|
|
69
85
|
terminals: z.ZodOptional<z.ZodUnknown>;
|
|
86
|
+
servicePorts: z.ZodOptional<z.ZodObject<{
|
|
87
|
+
range: z.ZodOptional<z.ZodString>;
|
|
88
|
+
portScript: z.ZodOptional<z.ZodString>;
|
|
89
|
+
}, z.core.$strict>>;
|
|
70
90
|
setup: z.ZodPipe<z.ZodOptional<z.ZodUnknown>, z.ZodTransform<string[], unknown>>;
|
|
71
91
|
teardown: z.ZodPipe<z.ZodOptional<z.ZodUnknown>, z.ZodTransform<string[], unknown>>;
|
|
72
92
|
}, z.core.$loose>>>;
|
|
@@ -110,6 +130,7 @@ export declare const ProjectConfigRpcErrorSchema: z.ZodDiscriminatedUnion<[z.Zod
|
|
|
110
130
|
export type PaseoScriptEntryRaw = z.infer<typeof PaseoScriptEntryRawSchema>;
|
|
111
131
|
export type PaseoMetadataGenerationEntry = z.infer<typeof PaseoMetadataGenerationEntrySchema>;
|
|
112
132
|
export type PaseoMetadataGeneration = z.infer<typeof PaseoMetadataGenerationSchema>;
|
|
133
|
+
export type PaseoServicePortAllocation = z.infer<typeof PaseoServicePortAllocationSchema>;
|
|
113
134
|
export type PaseoConfigRaw = z.infer<typeof PaseoConfigRawSchema>;
|
|
114
135
|
export type PaseoConfig = z.infer<typeof PaseoConfigSchema>;
|
|
115
136
|
export type PaseoConfigRevision = z.infer<typeof PaseoConfigRevisionSchema>;
|
|
@@ -1,4 +1,22 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
const TCP_PORT_RANGE_PATTERN = /^(\d{1,5})-(\d{1,5})$/;
|
|
3
|
+
export const PaseoServicePortAllocationSchema = z
|
|
4
|
+
.object({
|
|
5
|
+
range: z.string().trim().regex(TCP_PORT_RANGE_PATTERN).optional(),
|
|
6
|
+
portScript: z.string().trim().min(1).optional(),
|
|
7
|
+
})
|
|
8
|
+
.strict()
|
|
9
|
+
.refine((value) => value.range !== undefined || value.portScript !== undefined, "Expected range or portScript")
|
|
10
|
+
.refine((value) => {
|
|
11
|
+
if (!value.range)
|
|
12
|
+
return true;
|
|
13
|
+
const match = TCP_PORT_RANGE_PATTERN.exec(value.range);
|
|
14
|
+
if (!match)
|
|
15
|
+
return false;
|
|
16
|
+
const start = Number(match[1]);
|
|
17
|
+
const end = Number(match[2]);
|
|
18
|
+
return start >= 1 && end <= 65535 && start <= end;
|
|
19
|
+
}, "Expected an inclusive TCP port range from 1-65535");
|
|
2
20
|
export function normalizeLifecycleCommands(commands) {
|
|
3
21
|
if (typeof commands === "string") {
|
|
4
22
|
return commands.trim().length > 0 ? [commands] : [];
|
|
@@ -23,6 +41,7 @@ export const PaseoWorktreeConfigRawSchema = z
|
|
|
23
41
|
setup: PaseoLifecycleCommandRawSchema.optional(),
|
|
24
42
|
teardown: PaseoLifecycleCommandRawSchema.optional(),
|
|
25
43
|
terminals: z.unknown().optional(),
|
|
44
|
+
servicePorts: PaseoServicePortAllocationSchema.optional(),
|
|
26
45
|
})
|
|
27
46
|
.passthrough();
|
|
28
47
|
export const PaseoMetadataGenerationEntrySchema = z
|
|
@@ -22,6 +22,7 @@ export interface AgentProviderDefinition {
|
|
|
22
22
|
defaultModel?: string;
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
|
+
export declare const OMP_MODES: AgentProviderModeDefinition[];
|
|
25
26
|
export declare const AGENT_PROVIDER_DEFINITIONS: AgentProviderDefinition[];
|
|
26
27
|
export declare const DEV_AGENT_PROVIDER_DEFINITIONS: AgentProviderDefinition[];
|
|
27
28
|
export declare function getAgentProviderDefinition(provider: string, definitions?: AgentProviderDefinition[]): AgentProviderDefinition;
|
|
@@ -101,6 +101,23 @@ const OPENCODE_MODES = [
|
|
|
101
101
|
colorTier: "planning",
|
|
102
102
|
},
|
|
103
103
|
];
|
|
104
|
+
export const OMP_MODES = [
|
|
105
|
+
{
|
|
106
|
+
id: "full",
|
|
107
|
+
label: "Full Access",
|
|
108
|
+
description: "Launches OMP with yolo approval mode so tools run without prompts.",
|
|
109
|
+
icon: "ShieldOff",
|
|
110
|
+
colorTier: "dangerous",
|
|
111
|
+
isUnattended: true,
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
id: "ask",
|
|
115
|
+
label: "Always Ask",
|
|
116
|
+
description: "Launches OMP with always-ask approval mode for write and exec tools.",
|
|
117
|
+
icon: "ShieldCheck",
|
|
118
|
+
colorTier: "safe",
|
|
119
|
+
},
|
|
120
|
+
];
|
|
104
121
|
const MOCK_LOAD_TEST_MODES = [
|
|
105
122
|
{
|
|
106
123
|
id: "load-test",
|
|
@@ -124,7 +141,7 @@ export const AGENT_PROVIDER_DEFINITIONS = [
|
|
|
124
141
|
id: "claude",
|
|
125
142
|
label: "Claude",
|
|
126
143
|
description: "Anthropic's multi-tool assistant with MCP support, streaming, and deep reasoning",
|
|
127
|
-
defaultModeId: "
|
|
144
|
+
defaultModeId: "auto",
|
|
128
145
|
modes: CLAUDE_MODES,
|
|
129
146
|
voice: {
|
|
130
147
|
enabled: true,
|
|
@@ -136,7 +153,7 @@ export const AGENT_PROVIDER_DEFINITIONS = [
|
|
|
136
153
|
id: "codex",
|
|
137
154
|
label: "Codex",
|
|
138
155
|
description: "OpenAI's Codex workspace agent with sandbox controls and optional network access",
|
|
139
|
-
defaultModeId: "auto",
|
|
156
|
+
defaultModeId: "auto-review",
|
|
140
157
|
modes: CODEX_MODES,
|
|
141
158
|
voice: {
|
|
142
159
|
enabled: true,
|
|
@@ -174,11 +191,11 @@ export const AGENT_PROVIDER_DEFINITIONS = [
|
|
|
174
191
|
},
|
|
175
192
|
{
|
|
176
193
|
id: "omp",
|
|
177
|
-
label: "
|
|
178
|
-
description: "
|
|
194
|
+
label: "Oh My Pi",
|
|
195
|
+
description: "Multi-provider coding agent with native approvals, host tools, and subagents",
|
|
179
196
|
enabledByDefault: false,
|
|
180
|
-
defaultModeId:
|
|
181
|
-
modes:
|
|
197
|
+
defaultModeId: "full",
|
|
198
|
+
modes: OMP_MODES,
|
|
182
199
|
},
|
|
183
200
|
];
|
|
184
201
|
export const DEV_AGENT_PROVIDER_DEFINITIONS = [
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert an exact rolling interval to an equivalent five-field cron cadence.
|
|
3
|
+
* Returns null when cron's calendar boundaries would change the interval.
|
|
4
|
+
*/
|
|
5
|
+
export declare function everyMsToFiveFieldCron(everyMs: number): string | null;
|
|
6
|
+
//# sourceMappingURL=cadence.d.ts.map
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert an exact rolling interval to an equivalent five-field cron cadence.
|
|
3
|
+
* Returns null when cron's calendar boundaries would change the interval.
|
|
4
|
+
*/
|
|
5
|
+
export function everyMsToFiveFieldCron(everyMs) {
|
|
6
|
+
const minutes = everyMs / 60000;
|
|
7
|
+
if (!Number.isInteger(minutes) || minutes <= 0) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
if (minutes < 60 && 60 % minutes === 0) {
|
|
11
|
+
return `*/${minutes} * * * *`;
|
|
12
|
+
}
|
|
13
|
+
if (minutes === 60) {
|
|
14
|
+
return "0 * * * *";
|
|
15
|
+
}
|
|
16
|
+
if (minutes % 60 !== 0) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
const hours = minutes / 60;
|
|
20
|
+
if (hours < 24 && 24 % hours === 0) {
|
|
21
|
+
return `0 */${hours} * * *`;
|
|
22
|
+
}
|
|
23
|
+
if (hours === 24) {
|
|
24
|
+
return "0 0 * * *";
|
|
25
|
+
}
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=cadence.js.map
|