Files
openclaw/src/plugins/agent-tool-result-middleware-types.ts
2026-05-11 03:41:00 +01:00

46 lines
1.4 KiB
TypeScript

import type { AgentToolResult as PiAgentToolResult } from "@earendil-works/pi-agent-core";
export type OpenClawAgentToolResult<TResult = unknown> = PiAgentToolResult<TResult>;
export type AgentToolResultMiddlewareRuntime = "pi" | "codex";
/** @deprecated Use AgentToolResultMiddlewareRuntime. */
export type AgentToolResultMiddlewareHarness =
| AgentToolResultMiddlewareRuntime
| "codex-app-server";
export type AgentToolResultMiddlewareEvent = {
threadId?: string;
turnId?: string;
toolCallId: string;
toolName: string;
args: Record<string, unknown>;
cwd?: string;
isError?: boolean;
result: OpenClawAgentToolResult;
};
export type AgentToolResultMiddlewareContext = {
runtime: AgentToolResultMiddlewareRuntime;
/** @deprecated Use runtime. */
harness?: AgentToolResultMiddlewareRuntime;
agentId?: string;
sessionId?: string;
sessionKey?: string;
runId?: string;
};
export type AgentToolResultMiddlewareResult = {
result: OpenClawAgentToolResult;
};
export type AgentToolResultMiddleware = (
event: AgentToolResultMiddlewareEvent,
ctx: AgentToolResultMiddlewareContext,
) => Promise<AgentToolResultMiddlewareResult | void> | AgentToolResultMiddlewareResult | void;
export type AgentToolResultMiddlewareOptions = {
runtimes?: AgentToolResultMiddlewareRuntime[];
/** @deprecated Use runtimes. */
harnesses?: AgentToolResultMiddlewareHarness[];
};