@dexto/core 1.6.0 → 1.6.2
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/agent/DextoAgent.cjs +79 -5
- package/dist/agent/DextoAgent.d.ts +24 -2
- package/dist/agent/DextoAgent.d.ts.map +1 -1
- package/dist/agent/DextoAgent.js +79 -5
- package/dist/agent/agent-options.d.ts +6 -1
- package/dist/agent/agent-options.d.ts.map +1 -1
- package/dist/agent/schemas.d.ts +18 -18
- package/dist/approval/manager.cjs +87 -27
- package/dist/approval/manager.d.ts +10 -1
- package/dist/approval/manager.d.ts.map +1 -1
- package/dist/approval/manager.js +87 -27
- package/dist/approval/schemas.cjs +22 -8
- package/dist/approval/schemas.d.ts +276 -102
- package/dist/approval/schemas.d.ts.map +1 -1
- package/dist/approval/schemas.js +22 -8
- package/dist/context/manager.cjs +2 -2
- package/dist/context/manager.d.ts +2 -1
- package/dist/context/manager.d.ts.map +1 -1
- package/dist/context/manager.js +2 -2
- package/dist/context/types.d.ts +3 -2
- package/dist/context/types.d.ts.map +1 -1
- package/dist/events/index.d.ts +26 -13
- package/dist/events/index.d.ts.map +1 -1
- package/dist/hooks/index.d.ts +1 -1
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/types.d.ts +1 -22
- package/dist/hooks/types.d.ts.map +1 -1
- package/dist/llm/executor/provider-options.cjs +223 -28
- package/dist/llm/executor/provider-options.d.ts +3 -37
- package/dist/llm/executor/provider-options.d.ts.map +1 -1
- package/dist/llm/executor/provider-options.js +227 -27
- package/dist/llm/executor/stream-processor.cjs +57 -34
- package/dist/llm/executor/stream-processor.d.ts +12 -4
- package/dist/llm/executor/stream-processor.d.ts.map +1 -1
- package/dist/llm/executor/stream-processor.js +55 -32
- package/dist/llm/executor/turn-executor.cjs +66 -44
- package/dist/llm/executor/turn-executor.d.ts +3 -3
- package/dist/llm/executor/turn-executor.d.ts.map +1 -1
- package/dist/llm/executor/turn-executor.js +56 -34
- package/dist/llm/formatters/vercel.cjs +15 -3
- package/dist/llm/formatters/vercel.d.ts +1 -0
- package/dist/llm/formatters/vercel.d.ts.map +1 -1
- package/dist/llm/formatters/vercel.js +15 -3
- package/dist/llm/index.cjs +8 -0
- package/dist/llm/index.d.ts +2 -1
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/index.js +7 -0
- package/dist/llm/providers/local/schemas.d.ts +2 -2
- package/dist/llm/providers/openrouter-model-registry.cjs +66 -11
- package/dist/llm/providers/openrouter-model-registry.d.ts +26 -0
- package/dist/llm/providers/openrouter-model-registry.d.ts.map +1 -1
- package/dist/llm/providers/openrouter-model-registry.js +65 -11
- package/dist/llm/reasoning/anthropic-betas.cjs +31 -0
- package/dist/llm/reasoning/anthropic-betas.d.ts +3 -0
- package/dist/llm/reasoning/anthropic-betas.d.ts.map +1 -0
- package/dist/llm/reasoning/anthropic-betas.js +7 -0
- package/dist/llm/reasoning/anthropic-thinking.cjs +79 -0
- package/dist/llm/reasoning/anthropic-thinking.d.ts +15 -0
- package/dist/llm/reasoning/anthropic-thinking.d.ts.map +1 -0
- package/dist/llm/reasoning/anthropic-thinking.js +52 -0
- package/dist/llm/reasoning/openai-reasoning-effort.cjs +86 -0
- package/dist/llm/reasoning/openai-reasoning-effort.d.ts +5 -0
- package/dist/llm/reasoning/openai-reasoning-effort.d.ts.map +1 -0
- package/dist/llm/reasoning/openai-reasoning-effort.js +61 -0
- package/dist/llm/reasoning/profile.cjs +113 -0
- package/dist/llm/reasoning/profile.d.ts +13 -0
- package/dist/llm/reasoning/profile.d.ts.map +1 -0
- package/dist/llm/reasoning/profile.js +92 -0
- package/dist/llm/reasoning/profiles/anthropic.cjs +61 -0
- package/dist/llm/reasoning/profiles/anthropic.d.ts +8 -0
- package/dist/llm/reasoning/profiles/anthropic.d.ts.map +1 -0
- package/dist/llm/reasoning/profiles/anthropic.js +45 -0
- package/dist/llm/reasoning/profiles/bedrock.cjs +54 -0
- package/dist/llm/reasoning/profiles/bedrock.d.ts +3 -0
- package/dist/llm/reasoning/profiles/bedrock.d.ts.map +1 -0
- package/dist/llm/reasoning/profiles/bedrock.js +36 -0
- package/dist/llm/reasoning/profiles/google.cjs +45 -0
- package/dist/llm/reasoning/profiles/google.d.ts +9 -0
- package/dist/llm/reasoning/profiles/google.d.ts.map +1 -0
- package/dist/llm/reasoning/profiles/google.js +21 -0
- package/dist/llm/reasoning/profiles/openai-compatible.cjs +39 -0
- package/dist/llm/reasoning/profiles/openai-compatible.d.ts +3 -0
- package/dist/llm/reasoning/profiles/openai-compatible.d.ts.map +1 -0
- package/dist/llm/reasoning/profiles/openai-compatible.js +16 -0
- package/dist/llm/reasoning/profiles/openai.cjs +41 -0
- package/dist/llm/reasoning/profiles/openai.d.ts +3 -0
- package/dist/llm/reasoning/profiles/openai.d.ts.map +1 -0
- package/dist/llm/reasoning/profiles/openai.js +18 -0
- package/dist/llm/reasoning/profiles/openrouter.cjs +83 -0
- package/dist/llm/reasoning/profiles/openrouter.d.ts +10 -0
- package/dist/llm/reasoning/profiles/openrouter.d.ts.map +1 -0
- package/dist/llm/reasoning/profiles/openrouter.js +59 -0
- package/dist/llm/reasoning/profiles/shared.cjs +80 -0
- package/dist/llm/reasoning/profiles/shared.d.ts +25 -0
- package/dist/llm/reasoning/profiles/shared.d.ts.map +1 -0
- package/dist/llm/reasoning/profiles/shared.js +53 -0
- package/dist/llm/reasoning/profiles/vertex.cjs +46 -0
- package/dist/llm/reasoning/profiles/vertex.d.ts +3 -0
- package/dist/llm/reasoning/profiles/vertex.d.ts.map +1 -0
- package/dist/llm/reasoning/profiles/vertex.js +23 -0
- package/dist/llm/registry/auto-update.cjs +18 -0
- package/dist/llm/registry/auto-update.d.ts.map +1 -1
- package/dist/llm/registry/auto-update.js +18 -0
- package/dist/llm/registry/index.cjs +126 -26
- package/dist/llm/registry/index.d.ts +48 -4
- package/dist/llm/registry/index.d.ts.map +1 -1
- package/dist/llm/registry/index.js +136 -28
- package/dist/llm/registry/models.generated.cjs +5198 -59
- package/dist/llm/registry/models.generated.d.ts +1893 -76
- package/dist/llm/registry/models.generated.d.ts.map +1 -1
- package/dist/llm/registry/models.generated.js +5196 -58
- package/dist/llm/registry/sync.cjs +72 -1
- package/dist/llm/registry/sync.d.ts +21 -1
- package/dist/llm/registry/sync.d.ts.map +1 -1
- package/dist/llm/registry/sync.js +72 -1
- package/dist/llm/resolver.cjs +13 -1
- package/dist/llm/resolver.d.ts.map +1 -1
- package/dist/llm/resolver.js +13 -1
- package/dist/llm/schemas.cjs +75 -14
- package/dist/llm/schemas.d.ts +84 -27
- package/dist/llm/schemas.d.ts.map +1 -1
- package/dist/llm/schemas.js +75 -14
- package/dist/llm/services/factory.cjs +55 -8
- package/dist/llm/services/factory.d.ts +1 -1
- package/dist/llm/services/factory.d.ts.map +1 -1
- package/dist/llm/services/factory.js +58 -8
- package/dist/llm/services/vercel.cjs +2 -2
- package/dist/llm/services/vercel.js +2 -2
- package/dist/llm/types.d.ts +9 -0
- package/dist/llm/types.d.ts.map +1 -1
- package/dist/logger/default-logger-factory.d.ts +12 -12
- package/dist/logger/v2/dexto-logger.cjs +35 -0
- package/dist/logger/v2/dexto-logger.d.ts +19 -0
- package/dist/logger/v2/dexto-logger.d.ts.map +1 -1
- package/dist/logger/v2/dexto-logger.js +35 -0
- package/dist/logger/v2/schemas.d.ts +6 -6
- package/dist/logger/v2/test-utils.cjs +2 -0
- package/dist/logger/v2/test-utils.d.ts.map +1 -1
- package/dist/logger/v2/test-utils.js +2 -0
- package/dist/logger/v2/types.d.ts +14 -1
- package/dist/logger/v2/types.d.ts.map +1 -1
- package/dist/mcp/schemas.d.ts +15 -15
- package/dist/memory/schemas.d.ts +4 -4
- package/dist/prompts/index.cjs +9 -0
- package/dist/prompts/index.d.ts +1 -0
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +10 -0
- package/dist/prompts/prompt-manager.cjs +2 -0
- package/dist/prompts/prompt-manager.d.ts.map +1 -1
- package/dist/prompts/prompt-manager.js +2 -0
- package/dist/prompts/providers/config-prompt-provider.cjs +11 -1
- package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -1
- package/dist/prompts/providers/config-prompt-provider.js +11 -1
- package/dist/prompts/schemas.cjs +2 -2
- package/dist/prompts/schemas.d.ts +7 -7
- package/dist/prompts/schemas.js +2 -2
- package/dist/prompts/types.d.ts +6 -2
- package/dist/prompts/types.d.ts.map +1 -1
- package/dist/systemPrompt/in-built-prompts.cjs +5 -5
- package/dist/systemPrompt/in-built-prompts.d.ts +1 -1
- package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
- package/dist/systemPrompt/in-built-prompts.js +5 -5
- package/dist/systemPrompt/schemas.d.ts +5 -5
- package/dist/systemPrompt/types.d.ts +11 -0
- package/dist/systemPrompt/types.d.ts.map +1 -1
- package/dist/tools/display-types.d.ts +10 -0
- package/dist/tools/display-types.d.ts.map +1 -1
- package/dist/tools/index.cjs +3 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +1 -0
- package/dist/tools/presentation.cjs +49 -0
- package/dist/tools/presentation.d.ts +11 -0
- package/dist/tools/presentation.d.ts.map +1 -0
- package/dist/tools/presentation.js +24 -0
- package/dist/tools/tool-manager.cjs +389 -136
- package/dist/tools/tool-manager.d.ts +36 -24
- package/dist/tools/tool-manager.d.ts.map +1 -1
- package/dist/tools/tool-manager.js +389 -136
- package/dist/tools/types.d.ts +134 -55
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/utils/path.cjs +10 -1
- package/dist/utils/path.d.ts +5 -2
- package/dist/utils/path.d.ts.map +1 -1
- package/dist/utils/path.js +10 -1
- package/dist/utils/service-initializer.d.ts +1 -0
- package/dist/utils/service-initializer.d.ts.map +1 -1
- package/package.json +7 -5
|
@@ -174,6 +174,9 @@ let _DextoAgent = class _DextoAgent {
|
|
|
174
174
|
activeStreamControllers = /* @__PURE__ */ new Map();
|
|
175
175
|
// Host overrides for service initialization (e.g. session logger factory)
|
|
176
176
|
overrides;
|
|
177
|
+
toolkitLoader;
|
|
178
|
+
loadedToolkits = /* @__PURE__ */ new Set();
|
|
179
|
+
loadingToolkits = /* @__PURE__ */ new Set();
|
|
177
180
|
// DI-provided local tools.
|
|
178
181
|
tools;
|
|
179
182
|
compactionStrategy;
|
|
@@ -248,6 +251,7 @@ let _DextoAgent = class _DextoAgent {
|
|
|
248
251
|
overrides.hooks = hooks;
|
|
249
252
|
}
|
|
250
253
|
this.overrides = overrides;
|
|
254
|
+
this.toolkitLoader = options.toolkitLoader;
|
|
251
255
|
if (overrides.mcpAuthProviderFactory !== void 0) {
|
|
252
256
|
this.mcpAuthProviderFactory = overrides.mcpAuthProviderFactory;
|
|
253
257
|
}
|
|
@@ -1187,6 +1191,28 @@ Either:
|
|
|
1187
1191
|
this.ensureStarted();
|
|
1188
1192
|
return await this.sessionManager.listSessions();
|
|
1189
1193
|
}
|
|
1194
|
+
/**
|
|
1195
|
+
* Sets the log level for this agent.
|
|
1196
|
+
*
|
|
1197
|
+
* Note: In some hosts (e.g. interactive CLI), session logs may be written by
|
|
1198
|
+
* session-scoped file loggers rather than the base agent logger. When a sessionId
|
|
1199
|
+
* is provided, this also updates the in-memory session logger so file logs reflect
|
|
1200
|
+
* the new level immediately.
|
|
1201
|
+
*/
|
|
1202
|
+
async setLogLevel(level, options) {
|
|
1203
|
+
this.ensureStarted();
|
|
1204
|
+
this.logger.setLevel(level);
|
|
1205
|
+
const sessionId = options?.sessionId;
|
|
1206
|
+
if (!sessionId) {
|
|
1207
|
+
return;
|
|
1208
|
+
}
|
|
1209
|
+
const session = await this.sessionManager.getSession(sessionId, false);
|
|
1210
|
+
if (!session) {
|
|
1211
|
+
return;
|
|
1212
|
+
}
|
|
1213
|
+
session.logger.setLevel(level);
|
|
1214
|
+
session.logger.debug(`Log level changed to '${level}'`);
|
|
1215
|
+
}
|
|
1190
1216
|
/**
|
|
1191
1217
|
* Ends a session by removing it from memory without deleting conversation history.
|
|
1192
1218
|
* Used for cleanup, agent shutdown, and session expiry.
|
|
@@ -1432,7 +1458,7 @@ Either:
|
|
|
1432
1458
|
this.logger.debug(`Compaction skipped for session ${sessionId} - history too short`);
|
|
1433
1459
|
return null;
|
|
1434
1460
|
}
|
|
1435
|
-
const contributorContext =
|
|
1461
|
+
const contributorContext = await this.toolManager.buildContributorContext();
|
|
1436
1462
|
const tools = await llmService.getEnabledTools();
|
|
1437
1463
|
const beforeEstimate = await contextManager.getContextTokenEstimate(
|
|
1438
1464
|
contributorContext,
|
|
@@ -1510,7 +1536,7 @@ Either:
|
|
|
1510
1536
|
throw import_session.SessionError.notFound(sessionId);
|
|
1511
1537
|
}
|
|
1512
1538
|
const contextManager = session.getContextManager();
|
|
1513
|
-
const contributorContext =
|
|
1539
|
+
const contributorContext = await this.toolManager.buildContributorContext();
|
|
1514
1540
|
const llmService = session.getLLMService();
|
|
1515
1541
|
const tools = await llmService.getEnabledTools();
|
|
1516
1542
|
const tokenEstimate = await contextManager.getContextTokenEstimate(
|
|
@@ -2025,6 +2051,56 @@ Either:
|
|
|
2025
2051
|
this.ensureStarted();
|
|
2026
2052
|
return await this.toolManager.getAllTools();
|
|
2027
2053
|
}
|
|
2054
|
+
/**
|
|
2055
|
+
* Dynamically load toolkits (tool factory types) at runtime.
|
|
2056
|
+
* Toolkits are resolved by the host-provided toolkitLoader and appended to the tool manager.
|
|
2057
|
+
*/
|
|
2058
|
+
async loadToolkits(toolkits) {
|
|
2059
|
+
this.ensureStarted();
|
|
2060
|
+
if (!Array.isArray(toolkits) || toolkits.some((toolkit) => typeof toolkit !== "string" || toolkit.trim() === "")) {
|
|
2061
|
+
throw import_errors2.AgentError.apiValidationError("toolkits must be an array of non-empty strings");
|
|
2062
|
+
}
|
|
2063
|
+
const normalized = Array.from(new Set(toolkits.map((toolkit) => toolkit.trim())));
|
|
2064
|
+
if (normalized.length === 0) {
|
|
2065
|
+
return { loaded: [], skipped: [] };
|
|
2066
|
+
}
|
|
2067
|
+
if (!this.toolkitLoader) {
|
|
2068
|
+
throw import_errors2.AgentError.initializationFailed("Toolkit loader not configured");
|
|
2069
|
+
}
|
|
2070
|
+
const toLoad = normalized.filter(
|
|
2071
|
+
(toolkit) => !this.loadedToolkits.has(toolkit) && !this.loadingToolkits.has(toolkit)
|
|
2072
|
+
);
|
|
2073
|
+
const skipped = normalized.filter(
|
|
2074
|
+
(toolkit) => this.loadedToolkits.has(toolkit) || this.loadingToolkits.has(toolkit)
|
|
2075
|
+
);
|
|
2076
|
+
if (toLoad.length === 0) {
|
|
2077
|
+
return { loaded: [], skipped };
|
|
2078
|
+
}
|
|
2079
|
+
toLoad.forEach((toolkit) => {
|
|
2080
|
+
this.loadingToolkits.add(toolkit);
|
|
2081
|
+
});
|
|
2082
|
+
let tools;
|
|
2083
|
+
try {
|
|
2084
|
+
tools = await this.toolkitLoader(toLoad);
|
|
2085
|
+
} finally {
|
|
2086
|
+
toLoad.forEach((toolkit) => {
|
|
2087
|
+
this.loadingToolkits.delete(toolkit);
|
|
2088
|
+
});
|
|
2089
|
+
}
|
|
2090
|
+
const existingIds = new Set(this.tools.map((tool) => tool.id));
|
|
2091
|
+
const newTools = tools.filter((tool) => !existingIds.has(tool.id));
|
|
2092
|
+
if (newTools.length > 0) {
|
|
2093
|
+
this.toolManager.addTools(newTools);
|
|
2094
|
+
this.tools = [...this.tools, ...newTools];
|
|
2095
|
+
}
|
|
2096
|
+
for (const toolkit of toLoad) {
|
|
2097
|
+
this.loadedToolkits.add(toolkit);
|
|
2098
|
+
}
|
|
2099
|
+
return {
|
|
2100
|
+
loaded: toLoad,
|
|
2101
|
+
skipped
|
|
2102
|
+
};
|
|
2103
|
+
}
|
|
2028
2104
|
/**
|
|
2029
2105
|
* Gets tools enabled for LLM context (applies session overrides + global preferences).
|
|
2030
2106
|
*/
|
|
@@ -2277,9 +2353,7 @@ Either:
|
|
|
2277
2353
|
*/
|
|
2278
2354
|
async getSystemPrompt() {
|
|
2279
2355
|
this.ensureStarted();
|
|
2280
|
-
const context2 =
|
|
2281
|
-
mcpManager: this.mcpManager
|
|
2282
|
-
};
|
|
2356
|
+
const context2 = await this.toolManager.buildContributorContext();
|
|
2283
2357
|
return await this.systemPromptManager.build(context2);
|
|
2284
2358
|
}
|
|
2285
2359
|
/**
|
|
@@ -9,7 +9,7 @@ import { AgentStateManager } from './state-manager.js';
|
|
|
9
9
|
import { SessionManager, ChatSession } from '../session/index.js';
|
|
10
10
|
import type { SessionMetadata } from '../session/index.js';
|
|
11
11
|
import { AgentServices } from '../utils/service-initializer.js';
|
|
12
|
-
import type { Logger } from '../logger/v2/types.js';
|
|
12
|
+
import type { Logger, LogLevel } from '../logger/v2/types.js';
|
|
13
13
|
import type { McpServerConfig, McpServerStatus } from '../mcp/schemas.js';
|
|
14
14
|
import type { ModelInfo } from '../llm/registry/index.js';
|
|
15
15
|
import type { LLMProvider } from '../llm/types.js';
|
|
@@ -114,7 +114,10 @@ export declare class DextoAgent {
|
|
|
114
114
|
private mcpAuthProviderFactory;
|
|
115
115
|
private activeStreamControllers;
|
|
116
116
|
private readonly overrides;
|
|
117
|
-
private readonly
|
|
117
|
+
private readonly toolkitLoader;
|
|
118
|
+
private readonly loadedToolkits;
|
|
119
|
+
private readonly loadingToolkits;
|
|
120
|
+
private tools;
|
|
118
121
|
private readonly compactionStrategy;
|
|
119
122
|
readonly logger: Logger;
|
|
120
123
|
/**
|
|
@@ -352,6 +355,17 @@ export declare class DextoAgent {
|
|
|
352
355
|
* @returns Array of session IDs
|
|
353
356
|
*/
|
|
354
357
|
listSessions(): Promise<string[]>;
|
|
358
|
+
/**
|
|
359
|
+
* Sets the log level for this agent.
|
|
360
|
+
*
|
|
361
|
+
* Note: In some hosts (e.g. interactive CLI), session logs may be written by
|
|
362
|
+
* session-scoped file loggers rather than the base agent logger. When a sessionId
|
|
363
|
+
* is provided, this also updates the in-memory session logger so file logs reflect
|
|
364
|
+
* the new level immediately.
|
|
365
|
+
*/
|
|
366
|
+
setLogLevel(level: LogLevel, options?: {
|
|
367
|
+
sessionId?: string;
|
|
368
|
+
}): Promise<void>;
|
|
355
369
|
/**
|
|
356
370
|
* Ends a session by removing it from memory without deleting conversation history.
|
|
357
371
|
* Used for cleanup, agent shutdown, and session expiry.
|
|
@@ -721,6 +735,14 @@ export declare class DextoAgent {
|
|
|
721
735
|
* @returns Promise resolving to a map of tool names to tool definitions
|
|
722
736
|
*/
|
|
723
737
|
getAllTools(): Promise<ToolSet>;
|
|
738
|
+
/**
|
|
739
|
+
* Dynamically load toolkits (tool factory types) at runtime.
|
|
740
|
+
* Toolkits are resolved by the host-provided toolkitLoader and appended to the tool manager.
|
|
741
|
+
*/
|
|
742
|
+
loadToolkits(toolkits: string[]): Promise<{
|
|
743
|
+
loaded: string[];
|
|
744
|
+
skipped: string[];
|
|
745
|
+
}>;
|
|
724
746
|
/**
|
|
725
747
|
* Gets tools enabled for LLM context (applies session overrides + global preferences).
|
|
726
748
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DextoAgent.d.ts","sourceRoot":"","sources":["../../src/agent/DextoAgent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DextoAgent.d.ts","sourceRoot":"","sources":["../../src/agent/DextoAgent.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,eAAe,EAA2B,MAAM,uBAAuB,CAAC;AAGjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAgB,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EACH,aAAa,EAGhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAe9D,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAuB,MAAM,mBAAmB,CAAC;AAO/F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGnD,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAUxE,OAAO,KAAK,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EACH,aAAa,EACb,KAAK,aAAa,EAClB,KAAK,cAAc,EAEtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAQ,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAG/F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAcjF;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACjC,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;CAC5C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,qBAea,UAAU;IACnB;;;;OAIG;IACH,SAAgB,UAAU,EAAG,UAAU,CAAC;IACxC,SAAgB,mBAAmB,EAAG,mBAAmB,CAAC;IAC1D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,SAAgB,aAAa,EAAG,aAAa,CAAC;IAC9C,SAAgB,YAAY,EAAG,iBAAiB,CAAC;IACjD,SAAgB,cAAc,EAAG,cAAc,CAAC;IAChD,SAAgB,gBAAgB,EAAG,gBAAgB,CAAC;IACpD,SAAgB,WAAW,EAAG,WAAW,CAAC;IAC1C,SAAgB,eAAe,EAAG,eAAe,CAAC;IAClD,SAAgB,aAAa,EAAG,OAAO,oBAAoB,EAAE,aAAa,CAAC;IAC3E,SAAgB,QAAQ,EAAG,aAAa,CAAC;IAGzC,OAAO,CAAC,aAAa,CAAiB;IAGtC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,UAAU,CAAkB;IAG7B,MAAM,EAAE,oBAAoB,CAAC;IAGpC,OAAO,CAAC,gBAAgB,CAAwC;IAGhE,OAAO,CAAC,SAAS,CAAC,CAAY;IAI9B,OAAO,CAAC,eAAe,CAAC,CAA8B;IACtD,OAAO,CAAC,sBAAsB,CAAiE;IAG/F,OAAO,CAAC,uBAAuB,CAA2C;IAG1E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA4B;IACtD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4B;IAC1D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IACzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0B;IAG1D,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA4B;IAG/D,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B;;;;;;OAMG;WACW,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,oBAAoB;IAwBlF;;;;;;;OAOG;gBACS,OAAO,EAAE,iBAAiB;IAqDtC;;;;;;OAMG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAqJnC;;;;;;OAMG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA2GlC;;;;;;OAMG;IACI,kBAAkB,CAAC,UAAU,EAAE,oBAAoB,GAAG,IAAI;IAOjE;;;;OAIG;IACI,EAAE,CAAC,CAAC,SAAS,MAAM,aAAa,EACnC,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,EAC1F,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GACnC,IAAI;IAKA,IAAI,CAAC,CAAC,SAAS,MAAM,aAAa,EACrC,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,EAC1F,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GACnC,IAAI;IAKA,GAAG,CAAC,CAAC,SAAS,MAAM,aAAa,EACpC,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,GAC3F,IAAI;IAKA,IAAI,CAAC,CAAC,SAAS,MAAM,aAAa,EACrC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GACjE,OAAO;IAIV;;;;;;OAMG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAMrC;;;OAGG;IACI,SAAS,IAAI,OAAO;IAI3B;;;OAGG;IACI,SAAS,IAAI,OAAO;IAI3B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAarB;;;;;;;;;;;;OAYG;IACU,GAAG,CACZ,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,EAC/D,aAAa,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,EAChF,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,OAAe,GACzB,OAAO,CAAC,MAAM,CAAC;IA8BlB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACU,QAAQ,CACjB,OAAO,EAAE,OAAO,YAAY,EAAE,YAAY,EAC1C,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,OAAO,YAAY,EAAE,eAAe,GAC/C,OAAO,CAAC,OAAO,YAAY,EAAE,gBAAgB,CAAC;IAwFjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACU,MAAM,CACf,OAAO,EAAE,OAAO,YAAY,EAAE,YAAY,EAC1C,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,OAAO,YAAY,EAAE,aAAa,GAC7C,OAAO,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;IAkejD;;;;OAIG;IACU,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAM/D;;;;;;;;OAQG;IACU,YAAY,CACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,6BAA6B,EAAE,gBAAgB,GAChE,OAAO,CAAC;QAAE,MAAM,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAS1D;;;;OAIG;IACU,iBAAiB,CAC1B,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,qBAAqB,EAAE,aAAa,EAAE,CAAC;IASzD;;;;;OAKG;IACU,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASxF;;;;OAIG;IACU,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IASlE;;;;;OAKG;IACU,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA4BxD;;;OAGG;IACU,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAK9E;;OAEG;IACU,YAAY,IAAI,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAKlE;;OAEG;IACU,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5C;;OAEG;IACU,cAAc,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAO1D;;;;OAIG;IACU,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKpE;;;;OAIG;IACU,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAK5E;;;OAGG;IACU,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAK9C;;;;;;;OAOG;IACU,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB1F;;;;OAIG;IACU,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzD;;;;OAIG;IACU,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5D;;;;OAIG;IACU,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAKxF;;OAEG;IACU,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7E;;OAEG;IACU,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAK5E;;;;;;OAMG;IACU,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAyE5E;;;;;OAKG;IACU,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IA4B7E;;;;;;OAMG;IACU,cAAc,CACvB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,aAAkB,GAC5B,OAAO,CAAC,cAAc,CAAC;IAK1B;;;;;OAKG;IACU,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAK1E;;;;OAIG;IACU,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BhE;;;;;;;;;;;;OAYG;IACU,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB3D;;;;;;;;;OASG;IACU,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QACpD,qCAAqC;QACrC,SAAS,EAAE,MAAM,CAAC;QAClB,iGAAiG;QACjG,sBAAsB,EAAE,MAAM,CAAC;QAC/B,2CAA2C;QAC3C,gBAAgB,EAAE,MAAM,CAAC;QACzB,gEAAgE;QAChE,iBAAiB,EAAE,MAAM,CAAC;KAC7B,GAAG,IAAI,CAAC;IAiHT;;;;;;OAMG;IACU,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QACrD,eAAe,EAAE,MAAM,CAAC;QACxB,uEAAuE;QACvE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,mGAAmG;QACnG,gBAAgB,EAAE,MAAM,CAAC;QACzB,iEAAiE;QACjE,kBAAkB,EAAE,MAAM,CAAC;QAC3B,8DAA8D;QAC9D,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,eAAe,EAAE,MAAM,CAAC;QACxB,UAAU,EAAE,OAAO,CAAC;QACpB,+BAA+B;QAC/B,KAAK,EAAE,MAAM,CAAC;QACd,iCAAiC;QACjC,gBAAgB,EAAE,MAAM,CAAC;QACzB,sDAAsD;QACtD,SAAS,EAAE;YACP,YAAY,EAAE,MAAM,CAAC;YACrB,KAAK,EAAE;gBACH,KAAK,EAAE,MAAM,CAAC;gBACd,+BAA+B;gBAC/B,OAAO,EAAE,KAAK,CAAC;oBAAE,IAAI,EAAE,MAAM,CAAC;oBAAC,MAAM,EAAE,MAAM,CAAA;iBAAE,CAAC,CAAC;aACpD,CAAC;YACF,QAAQ,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,8DAA8D;QAC9D,gBAAgB,CAAC,EAAE;YACf,0FAA0F;YAC1F,MAAM,EAAE,SAAS,GAAG,UAAU,CAAC;YAC/B,iEAAiE;YACjE,eAAe,CAAC,EAAE,MAAM,CAAC;YACzB,kEAAkE;YAClE,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B,iFAAiF;YACjF,mBAAmB,CAAC,EAAE,MAAM,CAAC;SAChC,CAAC;KACL,CAAC;IA4FF;;;;OAIG;IACI,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,kBAAkB;IAUlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACU,SAAS,CAClB,UAAU,EAAE,UAAU,EACtB,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,kBAAkB,CAAC;IA4C9B;;;;;;OAMG;YACW,gBAAgB;IAwB9B;;;;;;;;;;;OAWG;IACI,qBAAqB,IAAI,WAAW,EAAE;IAI7C;;;;;;;;;;;;;;;;OAgBG;IACI,kBAAkB,IAAI,MAAM,CAC/B,WAAW,EACX,KAAK,CAAC,SAAS,GAAG;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,WAAW,CAAA;KAAE,CAAC,CAC5E;IAaD;;;;;;;;;;;;;;;;;;;;OAoBG;IACI,6BAA6B,CAChC,QAAQ,EAAE,WAAW,GACtB,KAAK,CAAC,SAAS,GAAG;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,WAAW,CAAA;KAAE,CAAC;IAgB5E;;;;;;;;;;;;;;;;;;OAkBG;IACI,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAUpE;;;;;;;OAOG;IACU,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IA2D/E;;;;;;;OAOG;IACU,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IA0ElF;;OAEG;IACU,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAInF;;;;;;OAMG;IACU,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4BzD;;;;;;OAMG;IACU,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B1D;;;;;OAKG;IACU,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBzD;;;;;OAKG;IACU,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCnD,kBAAkB,CAAC,IAAI,EAAE,MAAM;IAQtC;;;;;;;;;;OAUG;IACU,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAOnE;;;;OAIG;IACU,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAK/C;;;;OAIG;IACI,4BAA4B;;;;gBAjkFM,CAAC;uBAC5B,CAAC;;;;IAqkFf;;;;OAIG;IACU,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAK5C;;;OAGG;IACU,YAAY,CACrB,QAAQ,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA0DnD;;OAEG;IACU,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWlE;;OAEG;IACI,sBAAsB,IAAI,MAAM,EAAE;IAKzC;;OAEG;IACI,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAWxD;;OAEG;IACI,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAgB5E;;OAEG;IACI,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAUzD;;OAEG;IACI,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAU9D;;OAEG;IACI,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAgB/E;;;;OAIG;IACI,aAAa,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;IAK9C;;;;OAIG;IACI,uBAAuB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAQxD;;;;;;;OAOG;IACI,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAoCpE;;;;;;;OAOG;IACI,uBAAuB,IAAI,eAAe,EAAE;IA2CnD;;;OAGG;IACU,aAAa,IAAI,OAAO,CAAC,OAAO,uBAAuB,EAAE,WAAW,CAAC;IAKlF;;OAEG;IACU,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKvD;;OAEG;IACU,YAAY,CACrB,GAAG,EAAE,MAAM,GACZ,OAAO,CAAC,OAAO,oCAAoC,EAAE,kBAAkB,CAAC;IAK3E;;OAEG;IACU,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAC1D,KAAK,CAAC;QACF,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACtB,CAAC,CACL;IAgBD;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACU,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAM/C;;;OAGG;IACU,WAAW,IAAI,OAAO,CAAC,OAAO,qBAAqB,EAAE,SAAS,CAAC;IAK5E;;;;OAIG;IACU,mBAAmB,CAC5B,IAAI,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,qBAAqB,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAKjE;;;;OAIG;IACU,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKtD;;;;;;;OAOG;IACU,cAAc,CAAC,UAAU,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtE;;;;;OAKG;IACU,SAAS,CAClB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,OAAO,oCAAoC,EAAE,eAAe,CAAC;IAKxE;;;;OAIG;IACU,kBAAkB,CAC3B,KAAK,EAAE,OAAO,qBAAqB,EAAE,uBAAuB,GAC7D,OAAO,CAAC,OAAO,qBAAqB,EAAE,UAAU,CAAC;IAKpD;;;OAGG;IACU,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D;;;;;;;;;;;OAWG;IACU,aAAa,CACtB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;QACL,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC7B,GACP,OAAO,CAAC,OAAO,qBAAqB,EAAE,oBAAoB,CAAC;IAO9D;;;;;OAKG;IACI,kBAAkB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,oBAAoB,CAAC;IAOtE,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IASpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACI,kBAAkB,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAYlD,yBAAyB,CAC5B,OAAO,EAAE,OAAO,iBAAiB,EAAE,sBAAsB,GAAG,IAAI,GACjE,IAAI;IAOP;;;;OAIG;IACI,oBAAoB,IAAI,IAAI;CAgCtC"}
|
package/dist/agent/DextoAgent.js
CHANGED
|
@@ -109,6 +109,9 @@ let _DextoAgent = class _DextoAgent {
|
|
|
109
109
|
activeStreamControllers = /* @__PURE__ */ new Map();
|
|
110
110
|
// Host overrides for service initialization (e.g. session logger factory)
|
|
111
111
|
overrides;
|
|
112
|
+
toolkitLoader;
|
|
113
|
+
loadedToolkits = /* @__PURE__ */ new Set();
|
|
114
|
+
loadingToolkits = /* @__PURE__ */ new Set();
|
|
112
115
|
// DI-provided local tools.
|
|
113
116
|
tools;
|
|
114
117
|
compactionStrategy;
|
|
@@ -183,6 +186,7 @@ let _DextoAgent = class _DextoAgent {
|
|
|
183
186
|
overrides.hooks = hooks;
|
|
184
187
|
}
|
|
185
188
|
this.overrides = overrides;
|
|
189
|
+
this.toolkitLoader = options.toolkitLoader;
|
|
186
190
|
if (overrides.mcpAuthProviderFactory !== void 0) {
|
|
187
191
|
this.mcpAuthProviderFactory = overrides.mcpAuthProviderFactory;
|
|
188
192
|
}
|
|
@@ -1122,6 +1126,28 @@ Either:
|
|
|
1122
1126
|
this.ensureStarted();
|
|
1123
1127
|
return await this.sessionManager.listSessions();
|
|
1124
1128
|
}
|
|
1129
|
+
/**
|
|
1130
|
+
* Sets the log level for this agent.
|
|
1131
|
+
*
|
|
1132
|
+
* Note: In some hosts (e.g. interactive CLI), session logs may be written by
|
|
1133
|
+
* session-scoped file loggers rather than the base agent logger. When a sessionId
|
|
1134
|
+
* is provided, this also updates the in-memory session logger so file logs reflect
|
|
1135
|
+
* the new level immediately.
|
|
1136
|
+
*/
|
|
1137
|
+
async setLogLevel(level, options) {
|
|
1138
|
+
this.ensureStarted();
|
|
1139
|
+
this.logger.setLevel(level);
|
|
1140
|
+
const sessionId = options?.sessionId;
|
|
1141
|
+
if (!sessionId) {
|
|
1142
|
+
return;
|
|
1143
|
+
}
|
|
1144
|
+
const session = await this.sessionManager.getSession(sessionId, false);
|
|
1145
|
+
if (!session) {
|
|
1146
|
+
return;
|
|
1147
|
+
}
|
|
1148
|
+
session.logger.setLevel(level);
|
|
1149
|
+
session.logger.debug(`Log level changed to '${level}'`);
|
|
1150
|
+
}
|
|
1125
1151
|
/**
|
|
1126
1152
|
* Ends a session by removing it from memory without deleting conversation history.
|
|
1127
1153
|
* Used for cleanup, agent shutdown, and session expiry.
|
|
@@ -1367,7 +1393,7 @@ Either:
|
|
|
1367
1393
|
this.logger.debug(`Compaction skipped for session ${sessionId} - history too short`);
|
|
1368
1394
|
return null;
|
|
1369
1395
|
}
|
|
1370
|
-
const contributorContext =
|
|
1396
|
+
const contributorContext = await this.toolManager.buildContributorContext();
|
|
1371
1397
|
const tools = await llmService.getEnabledTools();
|
|
1372
1398
|
const beforeEstimate = await contextManager.getContextTokenEstimate(
|
|
1373
1399
|
contributorContext,
|
|
@@ -1445,7 +1471,7 @@ Either:
|
|
|
1445
1471
|
throw SessionError.notFound(sessionId);
|
|
1446
1472
|
}
|
|
1447
1473
|
const contextManager = session.getContextManager();
|
|
1448
|
-
const contributorContext =
|
|
1474
|
+
const contributorContext = await this.toolManager.buildContributorContext();
|
|
1449
1475
|
const llmService = session.getLLMService();
|
|
1450
1476
|
const tools = await llmService.getEnabledTools();
|
|
1451
1477
|
const tokenEstimate = await contextManager.getContextTokenEstimate(
|
|
@@ -1960,6 +1986,56 @@ Either:
|
|
|
1960
1986
|
this.ensureStarted();
|
|
1961
1987
|
return await this.toolManager.getAllTools();
|
|
1962
1988
|
}
|
|
1989
|
+
/**
|
|
1990
|
+
* Dynamically load toolkits (tool factory types) at runtime.
|
|
1991
|
+
* Toolkits are resolved by the host-provided toolkitLoader and appended to the tool manager.
|
|
1992
|
+
*/
|
|
1993
|
+
async loadToolkits(toolkits) {
|
|
1994
|
+
this.ensureStarted();
|
|
1995
|
+
if (!Array.isArray(toolkits) || toolkits.some((toolkit) => typeof toolkit !== "string" || toolkit.trim() === "")) {
|
|
1996
|
+
throw AgentError.apiValidationError("toolkits must be an array of non-empty strings");
|
|
1997
|
+
}
|
|
1998
|
+
const normalized = Array.from(new Set(toolkits.map((toolkit) => toolkit.trim())));
|
|
1999
|
+
if (normalized.length === 0) {
|
|
2000
|
+
return { loaded: [], skipped: [] };
|
|
2001
|
+
}
|
|
2002
|
+
if (!this.toolkitLoader) {
|
|
2003
|
+
throw AgentError.initializationFailed("Toolkit loader not configured");
|
|
2004
|
+
}
|
|
2005
|
+
const toLoad = normalized.filter(
|
|
2006
|
+
(toolkit) => !this.loadedToolkits.has(toolkit) && !this.loadingToolkits.has(toolkit)
|
|
2007
|
+
);
|
|
2008
|
+
const skipped = normalized.filter(
|
|
2009
|
+
(toolkit) => this.loadedToolkits.has(toolkit) || this.loadingToolkits.has(toolkit)
|
|
2010
|
+
);
|
|
2011
|
+
if (toLoad.length === 0) {
|
|
2012
|
+
return { loaded: [], skipped };
|
|
2013
|
+
}
|
|
2014
|
+
toLoad.forEach((toolkit) => {
|
|
2015
|
+
this.loadingToolkits.add(toolkit);
|
|
2016
|
+
});
|
|
2017
|
+
let tools;
|
|
2018
|
+
try {
|
|
2019
|
+
tools = await this.toolkitLoader(toLoad);
|
|
2020
|
+
} finally {
|
|
2021
|
+
toLoad.forEach((toolkit) => {
|
|
2022
|
+
this.loadingToolkits.delete(toolkit);
|
|
2023
|
+
});
|
|
2024
|
+
}
|
|
2025
|
+
const existingIds = new Set(this.tools.map((tool) => tool.id));
|
|
2026
|
+
const newTools = tools.filter((tool) => !existingIds.has(tool.id));
|
|
2027
|
+
if (newTools.length > 0) {
|
|
2028
|
+
this.toolManager.addTools(newTools);
|
|
2029
|
+
this.tools = [...this.tools, ...newTools];
|
|
2030
|
+
}
|
|
2031
|
+
for (const toolkit of toLoad) {
|
|
2032
|
+
this.loadedToolkits.add(toolkit);
|
|
2033
|
+
}
|
|
2034
|
+
return {
|
|
2035
|
+
loaded: toLoad,
|
|
2036
|
+
skipped
|
|
2037
|
+
};
|
|
2038
|
+
}
|
|
1963
2039
|
/**
|
|
1964
2040
|
* Gets tools enabled for LLM context (applies session overrides + global preferences).
|
|
1965
2041
|
*/
|
|
@@ -2212,9 +2288,7 @@ Either:
|
|
|
2212
2288
|
*/
|
|
2213
2289
|
async getSystemPrompt() {
|
|
2214
2290
|
this.ensureStarted();
|
|
2215
|
-
const context2 =
|
|
2216
|
-
mcpManager: this.mcpManager
|
|
2217
|
-
};
|
|
2291
|
+
const context2 = await this.toolManager.buildContributorContext();
|
|
2218
2292
|
return await this.systemPromptManager.build(context2);
|
|
2219
2293
|
}
|
|
2220
2294
|
/**
|
|
@@ -5,7 +5,7 @@ import type { CompactionStrategy } from '../context/compaction/types.js';
|
|
|
5
5
|
import type { Logger } from '../logger/v2/types.js';
|
|
6
6
|
import type { Hook } from '../hooks/types.js';
|
|
7
7
|
import type { Tool } from '../tools/types.js';
|
|
8
|
-
import type { InitializeServicesOptions } from '../utils/service-initializer.js';
|
|
8
|
+
import type { InitializeServicesOptions, ToolkitLoader } from '../utils/service-initializer.js';
|
|
9
9
|
import type { DextoAgentConfigInput } from './runtime-config.js';
|
|
10
10
|
/**
|
|
11
11
|
* Constructor options for {@link DextoAgent}.
|
|
@@ -39,6 +39,11 @@ export interface DextoAgentOptions {
|
|
|
39
39
|
};
|
|
40
40
|
/** Concrete tool implementations (DI-first). */
|
|
41
41
|
tools?: Tool[] | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* Toolkits loader resolved from image factories.
|
|
44
|
+
* Used to dynamically load toolkits requested by prompts/skills.
|
|
45
|
+
*/
|
|
46
|
+
toolkitLoader?: ToolkitLoader | undefined;
|
|
42
47
|
/** Concrete hooks installed for the agent (DI-first). */
|
|
43
48
|
hooks?: Hook[] | undefined;
|
|
44
49
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-options.d.ts","sourceRoot":"","sources":["../../src/agent/agent-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-options.d.ts","sourceRoot":"","sources":["../../src/agent/agent-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,iBAAiB;IAW9B;;;OAGG;IACH,SAAS,CAAC,EAAE,yBAAyB,GAAG,SAAS,CAAC;IAElD;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf,4CAA4C;IAC5C,OAAO,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IAE/D,gDAAgD;IAChD,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;IAE3B;;;OAGG;IACH,aAAa,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAE1C,yDAAyD;IACzD,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;IAE3B;;;;OAIG;IACH,UAAU,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAAC;CACtD;AAED,MAAM,WAAW,iBAAkB,SAAQ,qBAAqB;CAAG"}
|
package/dist/agent/schemas.d.ts
CHANGED
|
@@ -776,6 +776,11 @@ export declare const AgentCardSchema: z.ZodObject<{
|
|
|
776
776
|
name: string;
|
|
777
777
|
url: string;
|
|
778
778
|
version: string;
|
|
779
|
+
capabilities: {
|
|
780
|
+
streaming: boolean;
|
|
781
|
+
stateTransitionHistory: boolean;
|
|
782
|
+
pushNotifications?: boolean | undefined;
|
|
783
|
+
};
|
|
779
784
|
protocolVersion: string;
|
|
780
785
|
preferredTransport: "JSONRPC" | "GRPC" | "HTTP+JSON";
|
|
781
786
|
defaultInputModes: string[];
|
|
@@ -789,15 +794,6 @@ export declare const AgentCardSchema: z.ZodObject<{
|
|
|
789
794
|
outputModes: string[];
|
|
790
795
|
examples?: string[] | undefined;
|
|
791
796
|
}[];
|
|
792
|
-
capabilities: {
|
|
793
|
-
streaming: boolean;
|
|
794
|
-
stateTransitionHistory: boolean;
|
|
795
|
-
pushNotifications?: boolean | undefined;
|
|
796
|
-
};
|
|
797
|
-
provider?: {
|
|
798
|
-
url: string;
|
|
799
|
-
organization: string;
|
|
800
|
-
} | undefined;
|
|
801
797
|
metadata?: z.objectOutputType<{
|
|
802
798
|
dexto: z.ZodOptional<z.ZodObject<{
|
|
803
799
|
authentication: z.ZodOptional<z.ZodObject<{
|
|
@@ -873,6 +869,10 @@ export declare const AgentCardSchema: z.ZodObject<{
|
|
|
873
869
|
} | undefined;
|
|
874
870
|
}>>;
|
|
875
871
|
}, z.ZodTypeAny, "passthrough"> | undefined;
|
|
872
|
+
provider?: {
|
|
873
|
+
url: string;
|
|
874
|
+
organization: string;
|
|
875
|
+
} | undefined;
|
|
876
876
|
iconUrl?: string | undefined;
|
|
877
877
|
documentationUrl?: string | undefined;
|
|
878
878
|
additionalInterfaces?: {
|
|
@@ -937,10 +937,6 @@ export declare const AgentCardSchema: z.ZodObject<{
|
|
|
937
937
|
name: string;
|
|
938
938
|
url: string;
|
|
939
939
|
version: string;
|
|
940
|
-
provider?: {
|
|
941
|
-
url: string;
|
|
942
|
-
organization: string;
|
|
943
|
-
} | undefined;
|
|
944
940
|
metadata?: z.objectInputType<{
|
|
945
941
|
dexto: z.ZodOptional<z.ZodObject<{
|
|
946
942
|
authentication: z.ZodOptional<z.ZodObject<{
|
|
@@ -1016,6 +1012,15 @@ export declare const AgentCardSchema: z.ZodObject<{
|
|
|
1016
1012
|
} | undefined;
|
|
1017
1013
|
}>>;
|
|
1018
1014
|
}, z.ZodTypeAny, "passthrough"> | undefined;
|
|
1015
|
+
capabilities?: {
|
|
1016
|
+
streaming?: boolean | undefined;
|
|
1017
|
+
pushNotifications?: boolean | undefined;
|
|
1018
|
+
stateTransitionHistory?: boolean | undefined;
|
|
1019
|
+
} | undefined;
|
|
1020
|
+
provider?: {
|
|
1021
|
+
url: string;
|
|
1022
|
+
organization: string;
|
|
1023
|
+
} | undefined;
|
|
1019
1024
|
protocolVersion?: string | undefined;
|
|
1020
1025
|
preferredTransport?: "JSONRPC" | "GRPC" | "HTTP+JSON" | undefined;
|
|
1021
1026
|
defaultInputModes?: string[] | undefined;
|
|
@@ -1035,11 +1040,6 @@ export declare const AgentCardSchema: z.ZodObject<{
|
|
|
1035
1040
|
url: string;
|
|
1036
1041
|
transport: "JSONRPC" | "GRPC" | "HTTP+JSON";
|
|
1037
1042
|
}[] | undefined;
|
|
1038
|
-
capabilities?: {
|
|
1039
|
-
streaming?: boolean | undefined;
|
|
1040
|
-
pushNotifications?: boolean | undefined;
|
|
1041
|
-
stateTransitionHistory?: boolean | undefined;
|
|
1042
|
-
} | undefined;
|
|
1043
1043
|
securitySchemes?: Record<string, {
|
|
1044
1044
|
type: "apiKey";
|
|
1045
1045
|
name: string;
|
|
@@ -32,11 +32,36 @@ __export(manager_exports, {
|
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(manager_exports);
|
|
34
34
|
var import_node_path = __toESM(require("node:path"), 1);
|
|
35
|
+
var import_node_fs = require("node:fs");
|
|
35
36
|
var import_types = require("./types.js");
|
|
36
37
|
var import_factory = require("./factory.js");
|
|
37
38
|
var import_types2 = require("../logger/v2/types.js");
|
|
38
39
|
var import_errors = require("./errors.js");
|
|
39
40
|
var import_pattern_utils = require("../tools/pattern-utils.js");
|
|
41
|
+
function tryRealpathSync(targetPath) {
|
|
42
|
+
try {
|
|
43
|
+
return (0, import_node_fs.realpathSync)(targetPath);
|
|
44
|
+
} catch {
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
function tryRealpathSyncWithExistingParent(resolvedPath) {
|
|
49
|
+
const direct = tryRealpathSync(resolvedPath);
|
|
50
|
+
if (direct) return direct;
|
|
51
|
+
let currentDir = import_node_path.default.dirname(resolvedPath);
|
|
52
|
+
while (true) {
|
|
53
|
+
const realDir = tryRealpathSync(currentDir);
|
|
54
|
+
if (realDir) {
|
|
55
|
+
const suffix = import_node_path.default.relative(currentDir, resolvedPath);
|
|
56
|
+
return import_node_path.default.join(realDir, suffix);
|
|
57
|
+
}
|
|
58
|
+
const parent = import_node_path.default.dirname(currentDir);
|
|
59
|
+
if (parent === currentDir) {
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
currentDir = parent;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
40
65
|
class ApprovalManager {
|
|
41
66
|
handler;
|
|
42
67
|
config;
|
|
@@ -82,7 +107,7 @@ class ApprovalManager {
|
|
|
82
107
|
* Check if a pattern key is covered by any approved pattern for a tool.
|
|
83
108
|
*
|
|
84
109
|
* Note: This expects a pattern key (e.g. "git push *"), not raw arguments.
|
|
85
|
-
* Tools are responsible for generating the key via
|
|
110
|
+
* Tools are responsible for generating the key via `tool.approval.patternKey()`.
|
|
86
111
|
*/
|
|
87
112
|
matchesPattern(toolName, patternKey) {
|
|
88
113
|
const patterns = this.toolPatterns.get(toolName);
|
|
@@ -133,6 +158,29 @@ class ApprovalManager {
|
|
|
133
158
|
return this.toolPatterns;
|
|
134
159
|
}
|
|
135
160
|
// ==================== Directory Access Methods ====================
|
|
161
|
+
/**
|
|
162
|
+
* Resolve a directory path for use as an approval key.
|
|
163
|
+
*
|
|
164
|
+
* We store BOTH the resolved path and (when available) its realpath, so approvals
|
|
165
|
+
* continue to work even when other subsystems canonicalize paths via realpath
|
|
166
|
+
* (e.g. macOS /tmp -> /private/tmp or custom symlinked directories).
|
|
167
|
+
*/
|
|
168
|
+
getDirectoryApprovalKeys(directory) {
|
|
169
|
+
const resolved = import_node_path.default.resolve(directory);
|
|
170
|
+
const real = tryRealpathSyncWithExistingParent(resolved);
|
|
171
|
+
if (real && real !== resolved) {
|
|
172
|
+
return [resolved, real];
|
|
173
|
+
}
|
|
174
|
+
return [resolved];
|
|
175
|
+
}
|
|
176
|
+
getFileApprovalKeys(filePath) {
|
|
177
|
+
const resolved = import_node_path.default.resolve(filePath);
|
|
178
|
+
const real = tryRealpathSyncWithExistingParent(resolved);
|
|
179
|
+
if (real && real !== resolved) {
|
|
180
|
+
return [resolved, real];
|
|
181
|
+
}
|
|
182
|
+
return [resolved];
|
|
183
|
+
}
|
|
136
184
|
/**
|
|
137
185
|
* Initialize the working directory as a session-approved directory.
|
|
138
186
|
* This should be called once during setup to ensure the working directory
|
|
@@ -141,9 +189,7 @@ class ApprovalManager {
|
|
|
141
189
|
* @param workingDir The working directory path
|
|
142
190
|
*/
|
|
143
191
|
initializeWorkingDirectory(workingDir) {
|
|
144
|
-
|
|
145
|
-
this.approvedDirectories.set(normalized, "session");
|
|
146
|
-
this.logger.debug(`Initialized working directory as session-approved: "${normalized}"`);
|
|
192
|
+
this.addApprovedDirectory(workingDir, "session");
|
|
147
193
|
}
|
|
148
194
|
/**
|
|
149
195
|
* Add a directory to the approved list for this session.
|
|
@@ -163,16 +209,28 @@ class ApprovalManager {
|
|
|
163
209
|
* ```
|
|
164
210
|
*/
|
|
165
211
|
addApprovedDirectory(directory, type = "session") {
|
|
166
|
-
const
|
|
167
|
-
const
|
|
168
|
-
|
|
212
|
+
const keys = this.getDirectoryApprovalKeys(directory);
|
|
213
|
+
const existingTypes = keys.map((key) => this.approvedDirectories.get(key)).filter((value) => value !== void 0);
|
|
214
|
+
const hasSessionApproval = existingTypes.includes("session");
|
|
215
|
+
const effectiveType = type === "session" || hasSessionApproval ? "session" : "once";
|
|
216
|
+
for (const key of keys) {
|
|
217
|
+
const existing = this.approvedDirectories.get(key);
|
|
218
|
+
if (existing === "session") {
|
|
219
|
+
continue;
|
|
220
|
+
}
|
|
221
|
+
this.approvedDirectories.set(key, effectiveType);
|
|
222
|
+
}
|
|
223
|
+
const resolvedKey = keys[0];
|
|
224
|
+
if (effectiveType === "session" && type === "once" && hasSessionApproval) {
|
|
169
225
|
this.logger.debug(
|
|
170
|
-
`Directory "${
|
|
226
|
+
`Directory "${resolvedKey}" already approved as 'session', not downgrading to 'once'`
|
|
171
227
|
);
|
|
172
228
|
return;
|
|
173
229
|
}
|
|
174
|
-
|
|
175
|
-
this.logger.debug(
|
|
230
|
+
const realKey = keys.length > 1 ? keys[1] : null;
|
|
231
|
+
this.logger.debug(
|
|
232
|
+
`Added approved directory: "${resolvedKey}" (type: ${effectiveType})${realKey ? `, realpath: "${realKey}"` : ""}`
|
|
233
|
+
);
|
|
176
234
|
}
|
|
177
235
|
/**
|
|
178
236
|
* Check if a file path is within any session-approved directory.
|
|
@@ -183,15 +241,16 @@ class ApprovalManager {
|
|
|
183
241
|
* @returns true if the path is within a session-approved directory
|
|
184
242
|
*/
|
|
185
243
|
isDirectorySessionApproved(filePath) {
|
|
186
|
-
const normalized
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
244
|
+
for (const normalized of this.getFileApprovalKeys(filePath)) {
|
|
245
|
+
for (const [approvedDir, type] of this.approvedDirectories) {
|
|
246
|
+
if (type !== "session") continue;
|
|
247
|
+
const relative = import_node_path.default.relative(approvedDir, normalized);
|
|
248
|
+
if (!relative.startsWith("..") && !import_node_path.default.isAbsolute(relative)) {
|
|
249
|
+
this.logger.debug(
|
|
250
|
+
`Path "${normalized}" is within session-approved directory "${approvedDir}"`
|
|
251
|
+
);
|
|
252
|
+
return true;
|
|
253
|
+
}
|
|
195
254
|
}
|
|
196
255
|
}
|
|
197
256
|
return false;
|
|
@@ -205,14 +264,15 @@ class ApprovalManager {
|
|
|
205
264
|
* @returns true if the path is within any approved directory
|
|
206
265
|
*/
|
|
207
266
|
isDirectoryApproved(filePath) {
|
|
208
|
-
const normalized
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
267
|
+
for (const normalized of this.getFileApprovalKeys(filePath)) {
|
|
268
|
+
for (const [approvedDir] of this.approvedDirectories) {
|
|
269
|
+
const relative = import_node_path.default.relative(approvedDir, normalized);
|
|
270
|
+
if (!relative.startsWith("..") && !import_node_path.default.isAbsolute(relative)) {
|
|
271
|
+
this.logger.debug(
|
|
272
|
+
`Path "${normalized}" is within approved directory "${approvedDir}"`
|
|
273
|
+
);
|
|
274
|
+
return true;
|
|
275
|
+
}
|
|
216
276
|
}
|
|
217
277
|
}
|
|
218
278
|
return false;
|