Configuration options for the PromptEngine's behavior, optimization strategies,
and integration with other services like IUtilityAI.
PromptEngineConfig
value: {
enabledToolIds: string[]; // Tools explicitly allowed for this persona (intersection with runtime tool list)
disabledToolIds?: string[]; // Tools explicitly disallowed (takes precedence over enabledToolIds)
modelOverrides?: { // Per model ID fine-grained overrides
[modelId: string]: string[]; // Exact list of tool IDs allowed for that model when persona active
};
}
Resolution Order when filtering tools for prompt construction:
If personaId present in manifest:
a. If modelOverrides[modelId] exists => allowed set = that array (disabledToolIds still removes).
b. Else allowed base = enabledToolIds (if defined) else all runtime tools.
c. Remove any disabledToolIds from allowed set.
If personaId absent => all runtime tools (no filtering).
Note: Unknown tool IDs in manifest are ignored gracefully.
Configuration options for the PromptEngine's behavior, optimization strategies, and integration with other services like IUtilityAI. PromptEngineConfig