@hazeljs/agent 0.2.0-beta.81 → 0.2.0-rc.1

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.
Files changed (37) hide show
  1. package/coverage/clover.xml +496 -347
  2. package/coverage/lcov-report/index.html +68 -53
  3. package/coverage/lcov.info +832 -575
  4. package/dist/agent.module.d.ts +12 -3
  5. package/dist/agent.module.d.ts.map +1 -1
  6. package/dist/agent.module.js +13 -1
  7. package/dist/agent.module.js.map +1 -1
  8. package/dist/errors/agent.error.d.ts +30 -0
  9. package/dist/errors/agent.error.d.ts.map +1 -0
  10. package/dist/errors/agent.error.js +55 -0
  11. package/dist/errors/agent.error.js.map +1 -0
  12. package/dist/executor/agent.executor.d.ts +19 -4
  13. package/dist/executor/agent.executor.d.ts.map +1 -1
  14. package/dist/executor/agent.executor.js +175 -33
  15. package/dist/executor/agent.executor.js.map +1 -1
  16. package/dist/executor/tool.executor.d.ts +6 -3
  17. package/dist/executor/tool.executor.d.ts.map +1 -1
  18. package/dist/executor/tool.executor.js +39 -38
  19. package/dist/executor/tool.executor.js.map +1 -1
  20. package/dist/index.d.ts +1 -0
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +1 -0
  23. package/dist/index.js.map +1 -1
  24. package/dist/runtime/agent.runtime.d.ts +12 -1
  25. package/dist/runtime/agent.runtime.d.ts.map +1 -1
  26. package/dist/runtime/agent.runtime.js +86 -5
  27. package/dist/runtime/agent.runtime.js.map +1 -1
  28. package/dist/types/agent.types.d.ts +18 -0
  29. package/dist/types/agent.types.d.ts.map +1 -1
  30. package/dist/types/llm.types.d.ts +16 -0
  31. package/dist/types/llm.types.d.ts.map +1 -1
  32. package/dist/types/tool.types.d.ts +11 -0
  33. package/dist/types/tool.types.d.ts.map +1 -1
  34. package/jest.config.js +4 -4
  35. package/logs/combined.log +1 -1
  36. package/package.json +6 -6
  37. package/tsconfig.tsbuildinfo +1 -1
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { AgentRuntime, AgentRuntimeConfig } from './runtime/agent.runtime';
6
6
  import { AgentEventType } from './types/event.types';
7
+ import type { AgentContext, AgentExecutionResult, AgentStreamChunk } from './types/agent.types';
7
8
  type NewableFunction = new (...args: unknown[]) => unknown;
8
9
  /** Token for optional GuardrailsService injection (from @hazeljs/guardrails) */
9
10
  export declare const GUARDRAILS_SERVICE_TOKEN = "GuardrailsService";
@@ -35,9 +36,17 @@ export declare class AgentService {
35
36
  };
36
37
  }, config?: AgentRuntimeConfig);
37
38
  getRuntime(): AgentRuntime;
38
- execute(agentName: string, input: string, options?: Record<string, unknown>): Promise<unknown>;
39
- resume(executionId: string, input?: string): Promise<unknown>;
40
- getContext(executionId: string): unknown;
39
+ execute(agentName: string, input: string, options?: Record<string, unknown>): Promise<AgentExecutionResult>;
40
+ resume(executionId: string, input?: string): Promise<AgentExecutionResult>;
41
+ getContext(executionId: string): Promise<AgentContext | undefined>;
42
+ /**
43
+ * Execute with streaming; yields step and token chunks when LLM supports streamChat.
44
+ */
45
+ executeStream(agentName: string, input: string, options?: Record<string, unknown>): AsyncGenerator<AgentStreamChunk>;
46
+ /**
47
+ * Cancel an in-flight execution by executionId.
48
+ */
49
+ cancel(executionId: string): void;
41
50
  on(type: AgentEventType, handler: (event: unknown) => void): void;
42
51
  getAgents(): unknown[];
