@gt-fe/eap-runtime 0.0.12 → 0.0.14
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/README.md +3 -1
- package/dist/api/handlers/invoke.handler.d.ts +1 -1
- package/dist/api/handlers/invoke.handler.js +3 -0
- package/dist/api/handlers/stream.handler.d.ts +1 -1
- package/dist/api/handlers/stream.handler.js +4 -1
- package/dist/api/routes/agent.routes.d.ts +2 -2
- package/dist/common/index.d.ts +1 -0
- package/dist/common/index.js +1 -0
- package/dist/common/logger.d.ts +16 -4
- package/dist/common/logger.js +82 -16
- package/dist/common/runtime-package-version.d.ts +2 -0
- package/dist/common/runtime-package-version.js +5 -0
- package/dist/common/types.d.ts +5 -5
- package/dist/common/types.js +2 -2
- package/dist/contracts/permission-checker.d.ts +1 -1
- package/dist/debug/llm-turn-log.d.ts +12 -0
- package/dist/debug/llm-turn-log.js +1 -0
- package/dist/governance/governance-client.d.ts +1 -1
- package/dist/governance/index.d.ts +1 -1
- package/dist/governance/permission-guard.d.ts +1 -1
- package/dist/graph/adapters/langgraph.adapter.d.ts +3 -1
- package/dist/graph/adapters/langgraph.adapter.js +67 -14
- package/dist/graph/adapters/subgraph-compiler.js +5 -2
- package/dist/graph/contracts/executable-graph.d.ts +19 -8
- package/dist/graph/contracts/executable-graph.js +1 -1
- package/dist/graph/nodes/llm-node.d.ts +3 -0
- package/dist/graph/nodes/llm-node.js +8 -0
- package/dist/graph/nodes/skill-bind-node.d.ts +3 -4
- package/dist/graph/nodes/skill-bind-node.js +1 -20
- package/dist/graph/nodes/tool-node.d.ts +2 -0
- package/dist/graph/nodes/tool-node.js +20 -14
- package/dist/index.d.ts +1 -1
- package/dist/memory/compression/index.d.ts +1 -1
- package/dist/memory/compression/index.js +1 -1
- package/dist/memory/compression/sliding-window.compression.js +7 -7
- package/dist/memory/index.d.ts +1 -1
- package/dist/memory/index.js +1 -1
- package/dist/memory/message-compression.service.d.ts +12 -1
- package/dist/memory/message-compression.service.js +29 -1
- package/dist/providers/http-llm-provider.d.ts +1 -0
- package/dist/providers/http-llm-provider.js +4 -1
- package/dist/providers/index.d.ts +1 -1
- package/dist/providers/index.js +1 -1
- package/dist/providers/local-llm-provider.d.ts +4 -1
- package/dist/providers/local-llm-provider.js +15 -3
- package/dist/providers/routing-llm-provider.js +13 -4
- package/dist/registry/agent-models.d.ts +1 -1
- package/dist/registry/agent-models.js +1 -1
- package/dist/registry/agent-registry-client.d.ts +1 -1
- package/dist/registry/deployment-snapshot.js +19 -17
- package/dist/registry/graph-loader.d.ts +11 -1
- package/dist/registry/graph-loader.js +115 -56
- package/dist/registry/preload-errors.d.ts +1 -1
- package/dist/registry/preload-errors.js +1 -1
- package/dist/registry/skill-io-guard.js +1 -1
- package/dist/registry/skill-tree.js +1 -1
- package/dist/runtime/agent-runtime.d.ts +3 -3
- package/dist/runtime/agent-runtime.js +14 -4
- package/dist/runtime/dev-runtime.d.ts +2 -0
- package/dist/runtime/dev-runtime.js +2 -0
- package/dist/runtime/types.d.ts +4 -4
- package/dist/server.js +1 -1
- package/dist/session/compression-middleware.d.ts +2 -1
- package/dist/session/compression-middleware.js +7 -4
- package/dist/sse/events/skill-events.d.ts +1 -1
- package/dist/sse/events/skill-events.js +1 -1
- package/dist/sse/events/stats-events.d.ts +9 -0
- package/dist/token/compression-budget-integration.d.ts +1 -1
- package/dist/token/compression-budget-integration.js +18 -10
- package/dist/token/context-window.d.ts +42 -0
- package/dist/token/context-window.js +73 -0
- package/dist/token/index.d.ts +1 -0
- package/dist/token/index.js +1 -0
- package/dist/tool/create-tool-executor.d.ts +1 -1
- package/dist/tool/dev-http-executor.d.ts +2 -1
- package/dist/tool/dev-http-executor.js +14 -2
- package/dist/tool/dev-mcp-executor.d.ts +11 -1
- package/dist/tool/dev-mcp-executor.js +27 -1
- package/dist/tool/dev-tool-executor.d.ts +2 -1
- package/dist/tool/dev-tool-executor.js +6 -0
- package/dist/tool/harness-command.js +1 -1
- package/dist/tool/harness-primitives.d.ts +7 -0
- package/dist/tool/harness-primitives.js +57 -6
- package/dist/tool/http-tool-executor.js +1 -1
- package/dist/tool/index.d.ts +2 -1
- package/dist/tool/index.js +1 -0
- package/dist/tool/local-mcp-client.d.ts +5 -2
- package/dist/tool/local-mcp-client.js +130 -3
- package/dist/tool/local-tool-executor.d.ts +3 -2
- package/dist/tool/local-tool-executor.js +16 -1
- package/dist/tool/mcp-list.d.ts +53 -0
- package/dist/tool/mcp-list.js +199 -0
- package/dist/tool/mcp-tool-executor.d.ts +6 -1
- package/dist/tool/mcp-tool-executor.js +53 -1
- package/dist/tool/skill-dir-infer.d.ts +17 -0
- package/dist/tool/skill-dir-infer.js +81 -0
- package/dist/tool/skill-script-refs.d.ts +1 -8
- package/dist/tool/skill-script-refs.js +32 -20
- package/dist/tool/system-prompt-builder.d.ts +35 -16
- package/dist/tool/system-prompt-builder.js +30 -58
- package/dist/tool/timeout.d.ts +2 -2
- package/dist/tool/timeout.js +6 -3
- package/dist/tool/tool-execution-router.d.ts +3 -2
- package/dist/tool/tool-execution-router.js +8 -1
- package/dist/tool/tool-executor.interface.d.ts +11 -0
- package/dist/tool/tool-orchestrator.d.ts +1 -1
- package/dist/tool/tool-orchestrator.js +1 -1
- package/dist/utils/format-error.d.ts +2 -2
- package/dist/utils/format-error.js +2 -2
- package/dist/utils/http-error.d.ts +2 -2
- package/dist/utils/http-error.js +2 -2
- package/package.json +6 -33
|
@@ -7,17 +7,19 @@
|
|
|
7
7
|
* ```
|
|
8
8
|
* [平台规则常量] ← 代码内置,安全约束 + 行为准则(最高优先级)
|
|
9
9
|
* [当前时间] ← 运行时动态注入(自然周等时间规则的判定基准)
|
|
10
|
-
* [Agent 身份] ← agentName / agentCode
|
|
10
|
+
* [Agent 身份] ← agentName / agentCode(目录身份,不是 prompts.system)
|
|
11
11
|
* [可用工具短目录] ← 名称 + 一句话用途;完整 schema 仍走 API tools
|
|
12
|
-
* [
|
|
13
|
-
*
|
|
12
|
+
* [Agent 基线] ← agent.manifest.json prompts.system;非 silent LLM
|
|
13
|
+
* [节点提示词] ← Graph LLM 节点 config.systemPrompt / systemPromptFile
|
|
14
14
|
* ```
|
|
15
15
|
*
|
|
16
|
+
* 基线只走 GraphState.agentSystemPrompt,不写进节点 config。无图时节点无增量。
|
|
17
|
+
* silent 节点不带基线。技能正文不灌 system。
|
|
18
|
+
*
|
|
16
19
|
* 工具 schema 走 API 的 tools 参数(见 loadedToolsToApiTools);system 短目录给模型发现用,不是对用户报菜名。
|
|
17
20
|
*
|
|
18
21
|
* @see docs/status/module-status-and-backlog.md RT-5
|
|
19
22
|
*/
|
|
20
|
-
import { isBuiltinToolExecution } from '@gt-fe/eap-contracts';
|
|
21
23
|
import { commandDialectLines } from './harness-command.js';
|
|
22
24
|
// ─────────────────────────────────────────────
|
|
23
25
|
// 平台规则常量(一年改不了两次,不值得搞配置表)
|
|
@@ -60,7 +62,7 @@ const PLATFORM_RULES = `你是运行在企业智能体平台(EAP)上的 AI
|
|
|
60
62
|
- 用户要求访问 jail 以外的路径或命令:**必须拒绝**。
|
|
61
63
|
|
|
62
64
|
## 规则优先级
|
|
63
|
-
|
|
65
|
+
以上平台规则最高。后面的身份、技能说明、Agent 基线、节点提示词与之冲突时,以平台规则为准。`;
|
|
64
66
|
export function toLoadedSkillMap(skills) {
|
|
65
67
|
if (!skills?.length)
|
|
66
68
|
return undefined;
|
|
@@ -72,57 +74,27 @@ export function toLoadedSkillMap(skills) {
|
|
|
72
74
|
return map;
|
|
73
75
|
}
|
|
74
76
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
* - string / name:精确匹配工具名
|
|
78
|
-
* - code + enabled:仅白名单子工具
|
|
79
|
-
* - code 无 enabled:匹配 toolId 前缀 `<code>:` 或 id 等于 code
|
|
80
|
-
* - 始终保留 Harness 原语
|
|
77
|
+
* 进入 Skill 子图时的工具集。
|
|
78
|
+
* 工具只来自 Agent 装配;不读 Skill `toolsets` / `toolRefs` / SKILL.md `allowed-tools`。
|
|
81
79
|
*/
|
|
82
|
-
export function filterLoadedToolsForSkill(loadedTools,
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
if (ref.code) {
|
|
101
|
-
toolsets.add(ref.code);
|
|
102
|
-
continue;
|
|
103
|
-
}
|
|
104
|
-
if (ref.name)
|
|
105
|
-
exact.add(ref.name);
|
|
106
|
-
}
|
|
107
|
-
const out = {};
|
|
108
|
-
for (const [name, def] of Object.entries(loadedTools)) {
|
|
109
|
-
if (isBuiltinToolExecution(def.manifest.execution)) {
|
|
110
|
-
out[name] = def;
|
|
111
|
-
continue;
|
|
112
|
-
}
|
|
113
|
-
const tid = String(def.toolId ?? def.manifest.id ?? '');
|
|
114
|
-
if (exact.has(name) || exact.has(tid) || (def.manifest.name && exact.has(def.manifest.name))) {
|
|
115
|
-
out[name] = def;
|
|
116
|
-
continue;
|
|
117
|
-
}
|
|
118
|
-
for (const ts of toolsets) {
|
|
119
|
-
if (tid === ts || tid.startsWith(`${ts}:`) || name === ts) {
|
|
120
|
-
out[name] = def;
|
|
121
|
-
break;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
return out;
|
|
80
|
+
export function filterLoadedToolsForSkill(loadedTools, _skill) {
|
|
81
|
+
return loadedTools;
|
|
82
|
+
}
|
|
83
|
+
function trimPrompt(value) {
|
|
84
|
+
if (typeof value !== 'string')
|
|
85
|
+
return undefined;
|
|
86
|
+
const trimmed = value.trim();
|
|
87
|
+
return trimmed ? trimmed : undefined;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* 非 silent LLM 才带 Agent 基线;节点提示词空则省略。
|
|
91
|
+
* silent 只保留节点增量(选技能 / JSON)。
|
|
92
|
+
*/
|
|
93
|
+
export function resolveLlmPromptInputs(input) {
|
|
94
|
+
return {
|
|
95
|
+
agentPrompt: input.silent ? undefined : trimPrompt(input.agentSystemPrompt),
|
|
96
|
+
nodePrompt: trimPrompt(input.nodePrompt),
|
|
97
|
+
};
|
|
126
98
|
}
|
|
127
99
|
// ─────────────────────────────────────────────
|
|
128
100
|
// SystemPromptBuilder
|
|
@@ -132,7 +104,7 @@ export function filterLoadedToolsForSkill(loadedTools, skill) {
|
|
|
132
104
|
*
|
|
133
105
|
* 具名段拼接(无模板引擎)。顺序固定,段标题用于排查。
|
|
134
106
|
* 工具短目录进 system;完整 schema 走 API tools 参数。
|
|
135
|
-
*
|
|
107
|
+
* Agent 基线与节点提示词整段透传,不做 {{ }} 替换。
|
|
136
108
|
*/
|
|
137
109
|
export class SystemPromptBuilder {
|
|
138
110
|
/**
|
|
@@ -155,7 +127,8 @@ export class SystemPromptBuilder {
|
|
|
155
127
|
add('jail', '文件与命令权限', this.buildJail(context));
|
|
156
128
|
add('tools-catalog', '可用工具', context.toolCatalog);
|
|
157
129
|
add('skills-catalog', '可用技能', context.skillCatalog);
|
|
158
|
-
add('
|
|
130
|
+
add('agent', 'Agent 基线', context.agentPrompt);
|
|
131
|
+
add('node', '节点提示词', context.nodePrompt);
|
|
159
132
|
const text = sections
|
|
160
133
|
.map((section) => `<!-- eap:${section.id} -->\n${section.body}`)
|
|
161
134
|
.join('\n\n');
|
|
@@ -194,7 +167,6 @@ export class SystemPromptBuilder {
|
|
|
194
167
|
if (workdir) {
|
|
195
168
|
lines.push(`工作目录:${workdir}`);
|
|
196
169
|
lines.push('`execute_command` 的 cwd **必须**是工作目录或其子目录,不能是预装技能/工具包。');
|
|
197
|
-
lines.push('技能包只读。跑包内文件用环境变量 `EAP_SKILL_DIR`(技能包绝对根,不限 `scripts/`)。相对写出在工作目录。');
|
|
198
170
|
}
|
|
199
171
|
lines.push(...commandDialectLines(context.os?.platform ?? process.platform));
|
|
200
172
|
if (skills.length > 0) {
|
package/dist/tool/timeout.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Tool / toolset `timeout`:秒。
|
|
3
|
-
* 与 `@
|
|
4
|
-
* 尚未含这些导出。发版 contracts 后改为从 `@
|
|
3
|
+
* 与 `@eap/contracts` `src/tool/timeout.ts` 同语义;Runtime 钉的是 contracts 0.0.9,
|
|
4
|
+
* 尚未含这些导出。发版 contracts 后改为从 `@eap/contracts` 引用。
|
|
5
5
|
*/
|
|
6
6
|
export declare const DEFAULT_TOOL_TIMEOUT_SEC = 30;
|
|
7
7
|
export declare const DEFAULT_HTTP_TOOL_TIMEOUT_SEC = 10;
|
package/dist/tool/timeout.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Tool / toolset `timeout`:秒。
|
|
3
|
-
* 与 `@
|
|
4
|
-
* 尚未含这些导出。发版 contracts 后改为从 `@
|
|
3
|
+
* 与 `@eap/contracts` `src/tool/timeout.ts` 同语义;Runtime 钉的是 contracts 0.0.9,
|
|
4
|
+
* 尚未含这些导出。发版 contracts 后改为从 `@eap/contracts` 引用。
|
|
5
5
|
*/
|
|
6
6
|
export const DEFAULT_TOOL_TIMEOUT_SEC = 30;
|
|
7
7
|
export const DEFAULT_HTTP_TOOL_TIMEOUT_SEC = 10;
|
|
@@ -24,7 +24,10 @@ export function isAbortError(error) {
|
|
|
24
24
|
return true;
|
|
25
25
|
}
|
|
26
26
|
const msg = (err.message ?? '').toLowerCase();
|
|
27
|
-
return msg === 'this operation was aborted'
|
|
27
|
+
return (msg === 'this operation was aborted'
|
|
28
|
+
|| msg === 'the operation was aborted'
|
|
29
|
+
|| msg.includes('this operation was aborted')
|
|
30
|
+
|| msg.includes('the operation was aborted'));
|
|
28
31
|
}
|
|
29
32
|
export function toolTimeoutErrorMessage(timeoutSec) {
|
|
30
33
|
return `timeout after ${resolveToolTimeoutSec(timeoutSec)}s`;
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* @see docs/contracts/tool-execution.md §6
|
|
5
5
|
* @see design.md §1.8.7
|
|
6
6
|
*/
|
|
7
|
-
import type { IToolExecutor, ToolCallRequest } from './tool-executor.interface.js';
|
|
8
|
-
import type { ILocalToolInstallStore } from '@
|
|
7
|
+
import type { IToolExecutor, McpListedTool, ToolCallRequest } from './tool-executor.interface.js';
|
|
8
|
+
import type { ILocalToolInstallStore } from '@eap/contracts';
|
|
9
9
|
export type DeploymentContext = 'server' | 'desktop' | 'dev';
|
|
10
10
|
export interface ToolExecutionRouterOptions {
|
|
11
11
|
httpExecutor: IToolExecutor;
|
|
@@ -21,5 +21,6 @@ export declare class ToolExecutionRouter implements IToolExecutor {
|
|
|
21
21
|
private readonly options;
|
|
22
22
|
constructor(options: ToolExecutionRouterOptions);
|
|
23
23
|
execute(request: ToolCallRequest): Promise<import('./tool-executor.interface.js').ToolCallResult>;
|
|
24
|
+
listTools(request: ToolCallRequest): Promise<McpListedTool[]>;
|
|
24
25
|
private pickExecutor;
|
|
25
26
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @see docs/contracts/tool-execution.md §6
|
|
5
5
|
* @see design.md §1.8.7
|
|
6
6
|
*/
|
|
7
|
-
import { resolveReadyInstallByToolName } from '@
|
|
7
|
+
import { resolveReadyInstallByToolName } from '@eap/contracts';
|
|
8
8
|
import { isLocalPreferredExecution } from './local-tool-executor.js';
|
|
9
9
|
export class ToolExecutionRouter {
|
|
10
10
|
options;
|
|
@@ -19,6 +19,13 @@ export class ToolExecutionRouter {
|
|
|
19
19
|
}
|
|
20
20
|
return result;
|
|
21
21
|
}
|
|
22
|
+
async listTools(request) {
|
|
23
|
+
const executor = await this.pickExecutor(request);
|
|
24
|
+
if (typeof executor.listTools !== 'function') {
|
|
25
|
+
throw new Error('当前执行器不支持 MCP tools/list');
|
|
26
|
+
}
|
|
27
|
+
return executor.listTools(request);
|
|
28
|
+
}
|
|
22
29
|
async pickExecutor(request) {
|
|
23
30
|
const { deploymentContext, installStore, httpExecutor, localExecutor, toolTypes, toolRuntimes, forceToolServer, } = this.options;
|
|
24
31
|
const forcedServer = Boolean(request.forceServer) || Boolean(forceToolServer?.includes(request.toolName));
|
|
@@ -93,9 +93,20 @@ export interface LLMToolCall {
|
|
|
93
93
|
export interface LLMToolCallResponse {
|
|
94
94
|
toolCalls: LLMToolCall[];
|
|
95
95
|
}
|
|
96
|
+
/** MCP `tools/list` 条目(LLM function calling 的名称 / 描述 / schema) */
|
|
97
|
+
export interface McpListedTool {
|
|
98
|
+
name: string;
|
|
99
|
+
description?: string;
|
|
100
|
+
inputSchema?: Record<string, unknown>;
|
|
101
|
+
}
|
|
96
102
|
/**
|
|
97
103
|
* IToolExecutor — Tool 执行网关接口
|
|
98
104
|
*/
|
|
99
105
|
export interface IToolExecutor {
|
|
100
106
|
execute(request: ToolCallRequest): Promise<ToolCallResult>;
|
|
107
|
+
/**
|
|
108
|
+
* MCP `tools/list`。`type: mcp` 工具集忽略清单 `tools[]`,用本方法发现子工具。
|
|
109
|
+
* 未实现时 hydrate 在存在 discover stub 时失败。
|
|
110
|
+
*/
|
|
111
|
+
listTools?(request: ToolCallRequest): Promise<McpListedTool[]>;
|
|
101
112
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @see design.md §1.1 Tool调用编排
|
|
5
5
|
* @see requirements.md Requirement 8 AC1, AC3
|
|
6
6
|
*/
|
|
7
|
-
import { type ExecutionContext } from '@
|
|
7
|
+
import { type ExecutionContext } from '@eap/contracts';
|
|
8
8
|
import type { IGovernanceClient } from '../governance/governance-client.js';
|
|
9
9
|
export type { AuthContext, ToolCallRequest, ToolCallResult, LLMToolCall, LLMToolCallResponse, IToolExecutor, } from './tool-executor.interface.js';
|
|
10
10
|
import type { AuthContext, ToolCallRequest, ToolCallResult, LLMToolCallResponse, IToolExecutor } from './tool-executor.interface.js';
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @see design.md §1.1 Tool调用编排
|
|
5
5
|
* @see requirements.md Requirement 8 AC1, AC3
|
|
6
6
|
*/
|
|
7
|
-
import { isBuiltinToolExecution } from '@
|
|
7
|
+
import { isBuiltinToolExecution } from '@eap/contracts';
|
|
8
8
|
import { assertToolPermission, GovernanceUnavailableError, PermissionDeniedError, } from '../governance/permission-guard.js';
|
|
9
9
|
/**
|
|
10
10
|
* ToolOrchestrator — Tool 调用编排主服务
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Runtime HTTP 错误出口 — 对齐 @
|
|
2
|
+
* Runtime HTTP 错误出口 — 对齐 @eap/contracts ErrorCodes / AppError
|
|
3
3
|
*/
|
|
4
|
-
import { type ErrorCode, type AppError } from '@
|
|
4
|
+
import { type ErrorCode, type AppError } from '@eap/contracts';
|
|
5
5
|
import type { ServerResponse } from 'node:http';
|
|
6
6
|
/** 公共 classify;连接失败不再误标为 GOVERNANCE_UNAVAILABLE */
|
|
7
7
|
export declare function classifyRuntimeError(error: unknown): AppError;
|
package/dist/utils/http-error.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Runtime HTTP 错误出口 — 对齐 @
|
|
2
|
+
* Runtime HTTP 错误出口 — 对齐 @eap/contracts ErrorCodes / AppError
|
|
3
3
|
*/
|
|
4
|
-
import { classifyError, formatUnknownError, ErrorCodes, } from '@
|
|
4
|
+
import { classifyError, formatUnknownError, ErrorCodes, } from '@eap/contracts';
|
|
5
5
|
/** 公共 classify;连接失败不再误标为 GOVERNANCE_UNAVAILABLE */
|
|
6
6
|
export function classifyRuntimeError(error) {
|
|
7
7
|
return classifyError(error);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gt-fe/eap-runtime",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.14",
|
|
4
4
|
"description": "Enterprise Agent Platform — Runtime核心:Graph执行引擎、Task生命周期、Session管理、Checkpoint持久化",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -14,43 +14,16 @@
|
|
|
14
14
|
"files": [
|
|
15
15
|
"dist"
|
|
16
16
|
],
|
|
17
|
-
"publishConfig": {
|
|
18
|
-
"registry": "https://registry.npmjs.org/",
|
|
19
|
-
"access": "public"
|
|
20
|
-
},
|
|
21
|
-
"scripts": {
|
|
22
|
-
"build": "tsc",
|
|
23
|
-
"start": "node dist/server.js",
|
|
24
|
-
"dev": "npx tsx src/server.ts",
|
|
25
|
-
"clean": "rm -rf dist",
|
|
26
|
-
"prepublishOnly": "npm run clean && npm run build",
|
|
27
|
-
"lint": "eslint src --ext .ts",
|
|
28
|
-
"test": "vitest run"
|
|
29
|
-
},
|
|
30
|
-
"keywords": [
|
|
31
|
-
"eap",
|
|
32
|
-
"runtime",
|
|
33
|
-
"agent",
|
|
34
|
-
"langgraph",
|
|
35
|
-
"graph-engine"
|
|
36
|
-
],
|
|
37
17
|
"license": "UNLICENSED",
|
|
38
18
|
"dependencies": {
|
|
39
19
|
"@langchain/langgraph": "^0.2.0",
|
|
40
20
|
"ioredis": "^5.4.0",
|
|
41
21
|
"pg": "^8.13.0",
|
|
42
22
|
"yaml": "^2.6.1",
|
|
43
|
-
"@gt-fe/eap-contracts": "0.0.
|
|
23
|
+
"@gt-fe/eap-contracts": "0.0.11"
|
|
44
24
|
},
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
|
|
49
|
-
},
|
|
50
|
-
"pnpm": {
|
|
51
|
-
"onlyBuiltDependencies": [
|
|
52
|
-
"esbuild"
|
|
53
|
-
]
|
|
54
|
-
},
|
|
55
|
-
"packageManager": "pnpm@9.15.9"
|
|
25
|
+
"publishConfig": {
|
|
26
|
+
"registry": "https://registry.npmjs.org/",
|
|
27
|
+
"access": "public"
|
|
28
|
+
}
|
|
56
29
|
}
|