@@ -46,6 +46,7 @@ export interface ExtractTool {
4646 protectedTools : string [ ]
4747 turnProtection : PruneToolTurnProtection
4848 nudge : PruneToolNudge
49+ showDistillation : boolean
4950}
5051
5152export interface SupersedeWrites {
@@ -108,7 +109,8 @@ export const VALID_CONFIG_KEYS = new Set([
108109 'strategies.extractTool.turnProtection.turns' ,
109110 'strategies.extractTool.nudge' ,
110111 'strategies.extractTool.nudge.enabled' ,
111- 'strategies.extractTool.nudge.frequency'
112+ 'strategies.extractTool.nudge.frequency' ,
113+ 'strategies.extractTool.showDistillation'
112114] )
113115
114116// Extract all key paths from a config object for validation
@@ -234,6 +236,9 @@ function validateConfigTypes(config: Record<string, any>): ValidationError[] {
234236 errors . push ( { key : 'strategies.extractTool.nudge.frequency' , expected : 'number' , actual : typeof strategies . extractTool . nudge . frequency } )
235237 }
236238 }
239+ if ( strategies . extractTool . showDistillation !== undefined && typeof strategies . extractTool . showDistillation !== 'boolean' ) {
240+ errors . push ( { key : 'strategies.extractTool.showDistillation' , expected : 'boolean' , actual : typeof strategies . extractTool . showDistillation } )
241+ }
237242 }
238243
239244 // supersedeWrites
@@ -327,7 +332,8 @@ const defaultConfig: PluginConfig = {
327332 nudge : {
328333 enabled : true ,
329334 frequency : 10
330- }
335+ } ,
336+ showDistillation : false
331337 } ,
332338 onIdle : {
333339 enabled : false ,
@@ -450,7 +456,9 @@ function createDefaultConfig(): void {
450456 "nudge": {
451457 "enabled": true,
452458 "frequency": 10
453- }
459+ },
460+ // Show distillation content as an ignored message notification
461+ "showDistillation": false
454462 },
455463 // (Legacy) Run an LLM to analyze what tool calls are no longer relevant on idle
456464 "onIdle": {
@@ -555,7 +563,8 @@ function mergeStrategies(
555563 nudge : {
556564 enabled : override . extractTool ?. nudge ?. enabled ?? base . extractTool . nudge . enabled ,
557565 frequency : override . extractTool ?. nudge ?. frequency ?? base . extractTool . nudge . frequency
558- }
566+ } ,
567+ showDistillation : override . extractTool ?. showDistillation ?? base . extractTool . showDistillation
559568 } ,
560569 supersedeWrites : {
561570 enabled : override . supersedeWrites ?. enabled ?? base . supersedeWrites . enabled
@@ -585,7 +594,8 @@ function deepCloneConfig(config: PluginConfig): PluginConfig {
585594 ...config . strategies . extractTool ,
586595 protectedTools : [ ...config . strategies . extractTool . protectedTools ] ,
587596 turnProtection : { ...config . strategies . extractTool . turnProtection } ,
588- nudge : { ...config . strategies . extractTool . nudge }
597+ nudge : { ...config . strategies . extractTool . nudge } ,
598+ showDistillation : config . strategies . extractTool . showDistillation
589599 } ,
590600 supersedeWrites : {
591601 ...config . strategies . supersedeWrites
0 commit comments