43
52
  approveToolExecution(requestId: string, approvedBy: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"agent.module.d.ts","sourceRoot":"","sources":["../src/agent.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,KAAK,eAAe,GAAG,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;AAE3D,gFAAgF;AAChF,eAAO,MAAM,wBAAwB,sBAAsB,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;CAC5B;AAED;;;GAGG;AACH,qBACa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAe;gBAI5B,iBAAiB,CAAC,EAAE;QAClB,UAAU,EAAE,CACV,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,OAAO,CAAC,EAAE,OAAO,KACd;YACH,OAAO,EAAE,OAAO,CAAC;YACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;YAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;YACtB,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,WAAW,EAAE,CACX,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,OAAO,CAAC,EAAE,OAAO,KACd;YACH,OAAO,EAAE,OAAO,CAAC;YACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;YAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;YACtB,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;KACH,EACD,MAAM,GAAE,kBAAuB;IAkBjC,UAAU,IAAI,YAAY;IAIpB,OAAO,CACX,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC;IAIb,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAInE,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAIxC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAIjE,SAAS,IAAI,OAAO,EAAE;IAItB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAIjE,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI5C,mBAAmB,IAAI,OAAO,EAAE;CAGjC;AAED;;;GAGG;AACH,qBAIa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,OAAO,CAA0B;IAEhD,MAAM,CAAC,OAAO,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,WAAW;IAKpE,MAAM,CAAC,UAAU,IAAI,kBAAkB;CAGxC"}
1
+ {"version":3,"file":"agent.module.d.ts","sourceRoot":"","sources":["../src/agent.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEhG,KAAK,eAAe,GAAG,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;AAE3D,gFAAgF;AAChF,eAAO,MAAM,wBAAwB,sBAAsB,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;CAC5B;AAED;;;GAGG;AACH,qBACa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAe;gBAI5B,iBAAiB,CAAC,EAAE;QAClB,UAAU,EAAE,CACV,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,OAAO,CAAC,EAAE,OAAO,KACd;YACH,OAAO,EAAE,OAAO,CAAC;YACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;YAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;YACtB,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,WAAW,EAAE,CACX,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,OAAO,CAAC,EAAE,OAAO,KACd;YACH,OAAO,EAAE,OAAO,CAAC;YACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;YAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;YACtB,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;KACH,EACD,MAAM,GAAE,kBAAuB;IAkBjC,UAAU,IAAI,YAAY;IAIpB,OAAO,CACX,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,oBAAoB,CAAC;IAQ1B,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAI1E,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAIxE;;OAEG;IACI,aAAa,CAClB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,cAAc,CAAC,gBAAgB,CAAC;IAQnC;;OAEG;IACH,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIjC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAIjE,SAAS,IAAI,OAAO,EAAE;IAItB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAIjE,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI5C,mBAAmB,IAAI,OAAO,EAAE;CAGjC;AAED;;;GAGG;AACH,qBAIa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,OAAO,CAA0B;IAEhD,MAAM,CAAC,OAAO,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,WAAW;IAKpE,MAAM,CAAC,UAAU,IAAI,kBAAkB;CAGxC"}
@@ -50,9 +50,21 @@ let AgentService = class AgentService {
50
50
  async resume(executionId, input) {
51
51
  return this.runtime.resume(executionId, input);
52
52
  }
53
- getContext(executionId) {
53
+ async getContext(executionId) {
54
54
  return this.runtime.getContext(executionId);
55
55
  }
56
+ /**
57
+ * Execute with streaming; yields step and token chunks when LLM supports streamChat.
58
+ */
59
+ async *executeStream(agentName, input, options) {
60
+ yield* this.runtime.executeStream(agentName, input, options);
61
+ }
62
+ /**
63
+ * Cancel an in-flight execution by executionId.
64
+ */
65
+ cancel(executionId) {
66
+ this.runtime.cancel(executionId);
67
+ }
56
68
  on(type, handler) {
57
69
  return this.runtime.on(type, handler);
58
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent.module.js","sourceRoot":"","sources":["../src/agent.module.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;AAEH,wCAA6D;AAC7D,2DAA2E;AAK3E,gFAAgF;AACnE,QAAA,wBAAwB,GAAG,mBAAmB,CAAC;AAU5D;;;GAGG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGvB,YAEE,iBAmBC,EACD,SAA6B,EAAE;QAE/B,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,EAAE,CAAC;QAC5C,MAAM,aAAa,GAAuB;YACxC,GAAG,CAAC,UAAU,CAAC,OAAO,IAAI,MAAM,CAAC;YACjC,iBAAiB,EACf,iBAAiB,IAAI,UAAU,CAAC,OAAO,EAAE,iBAAiB,IAAI,MAAM,CAAC,iBAAiB;SACzF,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,4BAAY,CAAC,aAAa,CAAC,CAAC;QAE/C,sCAAsC;QACtC,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACtB,KAAK,MAAM,UAAU,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBAC3C,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;IACH,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,OAAO,CACX,SAAiB,EACjB,KAAa,EACb,OAAiC;QAEjC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,WAAmB,EAAE,KAAc;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,UAAU,CAAC,WAAmB;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,EAAE,CAAC,IAAoB,EAAE,OAAiC;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IAClC,CAAC;IAED,oBAAoB,CAAC,SAAiB,EAAE,UAAkB;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;IAED,mBAAmB,CAAC,SAAiB;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAC5C,CAAC;CACF,CAAA;AAlFY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,cAAO,GAAE;IAKL,WAAA,IAAA,aAAM,EAAC,gCAAwB,CAAC,CAAA;;GAJxB,YAAY,CAkFxB;AAED;;;GAGG;AAKI,IAAM,WAAW,mBAAjB,MAAM,WAAW;IAGtB,MAAM,CAAC,OAAO,CAAC,UAA8B,EAAE;QAC7C,aAAW,CAAC,OAAO,GAAG,OAAO,CAAC;QAC9B,OAAO,aAAW,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,UAAU;QACf,OAAO,aAAW,CAAC,OAAO,CAAC;IAC7B,CAAC;;AAVU,kCAAW;AACP,mBAAO,GAAuB,EAAE,AAAzB,CAA0B;sBADrC,WAAW;IAJvB,IAAA,kBAAW,EAAC;QACX,SAAS,EAAE,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,CAAC,YAAY,CAAC;KACxB,CAAC;GACW,WAAW,CAWvB"}
1
+ {"version":3,"file":"agent.module.js","sourceRoot":"","sources":["../src/agent.module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Structured agent errors for robust handling and observability
3
+ */
4
+ export declare enum AgentErrorCode {
5
+ TIMEOUT = "AGENT_TIMEOUT",
6
+ CANCELLED = "AGENT_CANCELLED",
7
+ MAX_STEPS_EXCEEDED = "AGENT_MAX_STEPS_EXCEEDED",
8
+ TOOL_NOT_FOUND = "AGENT_TOOL_NOT_FOUND",
9
+ INVALID_TOOL_INPUT = "AGENT_INVALID_TOOL_INPUT",
10
+ LLM_ERROR = "AGENT_LLM_ERROR",
11
+ EXECUTION_NOT_FOUND = "AGENT_EXECUTION_NOT_FOUND",
12
+ RATE_LIMIT_EXCEEDED = "AGENT_RATE_LIMIT_EXCEEDED"
13
+ }
14
+ /**
15
+ * AgentError – structured error with code and optional cause
16
+ */
17
+ export declare class AgentError extends Error {
18
+ readonly code: AgentErrorCode;
19
+ readonly cause?: Error;
20
+ constructor(message: string, code: AgentErrorCode, cause?: Error);
21
+ static timeout(message?: string): AgentError;
22
+ static cancelled(message?: string): AgentError;
23
+ static maxSteps(maxSteps: number): AgentError;
24
+ static toolNotFound(toolName: string): AgentError;
25
+ static invalidToolInput(toolName: string, reason: string, cause?: Error): AgentError;
26
+ static llmError(message: string, cause?: Error): AgentError;
27
+ static executionNotFound(executionId: string): AgentError;
28
+ static rateLimitExceeded(message?: string): AgentError;
29
+ }
30
+ //# sourceMappingURL=agent.error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.error.d.ts","sourceRoot":"","sources":["../../src/errors/agent.error.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,oBAAY,cAAc;IACxB,OAAO,kBAAkB;IACzB,SAAS,oBAAoB;IAC7B,kBAAkB,6BAA6B;IAC/C,cAAc,yBAAyB;IACvC,kBAAkB,6BAA6B;IAC/C,SAAS,oBAAoB;IAC7B,mBAAmB,8BAA8B;IACjD,mBAAmB,8BAA8B;CAClD;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;gBAEX,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,KAAK;IAQhE,MAAM,CAAC,OAAO,CAAC,OAAO,GAAE,MAA8B,GAAG,UAAU;IAInE,MAAM,CAAC,SAAS,CAAC,OAAO,GAAE,MAAkC,GAAG,UAAU;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAO7C,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAIjD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,UAAU;IAQpF,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,UAAU;IAI3D,MAAM,CAAC,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU;IAOzD,MAAM,CAAC,iBAAiB,CACtB,OAAO,GAAE,MAAkD,GAC1D,UAAU;CAGd"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ /**
3
+ * Structured agent errors for robust handling and observability
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AgentError = exports.AgentErrorCode = void 0;
7
+ var AgentErrorCode;
8
+ (function (AgentErrorCode) {
9
+ AgentErrorCode["TIMEOUT"] = "AGENT_TIMEOUT";
10
+ AgentErrorCode["CANCELLED"] = "AGENT_CANCELLED";
11
+ AgentErrorCode["MAX_STEPS_EXCEEDED"] = "AGENT_MAX_STEPS_EXCEEDED";
12
+ AgentErrorCode["TOOL_NOT_FOUND"] = "AGENT_TOOL_NOT_FOUND";
13
+ AgentErrorCode["INVALID_TOOL_INPUT"] = "AGENT_INVALID_TOOL_INPUT";
14
+ AgentErrorCode["LLM_ERROR"] = "AGENT_LLM_ERROR";
15
+ AgentErrorCode["EXECUTION_NOT_FOUND"] = "AGENT_EXECUTION_NOT_FOUND";
16
+ AgentErrorCode["RATE_LIMIT_EXCEEDED"] = "AGENT_RATE_LIMIT_EXCEEDED";
17
+ })(AgentErrorCode || (exports.AgentErrorCode = AgentErrorCode = {}));
18
+ /**
19
+ * AgentError – structured error with code and optional cause
20
+ */
21
+ class AgentError extends Error {
22
+ constructor(message, code, cause) {
23
+ super(message);
24
+ this.name = 'AgentError';
25
+ this.code = code;
26
+ this.cause = cause;
27
+ Object.setPrototypeOf(this, AgentError.prototype);
28
+ }
29
+ static timeout(message = 'Execution timed out') {
30
+ return new AgentError(message, AgentErrorCode.TIMEOUT);
31
+ }
32
+ static cancelled(message = 'Execution was cancelled') {
33
+ return new AgentError(message, AgentErrorCode.CANCELLED);
34
+ }
35
+ static maxSteps(maxSteps) {
36
+ return new AgentError(`Maximum steps (${maxSteps}) exceeded`, AgentErrorCode.MAX_STEPS_EXCEEDED);
37
+ }
38
+ static toolNotFound(toolName) {
39
+ return new AgentError(`Tool ${toolName} not found`, AgentErrorCode.TOOL_NOT_FOUND);
40
+ }
41
+ static invalidToolInput(toolName, reason, cause) {
42
+ return new AgentError(`Invalid tool input for ${toolName}: ${reason}`, AgentErrorCode.INVALID_TOOL_INPUT, cause);
43
+ }
44
+ static llmError(message, cause) {
45
+ return new AgentError(message, AgentErrorCode.LLM_ERROR, cause);
46
+ }
47
+ static executionNotFound(executionId) {
48
+ return new AgentError(`Execution context ${executionId} not found`, AgentErrorCode.EXECUTION_NOT_FOUND);
49
+ }
50
+ static rateLimitExceeded(message = 'Rate limit exceeded - too many requests') {
51
+ return new AgentError(message, AgentErrorCode.RATE_LIMIT_EXCEEDED);
52
+ }
53
+ }
54
+ exports.AgentError = AgentError;
55
+ //# sourceMappingURL=agent.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.error.js","sourceRoot":"","sources":["../../src/errors/agent.error.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,IAAY,cASX;AATD,WAAY,cAAc;IACxB,2CAAyB,CAAA;IACzB,+CAA6B,CAAA;IAC7B,iEAA+C,CAAA;IAC/C,yDAAuC,CAAA;IACvC,iEAA+C,CAAA;IAC/C,+CAA6B,CAAA;IAC7B,mEAAiD,CAAA;IACjD,mEAAiD,CAAA;AACnD,CAAC,EATW,cAAc,8BAAd,cAAc,QASzB;AAED;;GAEG;AACH,MAAa,UAAW,SAAQ,KAAK;IAInC,YAAY,OAAe,EAAE,IAAoB,EAAE,KAAa;QAC9D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,UAAkB,qBAAqB;QACpD,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,UAAkB,yBAAyB;QAC1D,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,QAAgB;QAC9B,OAAO,IAAI,UAAU,CACnB,kBAAkB,QAAQ,YAAY,EACtC,cAAc,CAAC,kBAAkB,CAClC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,QAAgB;QAClC,OAAO,IAAI,UAAU,CAAC,QAAQ,QAAQ,YAAY,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,QAAgB,EAAE,MAAc,EAAE,KAAa;QACrE,OAAO,IAAI,UAAU,CACnB,0BAA0B,QAAQ,KAAK,MAAM,EAAE,EAC/C,cAAc,CAAC,kBAAkB,EACjC,KAAK,CACN,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,OAAe,EAAE,KAAa;QAC5C,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,WAAmB;QAC1C,OAAO,IAAI,UAAU,CACnB,qBAAqB,WAAW,YAAY,EAC5C,cAAc,CAAC,mBAAmB,CACnC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,iBAAiB,CACtB,UAAkB,yCAAyC;QAE3D,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAAC;IACrE,CAAC;CACF;AAvDD,gCAuDC"}
@@ -2,7 +2,7 @@
2
2
  * Agent Executor
3
3
  * Core execution loop for agents
4
4
  */
5
- import { AgentContext, AgentExecutionResult } from '../types/agent.types';
5
+ import { AgentContext, AgentExecutionResult, AgentStreamChunk } from '../types/agent.types';
6
6
  import { IAgentStateManager } from '../state/agent-state.interface';
7
7
  import { AgentContextBuilder } from '../context/agent.context';
8
8
  import { ToolExecutor } from './tool.executor';
@@ -10,6 +10,15 @@ import { ToolRegistry } from '../registry/tool.registry';
10
10
  import { AgentEventType } from '../types/event.types';
11
11
  import { LLMProvider } from '../types/llm.types';
12
12
  import '../prompts/agent-system.prompt';
13
+ /** Options passed to execute() and executeStream() */
14
+ export interface AgentExecutorOptions {
15
+ /** Execution timeout in ms. When exceeded, execution fails with AgentError (TIMEOUT). */
16
+ timeoutMs?: number;
17
+ /** AbortSignal to cancel execution. When aborted, fails with AgentError (CANCELLED). */
18
+ signal?: AbortSignal;
19
+ /** When true and LLM has streamChat, tokens are streamed in executeStream(). */
20
+ streaming?: boolean;
21
+ }
13
22
  /**
14
23
  * Agent Executor
15
24
  * Implements the core agent execution loop
@@ -26,16 +35,22 @@ export declare class AgentExecutor {
26
35
  * Helper to handle both sync and async state manager calls
27
36
  */
28
37
  private unwrap;
38
+ private throwIfAborted;
39
+ private throwIfTimeout;
29
40
  /**
30
41
  * Execute agent with controlled loop
31
42
  */
32
- execute(context: AgentContext, maxSteps?: number): Promise<AgentExecutionResult>;
43
+ execute(context: AgentContext, maxSteps?: number, options?: AgentExecutorOptions): Promise<AgentExecutionResult>;
44
+ /**
45
+ * Execute agent and stream step/token chunks when streaming is enabled.
46
+ */
47
+ executeStream(context: AgentContext, maxSteps?: number, options?: AgentExecutorOptions): AsyncGenerator<AgentStreamChunk>;
33
48
  /**
34
- * Execute a single step
49
+ * Execute a single step. Returns step and optional token chunks when streaming.
35
50
  */
36
51
  private executeStep;
37
52
  /**
38
- * Decide next action using LLM
53
+ * Decide next action using LLM. Optionally streams and returns token chunks.
39
54
  */
40
55
  private decideNextAction;
41
56
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"agent.executor.d.ts","sourceRoot":"","sources":["../../src/executor/agent.executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,YAAY,EAMZ,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,gCAAgC,CAAC;AAGxC;;;GAGG;AACH,qBAAa,aAAa;IAEtB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,WAAW,CAAC;IACpB,OAAO,CAAC,YAAY,CAAC;gBALb,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,mBAAmB,EACnC,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,WAAW,CAAC,EAAE,WAAW,YAAA,EACzB,YAAY,CAAC,GAAE,CAAC,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,aAAA;IAG3F;;OAEG;YACW,MAAM;IAIpB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,GAAE,MAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA+F1F;;OAEG;YACW,WAAW;IAoFzB;;OAEG;YACW,gBAAgB;IA2C9B;;OAEG;YACW,WAAW;IA0CzB;;OAEG;IACH,OAAO,CAAC,WAAW;IAmCnB;;OAEG;IACG,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAmBhF;;OAEG;IACH,OAAO,CAAC,SAAS;CAKlB"}
1
+ {"version":3,"file":"agent.executor.d.ts","sourceRoot":"","sources":["../../src/executor/agent.executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,YAAY,EAMZ,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,gCAAgC,CAAC;AAGxC,sDAAsD;AACtD,MAAM,WAAW,oBAAoB;IACnC,yFAAyF;IACzF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wFAAwF;IACxF,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,gFAAgF;IAChF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,aAAa;IAEtB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,WAAW,CAAC;IACpB,OAAO,CAAC,YAAY,CAAC;gBALb,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,mBAAmB,EACnC,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,WAAW,CAAC,EAAE,WAAW,YAAA,EACzB,YAAY,CAAC,GAAE,CAAC,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,aAAA;IAG3F;;OAEG;YACW,MAAM;IAIpB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,cAAc;IAMtB;;OAEG;IACG,OAAO,CACX,OAAO,EAAE,YAAY,EACrB,QAAQ,GAAE,MAAW,EACrB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,oBAAoB,CAAC;IAuGhC;;OAEG;IACI,aAAa,CAClB,OAAO,EAAE,YAAY,EACrB,QAAQ,GAAE,MAAW,EACrB,OAAO,GAAE,oBAAyB,GACjC,cAAc,CAAC,gBAAgB,CAAC;IAoHnC;;OAEG;YACW,WAAW;IA0FzB;;OAEG;YACW,gBAAgB;IAiF9B;;OAEG;YACW,WAAW;IA0CzB;;OAEG;IACH,OAAO,CAAC,WAAW;IAmCnB;;OAEG;IACG,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAmBhF;;OAEG;IACH,OAAO,CAAC,SAAS;CAKlB"}
@@ -9,6 +9,7 @@ const crypto_1 = require("crypto");
9
9
  const agent_types_1 = require("../types/agent.types");
10
10
  const event_types_1 = require("../types/event.types");
11
11
  const prompts_1 = require("@hazeljs/prompts");
12
+ const agent_error_1 = require("../errors/agent.error");
12
13
  require("../prompts/agent-system.prompt");
13
14
  const agent_system_prompt_1 = require("../prompts/agent-system.prompt");
14
15
  /**
@@ -30,12 +31,26 @@ class AgentExecutor {
30
31
  async unwrap(value) {
31
32
  return value instanceof Promise ? await value : value;
32
33
  }
34
+ throwIfAborted(signal) {
35
+ if (signal?.aborted) {
36
+ throw agent_error_1.AgentError.cancelled();
37
+ }
38
+ }
39
+ throwIfTimeout(deadline) {
40
+ if (Date.now() > deadline) {
41
+ throw agent_error_1.AgentError.timeout();
42
+ }
43
+ }
33
44
  /**
34
45
  * Execute agent with controlled loop
35
46
  */
36
- async execute(context, maxSteps = 10) {
47
+ async execute(context, maxSteps = 10, options = {}) {
37
48
  const startTime = Date.now();
49
+ const timeoutMs = options.timeoutMs;
50
+ const signal = options.signal;
51
+ const deadline = timeoutMs != null ? startTime + timeoutMs : undefined;
38
52
  try {
53
+ this.throwIfAborted(signal);
39
54
  this.emitEvent(event_types_1.AgentEventType.EXECUTION_STARTED, context.executionId, {
40
55
  input: context.input,
41
56
  sessionId: context.sessionId,
@@ -46,8 +61,11 @@ class AgentExecutor {
46
61
  let stepNumber = 0;
47
62
  let finalResponse;
48
63
  while (await this.unwrap(this.stateManager.canContinue(context.executionId, maxSteps))) {
64
+ if (deadline != null)
65
+ this.throwIfTimeout(deadline);
66
+ this.throwIfAborted(signal);
49
67
  stepNumber++;
50
- const step = await this.executeStep(context, stepNumber);
68
+ const { step } = await this.executeStep(context, stepNumber, signal);
51
69
  await this.unwrap(this.stateManager.addStep(context.executionId, step));
52
70
  if (step.state === agent_types_1.AgentState.COMPLETED) {
53
71
  finalResponse = step.action?.response;
@@ -67,7 +85,7 @@ class AgentExecutor {
67
85
  }
68
86
  if (stepNumber >= maxSteps) {
69
87
  await this.unwrap(this.stateManager.updateState(context.executionId, agent_types_1.AgentState.FAILED));
70
- throw new Error(`Maximum steps (${maxSteps}) exceeded`);
88
+ throw agent_error_1.AgentError.maxSteps(maxSteps);
71
89
  }
72
90
  await this.unwrap(this.stateManager.updateState(context.executionId, agent_types_1.AgentState.COMPLETED));
73
91
  const duration = Date.now() - startTime;
@@ -108,9 +126,103 @@ class AgentExecutor {
108
126
  }
109
127
  }
110
128
  /**
111
- * Execute a single step
129
+ * Execute agent and stream step/token chunks when streaming is enabled.
130
+ */
131
+ async *executeStream(context, maxSteps = 10, options = {}) {
132
+ const startTime = Date.now();
133
+ const timeoutMs = options.timeoutMs;
134
+ const signal = options.signal;
135
+ const deadline = timeoutMs != null ? startTime + timeoutMs : undefined;
136
+ const streaming = !!(options.streaming && this.llmProvider?.streamChat);
137
+ try {
138
+ this.throwIfAborted(signal);
139
+ this.emitEvent(event_types_1.AgentEventType.EXECUTION_STARTED, context.executionId, {
140
+ input: context.input,
141
+ sessionId: context.sessionId,
142
+ userId: context.userId,
143
+ options: context.metadata,
144
+ });
145
+ await this.unwrap(this.stateManager.updateState(context.executionId, agent_types_1.AgentState.THINKING));
146
+ let stepNumber = 0;
147
+ let finalResponse;
148
+ while (await this.unwrap(this.stateManager.canContinue(context.executionId, maxSteps))) {
149
+ if (deadline != null)
150
+ this.throwIfTimeout(deadline);
151
+ this.throwIfAborted(signal);
152
+ stepNumber++;
153
+ const stepResult = await this.executeStep(context, stepNumber, signal, streaming);
154
+ const { step, tokenChunks } = stepResult;
155
+ yield { type: 'step', step };
156
+ if (tokenChunks) {
157
+ for (const content of tokenChunks) {
158
+ yield { type: 'token', content };
159
+ }
160
+ }
161
+ await this.unwrap(this.stateManager.addStep(context.executionId, step));
162
+ if (step.state === agent_types_1.AgentState.COMPLETED) {
163
+ finalResponse = step.action?.response;
164
+ break;
165
+ }
166
+ if (step.state === agent_types_1.AgentState.FAILED) {
167
+ throw step.error || new Error('Step failed without error');
168
+ }
169
+ if (step.state === agent_types_1.AgentState.WAITING_FOR_APPROVAL) {
170
+ await this.unwrap(this.stateManager.updateState(context.executionId, agent_types_1.AgentState.WAITING_FOR_APPROVAL));
171
+ break;
172
+ }
173
+ if (step.state === agent_types_1.AgentState.WAITING_FOR_INPUT) {
174
+ await this.unwrap(this.stateManager.updateState(context.executionId, agent_types_1.AgentState.WAITING_FOR_INPUT));
175
+ break;
176
+ }
177
+ }
178
+ if (stepNumber >= maxSteps) {
179
+ await this.unwrap(this.stateManager.updateState(context.executionId, agent_types_1.AgentState.FAILED));
180
+ throw agent_error_1.AgentError.maxSteps(maxSteps);
181
+ }
182
+ await this.unwrap(this.stateManager.updateState(context.executionId, agent_types_1.AgentState.COMPLETED));
183
+ const duration = Date.now() - startTime;
184
+ const result = {
185
+ executionId: context.executionId,
186
+ agentId: context.agentId,
187
+ state: agent_types_1.AgentState.COMPLETED,
188
+ response: finalResponse,
189
+ steps: context.steps,
190
+ metadata: context.metadata,
191
+ duration,
192
+ completedAt: new Date(),
193
+ };
194
+ this.emitEvent(event_types_1.AgentEventType.EXECUTION_COMPLETED, context.executionId, {
195
+ response: finalResponse,
196
+ steps: stepNumber,
197
+ duration,
198
+ });
199
+ yield { type: 'done', result };
200
+ }
201
+ catch (error) {
202
+ await this.unwrap(this.stateManager.updateState(context.executionId, agent_types_1.AgentState.FAILED));
203
+ const duration = Date.now() - startTime;
204
+ const result = {
205
+ executionId: context.executionId,
206
+ agentId: context.agentId,
207
+ state: agent_types_1.AgentState.FAILED,
208
+ error: error,
209
+ steps: context.steps,
210
+ metadata: context.metadata,
211
+ duration,
212
+ completedAt: new Date(),
213
+ };
214
+ this.emitEvent(event_types_1.AgentEventType.EXECUTION_FAILED, context.executionId, {
215
+ error: error,
216
+ step: context.steps.length,
217
+ duration,
218
+ });
219
+ yield { type: 'done', result };
220
+ }
221
+ }
222
+ /**
223
+ * Execute a single step. Returns step and optional token chunks when streaming.
112
224
  */
113
- async executeStep(context, stepNumber) {
225
+ async executeStep(context, stepNumber, signal, streaming) {
114
226
  const stepId = (0, crypto_1.randomUUID)();
115
227
  const startTime = Date.now();
116
228
  const step = {
@@ -126,7 +238,8 @@ class AgentExecutor {
126
238
  state: step.state,
127
239
  });
128
240
  try {
129
- const action = await this.decideNextAction(context);
241
+ this.throwIfAborted(signal);
242
+ const { action, tokenChunks } = await this.decideNextAction(context, { signal, streaming });
130
243
  step.action = action;
131
244
  switch (action.type) {
132
245
  case agent_types_1.AgentActionType.USE_TOOL:
@@ -166,7 +279,7 @@ class AgentExecutor {
166
279
  action,
167
280
  result: step.result,
168
281
  });
169
- return step;
282
+ return { step, tokenChunks };
170
283
  }
171
284
  catch (error) {
172
285
  step.state = agent_types_1.AgentState.FAILED;
@@ -177,49 +290,78 @@ class AgentExecutor {
177
290
  state: step.state,
178
291
  error: error.message,
179
292
  });
180
- return step;
293
+ return { step };
181
294
  }
182
295
  }
183
296
  /**
184
- * Decide next action using LLM
297
+ * Decide next action using LLM. Optionally streams and returns token chunks.
185
298
  */
186
- async decideNextAction(context) {
299
+ async decideNextAction(context, opts) {
187
300
  if (!this.llmProvider) {
188
301
  return {
189
- type: agent_types_1.AgentActionType.RESPOND,
190
- response: 'No LLM provider configured',
302
+ action: {
303
+ type: agent_types_1.AgentActionType.RESPOND,
304
+ response: 'No LLM provider configured',
305
+ },
191
306
  };
192
307
  }
193
308
  const prompt = this.buildPrompt(context);
194
309
  const tools = this.toolRegistry.getToolDefinitionsForLLM(context.agentId);
310
+ const messages = [
311
+ { role: 'system', content: prompt.system },
312
+ ...prompt.messages,
313
+ { role: 'user', content: context.input },
314
+ ];
315
+ const request = {
316
+ messages,
317
+ tools: tools.length > 0 ? tools : undefined,
318
+ };
319
+ const streamChat = this.llmProvider?.streamChat;
320
+ const useStreaming = !!(opts?.streaming && streamChat);
195
321
  try {
196
- const response = await this.llmProvider.chat({
197
- messages: [
198
- { role: 'system', content: prompt.system },
199
- ...prompt.messages,
200
- { role: 'user', content: context.input },
201
- ],
202
- tools: tools.length > 0 ? tools : undefined,
203
- });
322
+ if (useStreaming && streamChat) {
323
+ const tokenChunks = [];
324
+ let content = '';
325
+ for await (const chunk of streamChat(request)) {
326
+ if (opts?.signal)
327
+ this.throwIfAborted(opts.signal);
328
+ if (chunk.content) {
329
+ tokenChunks.push(chunk.content);
330
+ content += chunk.content;
331
+ }
332
+ }
333
+ return {
334
+ action: { type: agent_types_1.AgentActionType.RESPOND, response: content },
335
+ tokenChunks,
336
+ };
337
+ }
338
+ const response = await this.llmProvider.chat(request);
204
339
  if (response.tool_calls && response.tool_calls.length > 0) {
205
340
  const toolCall = response.tool_calls[0];
341
+ let toolInput;
342
+ try {
343
+ toolInput = JSON.parse(toolCall.function.arguments);
344
+ }
345
+ catch (parseError) {
346
+ throw agent_error_1.AgentError.invalidToolInput(toolCall.function.name, 'Invalid JSON in tool arguments', parseError);
347
+ }
206
348
  return {
207
- type: agent_types_1.AgentActionType.USE_TOOL,
208
- toolName: toolCall.function.name,
209
- toolInput: JSON.parse(toolCall.function.arguments),
210
- thought: response.content,
349
+ action: {
350
+ type: agent_types_1.AgentActionType.USE_TOOL,
351
+ toolName: toolCall.function.name,
352
+ toolInput,
353
+ thought: response.content,
354
+ },
211
355
  };
212
356
  }
213
357
  return {
214
- type: agent_types_1.AgentActionType.RESPOND,
215
- response: response.content,
358
+ action: { type: agent_types_1.AgentActionType.RESPOND, response: response.content },
216
359
  };
217
360
  }
218
- catch {
219
- return {
220
- type: agent_types_1.AgentActionType.RESPOND,
221
- response: 'I encountered an error while processing your request.',
222
- };
361
+ catch (error) {
362
+ if (error instanceof agent_error_1.AgentError)
363
+ throw error;
364
+ throw agent_error_1.AgentError.llmError('I encountered an error while processing your request.', error);
223
365
  }
224
366
  }
225
367
  /**
@@ -237,7 +379,7 @@ class AgentExecutor {
237
379
  if (!tool) {
238
380
  return {
239
381
  success: false,
240
- error: `Tool ${action.toolName} not found`,
382
+ error: agent_error_1.AgentError.toolNotFound(action.toolName).message,
241
383
  };
242
384
  }
243
385
  const result = await this.toolExecutor.execute(tool, action.toolInput, context.agentId, context.sessionId, context.userId);
@@ -288,7 +430,7 @@ class AgentExecutor {
288
430
  const contextResult = this.stateManager.getContext(executionId);
289
431
  const context = await this.unwrap(contextResult);
290
432
  if (!context) {
291
- throw new Error(`Execution context ${executionId} not found`);
433
+ throw agent_error_1.AgentError.executionNotFound(executionId);
292
434
  }
293
435
  if (input) {
294
436
  await this.unwrap(this.stateManager.addMessage(executionId, 'user', input));
@@ -1 +1 @@
1
- {"version":3,"file":"agent.executor.js","sourceRoot":"","sources":["../../src/executor/agent.executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.executor.js","sourceRoot":"","sources":["../../src/executor/agent.executor.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,9 @@ export declare class ToolExecutor {
13
13
  private eventEmitter?;
14
14
  private guardrailsService?;
15
15
  private pendingApprovals;
16
+ private approvalResolvers;
16
17
  private executionContexts;
18
+ private static readonly DEFAULT_APPROVAL_TTL_MS;
17
19
  constructor(eventEmitter?: ((type: AgentEventType, data: unknown) => void) | undefined, guardrailsService?: IGuardrailsService | undefined);
18
20
  /**
19
21
  * Execute a tool
@@ -28,15 +30,16 @@ export declare class ToolExecutor {
28
30
  */
29
31
  private executeWithTimeout;
30
32
  /**
31
- * Request approval for tool execution
33
+ * Request approval for tool execution (event-driven: resolves when approve/reject/expire is called).
34
+ * Returns { promise, requestId } so callers can emit events with the correct requestId.
32
35
  */
33
36
  private requestApproval;
34
37
  /**
35
- * Approve a tool execution
38
+ * Approve a tool execution (event-driven: resolves the pending Promise immediately).
36
39
  */
37
40
  approveExecution(requestId: string, approvedBy: string): void;
38
41
  /**
39
- * Reject a tool execution
42
+ * Reject a tool execution (event-driven: resolves the pending Promise immediately).
40
43
  */
41
44
  rejectExecution(requestId: string): void;
42
45
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"tool.executor.d.ts","sourceRoot":"","sources":["../../src/executor/tool.executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAEL,mBAAmB,EAEnB,mBAAmB,EACnB,YAAY,EACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D;;;GAGG;AACH,qBAAa,YAAY;IAKrB,OAAO,CAAC,YAAY,CAAC;IACrB,OAAO,CAAC,iBAAiB,CAAC;IAL5B,OAAO,CAAC,gBAAgB,CAA+C;IACvE,OAAO,CAAC,iBAAiB,CAAgD;gBAG/D,YAAY,CAAC,GAAE,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,aAAA,EAC5D,iBAAiB,CAAC,EAAE,kBAAkB,YAAA;IAGhD;;OAEG;IACG,OAAO,CACX,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,mBAAmB,CAAC;IAqH/B;;OAEG;YACW,gBAAgB;IAwB9B;;OAEG;YACW,kBAAkB;IAiChC;;OAEG;YACW,eAAe;IA+D7B;;OAEG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAS7D;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAOxC;;OAEG;IACH,mBAAmB,IAAI,mBAAmB,EAAE;IAI5C;;OAEG;IACH,OAAO,CAAC,SAAS;IAMjB;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
1
+ {"version":3,"file":"tool.executor.d.ts","sourceRoot":"","sources":["../../src/executor/tool.executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAEL,mBAAmB,EAEnB,mBAAmB,EACnB,YAAY,EACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAQ/D;;;GAGG;AACH,qBAAa,YAAY;IAQrB,OAAO,CAAC,YAAY,CAAC;IACrB,OAAO,CAAC,iBAAiB,CAAC;IAR5B,OAAO,CAAC,gBAAgB,CAA+C;IACvE,OAAO,CAAC,iBAAiB,CAAmD;IAC5E,OAAO,CAAC,iBAAiB,CAAgD;IAEzE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAW;gBAGhD,YAAY,CAAC,GAAE,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,aAAA,EAC5D,iBAAiB,CAAC,EAAE,kBAAkB,YAAA;IAGhD;;OAEG;IACG,OAAO,CACX,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,mBAAmB,CAAC;IAsH/B;;OAEG;YACW,gBAAgB;IAwB9B;;OAEG;YACW,kBAAkB;IAiChC;;;OAGG;IACH,OAAO,CAAC,eAAe;IA6CvB;;OAEG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAc7D;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAaxC;;OAEG;IACH,mBAAmB,IAAI,mBAAmB,EAAE;IAI5C;;OAEG;IACH,OAAO,CAAC,SAAS;IAMjB;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}