@@ -19,6 +19,7 @@ export interface CompressTool {
1919export interface ToolSettings {
2020 nudgeEnabled : boolean
2121 nudgeFrequency : number
22+ limitNudgeInterval : number
2223 protectedTools : string [ ]
2324 contextLimit : number | `${number } %`
2425 contextPressureEnabled : boolean
@@ -106,6 +107,7 @@ export const VALID_CONFIG_KEYS = new Set([
106107 "tools.settings" ,
107108 "tools.settings.nudgeEnabled" ,
108109 "tools.settings.nudgeFrequency" ,
110+ "tools.settings.limitNudgeInterval" ,
109111 "tools.settings.protectedTools" ,
110112 "tools.settings.contextLimit" ,
111113 "tools.settings.contextPressureEnabled" ,
@@ -309,6 +311,17 @@ export function validateConfigTypes(config: Record<string, any>): ValidationErro
309311 } )
310312 }
311313
314+ if (
315+ tools . settings . limitNudgeInterval !== undefined &&
316+ typeof tools . settings . limitNudgeInterval !== "number"
317+ ) {
318+ errors . push ( {
319+ key : "tools.settings.limitNudgeInterval" ,
320+ expected : "number" ,
321+ actual : typeof tools . settings . limitNudgeInterval ,
322+ } )
323+ }
324+
312325 if (
313326 tools . settings . protectedTools !== undefined &&
314327 ! Array . isArray ( tools . settings . protectedTools )
@@ -545,6 +558,7 @@ const defaultConfig: PluginConfig = {
545558 settings : {
546559 nudgeEnabled : true ,
547560 nudgeFrequency : 10 ,
561+ limitNudgeInterval : 1 ,
548562 protectedTools : [ ...DEFAULT_PROTECTED_TOOLS ] ,
549563 contextLimit : 100000 ,
550564 contextPressureEnabled : true ,
@@ -712,6 +726,8 @@ function mergeTools(base: PluginConfig["tools"], override?: ToolOverride): Plugi
712726 settings : {
713727 nudgeEnabled : override . settings ?. nudgeEnabled ?? base . settings . nudgeEnabled ,
714728 nudgeFrequency : override . settings ?. nudgeFrequency ?? base . settings . nudgeFrequency ,
729+ limitNudgeInterval :
730+ override . settings ?. limitNudgeInterval ?? base . settings . limitNudgeInterval ,
715731 protectedTools : [
716732 ...new Set ( [
717733 ...base . settings . protectedTools ,
0 commit comments