@perstack/core 0.0.43 → 0.0.44
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/README.md +7 -40
- package/dist/src/index.d.ts +7 -232
- package/dist/src/index.js +8 -96
- package/dist/src/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -48,63 +48,30 @@ export const apiExpertSchema = expertSchema.omit({
|
|
|
48
48
|
|
|
49
49
|
2. **Domain Common Types**: Types that represent core domain concepts used throughout the system, for example:
|
|
50
50
|
- `Job` - Top-level execution unit containing Runs
|
|
51
|
-
- `
|
|
51
|
+
- `RunParams` - Single Expert execution within a Job (setting + optional checkpoint)
|
|
52
52
|
- `Checkpoint` - Execution state snapshots
|
|
53
53
|
- `Usage` - Resource usage tracking
|
|
54
54
|
- `ProviderConfig` - LLM provider configurations
|
|
55
55
|
|
|
56
56
|
3. **Configuration Schemas**: System-wide configuration structures, for example:
|
|
57
|
-
- `
|
|
58
|
-
- `JobSetting` - Job execution parameters
|
|
57
|
+
- `PerstackConfig` - Project configuration file schema
|
|
59
58
|
- `RunSetting` - Run execution parameters
|
|
60
59
|
|
|
61
|
-
4. **
|
|
62
|
-
- `
|
|
63
|
-
- `
|
|
64
|
-
- `
|
|
65
|
-
- Event creators for normalized checkpoint/event handling
|
|
66
|
-
|
|
67
|
-
5. **Storage Abstractions**: Abstract interface for data persistence:
|
|
68
|
-
- `Storage` - Interface for storage backends (filesystem, S3, R2)
|
|
69
|
-
- `EventMeta` - Metadata type for event listings
|
|
60
|
+
4. **Event Creators**: Utility functions for creating normalized events:
|
|
61
|
+
- `createNormalizedCheckpoint` - Create checkpoint objects
|
|
62
|
+
- `createStartRunEvent`, `createCompleteRunEvent` - Run lifecycle events
|
|
63
|
+
- `createCallToolsEvent`, `createResolveToolResultsEvent` - Tool execution events
|
|
70
64
|
|
|
71
65
|
### Execution Hierarchy
|
|
72
66
|
|
|
73
67
|
| Schema | Description |
|
|
74
68
|
| ------------ | -------------------------------------------- |
|
|
75
69
|
| `Job` | Top-level execution unit. Contains all Runs. |
|
|
76
|
-
| `
|
|
70
|
+
| `RunParams` | Single Expert execution within a Job. |
|
|
77
71
|
| `Checkpoint` | Snapshot at step end within a Run. |
|
|
78
72
|
|
|
79
73
|
For the full hierarchy and execution model, see [State Management](https://github.com/perstack-ai/perstack/blob/main/docs/using-experts/state-management.md).
|
|
80
74
|
|
|
81
|
-
### Storage Interface
|
|
82
|
-
|
|
83
|
-
The `Storage` interface provides an abstraction for persisting Perstack data:
|
|
84
|
-
|
|
85
|
-
```typescript
|
|
86
|
-
import type { Storage, EventMeta } from "@perstack/core"
|
|
87
|
-
|
|
88
|
-
interface Storage {
|
|
89
|
-
storeCheckpoint(checkpoint: Checkpoint): Promise<void>
|
|
90
|
-
retrieveCheckpoint(jobId: string, checkpointId: string): Promise<Checkpoint>
|
|
91
|
-
getCheckpointsByJobId(jobId: string): Promise<Checkpoint[]>
|
|
92
|
-
storeEvent(event: RunEvent): Promise<void>
|
|
93
|
-
getEventsByRun(jobId: string, runId: string): Promise<EventMeta[]>
|
|
94
|
-
getEventContents(jobId: string, runId: string, maxStep?: number): Promise<RunEvent[]>
|
|
95
|
-
storeJob(job: Job): Promise<void>
|
|
96
|
-
retrieveJob(jobId: string): Promise<Job | undefined>
|
|
97
|
-
getAllJobs(): Promise<Job[]>
|
|
98
|
-
storeRunSetting(setting: RunSetting): Promise<void>
|
|
99
|
-
getAllRuns(): Promise<RunSetting[]>
|
|
100
|
-
}
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
Available implementations:
|
|
104
|
-
- `@perstack/filesystem-storage` - Local filesystem storage (default)
|
|
105
|
-
- `@perstack/s3-storage` - AWS S3 storage
|
|
106
|
-
- `@perstack/r2-storage` - Cloudflare R2 storage
|
|
107
|
-
|
|
108
75
|
### What Core Should NOT Contain
|
|
109
76
|
|
|
110
77
|
1. **Package-Internal Types**: Implementation details that don't cross package boundaries should remain in their respective packages.
|
package/dist/src/index.d.ts
CHANGED
|
@@ -471,15 +471,6 @@ declare const messageSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
471
471
|
cache: z.ZodOptional<z.ZodBoolean>;
|
|
472
472
|
}, z.core.$strip>]>;
|
|
473
473
|
|
|
474
|
-
type RuntimeName = "local" | "cursor" | "claude-code" | "gemini" | "docker";
|
|
475
|
-
declare const runtimeNameSchema: z.ZodEnum<{
|
|
476
|
-
local: "local";
|
|
477
|
-
cursor: "cursor";
|
|
478
|
-
"claude-code": "claude-code";
|
|
479
|
-
gemini: "gemini";
|
|
480
|
-
docker: "docker";
|
|
481
|
-
}>;
|
|
482
|
-
|
|
483
474
|
/** A tool call made by an Expert during execution */
|
|
484
475
|
interface ToolCall {
|
|
485
476
|
/** Unique identifier for this tool call */
|
|
@@ -681,11 +672,8 @@ interface Checkpoint {
|
|
|
681
672
|
pendingToolCalls?: ToolCall[];
|
|
682
673
|
/** Partial tool results collected before stopping (for resume) */
|
|
683
674
|
partialToolResults?: ToolResult[];
|
|
684
|
-
/** Optional metadata
|
|
675
|
+
/** Optional metadata */
|
|
685
676
|
metadata?: {
|
|
686
|
-
/** Runtime that executed this checkpoint */
|
|
687
|
-
runtime?: RuntimeName;
|
|
688
|
-
/** Additional runtime-specific data */
|
|
689
677
|
[key: string]: unknown;
|
|
690
678
|
};
|
|
691
679
|
/** Error information when status is stoppedByError */
|
|
@@ -931,15 +919,7 @@ declare const checkpointSchema: z.ZodObject<{
|
|
|
931
919
|
signature: z.ZodOptional<z.ZodString>;
|
|
932
920
|
}, z.core.$strip>], "type">>;
|
|
933
921
|
}, z.core.$strip>>>;
|
|
934
|
-
metadata: z.ZodOptional<z.ZodObject<{
|
|
935
|
-
runtime: z.ZodOptional<z.ZodEnum<{
|
|
936
|
-
local: "local";
|
|
937
|
-
cursor: "cursor";
|
|
938
|
-
"claude-code": "claude-code";
|
|
939
|
-
gemini: "gemini";
|
|
940
|
-
docker: "docker";
|
|
941
|
-
}>>;
|
|
942
|
-
}, z.core.$loose>>;
|
|
922
|
+
metadata: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
|
|
943
923
|
error: z.ZodOptional<z.ZodObject<{
|
|
944
924
|
name: z.ZodString;
|
|
945
925
|
message: z.ZodString;
|
|
@@ -1040,11 +1020,11 @@ declare const providerToolOptionsSchema: z.ZodOptional<z.ZodObject<{
|
|
|
1040
1020
|
}, z.core.$strip>>;
|
|
1041
1021
|
}, z.core.$strip>>;
|
|
1042
1022
|
type ProviderToolOptions = z.infer<typeof providerToolOptionsSchema>;
|
|
1043
|
-
declare function hasCustomProviderSkills(skills?: AnthropicProviderSkill[]): boolean;
|
|
1044
1023
|
|
|
1045
1024
|
type RuntimeVersion = `v${number}.${number}`;
|
|
1046
1025
|
declare const runtimeVersionSchema: z.ZodPipe<z.ZodString, z.ZodTransform<`v${number}.${number}`, string>>;
|
|
1047
1026
|
|
|
1027
|
+
declare function isPrivateOrLocalIP(hostname: string): boolean;
|
|
1048
1028
|
/** MCP skill using stdio transport */
|
|
1049
1029
|
interface McpStdioSkill {
|
|
1050
1030
|
type: "mcpStdioSkill";
|
|
@@ -1577,8 +1557,6 @@ interface PerstackConfig {
|
|
|
1577
1557
|
model?: string;
|
|
1578
1558
|
/** Reasoning budget for native LLM reasoning (extended thinking) */
|
|
1579
1559
|
reasoningBudget?: ReasoningBudget;
|
|
1580
|
-
/** Default execution runtime */
|
|
1581
|
-
runtime?: RuntimeName;
|
|
1582
1560
|
/** Maximum steps per run */
|
|
1583
1561
|
maxSteps?: number;
|
|
1584
1562
|
/** Maximum retries on generation failure */
|
|
@@ -1659,13 +1637,6 @@ declare const perstackConfigSchema: z.ZodObject<{
|
|
|
1659
1637
|
medium: "medium";
|
|
1660
1638
|
high: "high";
|
|
1661
1639
|
}>, z.ZodNumber]>>;
|
|
1662
|
-
runtime: z.ZodOptional<z.ZodEnum<{
|
|
1663
|
-
local: "local";
|
|
1664
|
-
cursor: "cursor";
|
|
1665
|
-
"claude-code": "claude-code";
|
|
1666
|
-
gemini: "gemini";
|
|
1667
|
-
docker: "docker";
|
|
1668
|
-
}>>;
|
|
1669
1640
|
maxSteps: z.ZodOptional<z.ZodNumber>;
|
|
1670
1641
|
maxRetries: z.ZodOptional<z.ZodNumber>;
|
|
1671
1642
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
@@ -3210,15 +3181,7 @@ declare const runParamsSchema: z.ZodObject<{
|
|
|
3210
3181
|
signature: z.ZodOptional<z.ZodString>;
|
|
3211
3182
|
}, z.core.$strip>], "type">>;
|
|
3212
3183
|
}, z.core.$strip>>>;
|
|
3213
|
-
metadata: z.ZodOptional<z.ZodObject<{
|
|
3214
|
-
runtime: z.ZodOptional<z.ZodEnum<{
|
|
3215
|
-
local: "local";
|
|
3216
|
-
cursor: "cursor";
|
|
3217
|
-
"claude-code": "claude-code";
|
|
3218
|
-
gemini: "gemini";
|
|
3219
|
-
docker: "docker";
|
|
3220
|
-
}>>;
|
|
3221
|
-
}, z.core.$loose>>;
|
|
3184
|
+
metadata: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
|
|
3222
3185
|
error: z.ZodOptional<z.ZodObject<{
|
|
3223
3186
|
name: z.ZodString;
|
|
3224
3187
|
message: z.ZodString;
|
|
@@ -3230,7 +3193,7 @@ declare const runParamsSchema: z.ZodObject<{
|
|
|
3230
3193
|
}, z.core.$strip>;
|
|
3231
3194
|
/**
|
|
3232
3195
|
* Expert state events - state machine transitions during execution.
|
|
3233
|
-
* All events contain deeply serializable properties for checkpoint
|
|
3196
|
+
* All events contain deeply serializable properties for checkpoint persistence.
|
|
3234
3197
|
*/
|
|
3235
3198
|
type ExpertStatePayloads = {
|
|
3236
3199
|
startRun: {
|
|
@@ -3615,7 +3578,6 @@ interface BaseRuntimeEvent {
|
|
|
3615
3578
|
type RuntimeEventPayloads = {
|
|
3616
3579
|
initializeRuntime: {
|
|
3617
3580
|
runtimeVersion: string;
|
|
3618
|
-
runtime?: string;
|
|
3619
3581
|
expertName: string;
|
|
3620
3582
|
experts: string[];
|
|
3621
3583
|
model: string;
|
|
@@ -3653,26 +3615,6 @@ type RuntimeEventPayloads = {
|
|
|
3653
3615
|
skillDisconnected: {
|
|
3654
3616
|
skillName: string;
|
|
3655
3617
|
};
|
|
3656
|
-
/** Docker build progress event */
|
|
3657
|
-
dockerBuildProgress: {
|
|
3658
|
-
stage: "pulling" | "building" | "complete" | "error";
|
|
3659
|
-
service: string;
|
|
3660
|
-
message: string;
|
|
3661
|
-
progress?: number;
|
|
3662
|
-
};
|
|
3663
|
-
/** Docker container status event */
|
|
3664
|
-
dockerContainerStatus: {
|
|
3665
|
-
status: "starting" | "running" | "healthy" | "unhealthy" | "stopped" | "error";
|
|
3666
|
-
service: string;
|
|
3667
|
-
message?: string;
|
|
3668
|
-
};
|
|
3669
|
-
/** Proxy access event (allow/block) */
|
|
3670
|
-
proxyAccess: {
|
|
3671
|
-
action: "allowed" | "blocked";
|
|
3672
|
-
domain: string;
|
|
3673
|
-
port: number;
|
|
3674
|
-
reason?: string;
|
|
3675
|
-
};
|
|
3676
3618
|
};
|
|
3677
3619
|
/** All runtime event types */
|
|
3678
3620
|
type RuntimeEventType = keyof RuntimeEventPayloads;
|
|
@@ -3706,100 +3648,26 @@ type CreateCheckpointParams = {
|
|
|
3706
3648
|
version: string;
|
|
3707
3649
|
};
|
|
3708
3650
|
output: string;
|
|
3709
|
-
runtime: RuntimeName;
|
|
3710
3651
|
};
|
|
3711
3652
|
declare function createNormalizedCheckpoint(params: CreateCheckpointParams): Checkpoint;
|
|
3712
3653
|
declare function createStartRunEvent(jobId: string, runId: string, expertKey: string, checkpoint: Checkpoint): RunEvent;
|
|
3713
|
-
declare function createRuntimeInitEvent(jobId: string, runId: string, expertName: string,
|
|
3654
|
+
declare function createRuntimeInitEvent(jobId: string, runId: string, expertName: string, version: string, query?: string): RuntimeEvent;
|
|
3714
3655
|
declare function createCompleteRunEvent(jobId: string, runId: string, expertKey: string, checkpoint: Checkpoint, output: string, startedAt?: number): RunEvent;
|
|
3715
3656
|
declare function createCallToolsEvent(jobId: string, runId: string, expertKey: string, stepNumber: number, toolCalls: ToolCall[], _checkpoint: Checkpoint): RunEvent;
|
|
3716
3657
|
declare function createResolveToolResultsEvent(jobId: string, runId: string, expertKey: string, stepNumber: number, toolResults: ToolResult[]): RunEvent;
|
|
3717
3658
|
declare function createToolMessage(toolCallId: string, toolName: string, resultText: string): ToolMessage;
|
|
3718
3659
|
|
|
3719
|
-
/** Setting type for adapter run - external input with required jobId and runId added by dispatcher */
|
|
3720
|
-
type AdapterRunSetting = RunParamsInput["setting"] & {
|
|
3721
|
-
jobId: string;
|
|
3722
|
-
runId: string;
|
|
3723
|
-
};
|
|
3724
|
-
type AdapterRunParams = {
|
|
3725
|
-
setting: AdapterRunSetting;
|
|
3726
|
-
config?: PerstackConfig;
|
|
3727
|
-
checkpoint?: Checkpoint;
|
|
3728
|
-
eventListener?: (event: RunEvent | RuntimeEvent) => void;
|
|
3729
|
-
storeCheckpoint?: (checkpoint: Checkpoint) => Promise<void>;
|
|
3730
|
-
storeEvent?: (event: RunEvent) => Promise<void>;
|
|
3731
|
-
retrieveCheckpoint?: (jobId: string, checkpointId: string) => Promise<Checkpoint>;
|
|
3732
|
-
workspace?: string;
|
|
3733
|
-
/** Additional environment variable names to pass to Docker runtime */
|
|
3734
|
-
additionalEnvKeys?: string[];
|
|
3735
|
-
/** Additional volume mounts for Docker runtime (format: "hostPath:containerPath:mode") */
|
|
3736
|
-
additionalVolumes?: string[];
|
|
3737
|
-
};
|
|
3738
|
-
type AdapterRunResult = {
|
|
3739
|
-
checkpoint: Checkpoint;
|
|
3740
|
-
events: (RunEvent | RuntimeEvent)[];
|
|
3741
|
-
};
|
|
3742
|
-
interface RuntimeAdapter {
|
|
3743
|
-
readonly name: string;
|
|
3744
|
-
checkPrerequisites(): Promise<PrerequisiteResult>;
|
|
3745
|
-
convertExpert(expert: Expert): RuntimeExpertConfig;
|
|
3746
|
-
run(params: AdapterRunParams): Promise<AdapterRunResult>;
|
|
3747
|
-
}
|
|
3748
|
-
type PrerequisiteResult = {
|
|
3749
|
-
ok: true;
|
|
3750
|
-
} | {
|
|
3751
|
-
ok: false;
|
|
3752
|
-
error: PrerequisiteError;
|
|
3753
|
-
};
|
|
3754
|
-
type PrerequisiteError = {
|
|
3755
|
-
type: "cli-not-found" | "auth-missing" | "version-mismatch";
|
|
3756
|
-
message: string;
|
|
3757
|
-
helpUrl?: string;
|
|
3758
|
-
};
|
|
3759
|
-
type RuntimeExpertConfig = {
|
|
3760
|
-
instruction: string;
|
|
3761
|
-
};
|
|
3762
|
-
|
|
3763
|
-
declare function registerAdapter(runtime: RuntimeName, factory: () => RuntimeAdapter): void;
|
|
3764
|
-
declare function getAdapter(runtime: RuntimeName): RuntimeAdapter;
|
|
3765
|
-
declare function isAdapterAvailable(runtime: RuntimeName): boolean;
|
|
3766
|
-
declare function getRegisteredRuntimes(): RuntimeName[];
|
|
3767
|
-
|
|
3768
3660
|
declare const defaultPerstackApiBaseUrl = "https://api.perstack.ai";
|
|
3769
|
-
declare const organizationNameRegex: RegExp;
|
|
3770
|
-
declare const maxOrganizationNameLength = 128;
|
|
3771
|
-
declare const maxApplicationNameLength = 255;
|
|
3772
3661
|
declare const expertKeyRegex: RegExp;
|
|
3773
3662
|
declare const expertNameRegex: RegExp;
|
|
3774
3663
|
declare const expertVersionRegex: RegExp;
|
|
3775
3664
|
declare const tagNameRegex: RegExp;
|
|
3776
3665
|
declare const maxExpertNameLength = 255;
|
|
3777
|
-
declare const maxExpertVersionTagLength = 255;
|
|
3778
|
-
declare const maxExpertKeyLength = 511;
|
|
3779
|
-
declare const maxExpertDescriptionLength: number;
|
|
3780
|
-
declare const maxExpertInstructionLength: number;
|
|
3781
|
-
declare const maxExpertSkillItems = 255;
|
|
3782
|
-
declare const maxExpertDelegateItems = 255;
|
|
3783
|
-
declare const maxExpertTagItems = 8;
|
|
3784
3666
|
declare const defaultMaxSteps = 100;
|
|
3785
3667
|
declare const defaultMaxRetries = 5;
|
|
3786
3668
|
declare const defaultTimeout: number;
|
|
3787
|
-
declare const maxExpertJobQueryLength: number;
|
|
3788
|
-
declare const maxExpertJobFileNameLength: number;
|
|
3789
|
-
declare const packageWithVersionRegex: RegExp;
|
|
3790
|
-
declare const urlSafeRegex: RegExp;
|
|
3791
3669
|
declare const maxSkillNameLength = 255;
|
|
3792
|
-
declare const maxSkillDescriptionLength: number;
|
|
3793
|
-
declare const maxSkillRuleLength: number;
|
|
3794
|
-
declare const maxSkillPickOmitItems = 255;
|
|
3795
|
-
declare const maxSkillRequiredEnvItems = 255;
|
|
3796
3670
|
declare const maxSkillToolNameLength = 255;
|
|
3797
|
-
declare const maxSkillEndpointLength: number;
|
|
3798
|
-
declare const maxSkillInputJsonSchemaLength: number;
|
|
3799
|
-
declare const maxSkillToolItems = 255;
|
|
3800
|
-
declare const maxCheckpointToolCallIdLength = 255;
|
|
3801
|
-
declare const envNameRegex: RegExp;
|
|
3802
|
-
declare const maxEnvNameLength = 255;
|
|
3803
3671
|
|
|
3804
3672
|
declare const knownModels: {
|
|
3805
3673
|
provider: string;
|
|
@@ -6458,8 +6326,6 @@ interface CommandOptions {
|
|
|
6458
6326
|
runId?: string;
|
|
6459
6327
|
/** Paths to .env files */
|
|
6460
6328
|
envPath?: string[];
|
|
6461
|
-
/** Environment variable names to pass to Docker runtime */
|
|
6462
|
-
env?: string[];
|
|
6463
6329
|
/** Enable verbose logging */
|
|
6464
6330
|
verbose?: boolean;
|
|
6465
6331
|
/** Continue most recent job */
|
|
@@ -6470,12 +6336,6 @@ interface CommandOptions {
|
|
|
6470
6336
|
resumeFrom?: string;
|
|
6471
6337
|
/** Query is interactive tool call result */
|
|
6472
6338
|
interactiveToolCallResult?: boolean;
|
|
6473
|
-
/** Execution runtime */
|
|
6474
|
-
runtime?: RuntimeName;
|
|
6475
|
-
/** Workspace directory for Docker runtime */
|
|
6476
|
-
workspace?: string;
|
|
6477
|
-
/** Additional volume mounts for Docker runtime (format: hostPath:containerPath:mode) */
|
|
6478
|
-
volume?: string[];
|
|
6479
6339
|
/** Event types to filter (e.g., completeRun,stopRunByError) */
|
|
6480
6340
|
filter?: string[];
|
|
6481
6341
|
}
|
|
@@ -6517,21 +6377,11 @@ declare const runCommandInputSchema: z.ZodObject<{
|
|
|
6517
6377
|
jobId: z.ZodOptional<z.ZodString>;
|
|
6518
6378
|
runId: z.ZodOptional<z.ZodString>;
|
|
6519
6379
|
envPath: z.ZodPipe<z.ZodOptional<z.ZodArray<z.ZodString>>, z.ZodTransform<string[] | undefined, string[] | undefined>>;
|
|
6520
|
-
env: z.ZodPipe<z.ZodOptional<z.ZodArray<z.ZodString>>, z.ZodTransform<string[] | undefined, string[] | undefined>>;
|
|
6521
6380
|
verbose: z.ZodOptional<z.ZodBoolean>;
|
|
6522
6381
|
continue: z.ZodOptional<z.ZodBoolean>;
|
|
6523
6382
|
continueJob: z.ZodOptional<z.ZodString>;
|
|
6524
6383
|
resumeFrom: z.ZodOptional<z.ZodString>;
|
|
6525
6384
|
interactiveToolCallResult: z.ZodOptional<z.ZodBoolean>;
|
|
6526
|
-
runtime: z.ZodOptional<z.ZodEnum<{
|
|
6527
|
-
local: "local";
|
|
6528
|
-
cursor: "cursor";
|
|
6529
|
-
"claude-code": "claude-code";
|
|
6530
|
-
gemini: "gemini";
|
|
6531
|
-
docker: "docker";
|
|
6532
|
-
}>>;
|
|
6533
|
-
workspace: z.ZodOptional<z.ZodString>;
|
|
6534
|
-
volume: z.ZodPipe<z.ZodOptional<z.ZodArray<z.ZodString>>, z.ZodTransform<string[] | undefined, string[] | undefined>>;
|
|
6535
6385
|
filter: z.ZodPipe<z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<string[] | undefined, string | undefined>>, z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
6536
6386
|
}, z.core.$strip>;
|
|
6537
6387
|
}, z.core.$strip>;
|
|
@@ -6573,21 +6423,11 @@ declare const startCommandInputSchema: z.ZodObject<{
|
|
|
6573
6423
|
jobId: z.ZodOptional<z.ZodString>;
|
|
6574
6424
|
runId: z.ZodOptional<z.ZodString>;
|
|
6575
6425
|
envPath: z.ZodPipe<z.ZodOptional<z.ZodArray<z.ZodString>>, z.ZodTransform<string[] | undefined, string[] | undefined>>;
|
|
6576
|
-
env: z.ZodPipe<z.ZodOptional<z.ZodArray<z.ZodString>>, z.ZodTransform<string[] | undefined, string[] | undefined>>;
|
|
6577
6426
|
verbose: z.ZodOptional<z.ZodBoolean>;
|
|
6578
6427
|
continue: z.ZodOptional<z.ZodBoolean>;
|
|
6579
6428
|
continueJob: z.ZodOptional<z.ZodString>;
|
|
6580
6429
|
resumeFrom: z.ZodOptional<z.ZodString>;
|
|
6581
6430
|
interactiveToolCallResult: z.ZodOptional<z.ZodBoolean>;
|
|
6582
|
-
runtime: z.ZodOptional<z.ZodEnum<{
|
|
6583
|
-
local: "local";
|
|
6584
|
-
cursor: "cursor";
|
|
6585
|
-
"claude-code": "claude-code";
|
|
6586
|
-
gemini: "gemini";
|
|
6587
|
-
docker: "docker";
|
|
6588
|
-
}>>;
|
|
6589
|
-
workspace: z.ZodOptional<z.ZodString>;
|
|
6590
|
-
volume: z.ZodPipe<z.ZodOptional<z.ZodArray<z.ZodString>>, z.ZodTransform<string[] | undefined, string[] | undefined>>;
|
|
6591
6431
|
filter: z.ZodPipe<z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<string[] | undefined, string | undefined>>, z.ZodOptional<z.ZodArray<z.ZodString>>>;
|
|
6592
6432
|
}, z.core.$strip>;
|
|
6593
6433
|
}, z.core.$strip>;
|
|
@@ -6654,71 +6494,6 @@ type Resource = {
|
|
|
6654
6494
|
blob?: string;
|
|
6655
6495
|
};
|
|
6656
6496
|
|
|
6657
|
-
/**
|
|
6658
|
-
* Metadata for an event, used for listing events without loading full content.
|
|
6659
|
-
*/
|
|
6660
|
-
type EventMeta = {
|
|
6661
|
-
timestamp: number;
|
|
6662
|
-
stepNumber: number;
|
|
6663
|
-
type: string;
|
|
6664
|
-
};
|
|
6665
|
-
/**
|
|
6666
|
-
* Abstract storage interface for persisting Perstack data.
|
|
6667
|
-
*
|
|
6668
|
-
* Implementations include:
|
|
6669
|
-
* - FileSystemStorage: Local filesystem storage (default)
|
|
6670
|
-
* - S3Storage: AWS S3 storage
|
|
6671
|
-
* - R2Storage: Cloudflare R2 storage
|
|
6672
|
-
*/
|
|
6673
|
-
interface Storage {
|
|
6674
|
-
/**
|
|
6675
|
-
* Store a checkpoint.
|
|
6676
|
-
*/
|
|
6677
|
-
storeCheckpoint(checkpoint: Checkpoint): Promise<void>;
|
|
6678
|
-
/**
|
|
6679
|
-
* Retrieve a checkpoint by job ID and checkpoint ID.
|
|
6680
|
-
* @throws Error if checkpoint not found
|
|
6681
|
-
*/
|
|
6682
|
-
retrieveCheckpoint(jobId: string, checkpointId: string): Promise<Checkpoint>;
|
|
6683
|
-
/**
|
|
6684
|
-
* Get all checkpoints for a job, sorted by step number.
|
|
6685
|
-
*/
|
|
6686
|
-
getCheckpointsByJobId(jobId: string): Promise<Checkpoint[]>;
|
|
6687
|
-
/**
|
|
6688
|
-
* Store an event.
|
|
6689
|
-
*/
|
|
6690
|
-
storeEvent(event: RunEvent): Promise<void>;
|
|
6691
|
-
/**
|
|
6692
|
-
* Get event metadata for a run, sorted by step number.
|
|
6693
|
-
*/
|
|
6694
|
-
getEventsByRun(jobId: string, runId: string): Promise<EventMeta[]>;
|
|
6695
|
-
/**
|
|
6696
|
-
* Get full event contents for a run, optionally filtered by max step.
|
|
6697
|
-
*/
|
|
6698
|
-
getEventContents(jobId: string, runId: string, maxStep?: number): Promise<RunEvent[]>;
|
|
6699
|
-
/**
|
|
6700
|
-
* Store a job.
|
|
6701
|
-
*/
|
|
6702
|
-
storeJob(job: Job): Promise<void>;
|
|
6703
|
-
/**
|
|
6704
|
-
* Retrieve a job by ID.
|
|
6705
|
-
* @returns Job or undefined if not found
|
|
6706
|
-
*/
|
|
6707
|
-
retrieveJob(jobId: string): Promise<Job | undefined>;
|
|
6708
|
-
/**
|
|
6709
|
-
* Get all jobs, sorted by start time (newest first).
|
|
6710
|
-
*/
|
|
6711
|
-
getAllJobs(): Promise<Job[]>;
|
|
6712
|
-
/**
|
|
6713
|
-
* Store a run setting. Updates updatedAt if run already exists.
|
|
6714
|
-
*/
|
|
6715
|
-
storeRunSetting(setting: RunSetting): Promise<void>;
|
|
6716
|
-
/**
|
|
6717
|
-
* Get all run settings, sorted by updated time (newest first).
|
|
6718
|
-
*/
|
|
6719
|
-
getAllRuns(): Promise<RunSetting[]>;
|
|
6720
|
-
}
|
|
6721
|
-
|
|
6722
6497
|
declare const BASE_SKILL_PREFIX = "@perstack/base";
|
|
6723
6498
|
type GetActivitiesParams = {
|
|
6724
6499
|
checkpoint: Checkpoint;
|
|
@@ -6755,4 +6530,4 @@ declare function createFilteredEventListener(listener: (event: PerstackEvent) =>
|
|
|
6755
6530
|
declare function formatZodError(error: ZodError): string;
|
|
6756
6531
|
declare function parseWithFriendlyError<T>(schema: ZodSchema<T>, data: unknown, context?: string): T;
|
|
6757
6532
|
|
|
6758
|
-
export { type Activity, type ActivityOrGroup, type ActivityType, type
|
|
6533
|
+
export { type Activity, type ActivityOrGroup, type ActivityType, type AmazonBedrockProviderConfig, type AnthropicProviderConfig, type AnthropicProviderSkill, type AnthropicProviderToolName, type AppendTextFileActivity, type AttemptCompletionActivity, type AzureOpenAIProviderToolName, type AzureOpenAiProviderConfig, BASE_SKILL_PREFIX, type BaseEvent, type BasePart, type BuiltinAnthropicSkill, type CallToolResultContent, type Checkpoint, type CheckpointStatus, type ClearTodoActivity, type CommandOptions, type CompleteActivity, type CreateCheckpointParams, type CreateDirectoryActivity, type CustomAnthropicSkill, type DeepseekProviderConfig, type DelegateActivity, type DelegateSkillManagerParams, type DelegationCompleteActivity, type DelegationTarget, type DeleteDirectoryActivity, type DeleteFileActivity, type EditTextFileActivity, type ErrorActivity, type EventForType, type EventType, type ExecActivity, type Expert, type ExpertMessage, type ExpertStateEvent, type ExpertStateEventType, type FileBinaryPart, type FileInlinePart, type FileUrlPart, type GeneralToolActivity, type GetActivitiesParams, type GetFileInfoActivity, type GoogleGenerativeAiProviderConfig, type GoogleProviderToolName, type GoogleVertexProviderConfig, type Headers, type ImageBinaryPart, type ImageInlinePart, type ImageUrlPart, type InstructionMessage, type InteractiveSkill, type InteractiveSkillManagerParams, type InteractiveTool, type InteractiveToolActivity, type Job, type JobStatus, type ListDirectoryActivity, type Lockfile, type LockfileExpert, type LockfileToolDefinition, type McpSkillManagerParams, type McpSseSkill, type McpStdioSkill, type Message, type MessagePart, type MoveFileActivity, type OllamaProviderConfig, type OpenAIProviderToolName, type OpenAiProviderConfig, type ParallelActivitiesGroup, type PerstackConfig, type PerstackConfigExpert, type PerstackConfigSkill, type PerstackEvent, type ProviderConfig, type ProviderName, type ProviderTable, type ProviderToolOptions, type QueryActivity, type ReadImageFileActivity, type ReadPdfFileActivity, type ReadTextFileActivity, type ReasoningBudget, type Resource, type RetryActivity, type RunCommandInput, type RunEvent, type RunInput, type RunParams, type RunParamsInput, type RunSetting, type RuntimeEvent, type RuntimeEventForType, type RuntimeEventType, type RuntimeVersion, SAFE_ENV_VARS, type Skill, type SkillManagerParams, type SkillType, type StartCommandInput, type Step, type StreamingEvent, type StreamingEventType, type TextPart, type ThinkingPart, type TodoActivity, type ToolCall, type ToolCallPart, type ToolDefinition, type ToolMessage, type ToolResult, type ToolResultPart, type Usage, type UserMessage, type VertexProviderToolName, type WriteTextFileActivity, activityOrGroupSchema, activitySchema, amazonBedrockProviderConfigSchema, anthropicProviderConfigSchema, anthropicProviderSkillSchema, anthropicProviderToolNameSchema, appendTextFileActivitySchema, attemptCompletion, attemptCompletionActivitySchema, azureOpenAIProviderToolNameSchema, azureOpenAiProviderConfigSchema, basePartSchema, builtinAnthropicSkillSchema, callTools, checkpointSchema, checkpointStatusSchema, clearTodoActivitySchema, completeActivitySchema, completeRun, continueToNextStep, createBaseToolActivity, createCallToolsEvent, createCompleteRunEvent, createDirectoryActivitySchema, createEmptyUsage, createEvent, createFilteredEventListener, createGeneralToolActivity, createNormalizedCheckpoint, createResolveToolResultsEvent, createRuntimeEvent, createRuntimeInitEvent, createStartRunEvent, createStreamingEvent, createToolMessage, customAnthropicSkillSchema, deepseekProviderConfigSchema, defaultMaxRetries, defaultMaxSteps, defaultPerstackApiBaseUrl, defaultReasoningBudget, defaultTimeout, delegateActivitySchema, delegationCompleteActivitySchema, delegationTargetSchema, deleteDirectoryActivitySchema, deleteFileActivitySchema, domainPatternSchema, editTextFileActivitySchema, errorActivitySchema, execActivitySchema, expertKeyRegex, expertMessageSchema, expertNameRegex, expertSchema, expertVersionRegex, fileBinaryPartSchema, fileInlinePartSchema, fileSearchOptionsSchema, fileUrlPartSchema, finishMcpTools, finishToolCall, formatZodError, generalToolActivitySchema, getActivities, getFileInfoActivitySchema, getFilteredEnv, googleGenerativeAiProviderConfigSchema, googleProviderToolNameSchema, googleVertexProviderConfigSchema, headersSchema, imageBinaryPartSchema, imageInlinePartSchema, imageUrlPartSchema, instructionMessageSchema, interactiveSkillSchema, interactiveToolActivitySchema, interactiveToolSchema, isPrivateOrLocalIP, isValidEventType, isValidRuntimeEventType, jobSchema, jobStatusSchema, knownModels, listDirectoryActivitySchema, lockfileExpertSchema, lockfileSchema, lockfileToolDefinitionSchema, maxExpertNameLength, maxSkillNameLength, maxSkillToolNameLength, mcpSseSkillSchema, mcpStdioSkillSchema, messagePartSchema, messageSchema, moveFileActivitySchema, ollamaProviderConfigSchema, openAiProviderConfigSchema, openaiProviderToolNameSchema, parallelActivitiesGroupSchema, parseExpertKey, parseWithFriendlyError, perstackConfigSchema, proceedToInteractiveTools, providerConfigSchema, providerNameSchema, providerTableSchema, providerToolOptionsSchema, queryActivitySchema, readImageFileActivitySchema, readPdfFileActivitySchema, readTextFileActivitySchema, reasoningBudgetSchema, resolveToolResults, resumeFromStop, resumeToolCalls, retry, retryActivitySchema, runCommandInputSchema, runParamsSchema, runSettingSchema, runtimeVersionSchema, skillSchema, skipDelegates, startCommandInputSchema, startGeneration, startRun, stepSchema, stopRunByDelegate, stopRunByError, stopRunByExceededMaxSteps, stopRunByInteractiveTool, tagNameRegex, textPartSchema, thinkingPartSchema, todoActivitySchema, toolCallPartSchema, toolCallSchema, toolMessageSchema, toolResultPartSchema, toolResultSchema, usageSchema, userMessageSchema, validateEventFilter, vertexProviderToolNameSchema, webFetchOptionsSchema, webSearchOptionsSchema, writeTextFileActivitySchema };
|