Files
openclaw/packages/agent-core/src/tool-execution-context.ts
Peter Steinberger 104691f822 feat(swarm): add QuickJS guest orchestration (#111298)
* feat(swarm): add QuickJS guest orchestration (#110325)

* fix(agents): turn-stable swarm replay identity — distinct exec invocations cannot collide

* fix(agents): turn-stable swarm replay identity — distinct exec invocations cannot collide

* fix(agents): turn-stable swarm replay identity — distinct exec invocations cannot collide
2026-07-19 03:58:59 -07:00

23 lines
727 B
TypeScript

import { AsyncLocalStorage } from "node:async_hooks";
import type { AssistantMessage } from "@openclaw/llm-core";
import type { AgentToolCall } from "./types.js";
/** Internal assistant-turn context for one concrete tool invocation. */
export interface AgentToolExecutionContext {
assistantMessage: AssistantMessage;
toolCall: AgentToolCall;
}
const activeToolExecution = new AsyncLocalStorage<AgentToolExecutionContext>();
export function getAgentToolExecutionContext(): AgentToolExecutionContext | undefined {
return activeToolExecution.getStore();
}
export function runWithAgentToolExecutionContext<T>(
context: AgentToolExecutionContext,
run: () => T,
): T {
return activeToolExecution.run(context, run);
}