@mastra/code-sdk 1.15.0-alpha.2 → 1.15.0-alpha.4
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/acp/agent.d.ts.map +1 -1
- package/dist/acp/agent.js +1 -1
- package/dist/acp/agent.js.map +1 -1
- package/dist/acp/event-mapper.d.ts.map +1 -1
- package/dist/acp/event-mapper.js +1 -1
- package/dist/acp/event-mapper.js.map +1 -1
- package/dist/agent-connections/signal-provider.d.ts +1 -1
- package/dist/agent-connections/signal-provider.d.ts.map +1 -1
- package/dist/agent-connections/signal-provider.js.map +1 -1
- package/dist/agent-connections/state-processor.d.ts +2 -2
- package/dist/agent-connections/state-processor.d.ts.map +1 -1
- package/dist/agent-connections/state-processor.js.map +1 -1
- package/dist/agent-connections/thread-state.d.ts +1 -1
- package/dist/agent-connections/thread-state.d.ts.map +1 -1
- package/dist/agent-connections/thread-state.js.map +1 -1
- package/dist/agent-connections/tools.d.ts.map +1 -1
- package/dist/agent-connections/tools.js +1 -1
- package/dist/agent-connections/tools.js.map +1 -1
- package/dist/agents/credential-resolver.d.ts +6 -0
- package/dist/agents/credential-resolver.d.ts.map +1 -1
- package/dist/agents/credential-resolver.js +13 -4
- package/dist/agents/credential-resolver.js.map +1 -1
- package/dist/agents/sandbox-filesystem.d.ts.map +1 -1
- package/dist/agents/sandbox-filesystem.js +17 -6
- package/dist/agents/sandbox-filesystem.js.map +1 -1
- package/dist/experimental-agent.d.ts +1 -1
- package/dist/experimental-agent.d.ts.map +1 -1
- package/dist/experimental-agent.js.map +1 -1
- package/dist/factory/client.d.ts +41 -0
- package/dist/factory/client.d.ts.map +1 -0
- package/dist/factory/client.js +98 -0
- package/dist/factory/client.js.map +1 -0
- package/dist/factory/remote-controller.d.ts +34 -0
- package/dist/factory/remote-controller.d.ts.map +1 -0
- package/dist/factory/remote-controller.js +43 -0
- package/dist/factory/remote-controller.js.map +1 -0
- package/dist/factory/remote-session.d.ts +210 -0
- package/dist/factory/remote-session.d.ts.map +1 -0
- package/dist/factory/remote-session.js +416 -0
- package/dist/factory/remote-session.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +34 -15
- package/dist/index.js.map +1 -1
- package/dist/onboarding/pack-activation.d.ts +2 -11
- package/dist/onboarding/pack-activation.d.ts.map +1 -1
- package/dist/onboarding/pack-activation.js.map +1 -1
- package/dist/onboarding/settings.d.ts +18 -0
- package/dist/onboarding/settings.d.ts.map +1 -1
- package/dist/onboarding/settings.js +28 -3
- package/dist/onboarding/settings.js.map +1 -1
- package/dist/platform/index.d.ts +74 -0
- package/dist/platform/index.d.ts.map +1 -0
- package/dist/platform/index.js +200 -0
- package/dist/platform/index.js.map +1 -0
- package/dist/process-memory-diagnostics.d.ts +2 -1
- package/dist/process-memory-diagnostics.d.ts.map +1 -1
- package/dist/process-memory-diagnostics.js.map +1 -1
- package/dist/tools/web-search.d.ts +1 -1
- package/dist/tools/web-search.d.ts.map +1 -1
- package/dist/tools/web-search.js.map +1 -1
- package/dist/utils/local-observability.d.ts +19 -0
- package/dist/utils/local-observability.d.ts.map +1 -0
- package/dist/utils/local-observability.js +57 -0
- package/dist/utils/local-observability.js.map +1 -0
- package/dist/utils/notification-dispatch.d.ts +27 -12
- package/dist/utils/notification-dispatch.d.ts.map +1 -1
- package/dist/utils/notification-dispatch.js +46 -24
- package/dist/utils/notification-dispatch.js.map +1 -1
- package/dist/utils/signals-pubsub.d.ts +5 -3
- package/dist/utils/signals-pubsub.d.ts.map +1 -1
- package/dist/utils/signals-pubsub.js +8 -6
- package/dist/utils/signals-pubsub.js.map +1 -1
- package/dist/utils/wake-session.d.ts +44 -0
- package/dist/utils/wake-session.d.ts.map +1 -0
- package/dist/utils/wake-session.js +79 -0
- package/dist/utils/wake-session.js.map +1 -0
- package/package.json +18 -19
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-session.js","names":["#remote","#resourceId","#listeners","#userIdMap","#hydrate","#refreshPermissions","#receive","#unsubscribe","#modes","#threadId","#modeId","#modelId","#running","#state","#displayState","#permissionRules","#pendingUserIds","#adoptLocalUserId","#emitError"],"sources":["../../src/factory/remote-session.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto';\n\nimport type { AgentControllerEvent as ClientEvent, AgentControllerModeInfo } from '@mastra/client-js';\nimport type {\n AgentControllerDisplayState,\n AgentControllerEvent,\n AgentControllerEventListener,\n AgentControllerRequestStateUpdater,\n AgentControllerThread,\n PermissionRules,\n Session,\n} from '@mastra/core/agent-controller';\nimport { defaultDisplayState } from '@mastra/core/agent-controller';\n\nimport type { FactoryAddress } from './client.js';\nimport { createFactoryClient, FACTORY_CONTROLLER_ID } from './client.js';\n\ntype RemoteHandle = ReturnType<ReturnType<ReturnType<typeof createFactoryClient>['getAgentController']>['session']>;\ntype RemoteMode = AgentControllerModeInfo;\ntype Files = Array<{ data: string; mediaType: string; filename?: string }>;\n\nconst MAP_FIELDS = [\n 'activeTools',\n 'toolInputBuffers',\n 'pendingSuspensions',\n 'pendingApprovals',\n 'activeSubagents',\n 'modifiedFiles',\n] as const;\n\n/** The wire flattens the display state's Maps to objects; restore them. */\nfunction hydrateDisplayState(wire: Record<string, unknown>): AgentControllerDisplayState {\n const state: Record<string, unknown> = { ...defaultDisplayState(), ...wire };\n for (const field of MAP_FIELDS) {\n const value = wire[field];\n state[field] = value instanceof Map ? value : new Map(Object.entries((value as object | undefined) ?? {}));\n }\n return state as unknown as AgentControllerDisplayState;\n}\n\n/** The wire flattens errors to `{ name, message }`; restore them. */\nfunction hydrateEvent(event: ClientEvent): AgentControllerEvent {\n const out: Record<string, unknown> = { ...event };\n if (out.displayState && typeof out.displayState === 'object') {\n out.displayState = hydrateDisplayState(out.displayState as Record<string, unknown>);\n }\n const error = out.error as { name?: string; message?: string } | undefined;\n if (error && typeof error === 'object' && !(error instanceof Error)) {\n out.error = Object.assign(new Error(error.message ?? 'Remote error'), { name: error.name ?? 'Error' });\n }\n return out as unknown as AgentControllerEvent;\n}\n\nfunction toThread(\n thread: { id: string; title?: string; resourceId?: string; createdAt?: unknown; updatedAt?: unknown },\n resourceId: string,\n): AgentControllerThread {\n const date = (value: unknown) => (value ? new Date(value as string) : new Date());\n return {\n id: thread.id,\n resourceId: thread.resourceId ?? resourceId,\n title: thread.title ?? '',\n createdAt: date(thread.createdAt),\n updatedAt: date(thread.updatedAt),\n } as AgentControllerThread;\n}\n\n/**\n * Stands in for an in-process `Session` while the agent, tools, and storage\n * run inside a Factory. Reads are served from state mirrored off the session's\n * event stream; every action is forwarded to the Factory over HTTP.\n *\n * Only the surface the TUI drives is implemented. Anything else resolves to a\n * no-op so local-only features (thread locks, grants) degrade instead of crash.\n */\nexport class RemoteSession {\n readonly #remote: RemoteHandle;\n readonly #resourceId: string;\n readonly #listeners = new Set<AgentControllerEventListener>();\n #unsubscribe: (() => void) | undefined;\n #threadId: string | null = null;\n #modeId = '';\n #modelId = '';\n #running = false;\n #state: Record<string, unknown> = {};\n #displayState: AgentControllerDisplayState = defaultDisplayState();\n #modes: RemoteMode[] = [];\n #permissionRules: PermissionRules = { categories: {}, tools: {} };\n #pendingUserIds: string[] = [];\n readonly #userIdMap = new Map<string, string>();\n\n constructor(address: FactoryAddress, resourceId: string, remote?: RemoteHandle) {\n this.#resourceId = resourceId;\n this.#remote = remote ?? createFactoryClient(address).getAgentController(FACTORY_CONTROLLER_ID).session(resourceId);\n }\n\n /** Create/resume the remote session, hydrate the mirror, and open the event stream. */\n async connect(): Promise<void> {\n await this.#remote.create();\n await Promise.all([this.#hydrate(), this.#refreshPermissions()]);\n const subscription = await this.#remote.subscribe({\n reconnect: true,\n onEvent: event => this.#receive(hydrateEvent(event)),\n // The server does not replay missed events; resync after a drop.\n onReconnect: () => void this.#hydrate().catch(() => {}),\n });\n this.#unsubscribe = subscription.unsubscribe;\n }\n\n /** Modes come from the controller; used to resolve the current mode's name and color. */\n setModes(modes: RemoteMode[]): void {\n this.#modes = modes;\n }\n\n disconnect(): void {\n this.#unsubscribe?.();\n this.#unsubscribe = undefined;\n }\n\n async #hydrate(): Promise<void> {\n const snapshot = await this.#remote.state();\n this.#threadId = snapshot.threadId ?? null;\n this.#modeId = snapshot.modeId;\n this.#modelId = snapshot.modelId;\n this.#running = Boolean(snapshot.running);\n // Settings (yolo, thinkingLevel, notifications, smartEditing) are session\n // state; the TUI reads them through state.get().\n if (snapshot.settings) this.#state = { ...this.#state, ...snapshot.settings };\n this.#displayState = {\n ...this.#displayState,\n ...(snapshot.tasks ? { tasks: snapshot.tasks } : {}),\n ...(snapshot.tokenUsage ? { tokenUsage: snapshot.tokenUsage } : {}),\n } as AgentControllerDisplayState;\n }\n\n async #refreshPermissions(): Promise<void> {\n const rules = await this.#remote.getPermissions();\n this.#permissionRules = {\n categories: (rules.categories ?? {}) as PermissionRules['categories'],\n tools: rules.tools ?? {},\n };\n }\n\n /** Surface a failed remote command in the transcript instead of dropping it. */\n #emitError(message: string): void {\n this.#receive({ type: 'error', error: new Error(message) } as AgentControllerEvent);\n }\n\n /**\n * The TUI renders a user message as soon as it is sent, keyed by the id\n * `sendSignal` returned. The Factory echoes it back under its own id, so map\n * that echo onto the local id to keep it from rendering twice.\n */\n #adoptLocalUserId(e: Record<string, any>): void {\n const message = e.message as\n | { id?: string; role?: string; content?: { metadata?: { signal?: { type?: string } } } }\n | undefined;\n const isUser =\n message?.role === 'user' || (message?.role === 'signal' && message.content?.metadata?.signal?.type === 'user');\n if (!message?.id || !isUser) return;\n let localId = this.#userIdMap.get(message.id);\n if (!localId && e.type === 'message_start') {\n localId = this.#pendingUserIds.shift();\n if (localId) this.#userIdMap.set(message.id, localId);\n }\n if (localId) e.message = { ...message, id: localId };\n }\n\n #receive(event: AgentControllerEvent): void {\n const e = event as AgentControllerEvent & Record<string, any>;\n if (e.type === 'message_start' || e.type === 'message_update' || e.type === 'message_end') {\n this.#adoptLocalUserId(e);\n }\n switch (e.type) {\n case 'mode_changed':\n this.#modeId = e.modeId;\n break;\n case 'model_changed':\n this.#modelId = e.modelId;\n break;\n case 'thread_changed':\n this.#threadId = e.threadId;\n break;\n case 'thread_created':\n this.#threadId = e.thread.id;\n break;\n case 'state_changed':\n this.#state = { ...this.#state, ...e.state };\n break;\n case 'display_state_changed':\n this.#displayState = e.displayState;\n break;\n case 'agent_start':\n this.#running = true;\n break;\n case 'agent_end':\n this.#running = false;\n break;\n }\n for (const listener of this.#listeners) {\n void Promise.resolve(listener(event)).catch(() => {});\n }\n }\n\n subscribe(listener: AgentControllerEventListener): () => void {\n this.#listeners.add(listener);\n return () => this.#listeners.delete(listener);\n }\n\n onBeforeAgentEnd(): () => void {\n return () => {};\n }\n\n readonly identity = {\n getResourceId: () => this.#resourceId,\n getDefaultResourceId: () => this.#resourceId,\n getId: () => this.#resourceId,\n getOwnerId: () => this.#resourceId,\n setResourceId: () => {},\n };\n\n readonly thread = (() => {\n const remote = () => this.#remote;\n const resourceId = this.#resourceId;\n return {\n getId: () => this.#threadId,\n isSet: () => this.#threadId !== null,\n requireId: () => {\n if (!this.#threadId) throw new Error('No active thread');\n return this.#threadId;\n },\n ensureId: async () => {\n if (!this.#threadId) await this.thread.create();\n return this.#threadId!;\n },\n list: async () => (await remote().listThreads()).map(t => toThread(t, resourceId)),\n getById: async ({ threadId }: { threadId: string }) =>\n (await this.thread.list()).find(t => t.id === threadId) ?? null,\n create: async ({ title }: { title?: string } = {}) => {\n const created = await remote().createThread(title);\n const thread = toThread(created as any, resourceId);\n this.#threadId = thread.id;\n return thread;\n },\n switch: async ({ threadId }: { threadId: string }) => {\n await remote().switchThread(threadId);\n this.#threadId = threadId;\n },\n clone: async ({ sourceThreadId, title }: { sourceThreadId?: string; title?: string } = {}) => {\n const created = await remote().cloneThread({ sourceThreadId, title });\n const thread = toThread(created as any, resourceId);\n this.#threadId = thread.id;\n return thread;\n },\n rename: async ({ title }: { title: string }) => {\n if (this.#threadId) await remote().renameThread(this.#threadId, title);\n },\n delete: async ({ threadId }: { threadId: string }) => {\n await remote().deleteThread(threadId);\n if (this.#threadId === threadId) this.#threadId = null;\n },\n listMessages: ({ threadId, limit }: { threadId: string; limit?: number }) =>\n remote().listMessages(threadId, limit),\n listActiveMessages: async ({ limit }: { limit?: number } = {}) =>\n this.#threadId ? remote().listMessages(this.#threadId, limit) : [],\n firstUserMessage: async () => null,\n firstUserMessages: async () => new Map(),\n // Thread settings live in the Factory; local overrides are not persisted.\n getSetting: async () => undefined,\n getSettingOn: async () => undefined,\n setSetting: async () => {},\n setSettingOn: async () => {},\n deleteSetting: async () => {},\n cleanupSubscription: () => {},\n detachFromCurrent: () => {},\n clear: () => {\n this.#threadId = null;\n },\n clearAndReleaseLock: async () => {},\n cloneToCurrentResource: async ({ sourceThreadId }: { sourceThreadId: string }) =>\n this.thread.clone({ sourceThreadId }),\n loadMetadata: async () => {},\n };\n })();\n\n readonly mode = {\n get: () => this.#modeId,\n hasSelection: () => Boolean(this.#modeId),\n resolve: () => this.#modes.find(mode => mode.id === this.#modeId) ?? { id: this.#modeId, name: this.#modeId },\n set: ({ modeId }: { modeId: string }) => {\n this.#modeId = modeId;\n },\n switch: async ({ modeId }: { modeId: string }) => {\n await this.#remote.switchMode(modeId);\n this.#modeId = modeId;\n },\n };\n\n readonly model = {\n get: () => this.#modelId,\n hasSelection: () => Boolean(this.#modelId),\n displayName: () => this.#modelId,\n set: ({ modelId }: { modelId: string }) => {\n this.#modelId = modelId;\n },\n switch: async (modelId: string, options: { thinkingLevel?: any } = {}) => {\n await this.#remote.switchModel(modelId, options);\n this.#modelId = modelId;\n },\n syncFromPersisted: async () => {},\n };\n\n readonly state = {\n get: () => this.#state,\n set: async (updates: Record<string, unknown>) => {\n this.#state = { ...this.#state, ...updates };\n await this.#remote.setState(updates);\n },\n setIf: async (updates: Record<string, unknown>, shouldApply: () => boolean) => {\n if (!shouldApply()) return false;\n await this.state.set(updates);\n return true;\n },\n update: async <TResult>(updater: AgentControllerRequestStateUpdater<any, TResult>): Promise<TResult> => {\n const { updates, result } = await updater(this.#state);\n if (updates) await this.state.set(updates);\n return result;\n },\n };\n\n readonly displayState = {\n get: () => this.#displayState,\n clearModifiedFiles: () => {\n this.#displayState = { ...this.#displayState, modifiedFiles: new Map() };\n },\n restoreTasks: () => {},\n clearPendingSuspensions: () => {},\n deletePendingSuspension: () => {},\n clearPendingApprovals: () => {},\n resetThread: () => {},\n apply: () => {},\n };\n\n readonly run = {\n isRunning: () => this.#running,\n getRunId: () => null,\n getTraceId: () => null,\n };\n\n readonly stream = { isActive: () => this.#running, isOpen: () => this.#running };\n\n readonly suspensions = {\n hasPending: () => this.#displayState.pendingSuspensions.size > 0,\n get: ({ toolCallId }: { toolCallId: string }) => this.#displayState.pendingSuspensions.get(toolCallId),\n has: ({ toolCallId }: { toolCallId: string }) => this.#displayState.pendingSuspensions.has(toolCallId),\n delete: () => {},\n };\n\n readonly permissions = {\n getRules: () => this.#permissionRules,\n setForCategory: async ({ category, policy }: { category: any; policy: any }) => {\n await this.#remote.setPermissionForCategory(category, policy);\n await this.#refreshPermissions();\n },\n setForTool: async ({ toolName, policy }: { toolName: string; policy: any }) => {\n await this.#remote.setPermissionForTool(toolName, policy);\n await this.#refreshPermissions();\n },\n };\n\n getCurrentRunId(): string | null {\n return null;\n }\n\n getTags(): Record<string, string> {\n return {};\n }\n\n getTokenUsage() {\n return this.#displayState.tokenUsage;\n }\n\n getGrants() {\n return { categories: [], tools: [] };\n }\n\n async sendMessage({ content, files }: { content: string; files?: Files }) {\n await this.#remote.sendMessage({ content, files });\n }\n\n async queueMessage({ content }: { content: string }) {\n await this.#remote.followUp(content);\n }\n\n sendSignal(input: Parameters<Session['sendSignal']>[0]) {\n const content: unknown = 'content' in input ? input.content : undefined;\n const text =\n typeof content === 'string'\n ? content\n : Array.isArray(content)\n ? content.map(part => (typeof part === 'string' ? part : ((part as { text?: string })?.text ?? ''))).join('')\n : JSON.stringify(content);\n const files = 'files' in input ? (input.files as Files | undefined) : undefined;\n const message = files?.length ? { content: text, files } : text;\n const id = randomUUID();\n this.#pendingUserIds.push(id);\n const sent = this.#running ? this.#remote.followUp(message) : this.#remote.sendMessage(message);\n sent.catch(() => {\n this.#pendingUserIds = this.#pendingUserIds.filter(pending => pending !== id);\n });\n const accepted = sent.then(() => ({ accepted: true as const }));\n accepted.catch(() => {});\n return { id, type: 'user' as const, accepted, persisted: sent };\n }\n\n async steer({ content }: { content: string }) {\n await this.#remote.steer(content);\n }\n\n async followUp({ content }: { content: string }) {\n await this.#remote.followUp(content);\n }\n\n respondToToolApproval({\n decision,\n toolCallId,\n }: {\n decision: 'approve' | 'decline' | 'always_allow_category';\n toolCallId: string;\n }) {\n void (async () => {\n const ack = await this.#remote.approveTool(toolCallId, decision !== 'decline', {\n alwaysAllowCategory: decision === 'always_allow_category',\n });\n if (ack && 'accepted' in ack && ack.accepted === false) {\n this.#emitError(`Tool approval was not applied: ${(ack as { reason?: string }).reason ?? 'rejected'}`);\n }\n })().catch(error =>\n this.#emitError(`Tool approval failed: ${error instanceof Error ? error.message : String(error)}`),\n );\n return { accepted: true as const };\n }\n\n async respondToToolSuspension({ resumeData, toolCallId }: { resumeData: unknown; toolCallId?: string }) {\n const id = toolCallId ?? this.#displayState.pendingSuspensions.keys().next().value;\n if (!id) throw new Error('No pending tool suspension to respond to');\n await this.#remote.respondToToolSuspension(\n id,\n resumeData as Parameters<RemoteHandle['respondToToolSuspension']>[1],\n );\n }\n\n claimToolResponse(): boolean {\n return true;\n }\n\n releaseToolResponse(): void {}\n\n abort(): void {\n void this.#remote\n .abort()\n .catch(error => this.#emitError(`Abort failed: ${error instanceof Error ? error.message : String(error)}`));\n }\n\n abortRun(): void {\n this.abort();\n }\n}\n"],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAkC,MAAM,+BAA+B,CAAC;AAChG,OAAO,KAAK,EACV,eAAe,EACf,qBAAqB,EAErB,mBAAmB,EACnB,uBAAuB,EAEvB,aAAa,EACb,OAAO,EACR,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAU7C,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAa,MAAM,yBAAyB,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EACL,aAAa,EAId,MAAM,uBAAuB,CAAC;AAK/B,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -11,7 +11,7 @@ import { createSessionThreadAdvertisement } from "./agent-connections/session-ad
|
|
|
11
11
|
import { AgentConnectionsSignalProvider } from "./agent-connections/signal-provider.js";
|
|
12
12
|
import { createBackgroundCompletionEvents } from "./agents/background-completion-events.js";
|
|
13
13
|
import { createBackgroundCompletionCallbacks } from "./agents/background-completion.js";
|
|
14
|
-
import { hasCredentialStoreProvider, withCredentialTenantPreparation } from "./agents/credential-resolver.js";
|
|
14
|
+
import { hasCredentialStoreProvider, setCredentialLogger, withCredentialTenantPreparation } from "./agents/credential-resolver.js";
|
|
15
15
|
import { getDynamicWorkspace, getGoalJudgeTools } from "./agents/workspace.js";
|
|
16
16
|
import { createGitRefReminderReader, instructionSourcePaths, loadSessionInstructions, sessionInstructionRoots } from "./agents/prompts/agent-instructions.js";
|
|
17
17
|
import { getDynamicInstructions } from "./agents/instructions.js";
|
|
@@ -54,12 +54,14 @@ import { stateSchema } from "./schema.js";
|
|
|
54
54
|
import { mastraBrand } from "./theme-palette.js";
|
|
55
55
|
import { DiscardingScoresStorage } from "./utils/discarding-scores-storage.js";
|
|
56
56
|
import { syncGateways } from "./utils/gateway-sync.js";
|
|
57
|
+
import { openLocalObservabilityStore } from "./utils/local-observability.js";
|
|
57
58
|
import { registerSessionAndWaitForMaintenance, unregisterSession } from "./utils/maintenance-lock.js";
|
|
58
59
|
import { createSignalsPubSub } from "./utils/signals-pubsub.js";
|
|
59
60
|
import { createResourceNotificationDispatcher, shouldHoldNotificationDelivery } from "./utils/notification-dispatch.js";
|
|
60
61
|
import { DEFAULT_RETENTION, createStorageMaintenance, resolveLocalDbFiles } from "./utils/storage-maintenance.js";
|
|
61
62
|
import { createStorage, createVectorStore } from "./utils/storage-factory.js";
|
|
62
63
|
import { acquireThreadLock, releaseThreadLock } from "./utils/thread-lock.js";
|
|
64
|
+
import { FOREIGN_THREAD, findWakeSession, sessionLeaseScopes } from "./utils/wake-session.js";
|
|
63
65
|
import { registerWorkflowBuilderPrimitives } from "./workflows/register-primitives.js";
|
|
64
66
|
import { autoApprovePolicy, denyPolicy, permissionModeToPolicy } from "./headless/policy.js";
|
|
65
67
|
import { runMC } from "./headless/run-mc.js";
|
|
@@ -82,7 +84,6 @@ import { RequestContext } from "@mastra/core/request-context";
|
|
|
82
84
|
import { TaskSignalProvider } from "@mastra/core/signals";
|
|
83
85
|
import { MastraCompositeStore } from "@mastra/core/storage";
|
|
84
86
|
import { DEFAULT_GOAL_JUDGE_PROMPT } from "@mastra/core/tools";
|
|
85
|
-
import { DuckDBStore } from "@mastra/duckdb";
|
|
86
87
|
import { GithubSignals } from "@mastra/github-signals";
|
|
87
88
|
import { LibSQLStore, LibSQLVector } from "@mastra/libsql";
|
|
88
89
|
import { MastraPlatformExporter, MastraStorageExporter, Observability, SensitiveDataFilter } from "@mastra/observability";
|
|
@@ -322,11 +323,7 @@ async function createMastraCodeAgentController(config) {
|
|
|
322
323
|
let observabilityDomain;
|
|
323
324
|
let observabilityWarning;
|
|
324
325
|
if (globalSettings.observability.localTracing) try {
|
|
325
|
-
const observabilityDuckDB =
|
|
326
|
-
id: "mastra-code-observability",
|
|
327
|
-
path: getObservabilityDatabasePath()
|
|
328
|
-
});
|
|
329
|
-
await observabilityDuckDB.db.getConnection();
|
|
326
|
+
const { store: observabilityDuckDB } = await openLocalObservabilityStore(getObservabilityDatabasePath());
|
|
330
327
|
observabilityDomain = observabilityDuckDB.observability;
|
|
331
328
|
} catch (err) {
|
|
332
329
|
const message = err instanceof Error ? err.message : String(err);
|
|
@@ -415,16 +412,27 @@ async function createMastraCodeAgentController(config) {
|
|
|
415
412
|
const efficiencyScorer = createEfficiencyScorer();
|
|
416
413
|
const ownsNotificationDispatch = !configuredPubSub;
|
|
417
414
|
const dispatchLeasePubSub = ownsNotificationDispatch && !ownSignalsPubSub && process.platform !== "win32" ? createSignalsPubSub(project.resourceId) : void 0;
|
|
415
|
+
const notificationDispatchLeases = ownsNotificationDispatch ? (ownSignalsPubSub ?? dispatchLeasePubSub)?.getLeaseProvider() : void 0;
|
|
418
416
|
const notificationDispatcher = createResourceNotificationDispatcher({
|
|
419
417
|
getMastra: () => controller.getMastra(),
|
|
420
|
-
|
|
421
|
-
|
|
418
|
+
getSessionScopes: async () => (await Promise.all([...liveSessions].map(async (session) => {
|
|
419
|
+
const resourceId = session.identity.getResourceId();
|
|
420
|
+
return (await sessionLeaseScopes(session)).map((scope) => ({
|
|
421
|
+
resourceId,
|
|
422
|
+
scope
|
|
423
|
+
}));
|
|
424
|
+
}))).flat(),
|
|
425
|
+
leases: notificationDispatchLeases,
|
|
422
426
|
owner: `${ownerId}:${process.pid}:${randomUUID()}`,
|
|
423
427
|
onError: (error) => console.warn("Notification dispatch failed:", error)
|
|
424
428
|
});
|
|
425
|
-
const getWakeStreamOptions = async ({ resourceId, threadId }) => {
|
|
426
|
-
const
|
|
427
|
-
|
|
429
|
+
const getWakeStreamOptions = async ({ resourceId, threadId, owner }) => {
|
|
430
|
+
const wake = owner ?? await findWakeSession(controller, liveSessions, {
|
|
431
|
+
resourceId,
|
|
432
|
+
threadId
|
|
433
|
+
});
|
|
434
|
+
if (!wake || wake === FOREIGN_THREAD) return void 0;
|
|
435
|
+
const { session } = wake;
|
|
428
436
|
const targetThread = await session.thread.getById({ threadId });
|
|
429
437
|
const metadata = targetThread?.resourceId === resourceId ? targetThread.metadata : void 0;
|
|
430
438
|
const modes = controller.listModes();
|
|
@@ -692,10 +700,19 @@ async function createMastraCodeAgentController(config) {
|
|
|
692
700
|
notifications: { deliveryPolicy: { decide: async (input) => {
|
|
693
701
|
const decision = defaultNotificationDeliveryDecision(input);
|
|
694
702
|
if (!input.record.resourceId) return decision;
|
|
695
|
-
const
|
|
703
|
+
const owner = await findWakeSession(controller, liveSessions, {
|
|
696
704
|
resourceId: input.record.resourceId,
|
|
697
705
|
threadId: input.record.threadId
|
|
698
|
-
});
|
|
706
|
+
}, notificationDispatchLeases);
|
|
707
|
+
if (owner === FOREIGN_THREAD) return {
|
|
708
|
+
...decision,
|
|
709
|
+
hold: true
|
|
710
|
+
};
|
|
711
|
+
const streamOptions = owner ? await getWakeStreamOptions({
|
|
712
|
+
resourceId: input.record.resourceId,
|
|
713
|
+
threadId: input.record.threadId,
|
|
714
|
+
owner
|
|
715
|
+
}) : void 0;
|
|
699
716
|
const withOptions = streamOptions ? {
|
|
700
717
|
...decision,
|
|
701
718
|
streamOptions
|
|
@@ -703,7 +720,8 @@ async function createMastraCodeAgentController(config) {
|
|
|
703
720
|
if (!ownsNotificationDispatch) return withOptions;
|
|
704
721
|
return shouldHoldNotificationDelivery({
|
|
705
722
|
resourceId: input.record.resourceId,
|
|
706
|
-
|
|
723
|
+
scope: owner?.scope,
|
|
724
|
+
ownedHere: owner !== void 0,
|
|
707
725
|
dispatcher: notificationDispatcher
|
|
708
726
|
}) ? {
|
|
709
727
|
...withOptions,
|
|
@@ -1287,6 +1305,7 @@ async function prepareAgentControllerMount(config) {
|
|
|
1287
1305
|
const finalize = async () => {
|
|
1288
1306
|
await controller.init();
|
|
1289
1307
|
validateExperimentalAgent(codeAgent, controller.getMastra());
|
|
1308
|
+
setCredentialLogger(controller.getMastra()?.getLogger());
|
|
1290
1309
|
if (weOwnTheMastra) {
|
|
1291
1310
|
const mastra = controller.getMastra();
|
|
1292
1311
|
if (mastra) await registerWorkflowBuilderPrimitives(mastra, {
|