kagent-ts 0.1.4 → 0.1.5
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/LICENSE +68 -21
- package/README.md +27 -371
- package/dist/compression/progressive-compressor.d.ts +66 -0
- package/dist/compression/progressive-compressor.d.ts.map +1 -0
- package/dist/compression/progressive-compressor.js +367 -0
- package/dist/compression/progressive-compressor.js.map +1 -0
- package/dist/compression/types.d.ts +1 -5
- package/dist/compression/types.d.ts.map +1 -1
- package/dist/context/context-manager.d.ts +34 -15
- package/dist/context/context-manager.d.ts.map +1 -1
- package/dist/context/context-manager.js +78 -28
- package/dist/context/context-manager.js.map +1 -1
- package/dist/context/types.d.ts +20 -4
- package/dist/context/types.d.ts.map +1 -1
- package/dist/core/agent.d.ts +354 -25
- package/dist/core/agent.d.ts.map +1 -1
- package/dist/core/agent.js +646 -64
- package/dist/core/agent.js.map +1 -1
- package/dist/core/fusion-agent.d.ts +207 -0
- package/dist/core/fusion-agent.d.ts.map +1 -0
- package/dist/core/fusion-agent.js +769 -0
- package/dist/core/fusion-agent.js.map +1 -0
- package/dist/core/hooks.d.ts +19 -7
- package/dist/core/hooks.d.ts.map +1 -1
- package/dist/core/plan-solve-agent.d.ts +1 -15
- package/dist/core/plan-solve-agent.d.ts.map +1 -1
- package/dist/core/plan-solve-agent.js +142 -117
- package/dist/core/plan-solve-agent.js.map +1 -1
- package/dist/core/react-agent.d.ts +0 -13
- package/dist/core/react-agent.d.ts.map +1 -1
- package/dist/core/react-agent.js +127 -102
- package/dist/core/react-agent.js.map +1 -1
- package/dist/core/response-schema.d.ts +65 -0
- package/dist/core/response-schema.d.ts.map +1 -1
- package/dist/core/response-schema.js +174 -1
- package/dist/core/response-schema.js.map +1 -1
- package/dist/core/system-prompts.d.ts +27 -0
- package/dist/core/system-prompts.d.ts.map +1 -0
- package/dist/core/system-prompts.js +112 -0
- package/dist/core/system-prompts.js.map +1 -0
- package/dist/eval/benchmark.d.ts +81 -0
- package/dist/eval/benchmark.d.ts.map +1 -0
- package/dist/eval/benchmark.js +292 -0
- package/dist/eval/benchmark.js.map +1 -0
- package/dist/eval/eval-runner.d.ts +79 -0
- package/dist/eval/eval-runner.d.ts.map +1 -0
- package/dist/eval/eval-runner.js +252 -0
- package/dist/eval/eval-runner.js.map +1 -0
- package/dist/eval/index.d.ts +7 -0
- package/dist/eval/index.d.ts.map +1 -0
- package/dist/eval/index.js +13 -0
- package/dist/eval/index.js.map +1 -0
- package/dist/eval/tool-call-evaluator.d.ts +72 -0
- package/dist/eval/tool-call-evaluator.d.ts.map +1 -0
- package/dist/eval/tool-call-evaluator.js +265 -0
- package/dist/eval/tool-call-evaluator.js.map +1 -0
- package/dist/eval/types.d.ts +219 -0
- package/dist/eval/types.d.ts.map +1 -0
- package/dist/eval/types.js +3 -0
- package/dist/eval/types.js.map +1 -0
- package/dist/index.d.ts +58 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +116 -8
- package/dist/index.js.map +1 -1
- package/dist/llm/anthropic-provider.d.ts +141 -0
- package/dist/llm/anthropic-provider.d.ts.map +1 -0
- package/dist/llm/anthropic-provider.js +486 -0
- package/dist/llm/anthropic-provider.js.map +1 -0
- package/dist/llm/errors.d.ts +26 -0
- package/dist/llm/errors.d.ts.map +1 -0
- package/dist/llm/errors.js +19 -0
- package/dist/llm/errors.js.map +1 -0
- package/dist/llm/factory.d.ts +73 -0
- package/dist/llm/factory.d.ts.map +1 -0
- package/dist/llm/factory.js +77 -0
- package/dist/llm/factory.js.map +1 -0
- package/dist/llm/fallback-provider.d.ts +47 -0
- package/dist/llm/fallback-provider.d.ts.map +1 -0
- package/dist/llm/fallback-provider.js +91 -0
- package/dist/llm/fallback-provider.js.map +1 -0
- package/dist/llm/interface.d.ts +54 -11
- package/dist/llm/interface.d.ts.map +1 -1
- package/dist/llm/interface.js +34 -0
- package/dist/llm/interface.js.map +1 -1
- package/dist/llm/model-router.d.ts +126 -0
- package/dist/llm/model-router.d.ts.map +1 -0
- package/dist/llm/model-router.js +178 -0
- package/dist/llm/model-router.js.map +1 -0
- package/dist/llm/openai-provider.d.ts +8 -32
- package/dist/llm/openai-provider.d.ts.map +1 -1
- package/dist/llm/openai-provider.js +27 -60
- package/dist/llm/openai-provider.js.map +1 -1
- package/dist/llm/rate-limiter.d.ts +41 -0
- package/dist/llm/rate-limiter.d.ts.map +1 -0
- package/dist/llm/rate-limiter.js +93 -0
- package/dist/llm/rate-limiter.js.map +1 -0
- package/dist/llm/retry.d.ts +26 -0
- package/dist/llm/retry.d.ts.map +1 -0
- package/dist/llm/retry.js +44 -0
- package/dist/llm/retry.js.map +1 -0
- package/dist/llm/token-budget.d.ts +97 -0
- package/dist/llm/token-budget.d.ts.map +1 -0
- package/dist/llm/token-budget.js +115 -0
- package/dist/llm/token-budget.js.map +1 -0
- package/dist/logging/index.d.ts +2 -0
- package/dist/logging/index.d.ts.map +1 -0
- package/dist/logging/index.js +7 -0
- package/dist/logging/index.js.map +1 -0
- package/dist/logging/logger.d.ts +38 -0
- package/dist/logging/logger.d.ts.map +1 -0
- package/dist/logging/logger.js +34 -0
- package/dist/logging/logger.js.map +1 -0
- package/dist/mcp/mcp-client-manager.d.ts +10 -2
- package/dist/mcp/mcp-client-manager.d.ts.map +1 -1
- package/dist/mcp/mcp-client-manager.js +20 -9
- package/dist/mcp/mcp-client-manager.js.map +1 -1
- package/dist/memory/index.d.ts +3 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +6 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/memory-manager.d.ts +119 -0
- package/dist/memory/memory-manager.d.ts.map +1 -0
- package/dist/memory/memory-manager.js +334 -0
- package/dist/memory/memory-manager.js.map +1 -0
- package/dist/messages/types.d.ts +2 -0
- package/dist/messages/types.d.ts.map +1 -1
- package/dist/orchestrator/index.d.ts +5 -0
- package/dist/orchestrator/index.d.ts.map +1 -0
- package/dist/orchestrator/index.js +13 -0
- package/dist/orchestrator/index.js.map +1 -0
- package/dist/orchestrator/json-extractor.d.ts +18 -0
- package/dist/orchestrator/json-extractor.d.ts.map +1 -0
- package/dist/orchestrator/json-extractor.js +111 -0
- package/dist/orchestrator/json-extractor.js.map +1 -0
- package/dist/orchestrator/orchestrator-agent.d.ts +152 -0
- package/dist/orchestrator/orchestrator-agent.d.ts.map +1 -0
- package/dist/orchestrator/orchestrator-agent.js +675 -0
- package/dist/orchestrator/orchestrator-agent.js.map +1 -0
- package/dist/orchestrator/orchestrator-response.d.ts +40 -0
- package/dist/orchestrator/orchestrator-response.d.ts.map +1 -0
- package/dist/orchestrator/orchestrator-response.js +275 -0
- package/dist/orchestrator/orchestrator-response.js.map +1 -0
- package/dist/orchestrator/orchestrator-types.d.ts +116 -0
- package/dist/orchestrator/orchestrator-types.d.ts.map +1 -0
- package/dist/orchestrator/orchestrator-types.js +3 -0
- package/dist/orchestrator/orchestrator-types.js.map +1 -0
- package/dist/preferences/preference-manager.d.ts +8 -3
- package/dist/preferences/preference-manager.d.ts.map +1 -1
- package/dist/preferences/preference-manager.js +17 -4
- package/dist/preferences/preference-manager.js.map +1 -1
- package/dist/rag/chroma-store.d.ts +52 -0
- package/dist/rag/chroma-store.d.ts.map +1 -0
- package/dist/rag/chroma-store.js +110 -0
- package/dist/rag/chroma-store.js.map +1 -0
- package/dist/rag/document-loader.d.ts +21 -0
- package/dist/rag/document-loader.d.ts.map +1 -0
- package/dist/rag/document-loader.js +129 -0
- package/dist/rag/document-loader.js.map +1 -0
- package/dist/rag/embedding-provider.d.ts +36 -0
- package/dist/rag/embedding-provider.d.ts.map +1 -0
- package/dist/rag/embedding-provider.js +74 -0
- package/dist/rag/embedding-provider.js.map +1 -0
- package/dist/rag/index.d.ts +17 -0
- package/dist/rag/index.d.ts.map +1 -0
- package/dist/rag/index.js +27 -0
- package/dist/rag/index.js.map +1 -0
- package/dist/rag/keyword-index.d.ts +53 -0
- package/dist/rag/keyword-index.d.ts.map +1 -0
- package/dist/rag/keyword-index.js +161 -0
- package/dist/rag/keyword-index.js.map +1 -0
- package/dist/rag/llm-reranker.d.ts +36 -0
- package/dist/rag/llm-reranker.d.ts.map +1 -0
- package/dist/rag/llm-reranker.js +95 -0
- package/dist/rag/llm-reranker.js.map +1 -0
- package/dist/rag/rag-manager.d.ts +54 -0
- package/dist/rag/rag-manager.d.ts.map +1 -0
- package/dist/rag/rag-manager.js +179 -0
- package/dist/rag/rag-manager.js.map +1 -0
- package/dist/rag/rag-types.d.ts +143 -0
- package/dist/rag/rag-types.d.ts.map +1 -0
- package/dist/rag/rag-types.js +9 -0
- package/dist/rag/rag-types.js.map +1 -0
- package/dist/rag/rrf.d.ts +47 -0
- package/dist/rag/rrf.d.ts.map +1 -0
- package/dist/rag/rrf.js +70 -0
- package/dist/rag/rrf.js.map +1 -0
- package/dist/rag/search-knowledge.d.ts +24 -0
- package/dist/rag/search-knowledge.d.ts.map +1 -0
- package/dist/rag/search-knowledge.js +86 -0
- package/dist/rag/search-knowledge.js.map +1 -0
- package/dist/rag/text-splitter.d.ts +25 -0
- package/dist/rag/text-splitter.d.ts.map +1 -0
- package/dist/rag/text-splitter.js +136 -0
- package/dist/rag/text-splitter.js.map +1 -0
- package/dist/rag/vector-store.d.ts +34 -0
- package/dist/rag/vector-store.d.ts.map +1 -0
- package/dist/rag/vector-store.js +73 -0
- package/dist/rag/vector-store.js.map +1 -0
- package/dist/reflection/error-notebook.d.ts +125 -0
- package/dist/reflection/error-notebook.d.ts.map +1 -0
- package/dist/reflection/error-notebook.js +368 -0
- package/dist/reflection/error-notebook.js.map +1 -0
- package/dist/reflection/index.d.ts +8 -0
- package/dist/reflection/index.d.ts.map +1 -0
- package/dist/reflection/index.js +12 -0
- package/dist/reflection/index.js.map +1 -0
- package/dist/reflection/memory-reflector.d.ts +97 -0
- package/dist/reflection/memory-reflector.d.ts.map +1 -0
- package/dist/reflection/memory-reflector.js +215 -0
- package/dist/reflection/memory-reflector.js.map +1 -0
- package/dist/reflection/reflection-agent.d.ts +105 -0
- package/dist/reflection/reflection-agent.d.ts.map +1 -0
- package/dist/reflection/reflection-agent.js +234 -0
- package/dist/reflection/reflection-agent.js.map +1 -0
- package/dist/reflection/reflection-hook.d.ts +50 -0
- package/dist/reflection/reflection-hook.d.ts.map +1 -0
- package/dist/reflection/reflection-hook.js +108 -0
- package/dist/reflection/reflection-hook.js.map +1 -0
- package/dist/rules/project-rules.d.ts +47 -0
- package/dist/rules/project-rules.d.ts.map +1 -0
- package/dist/rules/project-rules.js +166 -0
- package/dist/rules/project-rules.js.map +1 -0
- package/dist/security/boundaries.d.ts +81 -0
- package/dist/security/boundaries.d.ts.map +1 -0
- package/dist/security/boundaries.js +158 -0
- package/dist/security/boundaries.js.map +1 -0
- package/dist/security/index.d.ts +2 -0
- package/dist/security/index.d.ts.map +1 -0
- package/dist/security/index.js +11 -0
- package/dist/security/index.js.map +1 -0
- package/dist/session/session-types.d.ts +25 -4
- package/dist/session/session-types.d.ts.map +1 -1
- package/dist/skills/file-skill-loader.d.ts +4 -6
- package/dist/skills/file-skill-loader.d.ts.map +1 -1
- package/dist/skills/file-skill-loader.js +8 -19
- package/dist/skills/file-skill-loader.js.map +1 -1
- package/dist/skills/index.d.ts +1 -1
- package/dist/skills/index.d.ts.map +1 -1
- package/dist/skills/index.js +1 -2
- package/dist/skills/index.js.map +1 -1
- package/dist/skills/skill-manager.d.ts +18 -8
- package/dist/skills/skill-manager.d.ts.map +1 -1
- package/dist/skills/skill-manager.js +58 -36
- package/dist/skills/skill-manager.js.map +1 -1
- package/dist/skills/types.d.ts +3 -8
- package/dist/skills/types.d.ts.map +1 -1
- package/dist/subagent/index.d.ts +4 -0
- package/dist/subagent/index.d.ts.map +1 -0
- package/dist/subagent/index.js +8 -0
- package/dist/subagent/index.js.map +1 -0
- package/dist/subagent/subagent-loader.d.ts +53 -0
- package/dist/subagent/subagent-loader.d.ts.map +1 -0
- package/dist/subagent/subagent-loader.js +155 -0
- package/dist/subagent/subagent-loader.js.map +1 -0
- package/dist/subagent/subagent-manager.d.ts +161 -0
- package/dist/subagent/subagent-manager.d.ts.map +1 -0
- package/dist/subagent/subagent-manager.js +468 -0
- package/dist/subagent/subagent-manager.js.map +1 -0
- package/dist/subagent/subagent-types.d.ts +77 -0
- package/dist/subagent/subagent-types.d.ts.map +1 -0
- package/dist/subagent/subagent-types.js +3 -0
- package/dist/subagent/subagent-types.js.map +1 -0
- package/dist/tools/builtin/bash.d.ts +3 -0
- package/dist/tools/builtin/bash.d.ts.map +1 -0
- package/dist/tools/builtin/bash.js +87 -0
- package/dist/tools/builtin/bash.js.map +1 -0
- package/dist/tools/builtin/edit-file.d.ts.map +1 -1
- package/dist/tools/builtin/edit-file.js +1 -0
- package/dist/tools/builtin/edit-file.js.map +1 -1
- package/dist/tools/builtin/index.d.ts +14 -0
- package/dist/tools/builtin/index.d.ts.map +1 -1
- package/dist/tools/builtin/index.js +45 -1
- package/dist/tools/builtin/index.js.map +1 -1
- package/dist/tools/builtin/list-errors.d.ts +7 -0
- package/dist/tools/builtin/list-errors.d.ts.map +1 -0
- package/dist/tools/builtin/list-errors.js +64 -0
- package/dist/tools/builtin/list-errors.js.map +1 -0
- package/dist/tools/builtin/list-subagents.d.ts +7 -0
- package/dist/tools/builtin/list-subagents.d.ts.map +1 -0
- package/dist/tools/builtin/list-subagents.js +21 -0
- package/dist/tools/builtin/list-subagents.js.map +1 -0
- package/dist/tools/builtin/recall.d.ts +11 -0
- package/dist/tools/builtin/recall.d.ts.map +1 -0
- package/dist/tools/builtin/recall.js +60 -0
- package/dist/tools/builtin/recall.js.map +1 -0
- package/dist/tools/builtin/remember.d.ts +12 -0
- package/dist/tools/builtin/remember.d.ts.map +1 -0
- package/dist/tools/builtin/remember.js +72 -0
- package/dist/tools/builtin/remember.js.map +1 -0
- package/dist/tools/builtin/skill.d.ts +14 -0
- package/dist/tools/builtin/skill.d.ts.map +1 -0
- package/dist/tools/builtin/skill.js +71 -0
- package/dist/tools/builtin/skill.js.map +1 -0
- package/dist/tools/builtin/spawn-subagent.d.ts +7 -0
- package/dist/tools/builtin/spawn-subagent.d.ts.map +1 -0
- package/dist/tools/builtin/spawn-subagent.js +43 -0
- package/dist/tools/builtin/spawn-subagent.js.map +1 -0
- package/dist/tools/builtin/web-fetch.d.ts +3 -0
- package/dist/tools/builtin/web-fetch.d.ts.map +1 -0
- package/dist/tools/builtin/web-fetch.js +101 -0
- package/dist/tools/builtin/web-fetch.js.map +1 -0
- package/dist/tools/builtin/write-file.d.ts.map +1 -1
- package/dist/tools/builtin/write-file.js +1 -0
- package/dist/tools/builtin/write-file.js.map +1 -1
- package/dist/tools/circuit-breaker.d.ts +19 -10
- package/dist/tools/circuit-breaker.d.ts.map +1 -1
- package/dist/tools/circuit-breaker.js +22 -11
- package/dist/tools/circuit-breaker.js.map +1 -1
- package/dist/tools/error-tracker.d.ts +28 -44
- package/dist/tools/error-tracker.d.ts.map +1 -1
- package/dist/tools/error-tracker.js +39 -156
- package/dist/tools/error-tracker.js.map +1 -1
- package/dist/tools/tool-filter.d.ts +70 -0
- package/dist/tools/tool-filter.d.ts.map +1 -0
- package/dist/tools/tool-filter.js +92 -0
- package/dist/tools/tool-filter.js.map +1 -0
- package/dist/tools/tool-output-truncator.d.ts +36 -0
- package/dist/tools/tool-output-truncator.d.ts.map +1 -0
- package/dist/tools/tool-output-truncator.js +117 -0
- package/dist/tools/tool-output-truncator.js.map +1 -0
- package/dist/tools/tool-registry.d.ts +25 -9
- package/dist/tools/tool-registry.d.ts.map +1 -1
- package/dist/tools/tool-registry.js +77 -28
- package/dist/tools/tool-registry.js.map +1 -1
- package/dist/tools/tool-validator.d.ts +13 -0
- package/dist/tools/tool-validator.d.ts.map +1 -0
- package/dist/tools/tool-validator.js +116 -0
- package/dist/tools/tool-validator.js.map +1 -0
- package/dist/tools/types.d.ts +86 -3
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/tools/types.js +51 -2
- package/dist/tools/types.js.map +1 -1
- package/dist/trace/trace-logger.d.ts +30 -4
- package/dist/trace/trace-logger.d.ts.map +1 -1
- package/dist/trace/trace-logger.js +82 -6
- package/dist/trace/trace-logger.js.map +1 -1
- package/package.json +13 -4
- package/dist/compression/sliding-window.d.ts +0 -21
- package/dist/compression/sliding-window.d.ts.map +0 -1
- package/dist/compression/sliding-window.js +0 -44
- package/dist/compression/sliding-window.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan-solve-agent.js","sourceRoot":"","sources":["../../src/core/plan-solve-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plan-solve-agent.js","sourceRoot":"","sources":["../../src/core/plan-solve-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,12 +5,6 @@ import { Agent, AgentConfig } from "./agent";
|
|
|
5
5
|
export interface ReActAgentConfig extends AgentConfig {
|
|
6
6
|
/** Maximum iterations for the ReAct loop (default: 10). */
|
|
7
7
|
maxIterations?: number;
|
|
8
|
-
/**
|
|
9
|
-
* Enable progressive skill disclosure.
|
|
10
|
-
* When true, skills are auto-detected from user input and loaded
|
|
11
|
-
* into the system prompt on demand (default: true).
|
|
12
|
-
*/
|
|
13
|
-
enableSkillAutoDetect?: boolean;
|
|
14
8
|
}
|
|
15
9
|
/**
|
|
16
10
|
* ReAct Agent implementing a structured Thought → Action → Observation → Final Answer loop.
|
|
@@ -27,7 +21,6 @@ export interface ReActAgentConfig extends AgentConfig {
|
|
|
27
21
|
*/
|
|
28
22
|
export declare class ReActAgent extends Agent {
|
|
29
23
|
private maxIterations;
|
|
30
|
-
private enableSkillAutoDetect;
|
|
31
24
|
constructor(config: ReActAgentConfig);
|
|
32
25
|
run(input: string): Promise<string>;
|
|
33
26
|
/**
|
|
@@ -42,11 +35,5 @@ export declare class ReActAgent extends Agent {
|
|
|
42
35
|
* @returns The agent's final response.
|
|
43
36
|
*/
|
|
44
37
|
resume(sessionId: string, input: string): Promise<string>;
|
|
45
|
-
/**
|
|
46
|
-
* Handle an LLMNetworkError: save an interrupted checkpoint if
|
|
47
|
-
* checkpointing is enabled, and return a user-facing message with
|
|
48
|
-
* resume instructions.
|
|
49
|
-
*/
|
|
50
|
-
private handleNetworkError;
|
|
51
38
|
}
|
|
52
39
|
//# sourceMappingURL=react-agent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-agent.d.ts","sourceRoot":"","sources":["../../src/core/react-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"react-agent.d.ts","sourceRoot":"","sources":["../../src/core/react-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAkC7C;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,2DAA2D;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,OAAO,CAAC,aAAa,CAAS;gBAElB,MAAM,EAAE,gBAAgB;IAc9B,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqRzC;;;;;;;;;;OAUG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAQhE"}
|
package/dist/core/react-agent.js
CHANGED
|
@@ -3,9 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ReActAgent = void 0;
|
|
4
4
|
const agent_1 = require("./agent");
|
|
5
5
|
const message_1 = require("../messages/message");
|
|
6
|
+
const types_1 = require("../messages/types");
|
|
6
7
|
const response_schema_1 = require("./response-schema");
|
|
7
|
-
const
|
|
8
|
-
const
|
|
8
|
+
const system_prompts_1 = require("./system-prompts");
|
|
9
|
+
const errors_1 = require("../llm/errors");
|
|
10
|
+
const interface_1 = require("../llm/interface");
|
|
11
|
+
const boundaries_1 = require("../security/boundaries");
|
|
9
12
|
/**
|
|
10
13
|
* Default system prompt for ReAct-style reasoning with structured JSON output.
|
|
11
14
|
*
|
|
@@ -24,18 +27,8 @@ Follow this process:
|
|
|
24
27
|
|
|
25
28
|
If no tools are needed, respond with the final answer directly.
|
|
26
29
|
Always think step by step before acting.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
When a tool returns an error:
|
|
30
|
-
1. READ the error message carefully — understand WHY it failed.
|
|
31
|
-
2. ANALYZE whether the parameters were correct. Common issues:
|
|
32
|
-
- Wrong file path (check spelling, use absolute paths)
|
|
33
|
-
- Missing or incorrect arguments
|
|
34
|
-
- The tool may need different input formats
|
|
35
|
-
3. RETRY with corrected parameters if you can fix the issue.
|
|
36
|
-
4. If the same tool fails repeatedly, try a COMPLETELY DIFFERENT approach.
|
|
37
|
-
5. If a tool is disabled after too many failures, DO NOT try to use it again.
|
|
38
|
-
Find another way to accomplish the task.${response_schema_1.STRUCTURED_OUTPUT_INSTRUCTIONS}`;
|
|
30
|
+
${system_prompts_1.SECURITY_GUIDANCE}
|
|
31
|
+
${system_prompts_1.TOOL_ERROR_RECOVERY}${response_schema_1.STRUCTURED_OUTPUT_INSTRUCTIONS}`;
|
|
39
32
|
/**
|
|
40
33
|
* ReAct Agent implementing a structured Thought → Action → Observation → Final Answer loop.
|
|
41
34
|
*
|
|
@@ -51,7 +44,6 @@ When a tool returns an error:
|
|
|
51
44
|
*/
|
|
52
45
|
class ReActAgent extends agent_1.Agent {
|
|
53
46
|
maxIterations;
|
|
54
|
-
enableSkillAutoDetect;
|
|
55
47
|
constructor(config) {
|
|
56
48
|
// Set default ReAct system prompt if none provided
|
|
57
49
|
const mergedConfig = {
|
|
@@ -60,24 +52,22 @@ class ReActAgent extends agent_1.Agent {
|
|
|
60
52
|
};
|
|
61
53
|
super(mergedConfig);
|
|
62
54
|
this.maxIterations = config.maxIterations ?? 10;
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
// available-skills hint is included in the initial prompt.
|
|
66
|
-
if (this.skillManager.activeCount > 0) {
|
|
67
|
-
this.rebuildSystemPrompt();
|
|
68
|
-
}
|
|
55
|
+
// Build the full system prompt once all sections are ready
|
|
56
|
+
this.rebuildSystemPrompt();
|
|
69
57
|
}
|
|
70
58
|
async run(input) {
|
|
71
|
-
// ──
|
|
59
|
+
// ── Pre-flight: reject oversized input before any setup ───────────
|
|
60
|
+
const sizeError = this.validateInputSize(input);
|
|
61
|
+
if (sizeError)
|
|
62
|
+
return sizeError;
|
|
63
|
+
// ── Create fresh abort controller for this run ───────────────────
|
|
64
|
+
this._abortController = new AbortController();
|
|
65
|
+
// ── Async initialization (MCP connections, sub-agents, etc.) ────────
|
|
72
66
|
await this.init();
|
|
73
|
-
// ──
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
this.rebuildSystemPrompt();
|
|
78
|
-
console.log(`[Skills] Auto-activated: ${activated.join(", ")}`);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
67
|
+
// ── Reload dynamic resources (preferences, skills, MCP) ─────────
|
|
68
|
+
await this.reloadDynamicResources();
|
|
69
|
+
// ── Recover orphaned sub-agent results from a cancelled session ──
|
|
70
|
+
this.recoverOrphanedSubAgentResults();
|
|
81
71
|
// ── Create user message ──────────────────────────────────────────
|
|
82
72
|
const userMessage = message_1.Message.user(input);
|
|
83
73
|
this.contextManager.addMessage(userMessage.toDict());
|
|
@@ -88,88 +78,126 @@ class ReActAgent extends agent_1.Agent {
|
|
|
88
78
|
// Track consecutive unproductive iterations (no tool calls, no answer)
|
|
89
79
|
let consecutiveEmptyIterations = 0;
|
|
90
80
|
const EMPTY_ITERATION_LIMIT = 5;
|
|
81
|
+
// Track consecutive max_tokens truncations (to avoid infinite continuation loops)
|
|
82
|
+
let consecutiveTruncations = 0;
|
|
83
|
+
const MAX_TRUNCATION_CONTINUES = 3;
|
|
91
84
|
// ── ReAct loop ────────────────────────────────────────────────────
|
|
92
85
|
for (let iteration = 0; iteration < this.maxIterations; iteration++) {
|
|
93
86
|
// Check if user cancelled (SIGINT)
|
|
94
87
|
if (this.isCancelled) {
|
|
95
|
-
this.
|
|
96
|
-
const
|
|
88
|
+
this.saveCheckpoint("cancelled");
|
|
89
|
+
const sid = this.sessionManager?.getSessionId() ?? "unknown";
|
|
90
|
+
const cancelMsg = `Execution cancelled by user. Session "${sid}" preserved — ` +
|
|
91
|
+
`resume with agent.resume("${sid}", "<your prompt>").`;
|
|
97
92
|
for (const h of this.hooks)
|
|
98
93
|
h.onFinish?.(cancelMsg);
|
|
99
94
|
return cancelMsg;
|
|
100
95
|
}
|
|
101
|
-
//
|
|
102
|
-
this.
|
|
96
|
+
// ── Poll sub-agent results ──────────────────────────────────────
|
|
97
|
+
const subResults = await this.pollSubAgentResults();
|
|
98
|
+
for (const r of subResults) {
|
|
99
|
+
const source = `subagent:${r.name}`;
|
|
100
|
+
const msg = new message_1.Message(types_1.Role.User, (0, boundaries_1.wrapAndScan)(source, r.output), { name: source });
|
|
101
|
+
this.contextManager.addMessage(msg.toDict());
|
|
102
|
+
}
|
|
103
|
+
// Check and compress after sub-agent results are in
|
|
104
|
+
await this.checkAndCompress();
|
|
103
105
|
// Prepare messages for the LLM
|
|
104
106
|
const contextMessages = this.contextManager.getContextMessages();
|
|
107
|
+
// Token budget check — skip token counting when no budget is configured
|
|
108
|
+
const budgetError = this.checkTokenBudget(this.tokenBudget ? this.contextManager.getCurrentTokens() : 0);
|
|
109
|
+
if (budgetError) {
|
|
110
|
+
for (const h of this.hooks)
|
|
111
|
+
h.onFinish?.(budgetError);
|
|
112
|
+
return budgetError;
|
|
113
|
+
}
|
|
105
114
|
// Call the LLM with all registered tools — with network error handling
|
|
106
115
|
for (const h of this.hooks)
|
|
107
116
|
h.onLLMStart?.(contextMessages, this.toolRegistry.getTools());
|
|
108
117
|
let response;
|
|
109
118
|
try {
|
|
110
|
-
response = await this.llm.chat(contextMessages, this.toolRegistry.getTools());
|
|
119
|
+
response = await this.llm.chat(contextMessages, this.toolRegistry.getTools(), this._abortController?.signal);
|
|
111
120
|
}
|
|
112
121
|
catch (err) {
|
|
113
|
-
|
|
122
|
+
// Cancellation by user (AbortController) — exit the loop cleanly
|
|
123
|
+
if (this.isCancelled) {
|
|
124
|
+
this.saveCheckpoint("cancelled");
|
|
125
|
+
const sid = this.sessionManager?.getSessionId() ?? "unknown";
|
|
126
|
+
const cancelMsg = `Execution cancelled by user. Session "${sid}" preserved — ` +
|
|
127
|
+
`resume with agent.resume("${sid}", "<your prompt>").`;
|
|
128
|
+
for (const h of this.hooks)
|
|
129
|
+
h.onFinish?.(cancelMsg);
|
|
130
|
+
return cancelMsg;
|
|
131
|
+
}
|
|
132
|
+
if (err instanceof errors_1.LLMNetworkError) {
|
|
114
133
|
for (const h of this.hooks)
|
|
115
134
|
h.onLLMError?.(err);
|
|
116
|
-
return this.handleNetworkError(err, iteration + 1);
|
|
135
|
+
return this.handleNetworkError(err, iteration + 1, "continue with my previous request");
|
|
117
136
|
}
|
|
118
137
|
throw err; // Unknown error — propagate
|
|
119
138
|
}
|
|
120
139
|
for (const h of this.hooks)
|
|
121
140
|
h.onLLMEnd?.(response);
|
|
141
|
+
// Record token usage against the session budget
|
|
142
|
+
if (response.usage) {
|
|
143
|
+
this.tokenBudget?.recordUsage(response.usage.prompt_tokens, response.usage.completion_tokens);
|
|
144
|
+
}
|
|
122
145
|
// Parse the response content as structured JSON
|
|
123
146
|
const parsed = (0, response_schema_1.parseReActResponse)(response.content);
|
|
124
147
|
const rawContent = response.content;
|
|
148
|
+
// Capture LLM analysis of any active tool error traces
|
|
149
|
+
if (parsed.thought) {
|
|
150
|
+
this.captureErrorAnalysis(parsed.thought);
|
|
151
|
+
}
|
|
125
152
|
// Create assistant message from the response
|
|
126
153
|
const assistantMessage = message_1.Message.assistant(rawContent, response.tool_calls);
|
|
127
|
-
//
|
|
128
|
-
|
|
154
|
+
// ── Handle max_tokens truncation ───────────────────────────────
|
|
155
|
+
const isTruncated = response.responseError?.code === interface_1.LLMResponseErrorCode.MAX_TOKENS;
|
|
156
|
+
if (isTruncated) {
|
|
157
|
+
consecutiveTruncations++;
|
|
158
|
+
if (consecutiveTruncations > MAX_TRUNCATION_CONTINUES) {
|
|
159
|
+
// Bail out — too many consecutive truncations, return what we have.
|
|
160
|
+
// Don't add the truncated message to context; it's incomplete junk.
|
|
161
|
+
const fallback = ("answer" in parsed && parsed.answer)
|
|
162
|
+
? parsed.answer + "\n\n[Note: Response may be incomplete due to repeated output limits.]"
|
|
163
|
+
: "I apologize, but I'm unable to complete this response due to output length constraints. " +
|
|
164
|
+
"Please try breaking your request into smaller steps.";
|
|
165
|
+
for (const h of this.hooks)
|
|
166
|
+
h.onFinish?.(fallback);
|
|
167
|
+
return fallback;
|
|
168
|
+
}
|
|
169
|
+
// Store the truncated message so the LLM has context for where it left off,
|
|
170
|
+
// then inject a continuation instruction.
|
|
171
|
+
this.contextManager.addMessage(assistantMessage.toDict());
|
|
172
|
+
const continueMsg = message_1.Message.user("Your previous response was cut off (max output tokens reached). " +
|
|
173
|
+
"Continue exactly where you left off — do NOT repeat any content already written. " +
|
|
174
|
+
"If you were calling tools, re-invoke them with complete arguments.");
|
|
175
|
+
this.contextManager.addMessage(continueMsg.toDict());
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
// Normal (non-truncated) response — store it and reset the counter.
|
|
179
|
+
this.contextManager.addMessage(assistantMessage.toDict());
|
|
180
|
+
consecutiveTruncations = 0;
|
|
181
|
+
}
|
|
129
182
|
// Check if LLM wants to call tools
|
|
130
183
|
if (response.tool_calls && response.tool_calls.length > 0) {
|
|
131
184
|
consecutiveEmptyIterations = 0;
|
|
132
|
-
// Log the reasoning thought
|
|
185
|
+
// Log the reasoning thought
|
|
133
186
|
if (parsed.thought) {
|
|
134
|
-
|
|
187
|
+
this.logger.info("Thought", parsed.thought);
|
|
135
188
|
for (const h of this.hooks)
|
|
136
189
|
h.onThought?.(parsed.thought);
|
|
137
|
-
this.captureAnalysisFromThought(parsed.thought);
|
|
138
190
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
}
|
|
147
|
-
for (const h of this.hooks)
|
|
148
|
-
h.onToolStart?.(toolCall.function.name, args);
|
|
149
|
-
// Execute via ToolRegistry — includes circuit breaker protection
|
|
150
|
-
let result;
|
|
151
|
-
try {
|
|
152
|
-
result = await this.toolRegistry.execute(toolCall.function.name, args);
|
|
153
|
-
}
|
|
154
|
-
catch (err) {
|
|
155
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
156
|
-
result = `Error executing tool "${toolCall.function.name}": ${message}`;
|
|
157
|
-
}
|
|
158
|
-
// Determine success vs error and fire appropriate hook
|
|
159
|
-
if (result.startsWith("Error")) {
|
|
160
|
-
for (const h of this.hooks)
|
|
161
|
-
h.onToolError?.(toolCall.function.name, result);
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
for (const h of this.hooks)
|
|
165
|
-
h.onToolEnd?.(toolCall.function.name, result);
|
|
166
|
-
}
|
|
167
|
-
// Track this result for error analysis if it indicates a failure
|
|
168
|
-
this.trackToolErrorForAnalysis(toolCall.function.name, result);
|
|
169
|
-
// Create tool result message
|
|
170
|
-
const toolMessage = message_1.Message.tool(result, toolCall.id, toolCall.function.name);
|
|
171
|
-
this.contextManager.addMessage(toolMessage.toDict());
|
|
191
|
+
// If the LLM response shows non-truncation quality issues, warn
|
|
192
|
+
// before executing tool calls. (max_tokens truncation is handled above.)
|
|
193
|
+
if (response.responseError &&
|
|
194
|
+
response.responseError.code !== interface_1.LLMResponseErrorCode.MAX_TOKENS &&
|
|
195
|
+
response.responseError.code !== interface_1.LLMResponseErrorCode.OK) {
|
|
196
|
+
const warnMsg = message_1.Message.system(`LLM response quality issue: ${response.responseError.message}`);
|
|
197
|
+
this.contextManager.addMessage(warnMsg.toDict());
|
|
172
198
|
}
|
|
199
|
+
const mcpWarnedServers = new Set();
|
|
200
|
+
await this.executeToolCallsBatch(response.tool_calls, mcpWarnedServers);
|
|
173
201
|
// Save checkpoint after complete tool execution round
|
|
174
202
|
if (this.checkpointingEnabled) {
|
|
175
203
|
this.saveCheckpoint("active");
|
|
@@ -179,6 +207,27 @@ class ReActAgent extends agent_1.Agent {
|
|
|
179
207
|
}
|
|
180
208
|
// No tool calls — extract the final answer from the JSON
|
|
181
209
|
if ("answer" in parsed && parsed.answer) {
|
|
210
|
+
// If truncated, don't return — the continuation instruction is
|
|
211
|
+
// already in context; next iteration will pick up where it left off.
|
|
212
|
+
if (isTruncated) {
|
|
213
|
+
consecutiveEmptyIterations = 0;
|
|
214
|
+
if (parsed.thought) {
|
|
215
|
+
this.logger.info("Thought", parsed.thought);
|
|
216
|
+
for (const h of this.hooks)
|
|
217
|
+
h.onThought?.(parsed.thought);
|
|
218
|
+
}
|
|
219
|
+
// If this is the last iteration we can't continue — return
|
|
220
|
+
// what we have instead of the generic "max iterations" message.
|
|
221
|
+
if (iteration === this.maxIterations - 1) {
|
|
222
|
+
const fallback = parsed.answer +
|
|
223
|
+
"\n\n[Note: Response may be incomplete due to output length constraints.]";
|
|
224
|
+
for (const h of this.hooks)
|
|
225
|
+
h.onFinish?.(fallback);
|
|
226
|
+
return fallback;
|
|
227
|
+
}
|
|
228
|
+
this.logger.info("ReAct", "Answer truncated (max_tokens) — continuing in next iteration.");
|
|
229
|
+
continue;
|
|
230
|
+
}
|
|
182
231
|
for (const h of this.hooks)
|
|
183
232
|
h.onFinish?.(parsed.answer);
|
|
184
233
|
// Save final checkpoint as completed
|
|
@@ -191,15 +240,14 @@ class ReActAgent extends agent_1.Agent {
|
|
|
191
240
|
// (the agent is still reasoning)
|
|
192
241
|
if (parsed.thought) {
|
|
193
242
|
consecutiveEmptyIterations++;
|
|
194
|
-
|
|
243
|
+
this.logger.info("Thought", parsed.thought);
|
|
195
244
|
for (const h of this.hooks)
|
|
196
245
|
h.onThought?.(parsed.thought);
|
|
197
|
-
this.captureAnalysisFromThought(parsed.thought);
|
|
198
246
|
// If stuck in unproductive thought-only loop, inject format reminder
|
|
199
247
|
if (consecutiveEmptyIterations >= 3) {
|
|
200
|
-
|
|
248
|
+
this.logger.info("ReAct", `${consecutiveEmptyIterations} consecutive thought-only iterations — ` +
|
|
201
249
|
`injecting format reminder.`);
|
|
202
|
-
const reminderMsg = message_1.Message.assistant(
|
|
250
|
+
const reminderMsg = message_1.Message.assistant(response_schema_1.STRUCTURED_OUTPUT_REMINDER);
|
|
203
251
|
this.contextManager.addMessage(reminderMsg.toDict());
|
|
204
252
|
}
|
|
205
253
|
// If exceeded limit, bail out
|
|
@@ -255,29 +303,6 @@ class ReActAgent extends agent_1.Agent {
|
|
|
255
303
|
this.loadAndRestoreSession(sessionId);
|
|
256
304
|
return this.run(input);
|
|
257
305
|
}
|
|
258
|
-
// ─── Private Helpers ─────────────────────────────────────────────────
|
|
259
|
-
/**
|
|
260
|
-
* Handle an LLMNetworkError: save an interrupted checkpoint if
|
|
261
|
-
* checkpointing is enabled, and return a user-facing message with
|
|
262
|
-
* resume instructions.
|
|
263
|
-
*/
|
|
264
|
-
handleNetworkError(err, iteration) {
|
|
265
|
-
if (this.checkpointingEnabled) {
|
|
266
|
-
this.saveCheckpoint("interrupted");
|
|
267
|
-
}
|
|
268
|
-
const sid = this.sessionManager?.getSessionId() ?? "unknown";
|
|
269
|
-
console.error(`\n[Network Error] ${err.cause}: ${err.message}`);
|
|
270
|
-
if (this.checkpointingEnabled && this.sessionManager) {
|
|
271
|
-
return (`[Network Error] ${err.message}\n\n` +
|
|
272
|
-
`Your session "${sid}" has been saved (iteration ${iteration}).\n` +
|
|
273
|
-
`After your network is restored, resume with:\n` +
|
|
274
|
-
` agent.resume("${sid}", "continue with my previous request")\n\n` +
|
|
275
|
-
`Or start a new session by calling agent.run() again with a fresh input.`);
|
|
276
|
-
}
|
|
277
|
-
// Checkpointing not enabled — just report the error
|
|
278
|
-
return (`[Network Error] ${err.message}\n\n` +
|
|
279
|
-
`Please check your network connection and try again.`);
|
|
280
|
-
}
|
|
281
306
|
}
|
|
282
307
|
exports.ReActAgent = ReActAgent;
|
|
283
308
|
//# sourceMappingURL=react-agent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-agent.js","sourceRoot":"","sources":["../../src/core/react-agent.ts"],"names":[],"mappings":";;;AAAA,mCAA6C;AAC7C,iDAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"react-agent.js","sourceRoot":"","sources":["../../src/core/react-agent.ts"],"names":[],"mappings":";;;AAAA,mCAA6C;AAC7C,iDAA8C;AAC9C,6CAAyC;AACzC,uDAI2B;AAC3B,qDAA0E;AAC1E,0CAAgD;AAChD,gDAAqE;AACrE,uDAAqD;AAErD;;;;;GAKG;AACH,MAAM,2BAA2B,GAAG;;;;;;;;;;;;EAYlC,kCAAiB;EACjB,oCAAmB,GAAG,gDAA8B,EAAE,CAAC;AAUzD;;;;;;;;;;;;GAYG;AACH,MAAa,UAAW,SAAQ,aAAK;IAC3B,aAAa,CAAS;IAE9B,YAAY,MAAwB;QAClC,mDAAmD;QACnD,MAAM,YAAY,GAAqB;YACrC,GAAG,MAAM;YACT,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,2BAA2B;SACjE,CAAC;QACF,KAAK,CAAC,YAAY,CAAC,CAAC;QAEpB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC;QAEhD,2DAA2D;QAC3D,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAa;QACrB,qEAAqE;QACrE,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,SAAS;YAAE,OAAO,SAAS,CAAC;QAEhC,oEAAoE;QACpE,IAAI,CAAC,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAC;QAE9C,uEAAuE;QACvE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAElB,mEAAmE;QACnE,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAEpC,oEAAoE;QACpE,IAAI,CAAC,8BAA8B,EAAE,CAAC;QAEtC,oEAAoE;QACpE,MAAM,WAAW,GAAG,iBAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QAErD,oEAAoE;QACpE,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;QAED,uEAAuE;QACvE,IAAI,0BAA0B,GAAG,CAAC,CAAC;QACnC,MAAM,qBAAqB,GAAG,CAAC,CAAC;QAEhC,kFAAkF;QAClF,IAAI,sBAAsB,GAAG,CAAC,CAAC;QAC/B,MAAM,wBAAwB,GAAG,CAAC,CAAC;QAEnC,qEAAqE;QACrE,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,EAAE,CAAC;YACpE,mCAAmC;YACnC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;gBACjC,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,YAAY,EAAE,IAAI,SAAS,CAAC;gBAC7D,MAAM,SAAS,GACb,yCAAyC,GAAG,gBAAgB;oBAC5D,6BAA6B,GAAG,sBAAsB,CAAC;gBACzD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;oBAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC;gBACpD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,mEAAmE;YACnE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACpD,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;gBACpC,MAAM,GAAG,GAAG,IAAI,iBAAO,CACrB,YAAI,CAAC,IAAI,EACT,IAAA,wBAAW,EAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAC7B,EAAE,IAAI,EAAE,MAAM,EAAE,CACjB,CAAC;gBACF,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;YAC/C,CAAC;YAED,oDAAoD;YACpD,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAE9B,+BAA+B;YAC/B,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC;YAEjE,wEAAwE;YACxE,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CACvC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,CAC9D,CAAC;YACF,IAAI,WAAW,EAAE,CAAC;gBAChB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;oBAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,CAAC;gBACtD,OAAO,WAAW,CAAC;YACrB,CAAC;YAED,uEAAuE;YACvE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;gBAAE,CAAC,CAAC,UAAU,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1F,IAAI,QAAqB,CAAC;YAC1B,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAC5B,eAAe,EACf,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,EAC5B,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAC9B,CAAC;YACJ,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,iEAAiE;gBACjE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;oBACjC,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,YAAY,EAAE,IAAI,SAAS,CAAC;oBAC7D,MAAM,SAAS,GACb,yCAAyC,GAAG,gBAAgB;wBAC5D,6BAA6B,GAAG,sBAAsB,CAAC;oBACzD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;wBAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC;oBACpD,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,IAAI,GAAG,YAAY,wBAAe,EAAE,CAAC;oBACnC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;wBAAE,CAAC,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;oBAChD,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,SAAS,GAAG,CAAC,EAAE,mCAAmC,CAAC,CAAC;gBAC1F,CAAC;gBACD,MAAM,GAAG,CAAC,CAAC,4BAA4B;YACzC,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;gBAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;YAEnD,gDAAgD;YAChD,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACnB,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAChG,CAAC;YAED,gDAAgD;YAChD,MAAM,MAAM,GAAG,IAAA,oCAAkB,EAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpD,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC;YAEpC,uDAAuD;YACvD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC5C,CAAC;YAED,6CAA6C;YAC7C,MAAM,gBAAgB,GAAG,iBAAO,CAAC,SAAS,CACxC,UAAU,EACV,QAAQ,CAAC,UAAU,CACpB,CAAC;YAEF,kEAAkE;YAClE,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,EAAE,IAAI,KAAK,gCAAoB,CAAC,UAAU,CAAC;YACrF,IAAI,WAAW,EAAE,CAAC;gBAChB,sBAAsB,EAAE,CAAC;gBACzB,IAAI,sBAAsB,GAAG,wBAAwB,EAAE,CAAC;oBACtD,oEAAoE;oBACpE,oEAAoE;oBACpE,MAAM,QAAQ,GAAG,CAAC,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;wBACpD,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,uEAAuE;wBACzF,CAAC,CAAC,0FAA0F;4BAC1F,sDAAsD,CAAC;oBAC3D,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;wBAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;oBACnD,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAED,4EAA4E;gBAC5E,0CAA0C;gBAC1C,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;gBAE1D,MAAM,WAAW,GAAG,iBAAO,CAAC,IAAI,CAC9B,kEAAkE;oBAClE,mFAAmF;oBACnF,oEAAoE,CACrE,CAAC;gBACF,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,oEAAoE;gBACpE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC1D,sBAAsB,GAAG,CAAC,CAAC;YAC7B,CAAC;YAED,mCAAmC;YACnC,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1D,0BAA0B,GAAG,CAAC,CAAC;gBAE/B,4BAA4B;gBAC5B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC5C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;wBAAE,CAAC,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC5D,CAAC;gBAED,gEAAgE;gBAChE,yEAAyE;gBACzE,IAAI,QAAQ,CAAC,aAAa;oBACtB,QAAQ,CAAC,aAAa,CAAC,IAAI,KAAK,gCAAoB,CAAC,UAAU;oBAC/D,QAAQ,CAAC,aAAa,CAAC,IAAI,KAAK,gCAAoB,CAAC,EAAE,EAAE,CAAC;oBAC5D,MAAM,OAAO,GAAG,iBAAO,CAAC,MAAM,CAC5B,+BAA+B,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,CAChE,CAAC;oBACF,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBACnD,CAAC;gBAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;gBAC3C,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;gBAExE,sDAAsD;gBACtD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC9B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAChC,CAAC;gBAED,yCAAyC;gBACzC,SAAS;YACX,CAAC;YAED,yDAAyD;YACzD,IAAI,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACxC,+DAA+D;gBAC/D,qEAAqE;gBACrE,IAAI,WAAW,EAAE,CAAC;oBAChB,0BAA0B,GAAG,CAAC,CAAC;oBAC/B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;wBAC5C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;4BAAE,CAAC,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC5D,CAAC;oBACD,2DAA2D;oBAC3D,gEAAgE;oBAChE,IAAI,SAAS,KAAK,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;wBACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM;4BAC5B,0EAA0E,CAAC;wBAC7E,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;4BAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;wBACnD,OAAO,QAAQ,CAAC;oBAClB,CAAC;oBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,+DAA+D,CAAC,CAAC;oBAC3F,SAAS;gBACX,CAAC;gBACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;oBAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACxD,qCAAqC;gBACrC,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC9B,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;gBACnC,CAAC;gBACD,OAAO,MAAM,CAAC,MAAM,CAAC;YACvB,CAAC;YAED,yDAAyD;YACzD,iCAAiC;YACjC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,0BAA0B,EAAE,CAAC;gBAE7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC5C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;oBAAE,CAAC,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAE1D,qEAAqE;gBACrE,IAAI,0BAA0B,IAAI,CAAC,EAAE,CAAC;oBACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,OAAO,EACP,GAAG,0BAA0B,yCAAyC;wBACtE,4BAA4B,CAC7B,CAAC;oBACF,MAAM,WAAW,GAAG,iBAAO,CAAC,SAAS,CAAC,4CAA0B,CAAC,CAAC;oBAClE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;gBACvD,CAAC;gBAED,8BAA8B;gBAC9B,IAAI,0BAA0B,IAAI,qBAAqB,EAAE,CAAC;oBACxD,MAAM,QAAQ,GACZ,0EAA0E;wBAC1E,8EAA8E,CAAC;oBACjF,MAAM,qBAAqB,GAAG,iBAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBAC1D,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC/D,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;wBAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;oBACnD,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAED,iDAAiD;gBACjD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC9B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAChC,CAAC;gBACD,SAAS;YACX,CAAC;YAED,wDAAwD;YACxD,0BAA0B,EAAE,CAAC;YAC7B,IAAI,0BAA0B,IAAI,qBAAqB,EAAE,CAAC;gBACxD,MAAM,QAAQ,GACZ,0EAA0E;oBAC1E,8EAA8E,CAAC;gBACjF,MAAM,qBAAqB,GAAG,iBAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC1D,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC/D,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;oBAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;gBACnD,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,MAAM,UAAU,GACd,6DAA6D,IAAI,CAAC,aAAa,eAAe;YAC9F,sDAAsD,CAAC;QACzD,MAAM,uBAAuB,GAAG,iBAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;YAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,CAAC;QACrD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,wEAAwE;IAExE;;;;;;;;;;OAUG;IACH,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,KAAa;QAC3C,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;CAKF;AAzTD,gCAyTC"}
|
|
@@ -88,4 +88,69 @@ export declare function parsePlanSolveResponse(raw: string): PlanSolveResponse;
|
|
|
88
88
|
* 3. Final: When all steps are complete, provide the full answer.
|
|
89
89
|
*/
|
|
90
90
|
export declare const PLAN_SOLVE_INSTRUCTIONS = "\n=== Plan-and-Resolve Paradigm ===\nYou follow a structured two-phase approach to solve tasks:\n\nPhase 1 \u2014 PLAN: Analyze the user's request and create a detailed, step-by-step plan covering all the work needed. Each step must be concrete and actionable.\n\nPhase 2 \u2014 RESOLVE: Execute each step of the plan. Use tools as needed.\n- After each step, you may REVISE remaining steps if the plan needs updating.\n- A revision replaces all remaining steps \u2014 do NOT re-list already completed steps.\n\n=== Response Format ===\nYou MUST respond with a valid JSON object in the \"content\" field.\n\nCreating the INITIAL PLAN:\n{\"thought\": \"...analysis...\", \"plan\": [\"Step 1: description\", \"Step 2: description\", \"...\"]}\n\nExecuting steps (use \"currentStep\" to indicate your progress):\n{\"thought\": \"...reasoning...\", \"currentStep\": 2}\n\nREVISING the plan (replaces REMAINING steps only):\n{\"thought\": \"...reasoning about why the plan needs to change...\", \"revised_plan\": [\"Updated Step A: ...\", \"Updated Step B: ...\", \"...\"]}\n\nFinal answer:\n{\"thought\": \"...summary...\", \"answer\": \"...complete answer for the user...\"}\n\nRules:\n- \"thought\" is REQUIRED in every response.\n- \"plan\" is ONLY for the initial plan creation (first response after user input).\n- \"revised_plan\" replaces REMAINING steps \u2014 do NOT re-list already done steps.\n- \"currentStep\" is the 1-based index of the step you are about to execute next.\n- \"answer\" is ONLY for the final response, when ALL steps are complete.\n- The JSON must be valid and parseable \u2014 no trailing commas, no comments.\n\n=== When to Replan \u2014 output \"revised_plan\" when: ===\n1. REPEATED TOOL FAILURES: A tool fails 2+ consecutive times on the same step.\n \u2192 The current approach isn't working \u2014 try a completely different method.\n\n2. CONTRADICTED ASSUMPTIONS: A tool result reveals information that disproves\n a key assumption your plan was based on.\n \u2192 Adjust remaining steps to account for the new reality.\n\n3. EXECUTION DRIFT: The actual state of things differs from what the plan\n expected at this point.\n \u2192 Realign the remaining steps with what has actually happened.\n\n4. STUCK ON A STEP: You cannot make progress on the current step after\n multiple attempts with different approaches.\n \u2192 Skip or reorder steps \u2014 try a different angle to reach the goal.\n\nIMPORTANT: Replanning is a normal part of problem-solving. If in doubt,\noutput a \"revised_plan\" rather than retrying the same failing approach.";
|
|
91
|
+
/**
|
|
92
|
+
* Response from the LLM during the routing phase (complexity judgement).
|
|
93
|
+
*/
|
|
94
|
+
export interface FusionRouteResponse {
|
|
95
|
+
/** "simple" = ReAct only, "complex" = Plan → Execute. */
|
|
96
|
+
complexity: "simple" | "complex";
|
|
97
|
+
/** Short explanation of why this complexity was chosen. */
|
|
98
|
+
reason: string;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Parse a raw LLM content string into a FusionRouteResponse.
|
|
102
|
+
*
|
|
103
|
+
* Handles the same JSON extraction strategies as the other parsers.
|
|
104
|
+
*/
|
|
105
|
+
export declare function parseFusionRouteResponse(raw: string): FusionRouteResponse;
|
|
106
|
+
/**
|
|
107
|
+
* Response from the Fusion Agent combining ReAct + Plan-and-Solve shapes.
|
|
108
|
+
*
|
|
109
|
+
* Different phases produce different shapes:
|
|
110
|
+
* - Planning: { thought, plan: string[] }
|
|
111
|
+
* - Executing: { thought, currentStep?: number }
|
|
112
|
+
* - Revising: { thought, revised_plan: string[] }
|
|
113
|
+
* - Final: { thought, answer }
|
|
114
|
+
*/
|
|
115
|
+
export interface FusionResponse {
|
|
116
|
+
/** Step-by-step reasoning (required in every response). */
|
|
117
|
+
thought: string;
|
|
118
|
+
/** Initial plan — numbered steps covering the full task. */
|
|
119
|
+
plan?: string[];
|
|
120
|
+
/** Replacement plan — overrides remaining steps. */
|
|
121
|
+
revised_plan?: string[];
|
|
122
|
+
/** Final answer for the user. */
|
|
123
|
+
answer?: string;
|
|
124
|
+
/**
|
|
125
|
+
* 1-based index of the step the LLM is currently working on.
|
|
126
|
+
* Used for plan progress tracking and display.
|
|
127
|
+
*/
|
|
128
|
+
currentStep?: number;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Parse a raw LLM content string into a FusionResponse.
|
|
132
|
+
*
|
|
133
|
+
* This is a thin wrapper around parsePlanSolveResponse — the Fusion
|
|
134
|
+
* response shape is intentionally compatible with PlanSolveResponse.
|
|
135
|
+
*/
|
|
136
|
+
export declare function parseFusionResponse(raw: string): FusionResponse;
|
|
137
|
+
/**
|
|
138
|
+
* Instructions injected into the system prompt for the routing phase.
|
|
139
|
+
*
|
|
140
|
+
* The LLM is asked to classify whether the user's request needs a plan.
|
|
141
|
+
*/
|
|
142
|
+
export declare const FUSION_ROUTE_INSTRUCTIONS = "\nYou are a task complexity classifier. Analyze the user's request and determine whether it requires a structured plan.\n\nA request needs a PLAN when it:\n- Involves multiple distinct steps or sub-tasks\n- Requires research, analysis, or data gathering before answering\n- Spans multiple domains or tools\n- Is a \"build\", \"create\", \"analyze\", \"refactor\", or \"investigate\" type request\n- Will likely take 3+ tool calls to resolve\n\nA request does NOT need a plan when it is:\n- A simple factual question or lookup\n- A single straightforward action (read this file, run this command)\n- A brief conversational exchange\n- Immediately answerable from knowledge without tools\n\nRespond with ONLY a JSON object:\n{\"complexity\": \"simple\", \"reason\": \"...\"}\nor\n{\"complexity\": \"complex\", \"reason\": \"...\"}\n\nRules:\n- The JSON must be valid and parseable \u2014 no trailing commas, no comments.\n- \"reason\" should be a short (1 sentence) explanation of your classification.\n- When unsure, default to \"complex\" \u2014 having a plan for a simple task is harmless.";
|
|
143
|
+
/**
|
|
144
|
+
* Full system prompt instructions for Fusion Agent execution mode.
|
|
145
|
+
*
|
|
146
|
+
* Combines ReAct JSON format rules with Plan-and-Solve plan management.
|
|
147
|
+
*/
|
|
148
|
+
export declare const FUSION_EXECUTION_INSTRUCTIONS = "\n=== Fusion Agent Paradigm ===\nYou are a Fusion Agent that combines ReAct (Reasoning + Acting) with Plan-and-Solve.\n\nWhen you HAVE a plan (complex tasks):\n1. Work through each step of the plan using tools as needed.\n2. Track your progress with \"currentStep\" (1-based index of the step you are about to execute).\n3. If you encounter unexpected results or tool failures, revise remaining steps with \"revised_plan\".\n4. When all steps are complete, provide the final \"answer\".\n\nWhen you DON'T have a plan (simple tasks):\n1. Think step by step about what the user needs.\n2. Use tools as needed to gather information.\n3. When you have enough information, provide the final \"answer\".\n\n=== Response Format ===\nYou MUST respond with a valid JSON object in the \"content\" field.\n\nCreating the INITIAL PLAN:\n{\"thought\": \"...analysis...\", \"plan\": [\"Step 1: description\", \"Step 2: description\", \"...\"]}\n\nExecuting steps (with a plan):\n{\"thought\": \"...reasoning...\", \"currentStep\": 2}\n\nREVISING the plan (replaces REMAINING steps only):\n{\"thought\": \"...reasoning about why the plan needs to change...\", \"revised_plan\": [\"Updated Step A: ...\", \"Updated Step B: ...\"]}\n\nFinal answer:\n{\"thought\": \"...summary...\", \"answer\": \"...complete answer for the user...\"}\n\nSimple execution (no plan):\n{\"thought\": \"...reasoning...\"}\n\nRules:\n- \"thought\" is REQUIRED in every response.\n- \"plan\" is ONLY for the initial plan creation (first response after user input).\n- \"revised_plan\" replaces REMAINING steps \u2014 do NOT re-list already done steps.\n- \"currentStep\" is the 1-based index of the step you are about to execute next.\n- \"answer\" is ONLY for the final response, when the task is fully complete.\n- The JSON must be valid and parseable \u2014 no trailing commas, no comments.\n- If you need to use a tool, put your reasoning in \"thought\" as JSON, and send the tool call via the function calling mechanism.\n\n=== When to Replan ===\n1. REPEATED TOOL FAILURES: A tool fails 2+ consecutive times on the same step.\n2. CONTRADICTED ASSUMPTIONS: Tool results disprove a key plan assumption.\n3. EXECUTION DRIFT: The actual state differs from what the plan expected.\n4. STUCK ON A STEP: Cannot make progress after multiple attempts.\n\nIf in doubt, output a \"revised_plan\" rather than retrying.";
|
|
149
|
+
/**
|
|
150
|
+
* Inline-reflection prompt template.
|
|
151
|
+
*
|
|
152
|
+
* Injected as a user message during execution so the LLM self-checks
|
|
153
|
+
* its progress before continuing.
|
|
154
|
+
*/
|
|
155
|
+
export declare const INLINE_REFLECTION_PROMPT = "[Internal Reflection] Pause and evaluate your progress so far:\n\n1. Are you on track to answer the user's original request?\n2. Have any tool calls returned unexpected or empty results?\n3. Is the current plan still appropriate, or should it be revised?\n4. What is the single most important action to take next?\n\nRespond with a JSON object:\n{\n \"on_track\": true,\n \"issues_found\": [\"...\"],\n \"should_replan\": false,\n \"next_action\": \"...\"\n}\n\nThen resume execution normally \u2014 do NOT include \"answer\" unless you are truly done.";
|
|
91
156
|
//# sourceMappingURL=response-schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response-schema.d.ts","sourceRoot":"","sources":["../../src/core/response-schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,gBAAgB,CAAC;AAI9D;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAwB7D;AAmID;;;GAGG;AACH,eAAO,MAAM,8BAA8B,y0BAesF,CAAC;AAElI;;;GAGG;AACH,eAAO,MAAM,0BAA0B,4HACoF,CAAC;AAI5H;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,2DAA2D;IAC3D,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAwCrE;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,oiFAkDoC,CAAC"}
|
|
1
|
+
{"version":3,"file":"response-schema.d.ts","sourceRoot":"","sources":["../../src/core/response-schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,gBAAgB,CAAC;AAI9D;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAwB7D;AAmID;;;GAGG;AACH,eAAO,MAAM,8BAA8B,y0BAesF,CAAC;AAElI;;;GAGG;AACH,eAAO,MAAM,0BAA0B,4HACoF,CAAC;AAI5H;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,2DAA2D;IAC3D,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAwCrE;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,oiFAkDoC,CAAC;AAIzE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,yDAAyD;IACzD,UAAU,EAAE,QAAQ,GAAG,SAAS,CAAC;IACjC,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CA0BzE;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc;IAC7B,2DAA2D;IAC3D,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAmC/D;AAID;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,ukCAwB6C,CAAC;AAEpF;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,00EAgDiB,CAAC;AAE5D;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,ijBAgB+C,CAAC"}
|