zeitlich 0.2.33 → 0.2.34
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 +17 -6
- package/dist/{activities-fnX8-vhR.d.cts → activities-JOqPfKP0.d.cts} +2 -2
- package/dist/{activities-YBD5BaHh.d.ts → activities-WwMsjRwm.d.ts} +2 -2
- package/dist/adapters/sandbox/bedrock/index.cjs +2 -0
- package/dist/adapters/sandbox/bedrock/index.cjs.map +1 -1
- package/dist/adapters/sandbox/bedrock/index.d.cts +4 -3
- package/dist/adapters/sandbox/bedrock/index.d.ts +4 -3
- package/dist/adapters/sandbox/bedrock/index.js +2 -0
- package/dist/adapters/sandbox/bedrock/index.js.map +1 -1
- package/dist/adapters/sandbox/bedrock/workflow.cjs +1 -0
- package/dist/adapters/sandbox/bedrock/workflow.cjs.map +1 -1
- package/dist/adapters/sandbox/bedrock/workflow.d.cts +2 -2
- package/dist/adapters/sandbox/bedrock/workflow.d.ts +2 -2
- package/dist/adapters/sandbox/bedrock/workflow.js +1 -0
- package/dist/adapters/sandbox/bedrock/workflow.js.map +1 -1
- package/dist/adapters/sandbox/daytona/index.cjs +2 -0
- package/dist/adapters/sandbox/daytona/index.cjs.map +1 -1
- package/dist/adapters/sandbox/daytona/index.d.cts +2 -1
- package/dist/adapters/sandbox/daytona/index.d.ts +2 -1
- package/dist/adapters/sandbox/daytona/index.js +2 -0
- package/dist/adapters/sandbox/daytona/index.js.map +1 -1
- package/dist/adapters/sandbox/daytona/workflow.cjs +1 -0
- package/dist/adapters/sandbox/daytona/workflow.cjs.map +1 -1
- package/dist/adapters/sandbox/daytona/workflow.d.cts +1 -1
- package/dist/adapters/sandbox/daytona/workflow.d.ts +1 -1
- package/dist/adapters/sandbox/daytona/workflow.js +1 -0
- package/dist/adapters/sandbox/daytona/workflow.js.map +1 -1
- package/dist/adapters/sandbox/e2b/index.cjs +3 -0
- package/dist/adapters/sandbox/e2b/index.cjs.map +1 -1
- package/dist/adapters/sandbox/e2b/index.d.cts +2 -1
- package/dist/adapters/sandbox/e2b/index.d.ts +2 -1
- package/dist/adapters/sandbox/e2b/index.js +3 -0
- package/dist/adapters/sandbox/e2b/index.js.map +1 -1
- package/dist/adapters/sandbox/e2b/workflow.cjs +1 -0
- package/dist/adapters/sandbox/e2b/workflow.cjs.map +1 -1
- package/dist/adapters/sandbox/e2b/workflow.d.cts +1 -1
- package/dist/adapters/sandbox/e2b/workflow.d.ts +1 -1
- package/dist/adapters/sandbox/e2b/workflow.js +1 -0
- package/dist/adapters/sandbox/e2b/workflow.js.map +1 -1
- package/dist/adapters/sandbox/inmemory/index.cjs +2 -0
- package/dist/adapters/sandbox/inmemory/index.cjs.map +1 -1
- package/dist/adapters/sandbox/inmemory/index.d.cts +2 -1
- package/dist/adapters/sandbox/inmemory/index.d.ts +2 -1
- package/dist/adapters/sandbox/inmemory/index.js +2 -0
- package/dist/adapters/sandbox/inmemory/index.js.map +1 -1
- package/dist/adapters/sandbox/inmemory/workflow.cjs +1 -0
- package/dist/adapters/sandbox/inmemory/workflow.cjs.map +1 -1
- package/dist/adapters/sandbox/inmemory/workflow.d.cts +1 -1
- package/dist/adapters/sandbox/inmemory/workflow.d.ts +1 -1
- package/dist/adapters/sandbox/inmemory/workflow.js +1 -0
- package/dist/adapters/sandbox/inmemory/workflow.js.map +1 -1
- package/dist/adapters/thread/anthropic/index.d.cts +5 -5
- package/dist/adapters/thread/anthropic/index.d.ts +5 -5
- package/dist/adapters/thread/anthropic/workflow.d.cts +5 -5
- package/dist/adapters/thread/anthropic/workflow.d.ts +5 -5
- package/dist/adapters/thread/google-genai/index.d.cts +5 -5
- package/dist/adapters/thread/google-genai/index.d.ts +5 -5
- package/dist/adapters/thread/google-genai/workflow.d.cts +5 -5
- package/dist/adapters/thread/google-genai/workflow.d.ts +5 -5
- package/dist/adapters/thread/langchain/index.d.cts +5 -5
- package/dist/adapters/thread/langchain/index.d.ts +5 -5
- package/dist/adapters/thread/langchain/workflow.d.cts +5 -5
- package/dist/adapters/thread/langchain/workflow.d.ts +5 -5
- package/dist/index.cjs +114 -30
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +10 -9
- package/dist/index.d.ts +10 -9
- package/dist/index.js +114 -30
- package/dist/index.js.map +1 -1
- package/dist/{proxy-CTCYWjkr.d.cts → proxy-BesT2ioL.d.cts} +1 -1
- package/dist/{proxy-Br4unLTC.d.ts → proxy-Bz6wXYW-.d.ts} +1 -1
- package/dist/{thread-manager-Cv_BR28i.d.cts → thread-manager-CCVAOK8g.d.cts} +1 -1
- package/dist/{thread-manager-CUubPYPH.d.cts → thread-manager-Cf_34H8w.d.cts} +1 -1
- package/dist/{thread-manager-YJLoc1vH.d.ts → thread-manager-ClKAQx78.d.ts} +1 -1
- package/dist/{thread-manager-DKWxHUzD.d.ts → thread-manager-DarJIK_b.d.ts} +1 -1
- package/dist/{types-Bpq5fDI5.d.cts → types-BGLW5Zyj.d.ts} +35 -20
- package/dist/{types-BxiT8w9d.d.ts → types-BVUmLYpj.d.ts} +1 -1
- package/dist/{types-DUvEZSDe.d.cts → types-CBH54cwr.d.cts} +1 -1
- package/dist/{types-NJDyMyUx.d.cts → types-DPAZ3KCs.d.cts} +1 -1
- package/dist/{types-CheCTLeV.d.ts → types-DlLajQcu.d.cts} +35 -20
- package/dist/{types-AujBIMMn.d.cts → types-DxCpFNv_.d.cts} +4 -0
- package/dist/{types-AujBIMMn.d.ts → types-DxCpFNv_.d.ts} +4 -0
- package/dist/{types-DBk-C8zM.d.ts → types-wiGLvxWf.d.ts} +1 -1
- package/dist/{workflow-D9nNERvs.d.ts → workflow-_ZGcacCK.d.ts} +3 -3
- package/dist/{workflow-Od9vx5Jk.d.cts → workflow-hocXpLwg.d.cts} +3 -3
- package/dist/workflow.cjs +108 -30
- package/dist/workflow.cjs.map +1 -1
- package/dist/workflow.d.cts +3 -3
- package/dist/workflow.d.ts +3 -3
- package/dist/workflow.js +108 -30
- package/dist/workflow.js.map +1 -1
- package/package.json +1 -1
- package/src/adapters/sandbox/bedrock/index.ts +4 -0
- package/src/adapters/sandbox/bedrock/proxy.ts +1 -0
- package/src/adapters/sandbox/daytona/index.ts +4 -0
- package/src/adapters/sandbox/daytona/proxy.ts +1 -0
- package/src/adapters/sandbox/e2b/index.ts +4 -0
- package/src/adapters/sandbox/e2b/proxy.ts +1 -0
- package/src/adapters/sandbox/inmemory/index.ts +4 -0
- package/src/adapters/sandbox/inmemory/proxy.ts +1 -0
- package/src/lib/lifecycle.ts +7 -3
- package/src/lib/sandbox/manager.ts +7 -0
- package/src/lib/sandbox/types.ts +4 -0
- package/src/lib/session/session-edge-cases.integration.test.ts +194 -0
- package/src/lib/session/session.integration.test.ts +5 -0
- package/src/lib/session/session.ts +9 -0
- package/src/lib/session/types.ts +5 -0
- package/src/lib/subagent/define.ts +1 -1
- package/src/lib/subagent/handler.ts +142 -32
- package/src/lib/subagent/index.ts +5 -1
- package/src/lib/subagent/signals.ts +8 -1
- package/src/lib/subagent/subagent.integration.test.ts +532 -25
- package/src/lib/subagent/types.ts +32 -15
- package/src/lib/subagent/workflow.ts +26 -13
- package/src/lib/virtual-fs/manager.ts +1 -1
- package/src/lib/virtual-fs/types.ts +2 -2
- package/src/lib/virtual-fs/virtual-fs.test.ts +2 -2
package/dist/workflow.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { A as AskUserQuestionArgs, B as BashArgs, F as FileEditArgs, a as FileReadArgs, b as FileWriteArgs, G as GlobArgs, d as GrepArgs, O as ObservabilityHooks, R as ReadSkillArgs, S as SessionEndedEvent, e as SessionStartedEvent, f as SubagentArgs, T as TaskCreateArgs, g as TaskGetArgs, h as TaskListArgs, i as TaskUpdateArgs, j as ToolExecutedEvent, k as TurnCompletedEvent, W as WorkflowConfig, l as WorkflowInput, m as WorkflowSessionInput, Z as ZeitlichObservabilitySinks, n as applyVirtualTreeMutations, o as askUserQuestionTool, p as bashTool, q as composeHooks, r as createAgentStateManager, s as createAskUserQuestionHandler, t as createBashToolDescription, u as createObservabilityHooks, v as createReadSkillHandler, w as createReadSkillTool, x as createSession, y as createTaskCreateHandler, z as createTaskGetHandler, C as createTaskListHandler, D as createTaskUpdateHandler, E as createToolRouter, H as defineSubagent, I as defineSubagentWorkflow, J as defineTool, K as defineWorkflow, L as editTool, M as filesWithMimeType, N as formatVirtualFileTree, P as getShortId, Q as globTool, U as grepTool, V as hasDirectory, X as hasFileWithMimeType, Y as hasNoOtherToolCalls, _ as parseSkillFile, $ as proxyRunAgent, a0 as proxyVirtualFsOps, a1 as readFileTool, a2 as taskCreateTool, a3 as taskGetTool, a4 as taskListTool, a5 as taskUpdateTool, a6 as writeFileTool } from './workflow-
|
|
2
|
-
export { c as ActivityToolHandler, l as AgentConfig, m as AgentFile, A as AgentResponse, n as AgentState, o as AgentStateManager, p as AgentStatus, q as AppendToolResultFn, B as BaseAgentState, r as FileEntry, F as FileEntryMetadata, i as FileResolver, H as Hooks, I as InferToolResults, s as JsonPrimitive, t as JsonSerializable, J as JsonValue, a as ModelInvoker, M as ModelInvokerConfig, u as ParsedToolCall, v as ParsedToolCallUnion, w as PostHumanMessageAppendHook, x as PostHumanMessageAppendHookContext, y as PostToolUseFailureHook, z as PostToolUseFailureHookContext, C as PostToolUseFailureHookResult, D as PostToolUseHook, E as PostToolUseHookContext, G as PreHumanMessageAppendHook, K as PreHumanMessageAppendHookContext, L as PreToolUseHook, N as PreToolUseHookContext, O as PreToolUseHookResult, P as PrefixedThreadOps, k as PrefixedVirtualFsOps, Q as ProcessToolCallsContext, U as RawToolCall, R as RouterContext, W as RunAgentActivity, e as RunAgentConfig, X as SandboxInit, Y as SandboxShutdown, S as ScopedPrefix, Z as SerializableToolDefinition, _ as SessionConfig, $ as SessionEndHook, a0 as SessionEndHookContext, a1 as SessionExitReason, a2 as SessionResult, a3 as SessionStartHook, a4 as SessionStartHookContext, h as Skill, g as SkillMetadata, f as SkillProvider, a5 as SubagentConfig, a6 as SubagentDefinition, a7 as SubagentFnResult, a8 as SubagentHandlerResponse, a9 as SubagentHooks, aa as SubagentSandboxConfig, ab as SubagentSandboxShutdown, ac as SubagentSessionInput, ad as SubagentWorkflow, ae as SubagentWorkflowInput, af as TaskStatus, ag as ThreadInit, T as ThreadOps, ah as TokenUsage, ai as ToolArgs, aj as ToolCallResult, ak as ToolCallResultUnion, al as ToolDefinition, am as ToolHandler, b as ToolHandlerResponse, an as ToolHooks, ao as ToolMap, ap as ToolNames, aq as ToolResult, d as ToolResultConfig, ar as ToolRouter, as as ToolRouterHooks, at as ToolWithHandler, j as TreeMutation, av as VirtualFileTree, aw as VirtualFsOps, ax as VirtualFsState, ay as WorkflowTask, az as ZeitlichSession, aA as isTerminalStatus } from './types-
|
|
3
|
-
export { h as ExecOptions, E as ExecResult, P as PrefixedSandboxOps, S as Sandbox, c as SandboxCapabilities, d as SandboxCreateOptions, e as SandboxCreateResult, D as SandboxDirentEntry, F as SandboxFileStat, a as SandboxFileSystem, i as SandboxNotFoundError, j as SandboxNotSupportedError, g as SandboxOps, b as SandboxProvider, f as SandboxSnapshot } from './types-
|
|
1
|
+
export { A as AskUserQuestionArgs, B as BashArgs, F as FileEditArgs, a as FileReadArgs, b as FileWriteArgs, G as GlobArgs, d as GrepArgs, O as ObservabilityHooks, R as ReadSkillArgs, S as SessionEndedEvent, e as SessionStartedEvent, f as SubagentArgs, T as TaskCreateArgs, g as TaskGetArgs, h as TaskListArgs, i as TaskUpdateArgs, j as ToolExecutedEvent, k as TurnCompletedEvent, W as WorkflowConfig, l as WorkflowInput, m as WorkflowSessionInput, Z as ZeitlichObservabilitySinks, n as applyVirtualTreeMutations, o as askUserQuestionTool, p as bashTool, q as composeHooks, r as createAgentStateManager, s as createAskUserQuestionHandler, t as createBashToolDescription, u as createObservabilityHooks, v as createReadSkillHandler, w as createReadSkillTool, x as createSession, y as createTaskCreateHandler, z as createTaskGetHandler, C as createTaskListHandler, D as createTaskUpdateHandler, E as createToolRouter, H as defineSubagent, I as defineSubagentWorkflow, J as defineTool, K as defineWorkflow, L as editTool, M as filesWithMimeType, N as formatVirtualFileTree, P as getShortId, Q as globTool, U as grepTool, V as hasDirectory, X as hasFileWithMimeType, Y as hasNoOtherToolCalls, _ as parseSkillFile, $ as proxyRunAgent, a0 as proxyVirtualFsOps, a1 as readFileTool, a2 as taskCreateTool, a3 as taskGetTool, a4 as taskListTool, a5 as taskUpdateTool, a6 as writeFileTool } from './workflow-hocXpLwg.cjs';
|
|
2
|
+
export { c as ActivityToolHandler, l as AgentConfig, m as AgentFile, A as AgentResponse, n as AgentState, o as AgentStateManager, p as AgentStatus, q as AppendToolResultFn, B as BaseAgentState, r as FileEntry, F as FileEntryMetadata, i as FileResolver, H as Hooks, I as InferToolResults, s as JsonPrimitive, t as JsonSerializable, J as JsonValue, a as ModelInvoker, M as ModelInvokerConfig, u as ParsedToolCall, v as ParsedToolCallUnion, w as PostHumanMessageAppendHook, x as PostHumanMessageAppendHookContext, y as PostToolUseFailureHook, z as PostToolUseFailureHookContext, C as PostToolUseFailureHookResult, D as PostToolUseHook, E as PostToolUseHookContext, G as PreHumanMessageAppendHook, K as PreHumanMessageAppendHookContext, L as PreToolUseHook, N as PreToolUseHookContext, O as PreToolUseHookResult, P as PrefixedThreadOps, k as PrefixedVirtualFsOps, Q as ProcessToolCallsContext, U as RawToolCall, R as RouterContext, W as RunAgentActivity, e as RunAgentConfig, X as SandboxInit, Y as SandboxShutdown, S as ScopedPrefix, Z as SerializableToolDefinition, _ as SessionConfig, $ as SessionEndHook, a0 as SessionEndHookContext, a1 as SessionExitReason, a2 as SessionResult, a3 as SessionStartHook, a4 as SessionStartHookContext, h as Skill, g as SkillMetadata, f as SkillProvider, a5 as SubagentConfig, a6 as SubagentDefinition, a7 as SubagentFnResult, a8 as SubagentHandlerResponse, a9 as SubagentHooks, aa as SubagentSandboxConfig, ab as SubagentSandboxShutdown, ac as SubagentSessionInput, ad as SubagentWorkflow, ae as SubagentWorkflowInput, af as TaskStatus, ag as ThreadInit, T as ThreadOps, ah as TokenUsage, ai as ToolArgs, aj as ToolCallResult, ak as ToolCallResultUnion, al as ToolDefinition, am as ToolHandler, b as ToolHandlerResponse, an as ToolHooks, ao as ToolMap, ap as ToolNames, aq as ToolResult, d as ToolResultConfig, ar as ToolRouter, as as ToolRouterHooks, at as ToolWithHandler, j as TreeMutation, av as VirtualFileTree, aw as VirtualFsOps, ax as VirtualFsState, ay as WorkflowTask, az as ZeitlichSession, aA as isTerminalStatus } from './types-DlLajQcu.cjs';
|
|
3
|
+
export { h as ExecOptions, E as ExecResult, P as PrefixedSandboxOps, S as Sandbox, c as SandboxCapabilities, d as SandboxCreateOptions, e as SandboxCreateResult, D as SandboxDirentEntry, F as SandboxFileStat, a as SandboxFileSystem, i as SandboxNotFoundError, j as SandboxNotSupportedError, g as SandboxOps, b as SandboxProvider, f as SandboxSnapshot } from './types-DxCpFNv_.cjs';
|
|
4
4
|
import 'zod';
|
|
5
5
|
import '@temporalio/workflow';
|
|
6
6
|
import '@temporalio/common';
|
package/dist/workflow.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { A as AskUserQuestionArgs, B as BashArgs, F as FileEditArgs, a as FileReadArgs, b as FileWriteArgs, G as GlobArgs, d as GrepArgs, O as ObservabilityHooks, R as ReadSkillArgs, S as SessionEndedEvent, e as SessionStartedEvent, f as SubagentArgs, T as TaskCreateArgs, g as TaskGetArgs, h as TaskListArgs, i as TaskUpdateArgs, j as ToolExecutedEvent, k as TurnCompletedEvent, W as WorkflowConfig, l as WorkflowInput, m as WorkflowSessionInput, Z as ZeitlichObservabilitySinks, n as applyVirtualTreeMutations, o as askUserQuestionTool, p as bashTool, q as composeHooks, r as createAgentStateManager, s as createAskUserQuestionHandler, t as createBashToolDescription, u as createObservabilityHooks, v as createReadSkillHandler, w as createReadSkillTool, x as createSession, y as createTaskCreateHandler, z as createTaskGetHandler, C as createTaskListHandler, D as createTaskUpdateHandler, E as createToolRouter, H as defineSubagent, I as defineSubagentWorkflow, J as defineTool, K as defineWorkflow, L as editTool, M as filesWithMimeType, N as formatVirtualFileTree, P as getShortId, Q as globTool, U as grepTool, V as hasDirectory, X as hasFileWithMimeType, Y as hasNoOtherToolCalls, _ as parseSkillFile, $ as proxyRunAgent, a0 as proxyVirtualFsOps, a1 as readFileTool, a2 as taskCreateTool, a3 as taskGetTool, a4 as taskListTool, a5 as taskUpdateTool, a6 as writeFileTool } from './workflow-
|
|
2
|
-
export { c as ActivityToolHandler, l as AgentConfig, m as AgentFile, A as AgentResponse, n as AgentState, o as AgentStateManager, p as AgentStatus, q as AppendToolResultFn, B as BaseAgentState, r as FileEntry, F as FileEntryMetadata, i as FileResolver, H as Hooks, I as InferToolResults, s as JsonPrimitive, t as JsonSerializable, J as JsonValue, a as ModelInvoker, M as ModelInvokerConfig, u as ParsedToolCall, v as ParsedToolCallUnion, w as PostHumanMessageAppendHook, x as PostHumanMessageAppendHookContext, y as PostToolUseFailureHook, z as PostToolUseFailureHookContext, C as PostToolUseFailureHookResult, D as PostToolUseHook, E as PostToolUseHookContext, G as PreHumanMessageAppendHook, K as PreHumanMessageAppendHookContext, L as PreToolUseHook, N as PreToolUseHookContext, O as PreToolUseHookResult, P as PrefixedThreadOps, k as PrefixedVirtualFsOps, Q as ProcessToolCallsContext, U as RawToolCall, R as RouterContext, W as RunAgentActivity, e as RunAgentConfig, X as SandboxInit, Y as SandboxShutdown, S as ScopedPrefix, Z as SerializableToolDefinition, _ as SessionConfig, $ as SessionEndHook, a0 as SessionEndHookContext, a1 as SessionExitReason, a2 as SessionResult, a3 as SessionStartHook, a4 as SessionStartHookContext, h as Skill, g as SkillMetadata, f as SkillProvider, a5 as SubagentConfig, a6 as SubagentDefinition, a7 as SubagentFnResult, a8 as SubagentHandlerResponse, a9 as SubagentHooks, aa as SubagentSandboxConfig, ab as SubagentSandboxShutdown, ac as SubagentSessionInput, ad as SubagentWorkflow, ae as SubagentWorkflowInput, af as TaskStatus, ag as ThreadInit, T as ThreadOps, ah as TokenUsage, ai as ToolArgs, aj as ToolCallResult, ak as ToolCallResultUnion, al as ToolDefinition, am as ToolHandler, b as ToolHandlerResponse, an as ToolHooks, ao as ToolMap, ap as ToolNames, aq as ToolResult, d as ToolResultConfig, ar as ToolRouter, as as ToolRouterHooks, at as ToolWithHandler, j as TreeMutation, av as VirtualFileTree, aw as VirtualFsOps, ax as VirtualFsState, ay as WorkflowTask, az as ZeitlichSession, aA as isTerminalStatus } from './types-
|
|
3
|
-
export { h as ExecOptions, E as ExecResult, P as PrefixedSandboxOps, S as Sandbox, c as SandboxCapabilities, d as SandboxCreateOptions, e as SandboxCreateResult, D as SandboxDirentEntry, F as SandboxFileStat, a as SandboxFileSystem, i as SandboxNotFoundError, j as SandboxNotSupportedError, g as SandboxOps, b as SandboxProvider, f as SandboxSnapshot } from './types-
|
|
1
|
+
export { A as AskUserQuestionArgs, B as BashArgs, F as FileEditArgs, a as FileReadArgs, b as FileWriteArgs, G as GlobArgs, d as GrepArgs, O as ObservabilityHooks, R as ReadSkillArgs, S as SessionEndedEvent, e as SessionStartedEvent, f as SubagentArgs, T as TaskCreateArgs, g as TaskGetArgs, h as TaskListArgs, i as TaskUpdateArgs, j as ToolExecutedEvent, k as TurnCompletedEvent, W as WorkflowConfig, l as WorkflowInput, m as WorkflowSessionInput, Z as ZeitlichObservabilitySinks, n as applyVirtualTreeMutations, o as askUserQuestionTool, p as bashTool, q as composeHooks, r as createAgentStateManager, s as createAskUserQuestionHandler, t as createBashToolDescription, u as createObservabilityHooks, v as createReadSkillHandler, w as createReadSkillTool, x as createSession, y as createTaskCreateHandler, z as createTaskGetHandler, C as createTaskListHandler, D as createTaskUpdateHandler, E as createToolRouter, H as defineSubagent, I as defineSubagentWorkflow, J as defineTool, K as defineWorkflow, L as editTool, M as filesWithMimeType, N as formatVirtualFileTree, P as getShortId, Q as globTool, U as grepTool, V as hasDirectory, X as hasFileWithMimeType, Y as hasNoOtherToolCalls, _ as parseSkillFile, $ as proxyRunAgent, a0 as proxyVirtualFsOps, a1 as readFileTool, a2 as taskCreateTool, a3 as taskGetTool, a4 as taskListTool, a5 as taskUpdateTool, a6 as writeFileTool } from './workflow-_ZGcacCK.js';
|
|
2
|
+
export { c as ActivityToolHandler, l as AgentConfig, m as AgentFile, A as AgentResponse, n as AgentState, o as AgentStateManager, p as AgentStatus, q as AppendToolResultFn, B as BaseAgentState, r as FileEntry, F as FileEntryMetadata, i as FileResolver, H as Hooks, I as InferToolResults, s as JsonPrimitive, t as JsonSerializable, J as JsonValue, a as ModelInvoker, M as ModelInvokerConfig, u as ParsedToolCall, v as ParsedToolCallUnion, w as PostHumanMessageAppendHook, x as PostHumanMessageAppendHookContext, y as PostToolUseFailureHook, z as PostToolUseFailureHookContext, C as PostToolUseFailureHookResult, D as PostToolUseHook, E as PostToolUseHookContext, G as PreHumanMessageAppendHook, K as PreHumanMessageAppendHookContext, L as PreToolUseHook, N as PreToolUseHookContext, O as PreToolUseHookResult, P as PrefixedThreadOps, k as PrefixedVirtualFsOps, Q as ProcessToolCallsContext, U as RawToolCall, R as RouterContext, W as RunAgentActivity, e as RunAgentConfig, X as SandboxInit, Y as SandboxShutdown, S as ScopedPrefix, Z as SerializableToolDefinition, _ as SessionConfig, $ as SessionEndHook, a0 as SessionEndHookContext, a1 as SessionExitReason, a2 as SessionResult, a3 as SessionStartHook, a4 as SessionStartHookContext, h as Skill, g as SkillMetadata, f as SkillProvider, a5 as SubagentConfig, a6 as SubagentDefinition, a7 as SubagentFnResult, a8 as SubagentHandlerResponse, a9 as SubagentHooks, aa as SubagentSandboxConfig, ab as SubagentSandboxShutdown, ac as SubagentSessionInput, ad as SubagentWorkflow, ae as SubagentWorkflowInput, af as TaskStatus, ag as ThreadInit, T as ThreadOps, ah as TokenUsage, ai as ToolArgs, aj as ToolCallResult, ak as ToolCallResultUnion, al as ToolDefinition, am as ToolHandler, b as ToolHandlerResponse, an as ToolHooks, ao as ToolMap, ap as ToolNames, aq as ToolResult, d as ToolResultConfig, ar as ToolRouter, as as ToolRouterHooks, at as ToolWithHandler, j as TreeMutation, av as VirtualFileTree, aw as VirtualFsOps, ax as VirtualFsState, ay as WorkflowTask, az as ZeitlichSession, aA as isTerminalStatus } from './types-BGLW5Zyj.js';
|
|
3
|
+
export { h as ExecOptions, E as ExecResult, P as PrefixedSandboxOps, S as Sandbox, c as SandboxCapabilities, d as SandboxCreateOptions, e as SandboxCreateResult, D as SandboxDirentEntry, F as SandboxFileStat, a as SandboxFileSystem, i as SandboxNotFoundError, j as SandboxNotSupportedError, g as SandboxOps, b as SandboxProvider, f as SandboxSnapshot } from './types-DxCpFNv_.js';
|
|
4
4
|
import 'zod';
|
|
5
5
|
import '@temporalio/workflow';
|
|
6
6
|
import '@temporalio/common';
|
package/dist/workflow.js
CHANGED
|
@@ -386,23 +386,50 @@ function createSubagentTool(subagents) {
|
|
|
386
386
|
};
|
|
387
387
|
}
|
|
388
388
|
var childResultSignal = defineSignal("childResult");
|
|
389
|
+
var childSandboxReadySignal = defineSignal("childSandboxReady");
|
|
389
390
|
var destroySandboxSignal = defineSignal("destroySandbox");
|
|
390
391
|
|
|
391
392
|
// src/lib/subagent/handler.ts
|
|
392
393
|
function resolveSandboxConfig(config) {
|
|
393
|
-
if (!config || config === "none")
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
394
|
+
if (!config || config === "none") {
|
|
395
|
+
return { source: "none", init: "per-call", continuation: "fork" };
|
|
396
|
+
}
|
|
397
|
+
if (config.source === "inherit") {
|
|
398
|
+
return {
|
|
399
|
+
source: "inherit",
|
|
400
|
+
init: "per-call",
|
|
401
|
+
continuation: config.continuation,
|
|
402
|
+
shutdown: config.shutdown
|
|
403
|
+
};
|
|
404
|
+
}
|
|
405
|
+
return {
|
|
406
|
+
source: "own",
|
|
407
|
+
init: config.init ?? "per-call",
|
|
408
|
+
continuation: config.continuation,
|
|
409
|
+
shutdown: config.shutdown
|
|
410
|
+
};
|
|
397
411
|
}
|
|
398
412
|
function createSubagentHandler(subagents) {
|
|
399
413
|
const { taskQueue: parentTaskQueue } = workflowInfo();
|
|
400
414
|
const childResults = /* @__PURE__ */ new Map();
|
|
401
415
|
const pendingDestroys = /* @__PURE__ */ new Map();
|
|
402
416
|
const threadSandboxes = /* @__PURE__ */ new Map();
|
|
417
|
+
const persistentSandboxes = /* @__PURE__ */ new Map();
|
|
418
|
+
const persistentSandboxCreating = /* @__PURE__ */ new Set();
|
|
419
|
+
const lazyCreatorAgent = /* @__PURE__ */ new Map();
|
|
403
420
|
setHandler(childResultSignal, ({ childWorkflowId, result }) => {
|
|
404
421
|
childResults.set(childWorkflowId, result);
|
|
405
422
|
});
|
|
423
|
+
setHandler(
|
|
424
|
+
childSandboxReadySignal,
|
|
425
|
+
({ childWorkflowId, sandboxId }) => {
|
|
426
|
+
const agentName = lazyCreatorAgent.get(childWorkflowId);
|
|
427
|
+
if (agentName && !persistentSandboxes.has(agentName)) {
|
|
428
|
+
persistentSandboxes.set(agentName, sandboxId);
|
|
429
|
+
lazyCreatorAgent.delete(childWorkflowId);
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
);
|
|
406
433
|
const handler = async (args, context) => {
|
|
407
434
|
const config = subagents.find((s) => s.agentName === args.subagent);
|
|
408
435
|
if (!config) {
|
|
@@ -429,21 +456,48 @@ function createSubagentHandler(subagents) {
|
|
|
429
456
|
};
|
|
430
457
|
}
|
|
431
458
|
let sandbox;
|
|
459
|
+
let sandboxShutdownOverride;
|
|
460
|
+
let isLazyCreator = false;
|
|
432
461
|
if (sandboxCfg.source === "inherit" && parentSandboxId) {
|
|
433
|
-
|
|
434
|
-
mode: "
|
|
435
|
-
|
|
436
|
-
|
|
462
|
+
if (sandboxCfg.continuation === "fork") {
|
|
463
|
+
sandbox = { mode: "fork", sandboxId: parentSandboxId };
|
|
464
|
+
} else {
|
|
465
|
+
sandbox = { mode: "inherit", sandboxId: parentSandboxId };
|
|
466
|
+
}
|
|
437
467
|
} else if (sandboxCfg.source === "own") {
|
|
438
|
-
const
|
|
439
|
-
|
|
440
|
-
|
|
468
|
+
const isLazy = sandboxCfg.init === "once";
|
|
469
|
+
let baseSandboxId;
|
|
470
|
+
if (isLazy) {
|
|
471
|
+
baseSandboxId = persistentSandboxes.get(config.agentName);
|
|
472
|
+
if (!baseSandboxId) {
|
|
473
|
+
if (persistentSandboxCreating.has(config.agentName)) {
|
|
474
|
+
await condition(() => persistentSandboxes.has(config.agentName));
|
|
475
|
+
baseSandboxId = persistentSandboxes.get(config.agentName);
|
|
476
|
+
} else {
|
|
477
|
+
persistentSandboxCreating.add(config.agentName);
|
|
478
|
+
isLazyCreator = true;
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
} else if (continuationThreadId) {
|
|
482
|
+
baseSandboxId = threadSandboxes.get(continuationThreadId);
|
|
483
|
+
}
|
|
484
|
+
if (baseSandboxId) {
|
|
485
|
+
sandbox = {
|
|
486
|
+
mode: sandboxCfg.continuation === "continue" ? "continue" : "fork",
|
|
487
|
+
sandboxId: baseSandboxId
|
|
488
|
+
};
|
|
489
|
+
}
|
|
490
|
+
const userShutdown = sandboxCfg.shutdown;
|
|
491
|
+
const alreadySurvives = userShutdown === "pause-until-parent-close" || userShutdown === "keep-until-parent-close" || userShutdown === "pause" || userShutdown === "keep";
|
|
492
|
+
const mustSurvive = isLazyCreator || sandboxCfg.continuation === "continue" || isLazy && sandboxCfg.continuation === "fork";
|
|
493
|
+
if (mustSurvive && !alreadySurvives) {
|
|
494
|
+
sandboxShutdownOverride = isLazyCreator ? "pause-until-parent-close" : "pause";
|
|
441
495
|
}
|
|
442
496
|
}
|
|
443
497
|
const workflowInput = {
|
|
444
498
|
...thread && { thread },
|
|
445
499
|
...sandbox && { sandbox },
|
|
446
|
-
|
|
500
|
+
sandboxShutdown: sandboxShutdownOverride ?? sandboxCfg.shutdown ?? void 0
|
|
447
501
|
};
|
|
448
502
|
const resolvedContext = config.context === void 0 ? void 0 : typeof config.context === "function" ? config.context() : config.context;
|
|
449
503
|
const childOpts = {
|
|
@@ -451,6 +505,9 @@ function createSubagentHandler(subagents) {
|
|
|
451
505
|
args: resolvedContext === void 0 ? [args.prompt, workflowInput] : [args.prompt, workflowInput, resolvedContext],
|
|
452
506
|
taskQueue: config.taskQueue ?? parentTaskQueue
|
|
453
507
|
};
|
|
508
|
+
if (isLazyCreator) {
|
|
509
|
+
lazyCreatorAgent.set(childWorkflowId, config.agentName);
|
|
510
|
+
}
|
|
454
511
|
log.info("subagent spawned", {
|
|
455
512
|
subagent: config.agentName,
|
|
456
513
|
childWorkflowId,
|
|
@@ -458,10 +515,10 @@ function createSubagentHandler(subagents) {
|
|
|
458
515
|
sandboxSource: sandboxCfg.source
|
|
459
516
|
});
|
|
460
517
|
const childHandle = await startChild(config.workflow, childOpts);
|
|
461
|
-
const effectiveShutdown = sandboxCfg.shutdown ?? "destroy";
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
pendingDestroys.set(
|
|
518
|
+
const effectiveShutdown = sandboxShutdownOverride ?? sandboxCfg.shutdown ?? "destroy";
|
|
519
|
+
if (effectiveShutdown === "pause-until-parent-close" || effectiveShutdown === "keep-until-parent-close") {
|
|
520
|
+
const key = isLazyCreator ? `persistent:${config.agentName}` : childWorkflowId;
|
|
521
|
+
pendingDestroys.set(key, childHandle);
|
|
465
522
|
}
|
|
466
523
|
await Promise.race([
|
|
467
524
|
condition(() => childResults.has(childWorkflowId)),
|
|
@@ -495,8 +552,16 @@ function createSubagentHandler(subagents) {
|
|
|
495
552
|
sandboxId: childSandboxId,
|
|
496
553
|
metadata
|
|
497
554
|
} = childResult;
|
|
498
|
-
if (
|
|
499
|
-
|
|
555
|
+
if (childSandboxId) {
|
|
556
|
+
if (sandboxCfg.source === "own" && sandboxCfg.init === "once" && !persistentSandboxes.has(config.agentName)) {
|
|
557
|
+
persistentSandboxes.set(config.agentName, childSandboxId);
|
|
558
|
+
} else if (allowsContinuation && childThreadId) {
|
|
559
|
+
threadSandboxes.set(childThreadId, childSandboxId);
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
if (isLazyCreator) {
|
|
563
|
+
persistentSandboxCreating.delete(config.agentName);
|
|
564
|
+
lazyCreatorAgent.delete(childWorkflowId);
|
|
500
565
|
}
|
|
501
566
|
if (!toolResponse) {
|
|
502
567
|
return {
|
|
@@ -702,6 +767,7 @@ async function createSession({
|
|
|
702
767
|
thread: threadInit,
|
|
703
768
|
sandbox: sandboxInit,
|
|
704
769
|
sandboxShutdown = "destroy",
|
|
770
|
+
onSandboxReady,
|
|
705
771
|
virtualFs: virtualFsConfig,
|
|
706
772
|
virtualFsOps
|
|
707
773
|
}) {
|
|
@@ -804,6 +870,9 @@ async function createSession({
|
|
|
804
870
|
});
|
|
805
871
|
}
|
|
806
872
|
sandboxId = sandboxInit.sandboxId;
|
|
873
|
+
if (sandboxShutdown === "pause-until-parent-close") {
|
|
874
|
+
await sandboxOps.resumeSandbox(sandboxId);
|
|
875
|
+
}
|
|
807
876
|
sandboxOwned = true;
|
|
808
877
|
} else if (sandboxMode === "fork") {
|
|
809
878
|
if (!sandboxOps) {
|
|
@@ -826,6 +895,9 @@ async function createSession({
|
|
|
826
895
|
sandboxOwned = true;
|
|
827
896
|
}
|
|
828
897
|
}
|
|
898
|
+
if (sandboxId && onSandboxReady) {
|
|
899
|
+
onSandboxReady(sandboxId);
|
|
900
|
+
}
|
|
829
901
|
if (virtualFsConfig) {
|
|
830
902
|
if (!virtualFsOps) {
|
|
831
903
|
throw ApplicationFailure.create({
|
|
@@ -1217,39 +1289,45 @@ function defineSubagent(definition, overrides) {
|
|
|
1217
1289
|
function defineSubagentWorkflow(config, fn) {
|
|
1218
1290
|
const workflow = async (prompt, workflowInput, context) => {
|
|
1219
1291
|
const effectiveShutdown = workflowInput.sandboxShutdown ?? config.sandboxShutdown ?? "destroy";
|
|
1292
|
+
const { parent } = workflowInfo();
|
|
1293
|
+
if (!parent) {
|
|
1294
|
+
throw ApplicationFailure.create({
|
|
1295
|
+
message: "Subagent workflow called without a parent workflow",
|
|
1296
|
+
nonRetryable: true
|
|
1297
|
+
});
|
|
1298
|
+
}
|
|
1299
|
+
const parentHandle = getExternalWorkflowHandle(parent.workflowId);
|
|
1220
1300
|
const sessionInput = {
|
|
1221
1301
|
agentName: config.name,
|
|
1222
1302
|
sandboxShutdown: effectiveShutdown,
|
|
1223
1303
|
...workflowInput.thread && { thread: workflowInput.thread },
|
|
1224
|
-
...workflowInput.sandbox && { sandbox: workflowInput.sandbox }
|
|
1304
|
+
...workflowInput.sandbox && { sandbox: workflowInput.sandbox },
|
|
1305
|
+
onSandboxReady: (sandboxId) => {
|
|
1306
|
+
void parentHandle.signal(childSandboxReadySignal, {
|
|
1307
|
+
childWorkflowId: workflowInfo().workflowId,
|
|
1308
|
+
sandboxId
|
|
1309
|
+
});
|
|
1310
|
+
}
|
|
1225
1311
|
};
|
|
1226
1312
|
const { destroySandbox, ...result } = await fn(
|
|
1227
1313
|
prompt,
|
|
1228
1314
|
sessionInput,
|
|
1229
1315
|
context ?? {}
|
|
1230
1316
|
);
|
|
1231
|
-
if (effectiveShutdown === "pause-until-parent-close") {
|
|
1317
|
+
if (effectiveShutdown === "pause-until-parent-close" || effectiveShutdown === "keep-until-parent-close") {
|
|
1232
1318
|
if (!destroySandbox) {
|
|
1233
1319
|
throw ApplicationFailure.create({
|
|
1234
|
-
message: `Subagent "${config.name}" has sandboxShutdown="
|
|
1320
|
+
message: `Subagent "${config.name}" has sandboxShutdown="${effectiveShutdown}" but fn did not return a destroySandbox callback`,
|
|
1235
1321
|
nonRetryable: true
|
|
1236
1322
|
});
|
|
1237
1323
|
}
|
|
1238
1324
|
if (!result.sandboxId) {
|
|
1239
1325
|
throw ApplicationFailure.create({
|
|
1240
|
-
message: `Subagent "${config.name}" has sandboxShutdown="
|
|
1326
|
+
message: `Subagent "${config.name}" has sandboxShutdown="${effectiveShutdown}" but fn did not return a sandboxId`,
|
|
1241
1327
|
nonRetryable: true
|
|
1242
1328
|
});
|
|
1243
1329
|
}
|
|
1244
1330
|
}
|
|
1245
|
-
const { parent } = workflowInfo();
|
|
1246
|
-
if (!parent) {
|
|
1247
|
-
throw ApplicationFailure.create({
|
|
1248
|
-
message: "Subagent workflow called without a parent workflow",
|
|
1249
|
-
nonRetryable: true
|
|
1250
|
-
});
|
|
1251
|
-
}
|
|
1252
|
-
const parentHandle = getExternalWorkflowHandle(parent.workflowId);
|
|
1253
1331
|
await parentHandle.signal(childResultSignal, {
|
|
1254
1332
|
childWorkflowId: workflowInfo().workflowId,
|
|
1255
1333
|
result
|