effect-agent 0.1.0-beta.135 → 0.1.0-beta.138
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/{Admin-DKqg6zQa.d.mts → Admin-Fx85KT-W.d.mts} +5 -1
- package/dist/{DurableAgentRuntime-DgzI83ng.mjs → DurableAgentRuntime-Bso5grIH.mjs} +4 -4
- package/dist/{DurableAgentRuntime-DgzI83ng.mjs.map → DurableAgentRuntime-Bso5grIH.mjs.map} +1 -1
- package/dist/{EventSource-P4hq8Opp.d.mts → EventSource-DLT8oDK8.d.mts} +2 -2
- package/dist/{PreparedInputAdmission-ChcWS1xV.d.mts → PreparedInputAdmission-CKFgG6Em.d.mts} +3 -3
- package/dist/{RunJournal-BXrq0VIK.mjs → RunJournal-Gd83HYqG.mjs} +50 -27
- package/dist/RunJournal-Gd83HYqG.mjs.map +1 -0
- package/dist/{Subscription-jOOrT8Js.d.mts → Subscription-CCmHgOYM.d.mts} +2 -2
- package/dist/{SubscriptionInput-CPyqenXR.d.mts → SubscriptionInput-BFJMhu4K.d.mts} +2 -2
- package/dist/capabilities/McpClient.mjs +16 -3
- package/dist/capabilities/McpClient.mjs.map +1 -1
- package/dist/durable/Admin.d.mts +1 -1
- package/dist/durable/AgentRegistration.d.mts +1 -1
- package/dist/durable/Certification.d.mts +1 -1
- package/dist/durable/CommittedActivity.d.mts +1 -1
- package/dist/durable/DurableAgentRuntime.d.mts +1 -1
- package/dist/durable/DurableAgentRuntime.mjs +1 -1
- package/dist/durable/EventSource.d.mts +1 -1
- package/dist/durable/GitHubWorkflowSource.d.mts +3 -3
- package/dist/durable/MessageDelivery.d.mts +3 -3
- package/dist/durable/MessageDeliveryStoreConformance.d.mts +1 -1
- package/dist/durable/PersistentHistory.d.mts +1 -1
- package/dist/durable/PersistentHistory.mjs +1 -1
- package/dist/durable/PreparedInputAdmission.d.mts +1 -1
- package/dist/durable/Recovery.d.mts +1 -1
- package/dist/durable/RunJournal.d.mts +1 -1
- package/dist/durable/RunJournal.mjs +1 -1
- package/dist/durable/Scheduling.d.mts +1 -1
- package/dist/durable/SqlStorageV2Upgrade.d.mts +1 -1
- package/dist/durable/SqlSubscriptionStore.d.mts +1 -1
- package/dist/durable/SqlThreadNativeReads.d.mts +1 -1
- package/dist/durable/SqlThreadNativeReads.mjs +1 -1
- package/dist/durable/SubmissionLedger.d.mts +1 -1
- package/dist/durable/SubmissionLedgerConformance.d.mts +1 -1
- package/dist/durable/SubmissionLedgerConformance.mjs +1 -1
- package/dist/durable/SubmissionStatus.d.mts +1 -1
- package/dist/durable/Subscription.d.mts +1 -1
- package/dist/durable/SubscriptionInput.d.mts +1 -1
- package/dist/durable/SubscriptionStoreConformance.d.mts +1 -1
- package/dist/durable/SubscriptionTools.d.mts +2 -2
- package/dist/durable/SubscriptionTransition.d.mts +1 -1
- package/dist/durable/Subscriptions.d.mts +5 -5
- package/dist/durable/ThreadContextHistory.d.mts +1 -1
- package/dist/durable/ThreadInvariants.d.mts +1 -1
- package/dist/durable/ThreadInvariants.mjs +1 -1
- package/dist/durable/ThreadProjectionMaintenance.d.mts +1 -1
- package/dist/durable/ThreadStore.d.mts +1 -1
- package/dist/durable/ThreadStore.mjs +1 -1
- package/dist/durable/ThreadStoreConformance.d.mts +1 -1
- package/dist/durable/ThreadStoreConformance.mjs +1 -1
- package/dist/durable/WorkerHost.d.mts +1 -1
- package/dist/index.d.mts +5 -5
- package/dist/index.mjs +2 -2
- package/package.json +1 -1
- package/src/capabilities/McpClient.ts +19 -3
- package/src/durable/RunJournal.ts +120 -56
- package/src/durable/internal/journal-checkpoint.ts +1 -1
- package/src/durable/internal/journal-metadata.ts +10 -3
- package/dist/RunJournal-BXrq0VIK.mjs.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Mr as FencedAppendRequest, kr as AppendResult } from "../Admin-
|
|
1
|
+
import { Mr as FencedAppendRequest, kr as AppendResult } from "../Admin-Fx85KT-W.mjs";
|
|
2
2
|
import { Context, Effect, Layer, Option, Schema } from "effect";
|
|
3
3
|
declare namespace ThreadProjectionMaintenance_d_exports {
|
|
4
4
|
export { ThreadProjectionError, ThreadProjectionMaintenance, ThreadProjectionMaintenanceService, drainDue };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $r as ThreadRecoveryCheckpoints, Ar as CheckpointRejected, Br as ThreadExport, Fr as SaveCheckpointRequest, Gr as ThreadNotMaterialized, Hr as ThreadIdentity, Ir as SaveRecoveryCheckpointRequest, Jr as ThreadOutstandingRequest, Kr as ThreadObservation, Lr as SelectedThreadRead, Mr as FencedAppendRequest, Nr as LoadCheckpointRequest, Or as AppendConflict, Pr as MAX_THREAD_EXPORT_RECORDS, Qr as ThreadRecordRequest, Rr as ThreadCheckpoint, Ur as ThreadIdentityRequest, Vr as ThreadExportRequest, Wr as ThreadMaterialization, Xr as ThreadRead, Yr as ThreadPeerCountRequest, Zr as ThreadReadRequest, ai as ThreadStoreFailure, ci as ThreadTailRequest, di as getRunInput, ei as ThreadRunInputRequest, fi as readOutstanding, ii as ThreadStoreError, jr as FenceRejected, kr as AppendResult, li as ThreadWorkerStateRequest, ni as ThreadStore, pi as readWorkerState, qr as ThreadOutstanding, ri as ThreadStoreDiagnostic, si as ThreadTail, ti as ThreadSelection, ui as getRecord, zr as ThreadCheckpoints } from "../Admin-
|
|
1
|
+
import { $r as ThreadRecoveryCheckpoints, Ar as CheckpointRejected, Br as ThreadExport, Fr as SaveCheckpointRequest, Gr as ThreadNotMaterialized, Hr as ThreadIdentity, Ir as SaveRecoveryCheckpointRequest, Jr as ThreadOutstandingRequest, Kr as ThreadObservation, Lr as SelectedThreadRead, Mr as FencedAppendRequest, Nr as LoadCheckpointRequest, Or as AppendConflict, Pr as MAX_THREAD_EXPORT_RECORDS, Qr as ThreadRecordRequest, Rr as ThreadCheckpoint, Ur as ThreadIdentityRequest, Vr as ThreadExportRequest, Wr as ThreadMaterialization, Xr as ThreadRead, Yr as ThreadPeerCountRequest, Zr as ThreadReadRequest, ai as ThreadStoreFailure, ci as ThreadTailRequest, di as getRunInput, ei as ThreadRunInputRequest, fi as readOutstanding, ii as ThreadStoreError, jr as FenceRejected, kr as AppendResult, li as ThreadWorkerStateRequest, ni as ThreadStore, pi as readWorkerState, qr as ThreadOutstanding, ri as ThreadStoreDiagnostic, si as ThreadTail, ti as ThreadSelection, ui as getRecord, zr as ThreadCheckpoints } from "../Admin-Fx85KT-W.mjs";
|
|
2
2
|
export { AppendConflict, AppendResult, CheckpointRejected, FenceRejected, FencedAppendRequest, LoadCheckpointRequest, MAX_THREAD_EXPORT_RECORDS, SaveCheckpointRequest, SaveRecoveryCheckpointRequest, SelectedThreadRead, ThreadCheckpoint, ThreadCheckpoints, ThreadExport, ThreadExportRequest, ThreadIdentity, ThreadIdentityRequest, ThreadMaterialization, ThreadNotMaterialized, ThreadObservation, ThreadOutstanding, ThreadOutstandingRequest, ThreadPeerCountRequest, ThreadRead, ThreadReadRequest, ThreadRecordRequest, ThreadRecoveryCheckpoints, ThreadRunInputRequest, ThreadSelection, ThreadStore, ThreadStoreDiagnostic, ThreadStoreError, ThreadStoreFailure, ThreadTail, ThreadTailRequest, ThreadWorkerStateRequest, getRecord, getRunInput, readOutstanding, readWorkerState };
|
|
@@ -2,7 +2,7 @@ import { t as __exportAll } from "../rolldown-runtime-D7D4PA-g.mjs";
|
|
|
2
2
|
import { RunId, SubmissionId, ThreadId } from "../core/Identifiers.mjs";
|
|
3
3
|
import { BatchId, CanonicalBatch, CanonicalRecordEnvelope, CanonicalSequence, Digest, ObservationOffset, PersistedJson, ProducerEpoch, RecordId } from "./Records.mjs";
|
|
4
4
|
import { SubmissionLedger, SubmissionLookupById } from "./SubmissionLedger.mjs";
|
|
5
|
-
import { $ as workerOriginRecordId, F as toolCallPreparedRecordId, O as subagentLineageRecordId, S as runIdForSubmission } from "../RunJournal-
|
|
5
|
+
import { $ as workerOriginRecordId, F as toolCallPreparedRecordId, O as subagentLineageRecordId, S as runIdForSubmission } from "../RunJournal-Gd83HYqG.mjs";
|
|
6
6
|
import { Context, Effect, Option, Schema, Stream } from "effect";
|
|
7
7
|
//#region src/durable/ThreadStore.ts
|
|
8
8
|
var ThreadStore_exports = /* @__PURE__ */ __exportAll({
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ar as CheckpointRejected, ai as ThreadStoreFailure, ni as ThreadStore } from "../Admin-
|
|
1
|
+
import { Ar as CheckpointRejected, ai as ThreadStoreFailure, ni as ThreadStore } from "../Admin-Fx85KT-W.mjs";
|
|
2
2
|
import { Effect, Schema } from "effect";
|
|
3
3
|
//#region src/durable/ThreadStoreConformance.d.ts
|
|
4
4
|
declare const ThreadStoreConformanceViolation_base: Schema.Class<ThreadStoreConformanceViolation, Schema.TaggedStruct<"ThreadStoreConformanceViolation", {
|
|
@@ -4,7 +4,7 @@ import { IdempotencyKey } from "../core/Receipt.mjs";
|
|
|
4
4
|
import { SubagentDelegationCaps, SubagentGrant, SubagentReservationAmounts } from "../core/SubagentContract.mjs";
|
|
5
5
|
import { BatchId, CanonicalBatch, CanonicalSequence, DeploymentId, PeerMessagePrepared, ProducerEpoch, ProducerId, RecordEnvelope, RecordId, SubtreeBudgetReserved, ToolCallPrepared, ToolCallResolved, ToolCallSettled, ToolCallUnknown, UserInputRecorded, WorkerInputCompleted, WorkerInputRequested, WorkerStopRequested } from "./Records.mjs";
|
|
6
6
|
import { EMPTY_TAIL_DIGEST } from "./Digest.mjs";
|
|
7
|
-
import { $ as workerOriginRecordId, O as subagentLineageRecordId } from "../RunJournal-
|
|
7
|
+
import { $ as workerOriginRecordId, O as subagentLineageRecordId } from "../RunJournal-Gd83HYqG.mjs";
|
|
8
8
|
import { AppendConflict, CheckpointRejected, FenceRejected, FencedAppendRequest, LoadCheckpointRequest, SaveCheckpointRequest, ThreadCheckpoint, ThreadExportRequest, ThreadIdentityRequest, ThreadMaterialization, ThreadNotMaterialized, ThreadObservation, ThreadRead, ThreadStore, ThreadTailRequest, getRecord, getRunInput, readWorkerState } from "./ThreadStore.mjs";
|
|
9
9
|
import { DateTime, Effect, Option, Schema, Stream } from "effect";
|
|
10
10
|
//#region src/durable/ThreadStoreConformance.ts
|
|
@@ -5,7 +5,7 @@ import { t as AgentPolicy } from "../AgentPolicy-BqDoSXO6.mjs";
|
|
|
5
5
|
import { r as AnyDefinition, t as Agent_d_exports } from "../Agent-D9cXqfF3.mjs";
|
|
6
6
|
import { c as WorkerError, f as WorkerRef, h as WorkerSource } from "../Worker-fwWkBg12.mjs";
|
|
7
7
|
import { O as PersistedJson, _ as Digest, ft as WorkerOrigin, h as DefinitionDigests, lt as WorkerContinuation } from "../Records-B5GFWCpn.mjs";
|
|
8
|
-
import { Tn as SubmissionSnapshot } from "../Admin-
|
|
8
|
+
import { Tn as SubmissionSnapshot } from "../Admin-Fx85KT-W.mjs";
|
|
9
9
|
import { Context, Effect, Option, Schema } from "effect";
|
|
10
10
|
declare namespace WorkerHost_d_exports {
|
|
11
11
|
export { WorkerBudgetAuthorizer, WorkerConcurrencyLimit, WorkerConcurrencyResolver, WorkerHostAuthorizationRequest, WorkerHostAuthorizer, WorkerHostConfig, WorkerHostLimits, WorkerPolicyResolver, WorkerPolicySource, WorkerPolicyTarget };
|
package/dist/index.d.mts
CHANGED
|
@@ -59,17 +59,17 @@ import { t as Memory_d_exports } from "./core/Memory.mjs";
|
|
|
59
59
|
import { N as Records_d_exports } from "./Records-B5GFWCpn.mjs";
|
|
60
60
|
import { t as ActivityStore_d_exports } from "./durable/ActivityStore.mjs";
|
|
61
61
|
import { n as Digest_d_exports } from "./Digest-U69rDHuO.mjs";
|
|
62
|
-
import { J as Recovery_d_exports, Qn as DurableAgentRuntime_d_exports, Sa as AgentRegistration_d_exports, Si as RunJournal_d_exports, _i as SubmissionStatus_d_exports, bn as SubmissionLedger_d_exports, oi as ThreadStore_d_exports, t as Admin_d_exports } from "./Admin-
|
|
62
|
+
import { J as Recovery_d_exports, Qn as DurableAgentRuntime_d_exports, Sa as AgentRegistration_d_exports, Si as RunJournal_d_exports, _i as SubmissionStatus_d_exports, bn as SubmissionLedger_d_exports, oi as ThreadStore_d_exports, t as Admin_d_exports } from "./Admin-Fx85KT-W.mjs";
|
|
63
63
|
import { t as DurableFailpoint_d_exports } from "./DurableFailpoint-Cnr3wx1L.mjs";
|
|
64
64
|
import { a as OperationAuthorizer_d_exports } from "./OperationAuthorizer-TzcQtpX5.mjs";
|
|
65
65
|
import { l as ToolReconciler_d_exports } from "./ToolReconciler-BmVRAHKs.mjs";
|
|
66
66
|
import { n as WakeScheduler_d_exports } from "./WakeScheduler-EjUF-GhC.mjs";
|
|
67
67
|
import { t as CommittedActivity_d_exports } from "./durable/CommittedActivity.mjs";
|
|
68
68
|
import { R as Schedule_d_exports } from "./Schedule-CtYREFnz.mjs";
|
|
69
|
-
import { k as Subscription_d_exports } from "./Subscription-
|
|
70
|
-
import { n as EventSource_d_exports } from "./EventSource-
|
|
71
|
-
import { n as PreparedInputAdmission_d_exports } from "./PreparedInputAdmission-
|
|
72
|
-
import { r as SubscriptionInput_d_exports } from "./SubscriptionInput-
|
|
69
|
+
import { k as Subscription_d_exports } from "./Subscription-CCmHgOYM.mjs";
|
|
70
|
+
import { n as EventSource_d_exports } from "./EventSource-DLT8oDK8.mjs";
|
|
71
|
+
import { n as PreparedInputAdmission_d_exports } from "./PreparedInputAdmission-CKFgG6Em.mjs";
|
|
72
|
+
import { r as SubscriptionInput_d_exports } from "./SubscriptionInput-BFJMhu4K.mjs";
|
|
73
73
|
import { t as Subscriptions_d_exports } from "./durable/Subscriptions.mjs";
|
|
74
74
|
import { t as MessageDelivery_d_exports } from "./durable/MessageDelivery.mjs";
|
|
75
75
|
import { t as PersistentHistory_d_exports } from "./durable/PersistentHistory.mjs";
|
package/dist/index.mjs
CHANGED
|
@@ -68,8 +68,8 @@ import { t as Recovery_exports } from "./durable/Recovery.mjs";
|
|
|
68
68
|
import { t as Admin_exports } from "./durable/Admin.mjs";
|
|
69
69
|
import { t as Digest_exports } from "./durable/Digest.mjs";
|
|
70
70
|
import { t as AgentRegistration_exports } from "./durable/AgentRegistration.mjs";
|
|
71
|
-
import { r as DurableAgentRuntime_exports } from "./DurableAgentRuntime-
|
|
72
|
-
import { n as RunJournal_exports } from "./RunJournal-
|
|
71
|
+
import { r as DurableAgentRuntime_exports } from "./DurableAgentRuntime-Bso5grIH.mjs";
|
|
72
|
+
import { n as RunJournal_exports } from "./RunJournal-Gd83HYqG.mjs";
|
|
73
73
|
import { t as ThreadStore_exports } from "./durable/ThreadStore.mjs";
|
|
74
74
|
import { t as CommittedActivity_exports } from "./durable/CommittedActivity.mjs";
|
|
75
75
|
import { t as DurableFailpoint_exports } from "./durable/DurableFailpoint.mjs";
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"effect-agent","version":"0.1.0-beta.135","devDependencies":{"@effect/platform-node":"4.0.0-rc.117","@effect/vitest":"4.0.0-rc.117","effect":"4.0.0-rc.117","typescript":"7.0.2","vite-plus":"0.3.2"},"peerDependencies":{"effect":"^4.0.0-rc.117"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./activity-store":{"types":"./dist/durable/ActivityStore.d.mts","default":"./dist/durable/ActivityStore.mjs"},"./admin":{"types":"./dist/durable/Admin.d.mts","default":"./dist/durable/Admin.mjs"},"./agent":{"types":"./dist/core/Agent.d.mts","default":"./dist/core/Agent.mjs"},"./agent-error":{"types":"./dist/core/AgentError.d.mts","default":"./dist/core/AgentError.mjs"},"./agent-policy":{"types":"./dist/core/AgentPolicy.d.mts","default":"./dist/core/AgentPolicy.mjs"},"./agent-registration":{"types":"./dist/durable/AgentRegistration.d.mts","default":"./dist/durable/AgentRegistration.mjs"},"./agent-runtime":{"types":"./dist/engine/AgentRuntime.d.mts","default":"./dist/engine/AgentRuntime.mjs"},"./agent-updates":{"types":"./dist/core/AgentUpdates.d.mts","default":"./dist/core/AgentUpdates.mjs"},"./approval":{"types":"./dist/capabilities/Approval.d.mts","default":"./dist/capabilities/Approval.mjs"},"./budget":{"types":"./dist/capabilities/Budget.d.mts","default":"./dist/capabilities/Budget.mjs"},"./code-executor":{"types":"./dist/sandbox/CodeExecutor.d.mts","default":"./dist/sandbox/CodeExecutor.mjs"},"./code-mode":{"types":"./dist/capabilities/CodeMode.d.mts","default":"./dist/capabilities/CodeMode.mjs"},"./commands":{"types":"./dist/capabilities/Commands.d.mts","default":"./dist/capabilities/Commands.mjs"},"./committed-activity":{"types":"./dist/durable/CommittedActivity.d.mts","default":"./dist/durable/CommittedActivity.mjs"},"./compaction":{"types":"./dist/engine/Compaction.d.mts","default":"./dist/engine/Compaction.mjs"},"./context-compactor":{"types":"./dist/engine/ContextCompactor.d.mts","default":"./dist/engine/ContextCompactor.mjs"},"./context-history":{"types":"./dist/engine/ContextHistory.d.mts","default":"./dist/engine/ContextHistory.mjs"},"./context-tools":{"types":"./dist/capabilities/ContextTools.d.mts","default":"./dist/capabilities/ContextTools.mjs"},"./context-window":{"types":"./dist/engine/ContextWindow.d.mts","default":"./dist/engine/ContextWindow.mjs"},"./digest":{"types":"./dist/durable/Digest.d.mts","default":"./dist/durable/Digest.mjs"},"./durable-agent-runtime":{"types":"./dist/durable/DurableAgentRuntime.d.mts","default":"./dist/durable/DurableAgentRuntime.mjs"},"./durable-failpoint":{"types":"./dist/durable/DurableFailpoint.d.mts","default":"./dist/durable/DurableFailpoint.mjs"},"./durable-step":{"types":"./dist/engine/DurableStep.d.mts","default":"./dist/engine/DurableStep.mjs"},"./event-source":{"types":"./dist/durable/EventSource.d.mts","default":"./dist/durable/EventSource.mjs"},"./failure-diagnostic":{"types":"./dist/core/FailureDiagnostic.d.mts","default":"./dist/core/FailureDiagnostic.mjs"},"./git-hub-workflow-source":{"types":"./dist/durable/GitHubWorkflowSource.d.mts","default":"./dist/durable/GitHubWorkflowSource.mjs"},"./id-generator":{"types":"./dist/core/IdGenerator.d.mts","default":"./dist/core/IdGenerator.mjs"},"./identifiers":{"types":"./dist/core/Identifiers.d.mts","default":"./dist/core/Identifiers.mjs"},"./in-memory":{"types":"./dist/InMemory.d.mts","default":"./dist/InMemory.mjs"},"./interactive-browser":{"types":"./dist/sandbox/InteractiveBrowser.d.mts","default":"./dist/sandbox/InteractiveBrowser.mjs"},"./mcp":{"types":"./dist/capabilities/Mcp.d.mts","default":"./dist/capabilities/Mcp.mjs"},"./mcp-client":{"types":"./dist/capabilities/McpClient.d.mts","default":"./dist/capabilities/McpClient.mjs"},"./memory":{"types":"./dist/core/Memory.d.mts","default":"./dist/core/Memory.mjs"},"./memory-namespace":{"types":"./dist/core/MemoryNamespace.d.mts","default":"./dist/core/MemoryNamespace.mjs"},"./memory-notes":{"types":"./dist/capabilities/MemoryNotes.d.mts","default":"./dist/capabilities/MemoryNotes.mjs"},"./memory-reference":{"types":"./dist/core/MemoryReference.d.mts","default":"./dist/core/MemoryReference.mjs"},"./memory-revalidation":{"types":"./dist/core/MemoryRevalidation.d.mts","default":"./dist/core/MemoryRevalidation.mjs"},"./memory-store":{"types":"./dist/core/MemoryStore.d.mts","default":"./dist/core/MemoryStore.mjs"},"./message-delivery":{"types":"./dist/durable/MessageDelivery.d.mts","default":"./dist/durable/MessageDelivery.mjs"},"./messaging":{"types":"./dist/capabilities/Messaging.d.mts","default":"./dist/capabilities/Messaging.mjs"},"./messaging-host":{"types":"./dist/engine/MessagingHost.d.mts","default":"./dist/engine/MessagingHost.mjs"},"./model-context":{"types":"./dist/capabilities/ModelContext.d.mts","default":"./dist/capabilities/ModelContext.mjs"},"./operation-authorizer":{"types":"./dist/durable/OperationAuthorizer.d.mts","default":"./dist/durable/OperationAuthorizer.mjs"},"./output":{"types":"./dist/engine/Output.d.mts","default":"./dist/engine/Output.mjs"},"./page-capture":{"types":"./dist/sandbox/PageCapture.d.mts","default":"./dist/sandbox/PageCapture.mjs"},"./page-crawl":{"types":"./dist/sandbox/PageCrawl.d.mts","default":"./dist/sandbox/PageCrawl.mjs"},"./page-screenshot":{"types":"./dist/sandbox/PageScreenshot.d.mts","default":"./dist/sandbox/PageScreenshot.mjs"},"./persistent-history":{"types":"./dist/durable/PersistentHistory.d.mts","default":"./dist/durable/PersistentHistory.mjs"},"./prepared-input-admission":{"types":"./dist/durable/PreparedInputAdmission.d.mts","default":"./dist/durable/PreparedInputAdmission.mjs"},"./receipt":{"types":"./dist/core/Receipt.d.mts","default":"./dist/core/Receipt.mjs"},"./records":{"types":"./dist/durable/Records.d.mts","default":"./dist/durable/Records.mjs"},"./recovery":{"types":"./dist/durable/Recovery.d.mts","default":"./dist/durable/Recovery.mjs"},"./redaction":{"types":"./dist/capabilities/Redaction.d.mts","default":"./dist/capabilities/Redaction.mjs"},"./remembering":{"types":"./dist/capabilities/Remembering.d.mts","default":"./dist/capabilities/Remembering.mjs"},"./remembering-store":{"types":"./dist/core/RememberingStore.d.mts","default":"./dist/core/RememberingStore.mjs"},"./run-event":{"types":"./dist/core/RunEvent.d.mts","default":"./dist/core/RunEvent.mjs"},"./run-event-sink":{"types":"./dist/engine/RunEventSink.d.mts","default":"./dist/engine/RunEventSink.mjs"},"./run-hooks":{"types":"./dist/capabilities/RunHooks.d.mts","default":"./dist/capabilities/RunHooks.mjs"},"./run-journal":{"types":"./dist/durable/RunJournal.d.mts","default":"./dist/durable/RunJournal.mjs"},"./run-options":{"types":"./dist/engine/RunOptions.d.mts","default":"./dist/engine/RunOptions.mjs"},"./run-policy-usage":{"types":"./dist/core/RunPolicyUsage.d.mts","default":"./dist/core/RunPolicyUsage.mjs"},"./sandbox":{"types":"./dist/sandbox/Sandbox.d.mts","default":"./dist/sandbox/Sandbox.mjs"},"./schedule":{"types":"./dist/durable/Schedule.d.mts","default":"./dist/durable/Schedule.mjs"},"./schedule-transition":{"types":"./dist/durable/ScheduleTransition.d.mts","default":"./dist/durable/ScheduleTransition.mjs"},"./scheduling":{"types":"./dist/durable/Scheduling.d.mts","default":"./dist/durable/Scheduling.mjs"},"./semantic-memory":{"types":"./dist/capabilities/SemanticMemory.d.mts","default":"./dist/capabilities/SemanticMemory.mjs"},"./semantic-memory-index":{"types":"./dist/core/SemanticMemoryIndex.d.mts","default":"./dist/core/SemanticMemoryIndex.mjs"},"./semantic-memory-revalidation":{"types":"./dist/core/SemanticMemoryRevalidation.d.mts","default":"./dist/core/SemanticMemoryRevalidation.mjs"},"./sql-thread-native-reads":{"types":"./dist/durable/SqlThreadNativeReads.d.mts","default":"./dist/durable/SqlThreadNativeReads.mjs"},"./sql-memory-store":{"types":"./dist/durable/SqlMemoryStore.d.mts","default":"./dist/durable/SqlMemoryStore.mjs"},"./sql-message-delivery-store":{"types":"./dist/durable/SqlMessageDeliveryStore.d.mts","default":"./dist/durable/SqlMessageDeliveryStore.mjs"},"./sql-storage-v2-upgrade":{"types":"./dist/durable/SqlStorageV2Upgrade.d.mts","default":"./dist/durable/SqlStorageV2Upgrade.mjs"},"./sql-subscription-store":{"types":"./dist/durable/SqlSubscriptionStore.d.mts","default":"./dist/durable/SqlSubscriptionStore.mjs"},"./subagent":{"types":"./dist/capabilities/Subagent.d.mts","default":"./dist/capabilities/Subagent.mjs"},"./subagent-contract":{"types":"./dist/core/SubagentContract.d.mts","default":"./dist/core/SubagentContract.mjs"},"./subagent-host":{"types":"./dist/engine/SubagentHost.d.mts","default":"./dist/engine/SubagentHost.mjs"},"./subagent-reservations":{"types":"./dist/capabilities/SubagentReservations.d.mts","default":"./dist/capabilities/SubagentReservations.mjs"},"./submission-ledger":{"types":"./dist/durable/SubmissionLedger.d.mts","default":"./dist/durable/SubmissionLedger.mjs"},"./submission-status":{"types":"./dist/durable/SubmissionStatus.d.mts","default":"./dist/durable/SubmissionStatus.mjs"},"./subscription":{"types":"./dist/durable/Subscription.d.mts","default":"./dist/durable/Subscription.mjs"},"./subscription-input":{"types":"./dist/durable/SubscriptionInput.d.mts","default":"./dist/durable/SubscriptionInput.mjs"},"./subscription-tools":{"types":"./dist/durable/SubscriptionTools.d.mts","default":"./dist/durable/SubscriptionTools.mjs"},"./subscription-transition":{"types":"./dist/durable/SubscriptionTransition.d.mts","default":"./dist/durable/SubscriptionTransition.mjs"},"./subscriptions":{"types":"./dist/durable/Subscriptions.d.mts","default":"./dist/durable/Subscriptions.mjs"},"./testing/certification":{"types":"./dist/durable/Certification.d.mts","default":"./dist/durable/Certification.mjs"},"./testing/durable-failpoint-test-control":{"types":"./dist/durable/DurableFailpointTestControl.d.mts","default":"./dist/durable/DurableFailpointTestControl.mjs"},"./testing/message-delivery-store-conformance":{"types":"./dist/durable/MessageDeliveryStoreConformance.d.mts","default":"./dist/durable/MessageDeliveryStoreConformance.mjs"},"./testing/schedule-store-conformance":{"types":"./dist/durable/ScheduleStoreConformance.d.mts","default":"./dist/durable/ScheduleStoreConformance.mjs"},"./testing/submission-ledger-conformance":{"types":"./dist/durable/SubmissionLedgerConformance.d.mts","default":"./dist/durable/SubmissionLedgerConformance.mjs"},"./testing/subscription-store-conformance":{"types":"./dist/durable/SubscriptionStoreConformance.d.mts","default":"./dist/durable/SubscriptionStoreConformance.mjs"},"./testing/thread-store-conformance":{"types":"./dist/durable/ThreadStoreConformance.d.mts","default":"./dist/durable/ThreadStoreConformance.mjs"},"./thread":{"types":"./dist/core/Thread.d.mts","default":"./dist/core/Thread.mjs"},"./thread-context-history":{"types":"./dist/durable/ThreadContextHistory.d.mts","default":"./dist/durable/ThreadContextHistory.mjs"},"./thread-context-history-projection":{"types":"./dist/durable/ThreadContextHistoryProjection.d.mts","default":"./dist/durable/ThreadContextHistoryProjection.mjs"},"./thread-history":{"types":"./dist/engine/ThreadHistory.d.mts","default":"./dist/engine/ThreadHistory.mjs"},"./thread-invariants":{"types":"./dist/durable/ThreadInvariants.d.mts","default":"./dist/durable/ThreadInvariants.mjs"},"./thread-projection":{"types":"./dist/durable/ThreadProjection.d.mts","default":"./dist/durable/ThreadProjection.mjs"},"./thread-projection-maintenance":{"types":"./dist/durable/ThreadProjectionMaintenance.d.mts","default":"./dist/durable/ThreadProjectionMaintenance.mjs"},"./thread-store":{"types":"./dist/durable/ThreadStore.d.mts","default":"./dist/durable/ThreadStore.mjs"},"./tool-broker":{"types":"./dist/engine/ToolBroker.d.mts","default":"./dist/engine/ToolBroker.mjs"},"./tool-discovery":{"types":"./dist/capabilities/ToolDiscovery.d.mts","default":"./dist/capabilities/ToolDiscovery.mjs"},"./tool-exposure":{"types":"./dist/ToolExposure.d.mts","default":"./dist/ToolExposure.mjs"},"./tool-reconciler":{"types":"./dist/durable/ToolReconciler.d.mts","default":"./dist/durable/ToolReconciler.mjs"},"./tool-result":{"types":"./dist/core/ToolResult.d.mts","default":"./dist/core/ToolResult.mjs"},"./usage":{"types":"./dist/core/Usage.d.mts","default":"./dist/core/Usage.mjs"},"./wake-scheduler":{"types":"./dist/durable/WakeScheduler.d.mts","default":"./dist/durable/WakeScheduler.mjs"},"./web-capture":{"types":"./dist/capabilities/WebCapture.d.mts","default":"./dist/capabilities/WebCapture.mjs"},"./web-search":{"types":"./dist/capabilities/WebSearch.d.mts","default":"./dist/capabilities/WebSearch.mjs"},"./worker":{"types":"./dist/core/Worker.d.mts","default":"./dist/core/Worker.mjs"},"./worker-host":{"types":"./dist/durable/WorkerHost.d.mts","default":"./dist/durable/WorkerHost.mjs"}},"description":"Effect-native agents, execution, subagents, and sandbox contracts in one tree-shakeable package.","license":"MIT","repository":{"type":"git","url":"git+https://github.com/danieljvdm/effect-agent.git","directory":"packages/effect-agent"},"files":["dist","src"],"type":"module","sideEffects":[],"publishConfig":{"access":"public"},"scripts":{"build":"vp pack","check":"tsc --noEmit -p tsconfig.json","test":"vp test --passWithNoTests"}}
|
|
1
|
+
{"name":"effect-agent","version":"0.1.0-beta.138","devDependencies":{"@effect/platform-node":"4.0.0-rc.117","@effect/vitest":"4.0.0-rc.117","effect":"4.0.0-rc.117","typescript":"7.0.2","vite-plus":"0.3.2"},"peerDependencies":{"effect":"^4.0.0-rc.117"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./activity-store":{"types":"./dist/durable/ActivityStore.d.mts","default":"./dist/durable/ActivityStore.mjs"},"./admin":{"types":"./dist/durable/Admin.d.mts","default":"./dist/durable/Admin.mjs"},"./agent":{"types":"./dist/core/Agent.d.mts","default":"./dist/core/Agent.mjs"},"./agent-error":{"types":"./dist/core/AgentError.d.mts","default":"./dist/core/AgentError.mjs"},"./agent-policy":{"types":"./dist/core/AgentPolicy.d.mts","default":"./dist/core/AgentPolicy.mjs"},"./agent-registration":{"types":"./dist/durable/AgentRegistration.d.mts","default":"./dist/durable/AgentRegistration.mjs"},"./agent-runtime":{"types":"./dist/engine/AgentRuntime.d.mts","default":"./dist/engine/AgentRuntime.mjs"},"./agent-updates":{"types":"./dist/core/AgentUpdates.d.mts","default":"./dist/core/AgentUpdates.mjs"},"./approval":{"types":"./dist/capabilities/Approval.d.mts","default":"./dist/capabilities/Approval.mjs"},"./budget":{"types":"./dist/capabilities/Budget.d.mts","default":"./dist/capabilities/Budget.mjs"},"./code-executor":{"types":"./dist/sandbox/CodeExecutor.d.mts","default":"./dist/sandbox/CodeExecutor.mjs"},"./code-mode":{"types":"./dist/capabilities/CodeMode.d.mts","default":"./dist/capabilities/CodeMode.mjs"},"./commands":{"types":"./dist/capabilities/Commands.d.mts","default":"./dist/capabilities/Commands.mjs"},"./committed-activity":{"types":"./dist/durable/CommittedActivity.d.mts","default":"./dist/durable/CommittedActivity.mjs"},"./compaction":{"types":"./dist/engine/Compaction.d.mts","default":"./dist/engine/Compaction.mjs"},"./context-compactor":{"types":"./dist/engine/ContextCompactor.d.mts","default":"./dist/engine/ContextCompactor.mjs"},"./context-history":{"types":"./dist/engine/ContextHistory.d.mts","default":"./dist/engine/ContextHistory.mjs"},"./context-tools":{"types":"./dist/capabilities/ContextTools.d.mts","default":"./dist/capabilities/ContextTools.mjs"},"./context-window":{"types":"./dist/engine/ContextWindow.d.mts","default":"./dist/engine/ContextWindow.mjs"},"./digest":{"types":"./dist/durable/Digest.d.mts","default":"./dist/durable/Digest.mjs"},"./durable-agent-runtime":{"types":"./dist/durable/DurableAgentRuntime.d.mts","default":"./dist/durable/DurableAgentRuntime.mjs"},"./durable-failpoint":{"types":"./dist/durable/DurableFailpoint.d.mts","default":"./dist/durable/DurableFailpoint.mjs"},"./durable-step":{"types":"./dist/engine/DurableStep.d.mts","default":"./dist/engine/DurableStep.mjs"},"./event-source":{"types":"./dist/durable/EventSource.d.mts","default":"./dist/durable/EventSource.mjs"},"./failure-diagnostic":{"types":"./dist/core/FailureDiagnostic.d.mts","default":"./dist/core/FailureDiagnostic.mjs"},"./git-hub-workflow-source":{"types":"./dist/durable/GitHubWorkflowSource.d.mts","default":"./dist/durable/GitHubWorkflowSource.mjs"},"./id-generator":{"types":"./dist/core/IdGenerator.d.mts","default":"./dist/core/IdGenerator.mjs"},"./identifiers":{"types":"./dist/core/Identifiers.d.mts","default":"./dist/core/Identifiers.mjs"},"./in-memory":{"types":"./dist/InMemory.d.mts","default":"./dist/InMemory.mjs"},"./interactive-browser":{"types":"./dist/sandbox/InteractiveBrowser.d.mts","default":"./dist/sandbox/InteractiveBrowser.mjs"},"./mcp":{"types":"./dist/capabilities/Mcp.d.mts","default":"./dist/capabilities/Mcp.mjs"},"./mcp-client":{"types":"./dist/capabilities/McpClient.d.mts","default":"./dist/capabilities/McpClient.mjs"},"./memory":{"types":"./dist/core/Memory.d.mts","default":"./dist/core/Memory.mjs"},"./memory-namespace":{"types":"./dist/core/MemoryNamespace.d.mts","default":"./dist/core/MemoryNamespace.mjs"},"./memory-notes":{"types":"./dist/capabilities/MemoryNotes.d.mts","default":"./dist/capabilities/MemoryNotes.mjs"},"./memory-reference":{"types":"./dist/core/MemoryReference.d.mts","default":"./dist/core/MemoryReference.mjs"},"./memory-revalidation":{"types":"./dist/core/MemoryRevalidation.d.mts","default":"./dist/core/MemoryRevalidation.mjs"},"./memory-store":{"types":"./dist/core/MemoryStore.d.mts","default":"./dist/core/MemoryStore.mjs"},"./message-delivery":{"types":"./dist/durable/MessageDelivery.d.mts","default":"./dist/durable/MessageDelivery.mjs"},"./messaging":{"types":"./dist/capabilities/Messaging.d.mts","default":"./dist/capabilities/Messaging.mjs"},"./messaging-host":{"types":"./dist/engine/MessagingHost.d.mts","default":"./dist/engine/MessagingHost.mjs"},"./model-context":{"types":"./dist/capabilities/ModelContext.d.mts","default":"./dist/capabilities/ModelContext.mjs"},"./operation-authorizer":{"types":"./dist/durable/OperationAuthorizer.d.mts","default":"./dist/durable/OperationAuthorizer.mjs"},"./output":{"types":"./dist/engine/Output.d.mts","default":"./dist/engine/Output.mjs"},"./page-capture":{"types":"./dist/sandbox/PageCapture.d.mts","default":"./dist/sandbox/PageCapture.mjs"},"./page-crawl":{"types":"./dist/sandbox/PageCrawl.d.mts","default":"./dist/sandbox/PageCrawl.mjs"},"./page-screenshot":{"types":"./dist/sandbox/PageScreenshot.d.mts","default":"./dist/sandbox/PageScreenshot.mjs"},"./persistent-history":{"types":"./dist/durable/PersistentHistory.d.mts","default":"./dist/durable/PersistentHistory.mjs"},"./prepared-input-admission":{"types":"./dist/durable/PreparedInputAdmission.d.mts","default":"./dist/durable/PreparedInputAdmission.mjs"},"./receipt":{"types":"./dist/core/Receipt.d.mts","default":"./dist/core/Receipt.mjs"},"./records":{"types":"./dist/durable/Records.d.mts","default":"./dist/durable/Records.mjs"},"./recovery":{"types":"./dist/durable/Recovery.d.mts","default":"./dist/durable/Recovery.mjs"},"./redaction":{"types":"./dist/capabilities/Redaction.d.mts","default":"./dist/capabilities/Redaction.mjs"},"./remembering":{"types":"./dist/capabilities/Remembering.d.mts","default":"./dist/capabilities/Remembering.mjs"},"./remembering-store":{"types":"./dist/core/RememberingStore.d.mts","default":"./dist/core/RememberingStore.mjs"},"./run-event":{"types":"./dist/core/RunEvent.d.mts","default":"./dist/core/RunEvent.mjs"},"./run-event-sink":{"types":"./dist/engine/RunEventSink.d.mts","default":"./dist/engine/RunEventSink.mjs"},"./run-hooks":{"types":"./dist/capabilities/RunHooks.d.mts","default":"./dist/capabilities/RunHooks.mjs"},"./run-journal":{"types":"./dist/durable/RunJournal.d.mts","default":"./dist/durable/RunJournal.mjs"},"./run-options":{"types":"./dist/engine/RunOptions.d.mts","default":"./dist/engine/RunOptions.mjs"},"./run-policy-usage":{"types":"./dist/core/RunPolicyUsage.d.mts","default":"./dist/core/RunPolicyUsage.mjs"},"./sandbox":{"types":"./dist/sandbox/Sandbox.d.mts","default":"./dist/sandbox/Sandbox.mjs"},"./schedule":{"types":"./dist/durable/Schedule.d.mts","default":"./dist/durable/Schedule.mjs"},"./schedule-transition":{"types":"./dist/durable/ScheduleTransition.d.mts","default":"./dist/durable/ScheduleTransition.mjs"},"./scheduling":{"types":"./dist/durable/Scheduling.d.mts","default":"./dist/durable/Scheduling.mjs"},"./semantic-memory":{"types":"./dist/capabilities/SemanticMemory.d.mts","default":"./dist/capabilities/SemanticMemory.mjs"},"./semantic-memory-index":{"types":"./dist/core/SemanticMemoryIndex.d.mts","default":"./dist/core/SemanticMemoryIndex.mjs"},"./semantic-memory-revalidation":{"types":"./dist/core/SemanticMemoryRevalidation.d.mts","default":"./dist/core/SemanticMemoryRevalidation.mjs"},"./sql-thread-native-reads":{"types":"./dist/durable/SqlThreadNativeReads.d.mts","default":"./dist/durable/SqlThreadNativeReads.mjs"},"./sql-memory-store":{"types":"./dist/durable/SqlMemoryStore.d.mts","default":"./dist/durable/SqlMemoryStore.mjs"},"./sql-message-delivery-store":{"types":"./dist/durable/SqlMessageDeliveryStore.d.mts","default":"./dist/durable/SqlMessageDeliveryStore.mjs"},"./sql-storage-v2-upgrade":{"types":"./dist/durable/SqlStorageV2Upgrade.d.mts","default":"./dist/durable/SqlStorageV2Upgrade.mjs"},"./sql-subscription-store":{"types":"./dist/durable/SqlSubscriptionStore.d.mts","default":"./dist/durable/SqlSubscriptionStore.mjs"},"./subagent":{"types":"./dist/capabilities/Subagent.d.mts","default":"./dist/capabilities/Subagent.mjs"},"./subagent-contract":{"types":"./dist/core/SubagentContract.d.mts","default":"./dist/core/SubagentContract.mjs"},"./subagent-host":{"types":"./dist/engine/SubagentHost.d.mts","default":"./dist/engine/SubagentHost.mjs"},"./subagent-reservations":{"types":"./dist/capabilities/SubagentReservations.d.mts","default":"./dist/capabilities/SubagentReservations.mjs"},"./submission-ledger":{"types":"./dist/durable/SubmissionLedger.d.mts","default":"./dist/durable/SubmissionLedger.mjs"},"./submission-status":{"types":"./dist/durable/SubmissionStatus.d.mts","default":"./dist/durable/SubmissionStatus.mjs"},"./subscription":{"types":"./dist/durable/Subscription.d.mts","default":"./dist/durable/Subscription.mjs"},"./subscription-input":{"types":"./dist/durable/SubscriptionInput.d.mts","default":"./dist/durable/SubscriptionInput.mjs"},"./subscription-tools":{"types":"./dist/durable/SubscriptionTools.d.mts","default":"./dist/durable/SubscriptionTools.mjs"},"./subscription-transition":{"types":"./dist/durable/SubscriptionTransition.d.mts","default":"./dist/durable/SubscriptionTransition.mjs"},"./subscriptions":{"types":"./dist/durable/Subscriptions.d.mts","default":"./dist/durable/Subscriptions.mjs"},"./testing/certification":{"types":"./dist/durable/Certification.d.mts","default":"./dist/durable/Certification.mjs"},"./testing/durable-failpoint-test-control":{"types":"./dist/durable/DurableFailpointTestControl.d.mts","default":"./dist/durable/DurableFailpointTestControl.mjs"},"./testing/message-delivery-store-conformance":{"types":"./dist/durable/MessageDeliveryStoreConformance.d.mts","default":"./dist/durable/MessageDeliveryStoreConformance.mjs"},"./testing/schedule-store-conformance":{"types":"./dist/durable/ScheduleStoreConformance.d.mts","default":"./dist/durable/ScheduleStoreConformance.mjs"},"./testing/submission-ledger-conformance":{"types":"./dist/durable/SubmissionLedgerConformance.d.mts","default":"./dist/durable/SubmissionLedgerConformance.mjs"},"./testing/subscription-store-conformance":{"types":"./dist/durable/SubscriptionStoreConformance.d.mts","default":"./dist/durable/SubscriptionStoreConformance.mjs"},"./testing/thread-store-conformance":{"types":"./dist/durable/ThreadStoreConformance.d.mts","default":"./dist/durable/ThreadStoreConformance.mjs"},"./thread":{"types":"./dist/core/Thread.d.mts","default":"./dist/core/Thread.mjs"},"./thread-context-history":{"types":"./dist/durable/ThreadContextHistory.d.mts","default":"./dist/durable/ThreadContextHistory.mjs"},"./thread-context-history-projection":{"types":"./dist/durable/ThreadContextHistoryProjection.d.mts","default":"./dist/durable/ThreadContextHistoryProjection.mjs"},"./thread-history":{"types":"./dist/engine/ThreadHistory.d.mts","default":"./dist/engine/ThreadHistory.mjs"},"./thread-invariants":{"types":"./dist/durable/ThreadInvariants.d.mts","default":"./dist/durable/ThreadInvariants.mjs"},"./thread-projection":{"types":"./dist/durable/ThreadProjection.d.mts","default":"./dist/durable/ThreadProjection.mjs"},"./thread-projection-maintenance":{"types":"./dist/durable/ThreadProjectionMaintenance.d.mts","default":"./dist/durable/ThreadProjectionMaintenance.mjs"},"./thread-store":{"types":"./dist/durable/ThreadStore.d.mts","default":"./dist/durable/ThreadStore.mjs"},"./tool-broker":{"types":"./dist/engine/ToolBroker.d.mts","default":"./dist/engine/ToolBroker.mjs"},"./tool-discovery":{"types":"./dist/capabilities/ToolDiscovery.d.mts","default":"./dist/capabilities/ToolDiscovery.mjs"},"./tool-exposure":{"types":"./dist/ToolExposure.d.mts","default":"./dist/ToolExposure.mjs"},"./tool-reconciler":{"types":"./dist/durable/ToolReconciler.d.mts","default":"./dist/durable/ToolReconciler.mjs"},"./tool-result":{"types":"./dist/core/ToolResult.d.mts","default":"./dist/core/ToolResult.mjs"},"./usage":{"types":"./dist/core/Usage.d.mts","default":"./dist/core/Usage.mjs"},"./wake-scheduler":{"types":"./dist/durable/WakeScheduler.d.mts","default":"./dist/durable/WakeScheduler.mjs"},"./web-capture":{"types":"./dist/capabilities/WebCapture.d.mts","default":"./dist/capabilities/WebCapture.mjs"},"./web-search":{"types":"./dist/capabilities/WebSearch.d.mts","default":"./dist/capabilities/WebSearch.mjs"},"./worker":{"types":"./dist/core/Worker.d.mts","default":"./dist/core/Worker.mjs"},"./worker-host":{"types":"./dist/durable/WorkerHost.d.mts","default":"./dist/durable/WorkerHost.mjs"}},"description":"Effect-native agents, execution, subagents, and sandbox contracts in one tree-shakeable package.","license":"MIT","repository":{"type":"git","url":"git+https://github.com/danieljvdm/effect-agent.git","directory":"packages/effect-agent"},"files":["dist","src"],"type":"module","sideEffects":[],"publishConfig":{"access":"public"},"scripts":{"build":"vp pack","check":"tsc --noEmit -p tsconfig.json","test":"vp test --passWithNoTests"}}
|
|
@@ -159,6 +159,21 @@ const isServerRequest = Schema.is(ServerRequest);
|
|
|
159
159
|
const isJsonRpcRequest = (message: unknown): message is RpcMessage.RequestEncoded =>
|
|
160
160
|
isServerRequest(message);
|
|
161
161
|
|
|
162
|
+
/** Effect RPC's tracing extensions are not part of MCP's strict JSON-RPC request shape. */
|
|
163
|
+
const mcpWireMessage = (message: unknown): unknown => {
|
|
164
|
+
if (!Predicate.hasProperty(message, "_tag") || message._tag !== "Request") return message;
|
|
165
|
+
const payload = Predicate.hasProperty(message, "payload") ? message.payload : undefined;
|
|
166
|
+
|
|
167
|
+
return {
|
|
168
|
+
...message,
|
|
169
|
+
payload: payload === null ? undefined : payload,
|
|
170
|
+
traceId: undefined,
|
|
171
|
+
spanId: undefined,
|
|
172
|
+
sampled: undefined,
|
|
173
|
+
headers: [],
|
|
174
|
+
};
|
|
175
|
+
};
|
|
176
|
+
|
|
162
177
|
/** JSON-RPC error a client returns for a server-initiated request it does not serve. */
|
|
163
178
|
const declineServerRequest = (
|
|
164
179
|
request: RpcMessage.RequestEncoded,
|
|
@@ -371,7 +386,7 @@ const makeHttpProtocol = Effect.fn("McpHttpTransport.protocol")(function* (
|
|
|
371
386
|
Effect.sync(() => {
|
|
372
387
|
const encode = (message: unknown): Effect.Effect<string, RpcClientError.RpcClientError> =>
|
|
373
388
|
Effect.suspend(() => {
|
|
374
|
-
const encoded = parser.encode(message);
|
|
389
|
+
const encoded = parser.encode(mcpWireMessage(message));
|
|
375
390
|
|
|
376
391
|
return typeof encoded === "string"
|
|
377
392
|
? Effect.succeed(encoded)
|
|
@@ -599,7 +614,7 @@ const makeStdioProtocol = Effect.fn("McpStdioTransport.protocol")(function* (
|
|
|
599
614
|
const enqueue = (message: unknown): Effect.Effect<void, RpcClientError.RpcClientError> =>
|
|
600
615
|
Effect.suspend(() => {
|
|
601
616
|
if (closed !== undefined) return Effect.fail(closed);
|
|
602
|
-
const encoded = parser.encode(message);
|
|
617
|
+
const encoded = parser.encode(mcpWireMessage(message));
|
|
603
618
|
|
|
604
619
|
if (typeof encoded !== "string") {
|
|
605
620
|
return Effect.fail(protocolDefect("Could not encode an MCP JSON-RPC message"));
|
|
@@ -711,6 +726,7 @@ const executionClassFor = (
|
|
|
711
726
|
};
|
|
712
727
|
|
|
713
728
|
const makeMcpTool = (tool: McpSchema.Tool, trustToolAnnotations: boolean): McpTool => {
|
|
729
|
+
// MCP servers may advertise valid JSON Schemas outside a model provider's strict subset.
|
|
714
730
|
let dynamic: McpTool = Tool.dynamic(tool.name, {
|
|
715
731
|
...(tool.description === undefined ? {} : { description: tool.description }),
|
|
716
732
|
parameters: tool.inputSchema,
|
|
@@ -719,7 +735,7 @@ const makeMcpTool = (tool: McpSchema.Tool, trustToolAnnotations: boolean): McpTo
|
|
|
719
735
|
// MCP reports tool errors inside results so the model can self-correct;
|
|
720
736
|
// `return` hands the typed failure to the model the same way.
|
|
721
737
|
failureMode: "return",
|
|
722
|
-
});
|
|
738
|
+
}).annotate(Tool.Strict, false);
|
|
723
739
|
|
|
724
740
|
const title = tool.title ?? tool.annotations?.title;
|
|
725
741
|
|
|
@@ -555,6 +555,9 @@ const PROMPT_TRANSPARENT_TAGS: ReadonlySet<string> = new Set([
|
|
|
555
555
|
* are never canonical settlements or evidence for compaction, recovery or accounting. Real
|
|
556
556
|
* results replace them at the original declaration, including results appended after another Run.
|
|
557
557
|
* Prior user intent and assistant text remain visible; prior system instructions do not.
|
|
558
|
+
* Each Run retains the history preceding its start and its own continuation. Other Runs'
|
|
559
|
+
* subsequent Turns cannot replace its input. Compaction covers only its creator's Run view;
|
|
560
|
+
* a projection without an owner retains interleaved exchanges from the complete Thread history.
|
|
558
561
|
*/
|
|
559
562
|
/** @internal Lightweight canonical boundaries collected without retaining record payloads. */
|
|
560
563
|
export interface JournalBoundary {
|
|
@@ -598,13 +601,11 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
598
601
|
committedTurns: seed?.committedTurns ?? 0,
|
|
599
602
|
};
|
|
600
603
|
|
|
601
|
-
// RUN-026 pre-scan:
|
|
602
|
-
//
|
|
603
|
-
//
|
|
604
|
-
//
|
|
605
|
-
//
|
|
606
|
-
// coversThrough resolve to the record appended later (higher sequence),
|
|
607
|
-
// matching at-most-once replay intent.
|
|
604
|
+
// RUN-026 pre-scan: valid compactions retire only their creator's Run view. A bound
|
|
605
|
+
// stays below its own sequence and cannot split a visible response from its settled results.
|
|
606
|
+
// Pruning and rollovers may cover complete owner-Run batches; a summarize record carries
|
|
607
|
+
// its summary. Invalid records leave full history authoritative. A wider containing view
|
|
608
|
+
// replaces earlier coverage, with equal bounds preferring the later record.
|
|
608
609
|
// One span per settled record, paired with its declaring response the same
|
|
609
610
|
// way the fold pairs them: a settled belongs to the most recent
|
|
610
611
|
// ModelResponseRecorded of its Run. A bound inside (response, settled)
|
|
@@ -634,9 +635,39 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
634
635
|
toolExecutionEvidence,
|
|
635
636
|
settledToolCallRecordIds,
|
|
636
637
|
settledById,
|
|
637
|
-
compactions,
|
|
638
638
|
} = metadata;
|
|
639
639
|
|
|
640
|
+
const declarationByResultSequence = new Map(settledSpans.map(({ from, to }) => [to, from]));
|
|
641
|
+
|
|
642
|
+
const isInRunView = (
|
|
643
|
+
sequence: number,
|
|
644
|
+
payload: { readonly _tag: string; readonly runId?: RunId | undefined },
|
|
645
|
+
runId: RunId | undefined,
|
|
646
|
+
): boolean => {
|
|
647
|
+
if (runId === undefined || payload.runId === undefined || payload.runId === runId) return true;
|
|
648
|
+
const first = firstSequenceByRun.get(runId) ?? Number.POSITIVE_INFINITY;
|
|
649
|
+
|
|
650
|
+
return (
|
|
651
|
+
sequence < first ||
|
|
652
|
+
(payload._tag === "ToolCallSettled" &&
|
|
653
|
+
(declarationByResultSequence.get(sequence) ?? Number.POSITIVE_INFINITY) < first)
|
|
654
|
+
);
|
|
655
|
+
};
|
|
656
|
+
|
|
657
|
+
const compactions = metadata.compactions.filter(({ sequence, payload }) =>
|
|
658
|
+
isInRunView(sequence, payload, ownerRunId),
|
|
659
|
+
);
|
|
660
|
+
|
|
661
|
+
const recordsForRun = records.pipe(
|
|
662
|
+
Stream.filter(({ sequence, record: { payload } }) =>
|
|
663
|
+
isInRunView(sequence, payload, ownerRunId),
|
|
664
|
+
),
|
|
665
|
+
);
|
|
666
|
+
|
|
667
|
+
const isCovered = (envelope: CanonicalRecordEnvelope, compaction: CompactionCreated): boolean =>
|
|
668
|
+
envelope.sequence <= compaction.coversThrough &&
|
|
669
|
+
isInRunView(envelope.sequence, envelope.record.payload, compaction.runId);
|
|
670
|
+
|
|
640
671
|
const settledCoverage = compactions.reduce(
|
|
641
672
|
(through, { payload }) =>
|
|
642
673
|
payload.kind !== "summarize" ? Math.max(through, payload.coversThrough) : through,
|
|
@@ -671,7 +702,7 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
671
702
|
: yield* decodePromptMessages(seed.protectedContext);
|
|
672
703
|
|
|
673
704
|
if (settledCoverage > 0) {
|
|
674
|
-
yield* Stream.runForEach(
|
|
705
|
+
yield* Stream.runForEach(recordsForRun, (envelope) =>
|
|
675
706
|
Effect.gen(function* () {
|
|
676
707
|
const payload = envelope.record.payload;
|
|
677
708
|
|
|
@@ -727,21 +758,54 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
727
758
|
incompleteResponseSequences.some(
|
|
728
759
|
(response) =>
|
|
729
760
|
response.sequence <= coversThrough &&
|
|
761
|
+
isInRunView(
|
|
762
|
+
response.sequence,
|
|
763
|
+
{ _tag: "ModelResponseRecorded", runId: response.runId },
|
|
764
|
+
runId,
|
|
765
|
+
) &&
|
|
730
766
|
!isTerminalPriorRun(response.runId, runId, ownSequence),
|
|
731
767
|
)
|
|
732
768
|
)
|
|
733
769
|
return false;
|
|
734
770
|
for (const span of settledSpans) {
|
|
735
|
-
if (
|
|
771
|
+
if (
|
|
772
|
+
span.from <= coversThrough &&
|
|
773
|
+
coversThrough < span.to &&
|
|
774
|
+
isInRunView(span.from, { _tag: "ModelResponseRecorded", runId: span.runId }, runId)
|
|
775
|
+
)
|
|
776
|
+
return false;
|
|
736
777
|
}
|
|
737
778
|
|
|
738
779
|
return true;
|
|
739
780
|
};
|
|
740
781
|
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
let
|
|
744
|
-
let
|
|
782
|
+
type CompactionView = (typeof compactions)[number];
|
|
783
|
+
|
|
784
|
+
let replacements: ReadonlyArray<CompactionView> = [];
|
|
785
|
+
let clearings: ReadonlyArray<CompactionView> = [];
|
|
786
|
+
|
|
787
|
+
const retainCompaction = (views: ReadonlyArray<CompactionView>, next: CompactionView) => {
|
|
788
|
+
// Independent Run views overlap without containing one another. Retire an overlay only
|
|
789
|
+
// when the replacement actually contains its view, not merely a larger sequence number.
|
|
790
|
+
if (
|
|
791
|
+
views.some(
|
|
792
|
+
(prior) =>
|
|
793
|
+
prior.payload.coversThrough > next.payload.coversThrough &&
|
|
794
|
+
isInRunView(next.sequence, next.payload, prior.payload.runId),
|
|
795
|
+
)
|
|
796
|
+
)
|
|
797
|
+
return views;
|
|
798
|
+
|
|
799
|
+
return [
|
|
800
|
+
...views.filter(
|
|
801
|
+
(prior) =>
|
|
802
|
+
next.payload.coversThrough < prior.payload.coversThrough ||
|
|
803
|
+
!isInRunView(prior.sequence, prior.payload, next.payload.runId),
|
|
804
|
+
),
|
|
805
|
+
next,
|
|
806
|
+
];
|
|
807
|
+
};
|
|
808
|
+
|
|
745
809
|
let latestWindowId: string | undefined = seed?.contextWindowId;
|
|
746
810
|
let latestWindowSequence = seed?.throughSequence ?? -1;
|
|
747
811
|
let rolloverCoveredThrough = 0;
|
|
@@ -756,53 +820,48 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
756
820
|
rolloverCoveredThrough = Math.max(rolloverCoveredThrough, payload.coversThrough);
|
|
757
821
|
if (payload.kind === "summarize" || payload.kind === "rollover") {
|
|
758
822
|
if (payload.kind === "summarize" && payload.summary === undefined) continue;
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
(payload.coversThrough === summarizeBound && sequence > summarizeSequence)
|
|
762
|
-
) {
|
|
763
|
-
summarizeBound = payload.coversThrough;
|
|
764
|
-
summarizeSequence = sequence;
|
|
765
|
-
replacement = payload;
|
|
766
|
-
}
|
|
767
|
-
} else if (payload.coversThrough > clearBound) {
|
|
768
|
-
clearBound = payload.coversThrough;
|
|
769
|
-
}
|
|
823
|
+
replacements = retainCompaction(replacements, { payload, sequence });
|
|
824
|
+
} else clearings = retainCompaction(clearings, { payload, sequence });
|
|
770
825
|
}
|
|
771
826
|
let summaryEmitted = false;
|
|
772
827
|
|
|
773
|
-
const retainedPrefix =
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
828
|
+
const retainedPrefix = replacements.some(
|
|
829
|
+
({ payload }) =>
|
|
830
|
+
payload.kind === "rollover" &&
|
|
831
|
+
payload.runId === ownerRunId &&
|
|
832
|
+
ownerPrefixSequence <= payload.coversThrough,
|
|
833
|
+
)
|
|
834
|
+
? (protectedContext?.content ?? [])
|
|
835
|
+
: [];
|
|
779
836
|
|
|
780
|
-
const replacementLength =
|
|
837
|
+
const replacementLength = retainedPrefix.length + replacements.length;
|
|
781
838
|
|
|
782
839
|
if (seed?.frontier !== undefined)
|
|
783
840
|
onBoundary?.({ ...seed.frontier, promptLength: replacementLength });
|
|
784
841
|
|
|
785
842
|
const emitSummary = () => {
|
|
786
|
-
if (summaryEmitted ||
|
|
843
|
+
if (summaryEmitted || replacements.length === 0) return;
|
|
787
844
|
summaryEmitted = true;
|
|
845
|
+
state.all.push(...retainedPrefix);
|
|
846
|
+
for (const { payload: replacement } of replacements) {
|
|
847
|
+
const message =
|
|
848
|
+
replacement.kind === "rollover"
|
|
849
|
+
? contextWindowMessage(
|
|
850
|
+
contextWindowId(replacement.runId, replacement.turn),
|
|
851
|
+
replacement.handoff,
|
|
852
|
+
)
|
|
853
|
+
: Prompt.makeMessage("user", {
|
|
854
|
+
content: [
|
|
855
|
+
Prompt.makePart("text", {
|
|
856
|
+
text: `${COMPACTION_SUMMARY_PREFIX}${replacement.summary}`,
|
|
857
|
+
}),
|
|
858
|
+
],
|
|
859
|
+
});
|
|
788
860
|
|
|
789
|
-
|
|
790
|
-
replacement.kind
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
replacement.handoff,
|
|
794
|
-
)
|
|
795
|
-
: Prompt.makeMessage("user", {
|
|
796
|
-
content: [
|
|
797
|
-
Prompt.makePart("text", {
|
|
798
|
-
text: `${COMPACTION_SUMMARY_PREFIX}${replacement.summary}`,
|
|
799
|
-
}),
|
|
800
|
-
],
|
|
801
|
-
});
|
|
802
|
-
|
|
803
|
-
state.all.push(...retainedPrefix, message);
|
|
804
|
-
if (replacement.kind !== "rollover" || replacement.runId !== ownerRunId)
|
|
805
|
-
state.before.push(message);
|
|
861
|
+
state.all.push(message);
|
|
862
|
+
if (replacement.kind !== "rollover" || replacement.runId !== ownerRunId)
|
|
863
|
+
state.before.push(message);
|
|
864
|
+
}
|
|
806
865
|
};
|
|
807
866
|
|
|
808
867
|
const modelUsage: Array<ModelCallUsage> = [];
|
|
@@ -986,7 +1045,7 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
986
1045
|
};
|
|
987
1046
|
});
|
|
988
1047
|
|
|
989
|
-
yield* Stream.runForEach(
|
|
1048
|
+
yield* Stream.runForEach(recordsForRun, (envelope) =>
|
|
990
1049
|
Effect.gen(function* () {
|
|
991
1050
|
const payload = envelope.record.payload;
|
|
992
1051
|
|
|
@@ -1020,8 +1079,8 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
1020
1079
|
(payload._tag === "ModelResponseRecorded" || payload._tag === "ToolCallSettled")
|
|
1021
1080
|
)
|
|
1022
1081
|
return;
|
|
1023
|
-
if (
|
|
1024
|
-
//
|
|
1082
|
+
if (replacements.some(({ payload }) => isCovered(envelope, payload))) {
|
|
1083
|
+
// Retiring Prompt payloads does not retire the owning Run's policy or usage accounting.
|
|
1025
1084
|
if (payload._tag === "ModelResponseRecorded" && payload.runId === ownerRunId) {
|
|
1026
1085
|
const messages = yield* decodePromptMessages(payload.messages);
|
|
1027
1086
|
|
|
@@ -1032,7 +1091,7 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
1032
1091
|
onBoundary?.({
|
|
1033
1092
|
sequence: envelope.sequence,
|
|
1034
1093
|
tag: payload._tag,
|
|
1035
|
-
promptLength: replacementLength,
|
|
1094
|
+
promptLength: Math.max(replacementLength, state.all.length),
|
|
1036
1095
|
...(isTerminalPriorRun(payload.runId, ownerRunId, Number.POSITIVE_INFINITY)
|
|
1037
1096
|
? { terminalPriorRun: true }
|
|
1038
1097
|
: {}),
|
|
@@ -1059,7 +1118,9 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
1059
1118
|
slot.parts[slot.partIndex] = Prompt.makePart("tool-result", {
|
|
1060
1119
|
id: payload.toolCallId,
|
|
1061
1120
|
name: payload.toolName,
|
|
1062
|
-
result:
|
|
1121
|
+
result: clearings.some(({ payload }) => isCovered(envelope, payload))
|
|
1122
|
+
? CLEARED_TOOL_RESULT
|
|
1123
|
+
: payload.result,
|
|
1063
1124
|
isFailure: payload.isFailure,
|
|
1064
1125
|
providerExecuted: false,
|
|
1065
1126
|
});
|
|
@@ -1086,7 +1147,10 @@ export const projectRunJournalStream = Effect.fn("RunJournal.projectRunJournalSt
|
|
|
1086
1147
|
) {
|
|
1087
1148
|
state = yield* flushTools(state);
|
|
1088
1149
|
}
|
|
1089
|
-
state.pendingTools.push({
|
|
1150
|
+
state.pendingTools.push({
|
|
1151
|
+
record: payload,
|
|
1152
|
+
cleared: clearings.some(({ payload }) => isCovered(envelope, payload)),
|
|
1153
|
+
});
|
|
1090
1154
|
state = {
|
|
1091
1155
|
...state,
|
|
1092
1156
|
pendingToolsForRun: payload.runId === ownerRunId,
|
|
@@ -56,7 +56,7 @@ export class RecoveryCheckpointContents extends Schema.Class<RecoveryCheckpointC
|
|
|
56
56
|
digest: Digest,
|
|
57
57
|
}) {}
|
|
58
58
|
|
|
59
|
-
export const RECOVERY_ENGINE_VERSION = "effect-agent/recovery@
|
|
59
|
+
export const RECOVERY_ENGINE_VERSION = "effect-agent/recovery@2";
|
|
60
60
|
|
|
61
61
|
/**
|
|
62
62
|
* Late evidence can invalidate an old compaction. Such histories use full canonical replay;
|
|
@@ -14,7 +14,11 @@ export interface JournalMetadata {
|
|
|
14
14
|
readonly firstSequenceByRun: ReadonlyMap<string, number>;
|
|
15
15
|
readonly lastResponseSequenceByRun: ReadonlyMap<string, number>;
|
|
16
16
|
readonly terminalSequenceByRun: ReadonlyMap<string, number>;
|
|
17
|
-
readonly settledSpans: ReadonlyArray<{
|
|
17
|
+
readonly settledSpans: ReadonlyArray<{
|
|
18
|
+
readonly from: number;
|
|
19
|
+
readonly to: number;
|
|
20
|
+
readonly runId: RunId;
|
|
21
|
+
}>;
|
|
18
22
|
readonly toolExecutionEvidence: ReadonlySet<string>;
|
|
19
23
|
readonly settledToolCallRecordIds: ReadonlySet<string>;
|
|
20
24
|
readonly settledById: ReadonlyMap<
|
|
@@ -45,7 +49,10 @@ export const makeJournalMetadata = (
|
|
|
45
49
|
if (seed?.firstSequence !== undefined) firstSequenceByRun.set(seed.runId, seed.firstSequence);
|
|
46
50
|
const lastResponseSequenceByRun = new Map<string, number>();
|
|
47
51
|
const terminalSequenceByRun = new Map<string, number>();
|
|
48
|
-
|
|
52
|
+
|
|
53
|
+
const settledSpans: Array<{ readonly from: number; readonly to: number; readonly runId: RunId }> =
|
|
54
|
+
[];
|
|
55
|
+
|
|
49
56
|
const toolExecutionEvidence = new Set<string>();
|
|
50
57
|
const settledToolCallRecordIds = new Set<string>();
|
|
51
58
|
|
|
@@ -98,7 +105,7 @@ export const makeJournalMetadata = (
|
|
|
98
105
|
const from = lastResponseSequenceByRun.get(payload.runId);
|
|
99
106
|
|
|
100
107
|
if (from !== undefined && from < envelope.sequence)
|
|
101
|
-
settledSpans.push({ from, to: envelope.sequence });
|
|
108
|
+
settledSpans.push({ from, to: envelope.sequence, runId: payload.runId });
|
|
102
109
|
}
|
|
103
110
|
},
|
|
104
111
|
snapshot: (): JournalMetadata => ({
|