@inkeep/agents-run-api 0.39.1 → 0.39.3
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/dist/SandboxExecutorFactory.cjs +895 -0
- package/dist/SandboxExecutorFactory.js +893 -0
- package/dist/SandboxExecutorFactory.js.map +1 -0
- package/dist/chunk-VBDAOXYI.cjs +927 -0
- package/dist/chunk-VBDAOXYI.js +832 -0
- package/dist/chunk-VBDAOXYI.js.map +1 -0
- package/dist/chunk.cjs +34 -0
- package/dist/conversations.cjs +7 -0
- package/dist/conversations.js +7 -0
- package/dist/conversations2.cjs +209 -0
- package/dist/conversations2.js +180 -0
- package/dist/conversations2.js.map +1 -0
- package/dist/dbClient.cjs +9676 -0
- package/dist/dbClient.js +9670 -0
- package/dist/dbClient.js.map +1 -0
- package/dist/dbClient2.cjs +5 -0
- package/dist/dbClient2.js +5 -0
- package/dist/env.cjs +59 -0
- package/dist/env.js +54 -0
- package/dist/env.js.map +1 -0
- package/dist/execution-limits.cjs +260 -0
- package/dist/execution-limits.js +63 -0
- package/dist/execution-limits.js.map +1 -0
- package/dist/index.cjs +10545 -20565
- package/dist/index.d.cts +26 -22
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.ts +27 -22
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10545 -12888
- package/dist/index.js.map +1 -0
- package/dist/instrumentation.cjs +12 -121
- package/dist/instrumentation.d.cts +9 -7
- package/dist/instrumentation.d.cts.map +1 -0
- package/dist/instrumentation.d.ts +9 -7
- package/dist/instrumentation.d.ts.map +1 -0
- package/dist/instrumentation.js +5 -1
- package/dist/instrumentation2.cjs +116 -0
- package/dist/instrumentation2.js +69 -0
- package/dist/instrumentation2.js.map +1 -0
- package/dist/json-postprocessor.cjs +20 -0
- package/dist/json-postprocessor.js +20 -0
- package/dist/json-postprocessor.js.map +1 -0
- package/dist/logger.cjs +5 -0
- package/dist/logger.js +3 -0
- package/dist/logger2.cjs +1 -0
- package/dist/logger2.js +3 -0
- package/dist/nodefs.cjs +29 -0
- package/dist/nodefs.js +27 -0
- package/dist/nodefs.js.map +1 -0
- package/dist/opfs-ahp.cjs +367 -0
- package/dist/opfs-ahp.js +368 -0
- package/dist/opfs-ahp.js.map +1 -0
- package/package.json +3 -3
- package/dist/SandboxExecutorFactory-2N27SE3B.js +0 -943
- package/dist/chunk-A2S7GSHL.js +0 -1
- package/dist/chunk-EVOISBFH.js +0 -5070
- package/dist/chunk-JCVMVG3J.js +0 -592
- package/dist/chunk-KBZIYCPJ.js +0 -40
- package/dist/chunk-KCJWSIDZ.js +0 -246
- package/dist/chunk-THWNUGWP.js +0 -204
- package/dist/chunk-UC2EPLSW.js +0 -75
- package/dist/conversations-XPSTWUMK.js +0 -1
- package/dist/dbClient-MAHUR4TO.js +0 -1
- package/dist/json-postprocessor-IGYTSWFB.js +0 -12
- package/dist/logger-3EE6BUSU.js +0 -1
- package/dist/nodefs-RPE52Q4Z.js +0 -21
- package/dist/opfs-ahp-QL4REJJW.js +0 -318
package/dist/env.cjs
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
const require_chunk = require('./chunk.cjs');
|
|
2
|
+
let __hono_zod_openapi = require("@hono/zod-openapi");
|
|
3
|
+
let __inkeep_agents_core = require("@inkeep/agents-core");
|
|
4
|
+
|
|
5
|
+
//#region src/env.ts
|
|
6
|
+
(0, __inkeep_agents_core.loadEnvironmentFiles)();
|
|
7
|
+
const envSchema = __hono_zod_openapi.z.object({
|
|
8
|
+
NODE_ENV: __hono_zod_openapi.z.enum([
|
|
9
|
+
"development",
|
|
10
|
+
"production",
|
|
11
|
+
"test"
|
|
12
|
+
]).optional(),
|
|
13
|
+
ENVIRONMENT: __hono_zod_openapi.z.enum([
|
|
14
|
+
"development",
|
|
15
|
+
"production",
|
|
16
|
+
"pentest",
|
|
17
|
+
"test"
|
|
18
|
+
]).optional().default("development"),
|
|
19
|
+
DATABASE_URL: __hono_zod_openapi.z.string().optional(),
|
|
20
|
+
INKEEP_AGENTS_RUN_API_URL: __hono_zod_openapi.z.string().optional().default("http://localhost:3003"),
|
|
21
|
+
AGENTS_MANAGE_UI_URL: __hono_zod_openapi.z.string().optional().default("http://localhost:3000"),
|
|
22
|
+
LOG_LEVEL: __hono_zod_openapi.z.enum([
|
|
23
|
+
"trace",
|
|
24
|
+
"debug",
|
|
25
|
+
"info",
|
|
26
|
+
"warn",
|
|
27
|
+
"error"
|
|
28
|
+
]).optional().default("debug"),
|
|
29
|
+
NANGO_SERVER_URL: __hono_zod_openapi.z.string().optional().default("https://api.nango.dev"),
|
|
30
|
+
NANGO_SECRET_KEY: __hono_zod_openapi.z.string().optional(),
|
|
31
|
+
ANTHROPIC_API_KEY: __hono_zod_openapi.z.string(),
|
|
32
|
+
OPENAI_API_KEY: __hono_zod_openapi.z.string().optional(),
|
|
33
|
+
GOOGLE_GENERATIVE_AI_API_KEY: __hono_zod_openapi.z.string().optional(),
|
|
34
|
+
INKEEP_AGENTS_RUN_API_BYPASS_SECRET: __hono_zod_openapi.z.string().optional(),
|
|
35
|
+
INKEEP_AGENTS_JWT_SIGNING_SECRET: __hono_zod_openapi.z.string().optional(),
|
|
36
|
+
INKEEP_AGENTS_TEMP_JWT_PUBLIC_KEY: __hono_zod_openapi.z.string().optional(),
|
|
37
|
+
OTEL_BSP_SCHEDULE_DELAY: __hono_zod_openapi.z.coerce.number().optional().default(500),
|
|
38
|
+
OTEL_BSP_MAX_EXPORT_BATCH_SIZE: __hono_zod_openapi.z.coerce.number().optional().default(64)
|
|
39
|
+
});
|
|
40
|
+
const parseEnv = () => {
|
|
41
|
+
try {
|
|
42
|
+
return envSchema.parse(process.env);
|
|
43
|
+
} catch (error) {
|
|
44
|
+
if (error instanceof __hono_zod_openapi.z.ZodError) {
|
|
45
|
+
const missingVars = error.issues.map((issue) => issue.path.join("."));
|
|
46
|
+
throw new Error(`❌ Invalid environment variables: ${missingVars.join(", ")}\n${error.message}`);
|
|
47
|
+
}
|
|
48
|
+
throw error;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
const env = parseEnv();
|
|
52
|
+
|
|
53
|
+
//#endregion
|
|
54
|
+
Object.defineProperty(exports, 'env', {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return env;
|
|
58
|
+
}
|
|
59
|
+
});
|
package/dist/env.js
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { z } from "@hono/zod-openapi";
|
|
2
|
+
import { loadEnvironmentFiles } from "@inkeep/agents-core";
|
|
3
|
+
|
|
4
|
+
//#region src/env.ts
|
|
5
|
+
loadEnvironmentFiles();
|
|
6
|
+
const envSchema = z.object({
|
|
7
|
+
NODE_ENV: z.enum([
|
|
8
|
+
"development",
|
|
9
|
+
"production",
|
|
10
|
+
"test"
|
|
11
|
+
]).optional(),
|
|
12
|
+
ENVIRONMENT: z.enum([
|
|
13
|
+
"development",
|
|
14
|
+
"production",
|
|
15
|
+
"pentest",
|
|
16
|
+
"test"
|
|
17
|
+
]).optional().default("development"),
|
|
18
|
+
DATABASE_URL: z.string().optional(),
|
|
19
|
+
INKEEP_AGENTS_RUN_API_URL: z.string().optional().default("http://localhost:3003"),
|
|
20
|
+
AGENTS_MANAGE_UI_URL: z.string().optional().default("http://localhost:3000"),
|
|
21
|
+
LOG_LEVEL: z.enum([
|
|
22
|
+
"trace",
|
|
23
|
+
"debug",
|
|
24
|
+
"info",
|
|
25
|
+
"warn",
|
|
26
|
+
"error"
|
|
27
|
+
]).optional().default("debug"),
|
|
28
|
+
NANGO_SERVER_URL: z.string().optional().default("https://api.nango.dev"),
|
|
29
|
+
NANGO_SECRET_KEY: z.string().optional(),
|
|
30
|
+
ANTHROPIC_API_KEY: z.string(),
|
|
31
|
+
OPENAI_API_KEY: z.string().optional(),
|
|
32
|
+
GOOGLE_GENERATIVE_AI_API_KEY: z.string().optional(),
|
|
33
|
+
INKEEP_AGENTS_RUN_API_BYPASS_SECRET: z.string().optional(),
|
|
34
|
+
INKEEP_AGENTS_JWT_SIGNING_SECRET: z.string().optional(),
|
|
35
|
+
INKEEP_AGENTS_TEMP_JWT_PUBLIC_KEY: z.string().optional(),
|
|
36
|
+
OTEL_BSP_SCHEDULE_DELAY: z.coerce.number().optional().default(500),
|
|
37
|
+
OTEL_BSP_MAX_EXPORT_BATCH_SIZE: z.coerce.number().optional().default(64)
|
|
38
|
+
});
|
|
39
|
+
const parseEnv = () => {
|
|
40
|
+
try {
|
|
41
|
+
return envSchema.parse(process.env);
|
|
42
|
+
} catch (error) {
|
|
43
|
+
if (error instanceof z.ZodError) {
|
|
44
|
+
const missingVars = error.issues.map((issue) => issue.path.join("."));
|
|
45
|
+
throw new Error(`❌ Invalid environment variables: ${missingVars.join(", ")}\n${error.message}`);
|
|
46
|
+
}
|
|
47
|
+
throw error;
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
const env = parseEnv();
|
|
51
|
+
|
|
52
|
+
//#endregion
|
|
53
|
+
export { env as t };
|
|
54
|
+
//# sourceMappingURL=env.js.map
|
package/dist/env.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","names":[],"sources":["../src/env.ts"],"sourcesContent":["import { z } from '@hono/zod-openapi';\nimport { loadEnvironmentFiles } from '@inkeep/agents-core';\n\n// Load all environment files using shared logic\nloadEnvironmentFiles();\n\nconst envSchema = z.object({\n NODE_ENV: z.enum(['development', 'production', 'test']).optional(),\n ENVIRONMENT: z\n .enum(['development', 'production', 'pentest', 'test'])\n .optional()\n .default('development'),\n DATABASE_URL: z.string().optional(),\n INKEEP_AGENTS_RUN_API_URL: z.string().optional().default('http://localhost:3003'),\n AGENTS_MANAGE_UI_URL: z.string().optional().default('http://localhost:3000'),\n LOG_LEVEL: z.enum(['trace', 'debug', 'info', 'warn', 'error']).optional().default('debug'),\n NANGO_SERVER_URL: z.string().optional().default('https://api.nango.dev'),\n NANGO_SECRET_KEY: z.string().optional(),\n ANTHROPIC_API_KEY: z.string(),\n OPENAI_API_KEY: z.string().optional(),\n GOOGLE_GENERATIVE_AI_API_KEY: z.string().optional(),\n INKEEP_AGENTS_RUN_API_BYPASS_SECRET: z.string().optional(),\n INKEEP_AGENTS_JWT_SIGNING_SECRET: z.string().optional(),\n INKEEP_AGENTS_TEMP_JWT_PUBLIC_KEY: z.string().optional(),\n OTEL_BSP_SCHEDULE_DELAY: z.coerce.number().optional().default(500),\n OTEL_BSP_MAX_EXPORT_BATCH_SIZE: z.coerce.number().optional().default(64),\n});\n\nconst parseEnv = () => {\n try {\n return envSchema.parse(process.env);\n } catch (error) {\n if (error instanceof z.ZodError) {\n const missingVars = error.issues.map((issue) => issue.path.join('.'));\n throw new Error(\n `❌ Invalid environment variables: ${missingVars.join(', ')}\\n${error.message}`\n );\n }\n throw error;\n }\n};\n\nexport const env = parseEnv();\nexport type Env = z.infer<typeof envSchema>;\n"],"mappings":";;;;AAIA,sBAAsB;AAEtB,MAAM,YAAY,EAAE,OAAO;CACzB,UAAU,EAAE,KAAK;EAAC;EAAe;EAAc;EAAO,CAAC,CAAC,UAAU;CAClE,aAAa,EACV,KAAK;EAAC;EAAe;EAAc;EAAW;EAAO,CAAC,CACtD,UAAU,CACV,QAAQ,cAAc;CACzB,cAAc,EAAE,QAAQ,CAAC,UAAU;CACnC,2BAA2B,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,wBAAwB;CACjF,sBAAsB,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,wBAAwB;CAC5E,WAAW,EAAE,KAAK;EAAC;EAAS;EAAS;EAAQ;EAAQ;EAAQ,CAAC,CAAC,UAAU,CAAC,QAAQ,QAAQ;CAC1F,kBAAkB,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,wBAAwB;CACxE,kBAAkB,EAAE,QAAQ,CAAC,UAAU;CACvC,mBAAmB,EAAE,QAAQ;CAC7B,gBAAgB,EAAE,QAAQ,CAAC,UAAU;CACrC,8BAA8B,EAAE,QAAQ,CAAC,UAAU;CACnD,qCAAqC,EAAE,QAAQ,CAAC,UAAU;CAC1D,kCAAkC,EAAE,QAAQ,CAAC,UAAU;CACvD,mCAAmC,EAAE,QAAQ,CAAC,UAAU;CACxD,yBAAyB,EAAE,OAAO,QAAQ,CAAC,UAAU,CAAC,QAAQ,IAAI;CAClE,gCAAgC,EAAE,OAAO,QAAQ,CAAC,UAAU,CAAC,QAAQ,GAAG;CACzE,CAAC;AAEF,MAAM,iBAAiB;AACrB,KAAI;AACF,SAAO,UAAU,MAAM,QAAQ,IAAI;UAC5B,OAAO;AACd,MAAI,iBAAiB,EAAE,UAAU;GAC/B,MAAM,cAAc,MAAM,OAAO,KAAK,UAAU,MAAM,KAAK,KAAK,IAAI,CAAC;AACrE,SAAM,IAAI,MACR,oCAAoC,YAAY,KAAK,KAAK,CAAC,IAAI,MAAM,UACtE;;AAEH,QAAM;;;AAIV,MAAa,MAAM,UAAU"}
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
const require_chunk = require('./chunk.cjs');
|
|
2
|
+
let __hono_zod_openapi = require("@hono/zod-openapi");
|
|
3
|
+
let __inkeep_agents_core = require("@inkeep/agents-core");
|
|
4
|
+
|
|
5
|
+
//#region src/constants/execution-limits/defaults.ts
|
|
6
|
+
/**
|
|
7
|
+
* Run-API specific execution limit constants that control runtime behavior.
|
|
8
|
+
* These are used as defaults when user configuration is null/undefined.
|
|
9
|
+
*/
|
|
10
|
+
const executionLimitsDefaults = {
|
|
11
|
+
AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS: 3,
|
|
12
|
+
AGENT_EXECUTION_MAX_GENERATION_STEPS: 5,
|
|
13
|
+
LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING: 27e4,
|
|
14
|
+
LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING: 9e4,
|
|
15
|
+
LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS: 9e4,
|
|
16
|
+
LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS: 6e5,
|
|
17
|
+
FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT: 3e4,
|
|
18
|
+
FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT: 4,
|
|
19
|
+
FUNCTION_TOOL_SANDBOX_POOL_TTL_MS: 3e5,
|
|
20
|
+
FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT: 50,
|
|
21
|
+
FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES: 1048576,
|
|
22
|
+
FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS: 3e4,
|
|
23
|
+
FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS: 6e4,
|
|
24
|
+
MCP_TOOL_REQUEST_TIMEOUT_MS_DEFAULT: 6e4,
|
|
25
|
+
DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS: 100,
|
|
26
|
+
DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS: 1e4,
|
|
27
|
+
DELEGATION_TOOL_BACKOFF_EXPONENT: 2,
|
|
28
|
+
DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS: 2e4,
|
|
29
|
+
A2A_BACKOFF_INITIAL_INTERVAL_MS: 500,
|
|
30
|
+
A2A_BACKOFF_MAX_INTERVAL_MS: 6e4,
|
|
31
|
+
A2A_BACKOFF_EXPONENT: 1.5,
|
|
32
|
+
A2A_BACKOFF_MAX_ELAPSED_TIME_MS: 3e4,
|
|
33
|
+
ARTIFACT_GENERATION_MAX_RETRIES: 3,
|
|
34
|
+
ARTIFACT_SESSION_MAX_PENDING: 100,
|
|
35
|
+
ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES: 3,
|
|
36
|
+
ARTIFACT_GENERATION_BACKOFF_INITIAL_MS: 1e3,
|
|
37
|
+
ARTIFACT_GENERATION_BACKOFF_MAX_MS: 1e4,
|
|
38
|
+
SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS: 3e5,
|
|
39
|
+
SESSION_CLEANUP_INTERVAL_MS: 6e4,
|
|
40
|
+
STATUS_UPDATE_DEFAULT_NUM_EVENTS: 1,
|
|
41
|
+
STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS: 2,
|
|
42
|
+
STREAM_PARSER_MAX_SNAPSHOT_SIZE: 100,
|
|
43
|
+
STREAM_PARSER_MAX_STREAMED_SIZE: 1e3,
|
|
44
|
+
STREAM_PARSER_MAX_COLLECTED_PARTS: 1e4,
|
|
45
|
+
STREAM_BUFFER_MAX_SIZE_BYTES: 5242880,
|
|
46
|
+
STREAM_TEXT_GAP_THRESHOLD_MS: 2e3,
|
|
47
|
+
STREAM_MAX_LIFETIME_MS: 6e5,
|
|
48
|
+
CONVERSATION_HISTORY_DEFAULT_LIMIT: 50
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
//#endregion
|
|
52
|
+
//#region src/constants/execution-limits/index.ts
|
|
53
|
+
(0, __inkeep_agents_core.loadEnvironmentFiles)();
|
|
54
|
+
const constantsSchema = __hono_zod_openapi.z.object(Object.fromEntries(Object.keys(executionLimitsDefaults).map((key) => [`AGENTS_${key}`, __hono_zod_openapi.z.coerce.number().optional()])));
|
|
55
|
+
const parseConstants = () => {
|
|
56
|
+
const envOverrides = constantsSchema.parse(process.env);
|
|
57
|
+
return Object.fromEntries(Object.entries(executionLimitsDefaults).map(([key, defaultValue]) => [key, envOverrides[`AGENTS_${key}`] ?? defaultValue]));
|
|
58
|
+
};
|
|
59
|
+
const constants = parseConstants();
|
|
60
|
+
const { AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS, AGENT_EXECUTION_MAX_GENERATION_STEPS, LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING, LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING, LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS, LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS, FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT, FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT, FUNCTION_TOOL_SANDBOX_POOL_TTL_MS, FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT, FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES, FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS, FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS, MCP_TOOL_REQUEST_TIMEOUT_MS_DEFAULT, DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS, DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS, DELEGATION_TOOL_BACKOFF_EXPONENT, DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS, A2A_BACKOFF_INITIAL_INTERVAL_MS, A2A_BACKOFF_MAX_INTERVAL_MS, A2A_BACKOFF_EXPONENT, A2A_BACKOFF_MAX_ELAPSED_TIME_MS, ARTIFACT_GENERATION_MAX_RETRIES, ARTIFACT_SESSION_MAX_PENDING, ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES, ARTIFACT_GENERATION_BACKOFF_INITIAL_MS, ARTIFACT_GENERATION_BACKOFF_MAX_MS, SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS, SESSION_CLEANUP_INTERVAL_MS, STATUS_UPDATE_DEFAULT_NUM_EVENTS, STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS, STREAM_PARSER_MAX_SNAPSHOT_SIZE, STREAM_PARSER_MAX_STREAMED_SIZE, STREAM_PARSER_MAX_COLLECTED_PARTS, STREAM_BUFFER_MAX_SIZE_BYTES, STREAM_TEXT_GAP_THRESHOLD_MS, STREAM_MAX_LIFETIME_MS, CONVERSATION_HISTORY_DEFAULT_LIMIT } = constants;
|
|
61
|
+
|
|
62
|
+
//#endregion
|
|
63
|
+
Object.defineProperty(exports, 'AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS', {
|
|
64
|
+
enumerable: true,
|
|
65
|
+
get: function () {
|
|
66
|
+
return AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
Object.defineProperty(exports, 'AGENT_EXECUTION_MAX_GENERATION_STEPS', {
|
|
70
|
+
enumerable: true,
|
|
71
|
+
get: function () {
|
|
72
|
+
return AGENT_EXECUTION_MAX_GENERATION_STEPS;
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
Object.defineProperty(exports, 'ARTIFACT_GENERATION_BACKOFF_INITIAL_MS', {
|
|
76
|
+
enumerable: true,
|
|
77
|
+
get: function () {
|
|
78
|
+
return ARTIFACT_GENERATION_BACKOFF_INITIAL_MS;
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
Object.defineProperty(exports, 'ARTIFACT_GENERATION_BACKOFF_MAX_MS', {
|
|
82
|
+
enumerable: true,
|
|
83
|
+
get: function () {
|
|
84
|
+
return ARTIFACT_GENERATION_BACKOFF_MAX_MS;
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
Object.defineProperty(exports, 'ARTIFACT_GENERATION_MAX_RETRIES', {
|
|
88
|
+
enumerable: true,
|
|
89
|
+
get: function () {
|
|
90
|
+
return ARTIFACT_GENERATION_MAX_RETRIES;
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
Object.defineProperty(exports, 'ARTIFACT_SESSION_MAX_PENDING', {
|
|
94
|
+
enumerable: true,
|
|
95
|
+
get: function () {
|
|
96
|
+
return ARTIFACT_SESSION_MAX_PENDING;
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
Object.defineProperty(exports, 'ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES', {
|
|
100
|
+
enumerable: true,
|
|
101
|
+
get: function () {
|
|
102
|
+
return ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES;
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
Object.defineProperty(exports, 'CONVERSATION_HISTORY_DEFAULT_LIMIT', {
|
|
106
|
+
enumerable: true,
|
|
107
|
+
get: function () {
|
|
108
|
+
return CONVERSATION_HISTORY_DEFAULT_LIMIT;
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
Object.defineProperty(exports, 'DELEGATION_TOOL_BACKOFF_EXPONENT', {
|
|
112
|
+
enumerable: true,
|
|
113
|
+
get: function () {
|
|
114
|
+
return DELEGATION_TOOL_BACKOFF_EXPONENT;
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
Object.defineProperty(exports, 'DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS', {
|
|
118
|
+
enumerable: true,
|
|
119
|
+
get: function () {
|
|
120
|
+
return DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS;
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
Object.defineProperty(exports, 'DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS', {
|
|
124
|
+
enumerable: true,
|
|
125
|
+
get: function () {
|
|
126
|
+
return DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS;
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
Object.defineProperty(exports, 'DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS', {
|
|
130
|
+
enumerable: true,
|
|
131
|
+
get: function () {
|
|
132
|
+
return DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS;
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
Object.defineProperty(exports, 'FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT', {
|
|
136
|
+
enumerable: true,
|
|
137
|
+
get: function () {
|
|
138
|
+
return FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT;
|
|
139
|
+
}
|
|
140
|
+
});
|
|
141
|
+
Object.defineProperty(exports, 'FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS', {
|
|
142
|
+
enumerable: true,
|
|
143
|
+
get: function () {
|
|
144
|
+
return FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS;
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
Object.defineProperty(exports, 'FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES', {
|
|
148
|
+
enumerable: true,
|
|
149
|
+
get: function () {
|
|
150
|
+
return FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES;
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
Object.defineProperty(exports, 'FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT', {
|
|
154
|
+
enumerable: true,
|
|
155
|
+
get: function () {
|
|
156
|
+
return FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT;
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
Object.defineProperty(exports, 'FUNCTION_TOOL_SANDBOX_POOL_TTL_MS', {
|
|
160
|
+
enumerable: true,
|
|
161
|
+
get: function () {
|
|
162
|
+
return FUNCTION_TOOL_SANDBOX_POOL_TTL_MS;
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
Object.defineProperty(exports, 'FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS', {
|
|
166
|
+
enumerable: true,
|
|
167
|
+
get: function () {
|
|
168
|
+
return FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS;
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
Object.defineProperty(exports, 'FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT', {
|
|
172
|
+
enumerable: true,
|
|
173
|
+
get: function () {
|
|
174
|
+
return FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT;
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
Object.defineProperty(exports, 'LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING', {
|
|
178
|
+
enumerable: true,
|
|
179
|
+
get: function () {
|
|
180
|
+
return LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING;
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
Object.defineProperty(exports, 'LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING', {
|
|
184
|
+
enumerable: true,
|
|
185
|
+
get: function () {
|
|
186
|
+
return LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING;
|
|
187
|
+
}
|
|
188
|
+
});
|
|
189
|
+
Object.defineProperty(exports, 'LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS', {
|
|
190
|
+
enumerable: true,
|
|
191
|
+
get: function () {
|
|
192
|
+
return LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS;
|
|
193
|
+
}
|
|
194
|
+
});
|
|
195
|
+
Object.defineProperty(exports, 'LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS', {
|
|
196
|
+
enumerable: true,
|
|
197
|
+
get: function () {
|
|
198
|
+
return LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS;
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
Object.defineProperty(exports, 'SESSION_CLEANUP_INTERVAL_MS', {
|
|
202
|
+
enumerable: true,
|
|
203
|
+
get: function () {
|
|
204
|
+
return SESSION_CLEANUP_INTERVAL_MS;
|
|
205
|
+
}
|
|
206
|
+
});
|
|
207
|
+
Object.defineProperty(exports, 'SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS', {
|
|
208
|
+
enumerable: true,
|
|
209
|
+
get: function () {
|
|
210
|
+
return SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS;
|
|
211
|
+
}
|
|
212
|
+
});
|
|
213
|
+
Object.defineProperty(exports, 'STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS', {
|
|
214
|
+
enumerable: true,
|
|
215
|
+
get: function () {
|
|
216
|
+
return STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS;
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
Object.defineProperty(exports, 'STATUS_UPDATE_DEFAULT_NUM_EVENTS', {
|
|
220
|
+
enumerable: true,
|
|
221
|
+
get: function () {
|
|
222
|
+
return STATUS_UPDATE_DEFAULT_NUM_EVENTS;
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
Object.defineProperty(exports, 'STREAM_BUFFER_MAX_SIZE_BYTES', {
|
|
226
|
+
enumerable: true,
|
|
227
|
+
get: function () {
|
|
228
|
+
return STREAM_BUFFER_MAX_SIZE_BYTES;
|
|
229
|
+
}
|
|
230
|
+
});
|
|
231
|
+
Object.defineProperty(exports, 'STREAM_MAX_LIFETIME_MS', {
|
|
232
|
+
enumerable: true,
|
|
233
|
+
get: function () {
|
|
234
|
+
return STREAM_MAX_LIFETIME_MS;
|
|
235
|
+
}
|
|
236
|
+
});
|
|
237
|
+
Object.defineProperty(exports, 'STREAM_PARSER_MAX_COLLECTED_PARTS', {
|
|
238
|
+
enumerable: true,
|
|
239
|
+
get: function () {
|
|
240
|
+
return STREAM_PARSER_MAX_COLLECTED_PARTS;
|
|
241
|
+
}
|
|
242
|
+
});
|
|
243
|
+
Object.defineProperty(exports, 'STREAM_PARSER_MAX_SNAPSHOT_SIZE', {
|
|
244
|
+
enumerable: true,
|
|
245
|
+
get: function () {
|
|
246
|
+
return STREAM_PARSER_MAX_SNAPSHOT_SIZE;
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
Object.defineProperty(exports, 'STREAM_PARSER_MAX_STREAMED_SIZE', {
|
|
250
|
+
enumerable: true,
|
|
251
|
+
get: function () {
|
|
252
|
+
return STREAM_PARSER_MAX_STREAMED_SIZE;
|
|
253
|
+
}
|
|
254
|
+
});
|
|
255
|
+
Object.defineProperty(exports, 'STREAM_TEXT_GAP_THRESHOLD_MS', {
|
|
256
|
+
enumerable: true,
|
|
257
|
+
get: function () {
|
|
258
|
+
return STREAM_TEXT_GAP_THRESHOLD_MS;
|
|
259
|
+
}
|
|
260
|
+
});
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { z } from "@hono/zod-openapi";
|
|
2
|
+
import { loadEnvironmentFiles } from "@inkeep/agents-core";
|
|
3
|
+
|
|
4
|
+
//#region src/constants/execution-limits/defaults.ts
|
|
5
|
+
/**
|
|
6
|
+
* Run-API specific execution limit constants that control runtime behavior.
|
|
7
|
+
* These are used as defaults when user configuration is null/undefined.
|
|
8
|
+
*/
|
|
9
|
+
const executionLimitsDefaults = {
|
|
10
|
+
AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS: 3,
|
|
11
|
+
AGENT_EXECUTION_MAX_GENERATION_STEPS: 5,
|
|
12
|
+
LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING: 27e4,
|
|
13
|
+
LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING: 9e4,
|
|
14
|
+
LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS: 9e4,
|
|
15
|
+
LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS: 6e5,
|
|
16
|
+
FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT: 3e4,
|
|
17
|
+
FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT: 4,
|
|
18
|
+
FUNCTION_TOOL_SANDBOX_POOL_TTL_MS: 3e5,
|
|
19
|
+
FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT: 50,
|
|
20
|
+
FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES: 1048576,
|
|
21
|
+
FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS: 3e4,
|
|
22
|
+
FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS: 6e4,
|
|
23
|
+
MCP_TOOL_REQUEST_TIMEOUT_MS_DEFAULT: 6e4,
|
|
24
|
+
DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS: 100,
|
|
25
|
+
DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS: 1e4,
|
|
26
|
+
DELEGATION_TOOL_BACKOFF_EXPONENT: 2,
|
|
27
|
+
DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS: 2e4,
|
|
28
|
+
A2A_BACKOFF_INITIAL_INTERVAL_MS: 500,
|
|
29
|
+
A2A_BACKOFF_MAX_INTERVAL_MS: 6e4,
|
|
30
|
+
A2A_BACKOFF_EXPONENT: 1.5,
|
|
31
|
+
A2A_BACKOFF_MAX_ELAPSED_TIME_MS: 3e4,
|
|
32
|
+
ARTIFACT_GENERATION_MAX_RETRIES: 3,
|
|
33
|
+
ARTIFACT_SESSION_MAX_PENDING: 100,
|
|
34
|
+
ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES: 3,
|
|
35
|
+
ARTIFACT_GENERATION_BACKOFF_INITIAL_MS: 1e3,
|
|
36
|
+
ARTIFACT_GENERATION_BACKOFF_MAX_MS: 1e4,
|
|
37
|
+
SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS: 3e5,
|
|
38
|
+
SESSION_CLEANUP_INTERVAL_MS: 6e4,
|
|
39
|
+
STATUS_UPDATE_DEFAULT_NUM_EVENTS: 1,
|
|
40
|
+
STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS: 2,
|
|
41
|
+
STREAM_PARSER_MAX_SNAPSHOT_SIZE: 100,
|
|
42
|
+
STREAM_PARSER_MAX_STREAMED_SIZE: 1e3,
|
|
43
|
+
STREAM_PARSER_MAX_COLLECTED_PARTS: 1e4,
|
|
44
|
+
STREAM_BUFFER_MAX_SIZE_BYTES: 5242880,
|
|
45
|
+
STREAM_TEXT_GAP_THRESHOLD_MS: 2e3,
|
|
46
|
+
STREAM_MAX_LIFETIME_MS: 6e5,
|
|
47
|
+
CONVERSATION_HISTORY_DEFAULT_LIMIT: 50
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
//#endregion
|
|
51
|
+
//#region src/constants/execution-limits/index.ts
|
|
52
|
+
loadEnvironmentFiles();
|
|
53
|
+
const constantsSchema = z.object(Object.fromEntries(Object.keys(executionLimitsDefaults).map((key) => [`AGENTS_${key}`, z.coerce.number().optional()])));
|
|
54
|
+
const parseConstants = () => {
|
|
55
|
+
const envOverrides = constantsSchema.parse(process.env);
|
|
56
|
+
return Object.fromEntries(Object.entries(executionLimitsDefaults).map(([key, defaultValue]) => [key, envOverrides[`AGENTS_${key}`] ?? defaultValue]));
|
|
57
|
+
};
|
|
58
|
+
const constants = parseConstants();
|
|
59
|
+
const { AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS, AGENT_EXECUTION_MAX_GENERATION_STEPS, LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING, LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING, LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS, LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS, FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT, FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT, FUNCTION_TOOL_SANDBOX_POOL_TTL_MS, FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT, FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES, FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS, FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS, MCP_TOOL_REQUEST_TIMEOUT_MS_DEFAULT, DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS, DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS, DELEGATION_TOOL_BACKOFF_EXPONENT, DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS, A2A_BACKOFF_INITIAL_INTERVAL_MS, A2A_BACKOFF_MAX_INTERVAL_MS, A2A_BACKOFF_EXPONENT, A2A_BACKOFF_MAX_ELAPSED_TIME_MS, ARTIFACT_GENERATION_MAX_RETRIES, ARTIFACT_SESSION_MAX_PENDING, ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES, ARTIFACT_GENERATION_BACKOFF_INITIAL_MS, ARTIFACT_GENERATION_BACKOFF_MAX_MS, SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS, SESSION_CLEANUP_INTERVAL_MS, STATUS_UPDATE_DEFAULT_NUM_EVENTS, STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS, STREAM_PARSER_MAX_SNAPSHOT_SIZE, STREAM_PARSER_MAX_STREAMED_SIZE, STREAM_PARSER_MAX_COLLECTED_PARTS, STREAM_BUFFER_MAX_SIZE_BYTES, STREAM_TEXT_GAP_THRESHOLD_MS, STREAM_MAX_LIFETIME_MS, CONVERSATION_HISTORY_DEFAULT_LIMIT: CONVERSATION_HISTORY_DEFAULT_LIMIT$1 } = constants;
|
|
60
|
+
|
|
61
|
+
//#endregion
|
|
62
|
+
export { STREAM_PARSER_MAX_COLLECTED_PARTS as A, LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS as C, STATUS_UPDATE_DEFAULT_NUM_EVENTS as D, STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS as E, STREAM_PARSER_MAX_STREAMED_SIZE as M, STREAM_TEXT_GAP_THRESHOLD_MS as N, STREAM_BUFFER_MAX_SIZE_BYTES as O, LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS as S, SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS as T, FUNCTION_TOOL_SANDBOX_POOL_TTL_MS as _, ARTIFACT_GENERATION_MAX_RETRIES as a, LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING as b, CONVERSATION_HISTORY_DEFAULT_LIMIT$1 as c, DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS as d, DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS as f, FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT as g, FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES as h, ARTIFACT_GENERATION_BACKOFF_MAX_MS as i, STREAM_PARSER_MAX_SNAPSHOT_SIZE as j, STREAM_MAX_LIFETIME_MS as k, DELEGATION_TOOL_BACKOFF_EXPONENT as l, FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS as m, AGENT_EXECUTION_MAX_GENERATION_STEPS as n, ARTIFACT_SESSION_MAX_PENDING as o, FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT as p, ARTIFACT_GENERATION_BACKOFF_INITIAL_MS as r, ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES as s, AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS as t, DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS as u, FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS as v, SESSION_CLEANUP_INTERVAL_MS as w, LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING as x, FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT as y };
|
|
63
|
+
//# sourceMappingURL=execution-limits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution-limits.js","names":[],"sources":["../src/constants/execution-limits/defaults.ts","../src/constants/execution-limits/index.ts"],"sourcesContent":["/* =============================================================================\n * Run-API Execution Limit Constants\n *\n * These constants control run-api specific runtime behavior during agent execution.\n * They are used as defaults when user configuration is null/undefined.\n *\n * Note: Constants used by both run-api and manage-api are defined in:\n * - @inkeep/agents-core/constants/schema-validation (API-level validation limits)\n * - @inkeep/agents-core/constants/execution-limits-shared (shared runtime limits)\n *\n * Environment Variable Overrides:\n * All constants can be overridden via environment variables prefixed with AGENTS_.\n * The constants/execution-limits/index.ts file validates these overrides at startup.\n * If not set, constants use the default values defined below.\n *\n * Example: AGENTS_LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING=300000\n * ============================================================================= */\n\n/**\n * Run-API specific execution limit constants that control runtime behavior.\n * These are used as defaults when user configuration is null/undefined.\n */\nexport const executionLimitsDefaults = {\n // Sub Agent Turn Execution\n // During a Sub Agent's turn, it makes decisions by calling the LLM (language model). Each decision\n // point is called a \"generation step\" - for example, deciding to call a tool, transfer to another\n // Sub Agent, delegate a subtask, or send a response to the user.\n // AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS: Maximum errors tolerated during a single Sub Agent's turn before stopping execution\n // AGENT_EXECUTION_MAX_GENERATION_STEPS: Maximum LLM inference calls allowed within a single Sub Agent turn\n AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS: 3,\n AGENT_EXECUTION_MAX_GENERATION_STEPS: 5,\n\n // Sub Agent Decision-Making Timeouts\n // These control how long to wait for the LLM to make decisions during a Sub Agent's turn.\n // \"First call\" = initial decision at start of turn (may include tool results from previous actions)\n // \"Subsequent call\" = follow-up decisions after executing tools within the same turn\n // Streaming mode has longer timeout because it waits for the full streamed response to the user\n // LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING: Timeout for initial streaming response to user\n // LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING: Timeout for initial non-streaming (internal) decision\n // LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS: Timeout for follow-up decisions after tool execution\n // LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS: Maximum timeout allowed regardless of configuration\n LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING: 270_000, // 4.5 minutes\n LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING: 90_000, // 1.5 minutes\n LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS: 90_000, // 1.5 minutes\n LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS: 600_000, // 10 minutes\n\n // Function Tool Execution (Sandboxed Environments)\n // Function Tools are custom JavaScript functions that Sub Agents can call. They run in secure\n // isolated sandboxes (containerized environments) to prevent malicious code execution.\n // For performance, sandboxes are cached and reused across multiple tool calls until they expire.\n // FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT: Maximum execution time for a Function Tool call\n // FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT: Virtual CPUs allocated to each sandbox (affects compute capacity)\n // FUNCTION_TOOL_SANDBOX_POOL_TTL_MS: Time-to-live for cached sandboxes (after this, sandbox is discarded)\n // FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT: Maximum reuses of a sandbox before it's refreshed (prevents resource leaks)\n // FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES: Maximum size of Function Tool output (prevents memory exhaustion)\n // FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS: Maximum wait time for sandbox to become available when pool is full\n // FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS: How often to check for and remove expired sandboxes from the pool\n FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT: 30_000, // 30 seconds\n FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT: 4,\n FUNCTION_TOOL_SANDBOX_POOL_TTL_MS: 300_000, // 5 minutes\n FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT: 50,\n FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES: 1_048_576, // 1 MB\n FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS: 30_000, // 30 seconds\n FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS: 60_000, // 1 minute\n\n // MCP Tool Execution\n // MCP (Model Context Protocol) Servers are external services that provide tools to Sub Agents.\n // When a Sub Agent calls an MCP Tool, the request is sent to the external MCP Server.\n // Note: MCP connection/retry constants are defined in @inkeep/agents-core/constants/execution-limits-shared\n // MCP_TOOL_REQUEST_TIMEOUT_MS_DEFAULT: Maximum wait time for an MCP tool call to complete\n MCP_TOOL_REQUEST_TIMEOUT_MS_DEFAULT: 60_000, // 60 seconds\n\n // Sub Agent Delegation (Retry Strategy)\n // When a Sub Agent delegates a subtask to another Sub Agent, it uses the A2A (Agent-to-Agent)\n // protocol to communicate. If the delegation request fails, these constants control the\n // exponential backoff retry strategy. Formula: delay = min(INITIAL * EXPONENT^attempt, MAX)\n // DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS: Starting delay before first retry\n // DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS: Maximum delay between retries (caps exponential growth)\n // DELEGATION_TOOL_BACKOFF_EXPONENT: Multiplier applied to delay after each retry (2 = doubles each time)\n // DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS: Total time to keep retrying before giving up\n DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS: 100,\n DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS: 10_000, // 10 seconds\n DELEGATION_TOOL_BACKOFF_EXPONENT: 2,\n DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS: 20_000, // 20 seconds\n\n // General Agent-to-Agent (A2A) Communication (Retry Strategy)\n // These control retries for broader A2A protocol operations beyond delegation (e.g., status checks,\n // conversation updates). Uses more conservative retry parameters than delegation-specific retries.\n // A2A_BACKOFF_INITIAL_INTERVAL_MS: Starting delay before first retry\n // A2A_BACKOFF_MAX_INTERVAL_MS: Maximum delay between retries\n // A2A_BACKOFF_EXPONENT: Multiplier for exponential backoff (1.5 = grows 50% each retry)\n // A2A_BACKOFF_MAX_ELAPSED_TIME_MS: Total time to keep retrying before giving up\n A2A_BACKOFF_INITIAL_INTERVAL_MS: 500,\n A2A_BACKOFF_MAX_INTERVAL_MS: 60_000, // 1 minute\n A2A_BACKOFF_EXPONENT: 1.5,\n A2A_BACKOFF_MAX_ELAPSED_TIME_MS: 30_000, // 30 seconds\n\n // Artifact Processing\n // Artifacts are tool outputs saved for later reference by Sub Agents or users. When a tool generates\n // an artifact, the system automatically generates a human-readable name and description using the LLM.\n // These constants control artifact name/description generation and context window management.\n // ARTIFACT_GENERATION_MAX_RETRIES: Retry attempts for LLM-based artifact name/description generation\n // ARTIFACT_SESSION_MAX_PENDING: Maximum unprocessed artifacts in queue (prevents unbounded growth)\n // ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES: Historical artifact summaries kept in context for reference\n // ARTIFACT_GENERATION_BACKOFF_INITIAL_MS: Starting delay for retry backoff when generation fails\n // ARTIFACT_GENERATION_BACKOFF_MAX_MS: Maximum delay between retries (formula: min(INITIAL * 2^attempt, MAX))\n ARTIFACT_GENERATION_MAX_RETRIES: 3,\n ARTIFACT_SESSION_MAX_PENDING: 100,\n ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES: 3,\n ARTIFACT_GENERATION_BACKOFF_INITIAL_MS: 1_000, // 1 second\n ARTIFACT_GENERATION_BACKOFF_MAX_MS: 10_000, // 10 seconds\n\n // Conversation Session & Cache Management\n // A \"session\" represents the state of an ongoing conversation with an Agent. Tool results are cached\n // within the session for performance - this is especially important for artifact processing where the\n // same tool outputs may be referenced multiple times across Sub Agent turns.\n // SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS: How long tool results are kept in cache before expiring\n // SESSION_CLEANUP_INTERVAL_MS: How often to check for and remove expired cached tool results\n SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS: 300_000, // 5 minutes\n SESSION_CLEANUP_INTERVAL_MS: 60_000, // 1 minute\n\n // Status Updates\n // Status Updates are real-time progress messages sent to users during longer Sub Agent operations.\n // The system automatically generates status updates based on activity thresholds - either after a\n // certain number of significant events OR after a time interval (whichever comes first).\n // Events include: tool calls, Sub Agent transfers, delegations, or other significant activities.\n // STATUS_UPDATE_DEFAULT_NUM_EVENTS: Number of significant events before triggering a status update\n // STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS: Time interval (in seconds) before generating status update\n STATUS_UPDATE_DEFAULT_NUM_EVENTS: 1,\n STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS: 2,\n\n // Response Streaming (Internal Buffering Limits)\n // These are internal infrastructure limits for streaming responses to users. Streaming enables\n // real-time updates as Sub Agents generate responses, Data Components, and Status Updates.\n // STREAM_PARSER_MAX_SNAPSHOT_SIZE: Maximum Data Component snapshots buffered before clearing old ones\n // STREAM_PARSER_MAX_STREAMED_SIZE: Maximum streamed component IDs tracked simultaneously\n // STREAM_PARSER_MAX_COLLECTED_PARTS: Maximum accumulated stream parts before forcing flush\n // STREAM_BUFFER_MAX_SIZE_BYTES: Maximum total buffer size in bytes (prevents memory exhaustion)\n // STREAM_TEXT_GAP_THRESHOLD_MS: Time gap that triggers bundling text with artifact data vs separate send\n // STREAM_MAX_LIFETIME_MS: Maximum duration a stream can stay open before forced closure\n STREAM_PARSER_MAX_SNAPSHOT_SIZE: 100,\n STREAM_PARSER_MAX_STREAMED_SIZE: 1000,\n STREAM_PARSER_MAX_COLLECTED_PARTS: 10_000,\n STREAM_BUFFER_MAX_SIZE_BYTES: 5_242_880, // 5 MB\n STREAM_TEXT_GAP_THRESHOLD_MS: 2_000, // 2 seconds\n STREAM_MAX_LIFETIME_MS: 600_000, // 10 minutes\n\n // Conversation History Message Retrieval\n // CONVERSATION_HISTORY_DEFAULT_LIMIT: Default number of recent conversation messages to retrieve\n CONVERSATION_HISTORY_DEFAULT_LIMIT: 50,\n} as const;\n","import { z } from '@hono/zod-openapi';\nimport { loadEnvironmentFiles } from '@inkeep/agents-core';\nimport { executionLimitsDefaults } from './defaults';\n\n// Load all environment files using shared logic\nloadEnvironmentFiles();\n\n// Auto-generate Zod schema from executionLimitsDefaults keys\n// This ensures we only define constants once in defaults.ts\nconst constantsSchema = z.object(\n Object.fromEntries(\n Object.keys(executionLimitsDefaults).map((key) => [\n `AGENTS_${key}`,\n z.coerce.number().optional(),\n ])\n ) as Record<string, z.ZodOptional<z.ZodNumber>>\n);\n\nconst parseConstants = () => {\n const envOverrides = constantsSchema.parse(process.env);\n\n // Merge environment overrides with defaults\n return Object.fromEntries(\n Object.entries(executionLimitsDefaults).map(([key, defaultValue]) => [\n key,\n envOverrides[`AGENTS_${key}` as keyof typeof envOverrides] ?? defaultValue,\n ])\n ) as typeof executionLimitsDefaults;\n};\n\nconst constants = parseConstants();\n\n// Export individual constants for clean imports\nexport const {\n AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS,\n AGENT_EXECUTION_MAX_GENERATION_STEPS,\n LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_STREAMING,\n LLM_GENERATION_FIRST_CALL_TIMEOUT_MS_NON_STREAMING,\n LLM_GENERATION_SUBSEQUENT_CALL_TIMEOUT_MS,\n LLM_GENERATION_MAX_ALLOWED_TIMEOUT_MS,\n FUNCTION_TOOL_EXECUTION_TIMEOUT_MS_DEFAULT,\n FUNCTION_TOOL_SANDBOX_VCPUS_DEFAULT,\n FUNCTION_TOOL_SANDBOX_POOL_TTL_MS,\n FUNCTION_TOOL_SANDBOX_MAX_USE_COUNT,\n FUNCTION_TOOL_SANDBOX_MAX_OUTPUT_SIZE_BYTES,\n FUNCTION_TOOL_SANDBOX_QUEUE_WAIT_TIMEOUT_MS,\n FUNCTION_TOOL_SANDBOX_CLEANUP_INTERVAL_MS,\n MCP_TOOL_REQUEST_TIMEOUT_MS_DEFAULT,\n DELEGATION_TOOL_BACKOFF_INITIAL_INTERVAL_MS,\n DELEGATION_TOOL_BACKOFF_MAX_INTERVAL_MS,\n DELEGATION_TOOL_BACKOFF_EXPONENT,\n DELEGATION_TOOL_BACKOFF_MAX_ELAPSED_TIME_MS,\n A2A_BACKOFF_INITIAL_INTERVAL_MS,\n A2A_BACKOFF_MAX_INTERVAL_MS,\n A2A_BACKOFF_EXPONENT,\n A2A_BACKOFF_MAX_ELAPSED_TIME_MS,\n ARTIFACT_GENERATION_MAX_RETRIES,\n ARTIFACT_SESSION_MAX_PENDING,\n ARTIFACT_SESSION_MAX_PREVIOUS_SUMMARIES,\n ARTIFACT_GENERATION_BACKOFF_INITIAL_MS,\n ARTIFACT_GENERATION_BACKOFF_MAX_MS,\n SESSION_TOOL_RESULT_CACHE_TIMEOUT_MS,\n SESSION_CLEANUP_INTERVAL_MS,\n STATUS_UPDATE_DEFAULT_NUM_EVENTS,\n STATUS_UPDATE_DEFAULT_INTERVAL_SECONDS,\n STREAM_PARSER_MAX_SNAPSHOT_SIZE,\n STREAM_PARSER_MAX_STREAMED_SIZE,\n STREAM_PARSER_MAX_COLLECTED_PARTS,\n STREAM_BUFFER_MAX_SIZE_BYTES,\n STREAM_TEXT_GAP_THRESHOLD_MS,\n STREAM_MAX_LIFETIME_MS,\n CONVERSATION_HISTORY_DEFAULT_LIMIT,\n} = constants;\n\n// Also export the defaults for potential use elsewhere\nexport { executionLimitsDefaults } from './defaults';\n"],"mappings":";;;;;;;;AAsBA,MAAa,0BAA0B;CAOrC,wCAAwC;CACxC,sCAAsC;CAWtC,gDAAgD;CAChD,oDAAoD;CACpD,2CAA2C;CAC3C,uCAAuC;CAavC,4CAA4C;CAC5C,qCAAqC;CACrC,mCAAmC;CACnC,qCAAqC;CACrC,6CAA6C;CAC7C,6CAA6C;CAC7C,2CAA2C;CAO3C,qCAAqC;CAUrC,6CAA6C;CAC7C,yCAAyC;CACzC,kCAAkC;CAClC,6CAA6C;CAS7C,iCAAiC;CACjC,6BAA6B;CAC7B,sBAAsB;CACtB,iCAAiC;CAWjC,iCAAiC;CACjC,8BAA8B;CAC9B,yCAAyC;CACzC,wCAAwC;CACxC,oCAAoC;CAQpC,sCAAsC;CACtC,6BAA6B;CAS7B,kCAAkC;CAClC,wCAAwC;CAWxC,iCAAiC;CACjC,iCAAiC;CACjC,mCAAmC;CACnC,8BAA8B;CAC9B,8BAA8B;CAC9B,wBAAwB;CAIxB,oCAAoC;CACrC;;;;ACjJD,sBAAsB;AAItB,MAAM,kBAAkB,EAAE,OACxB,OAAO,YACL,OAAO,KAAK,wBAAwB,CAAC,KAAK,QAAQ,CAChD,UAAU,OACV,EAAE,OAAO,QAAQ,CAAC,UAAU,CAC7B,CAAC,CACH,CACF;AAED,MAAM,uBAAuB;CAC3B,MAAM,eAAe,gBAAgB,MAAM,QAAQ,IAAI;AAGvD,QAAO,OAAO,YACZ,OAAO,QAAQ,wBAAwB,CAAC,KAAK,CAAC,KAAK,kBAAkB,CACnE,KACA,aAAa,UAAU,UAAuC,aAC/D,CAAC,CACH;;AAGH,MAAM,YAAY,gBAAgB;AAGlC,MAAa,EACX,wCACA,sCACA,gDACA,oDACA,2CACA,uCACA,4CACA,qCACA,mCACA,qCACA,6CACA,6CACA,2CACA,qCACA,6CACA,yCACA,kCACA,6CACA,iCACA,6BACA,sBACA,iCACA,iCACA,8BACA,yCACA,wCACA,oCACA,sCACA,6BACA,kCACA,wCACA,iCACA,iCACA,mCACA,8BACA,8BACA,wBACA,6EACE"}
|