@tuanhung303/opencode-acp 2.4.0 → 2.4.1

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.
Files changed (64) hide show
  1. package/dist/lib/config-schema.d.ts +88 -0
  2. package/dist/lib/config-schema.d.ts.map +1 -1
  3. package/dist/lib/config-schema.js +36 -0
  4. package/dist/lib/config-schema.js.map +1 -1
  5. package/dist/lib/config.d.ts +26 -0
  6. package/dist/lib/config.d.ts.map +1 -1
  7. package/dist/lib/config.js +49 -0
  8. package/dist/lib/config.js.map +1 -1
  9. package/dist/lib/hooks.d.ts.map +1 -1
  10. package/dist/lib/hooks.js +90 -14
  11. package/dist/lib/hooks.js.map +1 -1
  12. package/dist/lib/prompts/system/both.d.ts +1 -1
  13. package/dist/lib/prompts/system/both.d.ts.map +1 -1
  14. package/dist/lib/prompts/system/both.js +40 -42
  15. package/dist/lib/prompts/system/both.js.map +1 -1
  16. package/dist/lib/prompts/system/discard.d.ts +1 -1
  17. package/dist/lib/prompts/system/discard.d.ts.map +1 -1
  18. package/dist/lib/prompts/system/discard.js +33 -30
  19. package/dist/lib/prompts/system/discard.js.map +1 -1
  20. package/dist/lib/prompts/system/extract.d.ts +1 -1
  21. package/dist/lib/prompts/system/extract.d.ts.map +1 -1
  22. package/dist/lib/prompts/system/extract.js +27 -29
  23. package/dist/lib/prompts/system/extract.js.map +1 -1
  24. package/dist/lib/state/state.d.ts.map +1 -1
  25. package/dist/lib/state/state.js +2 -0
  26. package/dist/lib/state/state.js.map +1 -1
  27. package/dist/lib/state/types.d.ts +109 -20
  28. package/dist/lib/state/types.d.ts.map +1 -1
  29. package/dist/lib/state/utils.d.ts +43 -0
  30. package/dist/lib/state/utils.d.ts.map +1 -1
  31. package/dist/lib/state/utils.js +138 -0
  32. package/dist/lib/state/utils.js.map +1 -1
  33. package/dist/lib/strategies/deduplication.d.ts.map +1 -1
  34. package/dist/lib/strategies/deduplication.js +19 -3
  35. package/dist/lib/strategies/deduplication.js.map +1 -1
  36. package/dist/lib/strategies/error-chain-collapse.d.ts +9 -0
  37. package/dist/lib/strategies/error-chain-collapse.d.ts.map +1 -0
  38. package/dist/lib/strategies/error-chain-collapse.js +118 -0
  39. package/dist/lib/strategies/error-chain-collapse.js.map +1 -0
  40. package/dist/lib/strategies/image-pruning.d.ts +16 -0
  41. package/dist/lib/strategies/image-pruning.d.ts.map +1 -0
  42. package/dist/lib/strategies/image-pruning.js +251 -0
  43. package/dist/lib/strategies/image-pruning.js.map +1 -0
  44. package/dist/lib/strategies/index.d.ts +3 -0
  45. package/dist/lib/strategies/index.d.ts.map +1 -1
  46. package/dist/lib/strategies/index.js +3 -0
  47. package/dist/lib/strategies/index.js.map +1 -1
  48. package/dist/lib/strategies/purge-errors.d.ts.map +1 -1
  49. package/dist/lib/strategies/purge-errors.js +15 -3
  50. package/dist/lib/strategies/purge-errors.js.map +1 -1
  51. package/dist/lib/strategies/stale-read-pruning.d.ts +16 -0
  52. package/dist/lib/strategies/stale-read-pruning.d.ts.map +1 -0
  53. package/dist/lib/strategies/stale-read-pruning.js +132 -0
  54. package/dist/lib/strategies/stale-read-pruning.js.map +1 -0
  55. package/dist/lib/strategies/supersede-writes.d.ts.map +1 -1
  56. package/dist/lib/strategies/supersede-writes.js +15 -3
  57. package/dist/lib/strategies/supersede-writes.js.map +1 -1
  58. package/dist/lib/strategies/thinking-compression.d.ts.map +1 -1
  59. package/dist/lib/strategies/thinking-compression.js +15 -8
  60. package/dist/lib/strategies/thinking-compression.js.map +1 -1
  61. package/dist/lib/strategies/truncation.d.ts.map +1 -1
  62. package/dist/lib/strategies/truncation.js +17 -4
  63. package/dist/lib/strategies/truncation.js.map +1 -1
  64. package/package.json +1 -1
@@ -45,6 +45,35 @@ export declare const TurnProtectionSchema: z.ZodObject<{
45
45
  enabled: z.ZodOptional<z.ZodBoolean>;
46
46
  turns: z.ZodOptional<z.ZodNumber>;
47
47
  }, z.core.$strip>;
48
+ export declare const TruncationSchema: z.ZodObject<{
49
+ enabled: z.ZodOptional<z.ZodBoolean>;
50
+ maxTokens: z.ZodOptional<z.ZodNumber>;
51
+ headRatio: z.ZodOptional<z.ZodNumber>;
52
+ tailRatio: z.ZodOptional<z.ZodNumber>;
53
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
54
+ targetTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
55
+ }, z.core.$strip>;
56
+ export declare const ThinkingCompressionSchema: z.ZodObject<{
57
+ enabled: z.ZodOptional<z.ZodBoolean>;
58
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
59
+ maxTokens: z.ZodOptional<z.ZodNumber>;
60
+ }, z.core.$strip>;
61
+ export declare const ImagePruningSchema: z.ZodObject<{
62
+ enabled: z.ZodOptional<z.ZodBoolean>;
63
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
64
+ minBase64Length: z.ZodOptional<z.ZodNumber>;
65
+ targetTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
66
+ }, z.core.$strip>;
67
+ export declare const StaleReadPruningSchema: z.ZodObject<{
68
+ enabled: z.ZodOptional<z.ZodBoolean>;
69
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
70
+ protectedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
71
+ }, z.core.$strip>;
72
+ export declare const ErrorChainCollapseSchema: z.ZodObject<{
73
+ enabled: z.ZodOptional<z.ZodBoolean>;
74
+ minChainLength: z.ZodOptional<z.ZodNumber>;
75
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
76
+ }, z.core.$strip>;
48
77
  export declare const StrategiesSchema: z.ZodObject<{
49
78
  deduplication: z.ZodOptional<z.ZodObject<{
50
79
  enabled: z.ZodOptional<z.ZodBoolean>;
@@ -58,6 +87,35 @@ export declare const StrategiesSchema: z.ZodObject<{
58
87
  turns: z.ZodOptional<z.ZodNumber>;
59
88
  protectedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
60
89
  }, z.core.$strip>>;
90
+ truncation: z.ZodOptional<z.ZodObject<{
91
+ enabled: z.ZodOptional<z.ZodBoolean>;
92
+ maxTokens: z.ZodOptional<z.ZodNumber>;
93
+ headRatio: z.ZodOptional<z.ZodNumber>;
94
+ tailRatio: z.ZodOptional<z.ZodNumber>;
95
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
96
+ targetTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
97
+ }, z.core.$strip>>;
98
+ thinkingCompression: z.ZodOptional<z.ZodObject<{
99
+ enabled: z.ZodOptional<z.ZodBoolean>;
100
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
101
+ maxTokens: z.ZodOptional<z.ZodNumber>;
102
+ }, z.core.$strip>>;
103
+ imagePruning: z.ZodOptional<z.ZodObject<{
104
+ enabled: z.ZodOptional<z.ZodBoolean>;
105
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
106
+ minBase64Length: z.ZodOptional<z.ZodNumber>;
107
+ targetTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
108
+ }, z.core.$strip>>;
109
+ staleReadPruning: z.ZodOptional<z.ZodObject<{
110
+ enabled: z.ZodOptional<z.ZodBoolean>;
111
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
112
+ protectedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
113
+ }, z.core.$strip>>;
114
+ errorChainCollapse: z.ZodOptional<z.ZodObject<{
115
+ enabled: z.ZodOptional<z.ZodBoolean>;
116
+ minChainLength: z.ZodOptional<z.ZodNumber>;
117
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
118
+ }, z.core.$strip>>;
61
119
  }, z.core.$strip>;
62
120
  export declare const PluginConfigSchema: z.ZodObject<{
63
121
  $schema: z.ZodOptional<z.ZodString>;
@@ -69,6 +127,7 @@ export declare const PluginConfigSchema: z.ZodObject<{
69
127
  minimal: "minimal";
70
128
  detailed: "detailed";
71
129
  }>>;
130
+ autoPruneAfterTool: z.ZodOptional<z.ZodBoolean>;
72
131
  commands: z.ZodOptional<z.ZodObject<{
73
132
  enabled: z.ZodOptional<z.ZodBoolean>;
74
133
  protectedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -103,6 +162,35 @@ export declare const PluginConfigSchema: z.ZodObject<{
103
162
  turns: z.ZodOptional<z.ZodNumber>;
104
163
  protectedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
105
164
  }, z.core.$strip>>;
165
+ truncation: z.ZodOptional<z.ZodObject<{
166
+ enabled: z.ZodOptional<z.ZodBoolean>;
167
+ maxTokens: z.ZodOptional<z.ZodNumber>;
168
+ headRatio: z.ZodOptional<z.ZodNumber>;
169
+ tailRatio: z.ZodOptional<z.ZodNumber>;
170
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
171
+ targetTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
172
+ }, z.core.$strip>>;
173
+ thinkingCompression: z.ZodOptional<z.ZodObject<{
174
+ enabled: z.ZodOptional<z.ZodBoolean>;
175
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
176
+ maxTokens: z.ZodOptional<z.ZodNumber>;
177
+ }, z.core.$strip>>;
178
+ imagePruning: z.ZodOptional<z.ZodObject<{
179
+ enabled: z.ZodOptional<z.ZodBoolean>;
180
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
181
+ minBase64Length: z.ZodOptional<z.ZodNumber>;
182
+ targetTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
183
+ }, z.core.$strip>>;
184
+ staleReadPruning: z.ZodOptional<z.ZodObject<{
185
+ enabled: z.ZodOptional<z.ZodBoolean>;
186
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
187
+ protectedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
188
+ }, z.core.$strip>>;
189
+ errorChainCollapse: z.ZodOptional<z.ZodObject<{
190
+ enabled: z.ZodOptional<z.ZodBoolean>;
191
+ minChainLength: z.ZodOptional<z.ZodNumber>;
192
+ minTurnsOld: z.ZodOptional<z.ZodNumber>;
193
+ }, z.core.$strip>>;
106
194
  }, z.core.$strip>>;
107
195
  }, z.core.$strip>;
108
196
  export type PluginConfigInput = z.infer<typeof PluginConfigSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"config-schema.d.ts","sourceRoot":"","sources":["../../lib/config-schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,mBAAmB;;;iBAG9B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;iBAE5B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;iBAE7B,CAAA;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;iBAItB,CAAA;AAEF,eAAO,MAAM,cAAc;;;iBAGzB,CAAA;AAEF,eAAO,MAAM,qBAAqB;;iBAEhC,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;iBAI5B,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;iBAG/B,CAAA;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;iBAI3B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAW7B,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAElE;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,EAAE,CAWxD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAuBxE"}
1
+ {"version":3,"file":"config-schema.d.ts","sourceRoot":"","sources":["../../lib/config-schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,mBAAmB;;;iBAG9B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;iBAE5B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;iBAE7B,CAAA;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;iBAItB,CAAA;AAEF,eAAO,MAAM,cAAc;;;iBAGzB,CAAA;AAEF,eAAO,MAAM,qBAAqB;;iBAEhC,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;iBAI5B,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;iBAG/B,CAAA;AAEF,eAAO,MAAM,gBAAgB;;;;;;;iBAO3B,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;iBAIpC,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;iBAK7B,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;iBAIjC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;iBAInC,CAAA;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAS3B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAY7B,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAElE;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,EAAE,CAWxD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAwBxE"}
@@ -38,10 +38,44 @@ export const TurnProtectionSchema = z.object({
38
38
  enabled: z.boolean().optional(),
39
39
  turns: z.number().int().positive().optional(),
40
40
  });
41
+ export const TruncationSchema = z.object({
42
+ enabled: z.boolean().optional(),
43
+ maxTokens: z.number().int().positive().optional(),
44
+ headRatio: z.number().min(0).max(1).optional(),
45
+ tailRatio: z.number().min(0).max(1).optional(),
46
+ minTurnsOld: z.number().int().nonnegative().optional(),
47
+ targetTools: z.array(z.string()).optional(),
48
+ });
49
+ export const ThinkingCompressionSchema = z.object({
50
+ enabled: z.boolean().optional(),
51
+ minTurnsOld: z.number().int().nonnegative().optional(),
52
+ maxTokens: z.number().int().positive().optional(),
53
+ });
54
+ export const ImagePruningSchema = z.object({
55
+ enabled: z.boolean().optional(),
56
+ minTurnsOld: z.number().int().nonnegative().optional(),
57
+ minBase64Length: z.number().int().positive().optional(),
58
+ targetTools: z.array(z.string()).optional(),
59
+ });
60
+ export const StaleReadPruningSchema = z.object({
61
+ enabled: z.boolean().optional(),
62
+ minTurnsOld: z.number().int().nonnegative().optional(),
63
+ protectedTools: z.array(z.string()).optional(),
64
+ });
65
+ export const ErrorChainCollapseSchema = z.object({
66
+ enabled: z.boolean().optional(),
67
+ minChainLength: z.number().int().positive().optional(),
68
+ minTurnsOld: z.number().int().nonnegative().optional(),
69
+ });
41
70
  export const StrategiesSchema = z.object({
42
71
  deduplication: DeduplicationSchema.optional(),
43
72
  supersedeWrites: SupersedeWritesSchema.optional(),
44
73
  purgeErrors: PurgeErrorsSchema.optional(),
74
+ truncation: TruncationSchema.optional(),
75
+ thinkingCompression: ThinkingCompressionSchema.optional(),
76
+ imagePruning: ImagePruningSchema.optional(),
77
+ staleReadPruning: StaleReadPruningSchema.optional(),
78
+ errorChainCollapse: ErrorChainCollapseSchema.optional(),
45
79
  });
46
80
  export const PluginConfigSchema = z.object({
47
81
  $schema: z.string().optional(),
@@ -49,6 +83,7 @@ export const PluginConfigSchema = z.object({
49
83
  debug: z.boolean().optional(),
50
84
  showUpdateToasts: z.boolean().optional(), // Deprecated but kept for backwards compatibility
51
85
  pruneNotification: z.enum(["off", "minimal", "detailed"]).optional(),
86
+ autoPruneAfterTool: z.boolean().optional(),
52
87
  commands: CommandsSchema.optional(),
53
88
  turnProtection: TurnProtectionSchema.optional(),
54
89
  protectedFilePatterns: z.array(z.string()).optional(),
@@ -80,6 +115,7 @@ export function getUnknownKeys(config) {
80
115
  "debug",
81
116
  "showUpdateToasts",
82
117
  "pruneNotification",
118
+ "autoPruneAfterTool",
83
119
  "commands",
84
120
  "turnProtection",
85
121
  "protectedFilePatterns",
@@ -1 +1 @@
1
- {"version":3,"file":"config-schema.js","sourceRoot":"","sources":["../../lib/config-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-schema.js","sourceRoot":"","sources":["../../lib/config-schema.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,29 @@ export interface ThinkingCompression {
54
54
  /** Maximum tokens to keep from thinking block (default: 500) */
55
55
  maxTokens: number;
56
56
  }
57
+ export interface ImagePruning {
58
+ enabled: boolean;
59
+ /** Minimum turns old before pruning images (default: 1) */
60
+ minTurnsOld: number;
61
+ /** Minimum base64 string length to consider pruning (default: 1000) */
62
+ minBase64Length: number;
63
+ /** Tools to apply image pruning to (default: ["read", "webfetch", "pdf-reader"]) */
64
+ targetTools: string[];
65
+ }
66
+ export interface StaleReadPruning {
67
+ enabled: boolean;
68
+ /** Minimum turns old before pruning stale reads (default: 2) */
69
+ minTurnsOld: number;
70
+ /** Protected tools that should not be pruned */
71
+ protectedTools: string[];
72
+ }
73
+ export interface ErrorChainCollapse {
74
+ enabled: boolean;
75
+ /** Minimum chain length to collapse (default: 3) */
76
+ minChainLength: number;
77
+ /** Minimum turns old before collapsing (default: 1) */
78
+ minTurnsOld: number;
79
+ }
57
80
  export interface TurnProtection {
58
81
  enabled: boolean;
59
82
  turns: number;
@@ -79,6 +102,9 @@ export interface PluginConfig {
79
102
  purgeErrors: PurgeErrors;
80
103
  truncation: Truncation;
81
104
  thinkingCompression: ThinkingCompression;
105
+ imagePruning: ImagePruning;
106
+ staleReadPruning: StaleReadPruning;
107
+ errorChainCollapse: ErrorChainCollapse;
82
108
  };
83
109
  }
84
110
  export declare function getConfig(ctx: PluginInput): PluginConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAGtD,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,gBAAgB,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,WAAW,YAAY;IACzB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,4DAA4D;IAC5D,6BAA6B,EAAE,OAAO,CAAA;IACtC,2EAA2E;IAC3E,sBAAsB,EAAE,MAAM,CAAA;CACjC;AAED,MAAM,WAAW,KAAK;IAClB,QAAQ,EAAE,YAAY,CAAA;IACtB,OAAO,EAAE,WAAW,CAAA;IACpB,OAAO,EAAE,WAAW,CAAA;CACvB;AAED,MAAM,WAAW,QAAQ;IACrB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE,OAAO,CAAA;IAChB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAA;IACjB,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAA;IACjB,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAA;IACjB,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAA;IACnB,+EAA+E;IAC/E,WAAW,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAA;IACnB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;IACd,iBAAiB,EAAE,KAAK,GAAG,SAAS,GAAG,UAAU,CAAA;IACjD;;;;;OAKG;IACH,kBAAkB,EAAE,OAAO,CAAA;IAC3B,QAAQ,EAAE,QAAQ,CAAA;IAClB,cAAc,EAAE,cAAc,CAAA;IAC9B,qBAAqB,EAAE,MAAM,EAAE,CAAA;IAC/B,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE;QACR,aAAa,EAAE,aAAa,CAAA;QAC5B,eAAe,EAAE,eAAe,CAAA;QAChC,WAAW,EAAE,WAAW,CAAA;QACxB,UAAU,EAAE,UAAU,CAAA;QACtB,mBAAmB,EAAE,mBAAmB,CAAA;KAC3C,CAAA;CACJ;AAiXD,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CAmIxD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAGtD,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,gBAAgB,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,WAAW,YAAY;IACzB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,4DAA4D;IAC5D,6BAA6B,EAAE,OAAO,CAAA;IACtC,2EAA2E;IAC3E,sBAAsB,EAAE,MAAM,CAAA;CACjC;AAED,MAAM,WAAW,KAAK;IAClB,QAAQ,EAAE,YAAY,CAAA;IACtB,OAAO,EAAE,WAAW,CAAA;IACpB,OAAO,EAAE,WAAW,CAAA;CACvB;AAED,MAAM,WAAW,QAAQ;IACrB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE,OAAO,CAAA;IAChB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAA;IACjB,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAA;IACjB,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAA;IACjB,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAA;IACnB,+EAA+E;IAC/E,WAAW,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAA;IACnB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAA;IACnB,uEAAuE;IACvE,eAAe,EAAE,MAAM,CAAA;IACvB,oFAAoF;IACpF,WAAW,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,gDAAgD;IAChD,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,oDAAoD;IACpD,cAAc,EAAE,MAAM,CAAA;IACtB,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;IACd,iBAAiB,EAAE,KAAK,GAAG,SAAS,GAAG,UAAU,CAAA;IACjD;;;;;OAKG;IACH,kBAAkB,EAAE,OAAO,CAAA;IAC3B,QAAQ,EAAE,QAAQ,CAAA;IAClB,cAAc,EAAE,cAAc,CAAA;IAC9B,qBAAqB,EAAE,MAAM,EAAE,CAAA;IAC/B,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE;QACR,aAAa,EAAE,aAAa,CAAA;QAC5B,eAAe,EAAE,eAAe,CAAA;QAChC,WAAW,EAAE,WAAW,CAAA;QACxB,UAAU,EAAE,UAAU,CAAA;QACtB,mBAAmB,EAAE,mBAAmB,CAAA;QACxC,YAAY,EAAE,YAAY,CAAA;QAC1B,gBAAgB,EAAE,gBAAgB,CAAA;QAClC,kBAAkB,EAAE,kBAAkB,CAAA;KACzC,CAAA;CACJ;AAsaD,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CAmIxD"}
@@ -127,6 +127,22 @@ const defaultConfig = {
127
127
  minTurnsOld: 3,
128
128
  maxTokens: 500,
129
129
  },
130
+ imagePruning: {
131
+ enabled: true,
132
+ minTurnsOld: 1,
133
+ minBase64Length: 1000,
134
+ targetTools: ["read", "webfetch", "pdf-reader"],
135
+ },
136
+ staleReadPruning: {
137
+ enabled: true,
138
+ minTurnsOld: 2,
139
+ protectedTools: [],
140
+ },
141
+ errorChainCollapse: {
142
+ enabled: true,
143
+ minChainLength: 3,
144
+ minTurnsOld: 1,
145
+ },
130
146
  },
131
147
  };
132
148
  const GLOBAL_CONFIG_DIR = join(homedir(), ".config", "opencode");
@@ -254,6 +270,28 @@ function mergeStrategies(base, override) {
254
270
  minTurnsOld: override.thinkingCompression?.minTurnsOld ?? base.thinkingCompression.minTurnsOld,
255
271
  maxTokens: override.thinkingCompression?.maxTokens ?? base.thinkingCompression.maxTokens,
256
272
  },
273
+ imagePruning: {
274
+ enabled: override.imagePruning?.enabled ?? base.imagePruning.enabled,
275
+ minTurnsOld: override.imagePruning?.minTurnsOld ?? base.imagePruning.minTurnsOld,
276
+ minBase64Length: override.imagePruning?.minBase64Length ?? base.imagePruning.minBase64Length,
277
+ targetTools: override.imagePruning?.targetTools ?? base.imagePruning.targetTools,
278
+ },
279
+ staleReadPruning: {
280
+ enabled: override.staleReadPruning?.enabled ?? base.staleReadPruning.enabled,
281
+ minTurnsOld: override.staleReadPruning?.minTurnsOld ?? base.staleReadPruning.minTurnsOld,
282
+ protectedTools: [
283
+ ...new Set([
284
+ ...base.staleReadPruning.protectedTools,
285
+ ...(override.staleReadPruning?.protectedTools ?? []),
286
+ ]),
287
+ ],
288
+ },
289
+ errorChainCollapse: {
290
+ enabled: override.errorChainCollapse?.enabled ?? base.errorChainCollapse.enabled,
291
+ minChainLength: override.errorChainCollapse?.minChainLength ??
292
+ base.errorChainCollapse.minChainLength,
293
+ minTurnsOld: override.errorChainCollapse?.minTurnsOld ?? base.errorChainCollapse.minTurnsOld,
294
+ },
257
295
  };
258
296
  }
259
297
  function mergeTools(base, override) {
@@ -325,6 +363,17 @@ function deepCloneConfig(config) {
325
363
  thinkingCompression: {
326
364
  ...config.strategies.thinkingCompression,
327
365
  },
366
+ imagePruning: {
367
+ ...config.strategies.imagePruning,
368
+ targetTools: [...config.strategies.imagePruning.targetTools],
369
+ },
370
+ staleReadPruning: {
371
+ ...config.strategies.staleReadPruning,
372
+ protectedTools: [...config.strategies.staleReadPruning.protectedTools],
373
+ },
374
+ errorChainCollapse: {
375
+ ...config.strategies.errorChainCollapse,
376
+ },
328
377
  },
329
378
  };
330
379
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../lib/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAsB,MAAM,SAAS,CAAA;AAC1E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AA6B5C,wBAAgB,yBAAyB,CACrC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,IAEN,QAAQ,OAAO,EAAE,QAAQ;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,mBA4B9D;AAED,wBAAgB,iCAAiC,CAC7C,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,IAEN,OAAO,EAAE,EAAE,QAAQ;IAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;CAAE,mBA8E7D;AAED,wBAAgB,2BAA2B,CACvC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,MAAM,IAGpB,OAAO;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAChE,SAAS;IAAE,KAAK,EAAE,GAAG,EAAE,CAAA;CAAE,mBAqFhC;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CACzC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,MAAM,IAGpB,OAAO;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC1D,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAA;CAAE,mBA4GhE"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../lib/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAsB,MAAM,SAAS,CAAA;AAC1E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AA6D5C,wBAAgB,yBAAyB,CACrC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,IAEN,QAAQ,OAAO,EAAE,QAAQ;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,mBA4B9D;AAED,wBAAgB,iCAAiC,CAC7C,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,IAEN,OAAO,EAAE,EAAE,QAAQ;IAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;CAAE,mBA6F7D;AAED,wBAAgB,2BAA2B,CACvC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,MAAM,IAGpB,OAAO;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAChE,SAAS;IAAE,KAAK,EAAE,GAAG,EAAE,CAAA;CAAE,mBAqFhC;AA+HD;;;;GAIG;AACH,wBAAgB,6BAA6B,CACzC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,MAAM,IAGpB,OAAO;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC1D,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAA;CAAE,mBAyGhE"}
package/dist/lib/hooks.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { syncToolCache } from "./state/tool-cache";
2
- import { deduplicate, supersedeWrites, purgeErrors, truncateLargeOutputs, compressThinkingBlocks, } from "./strategies";
2
+ import { deduplicate, supersedeWrites, purgeErrors, truncateLargeOutputs, compressThinkingBlocks, pruneBase64Images, pruneStaleReads, collapseErrorChains, } from "./strategies";
3
3
  import { prune, injectHashesIntoToolOutputs, injectHashesIntoAssistantMessages } from "./messages";
4
4
  import { checkSession, ensureSessionInitialized } from "./state";
5
5
  import { loadPrompt } from "./prompts";
@@ -13,6 +13,22 @@ import { safeExecute } from "./safe-execute";
13
13
  import { sendUnifiedNotification } from "./ui/notification";
14
14
  import { getCurrentParams } from "./strategies/utils";
15
15
  import { saveSessionState } from "./state/persistence";
16
+ const notificationDebounceState = new Map();
17
+ const NOTIFICATION_DEBOUNCE_MS = 500; // Batch notifications within 500ms window
18
+ const NOTIFICATION_MIN_INTERVAL_MS = 1000; // Minimum time between notifications
19
+ const NOTIFICATION_CLEANUP_INTERVAL_MS = 300000; // Clean up stale sessions every 5 minutes
20
+ // Cleanup interval for notification debounce state
21
+ setInterval(() => {
22
+ const now = Date.now();
23
+ const staleThreshold = NOTIFICATION_CLEANUP_INTERVAL_MS * 2; // 10 minutes
24
+ for (const [sessionId, state] of notificationDebounceState.entries()) {
25
+ // Clean up sessions with no pending notifications and old last notification time
26
+ if (state.pendingPrunedIds.length === 0 &&
27
+ now - state.lastNotificationTime > staleThreshold) {
28
+ notificationDebounceState.delete(sessionId);
29
+ }
30
+ }
31
+ }, NOTIFICATION_CLEANUP_INTERVAL_MS);
16
32
  const INTERNAL_AGENT_SIGNATURES = [
17
33
  "You are a title generator",
18
34
  "You are a helpful AI assistant tasked with summarizing conversations",
@@ -75,6 +91,9 @@ export function createChatMessageTransformHandler(client, state, logger, config)
75
91
  safeExecute(() => purgeErrors(state, logger, config, output.messages), logger, "purgeErrors");
76
92
  safeExecute(() => truncateLargeOutputs(state, logger, config, output.messages), logger, "truncateLargeOutputs");
77
93
  safeExecute(() => compressThinkingBlocks(state, logger, config, output.messages), logger, "compressThinkingBlocks");
94
+ safeExecute(() => pruneBase64Images(state, logger, config, output.messages), logger, "pruneBase64Images");
95
+ safeExecute(() => pruneStaleReads(state, logger, config, output.messages), logger, "pruneStaleReads");
96
+ safeExecute(() => collapseErrorChains(state, logger, config, output.messages), logger, "collapseErrorChains");
78
97
  safeExecute(() => prune(state, logger, config, output.messages), logger, "prune");
79
98
  // NOTE: insertPruneToolContext removed - hashes are now embedded in tool outputs
80
99
  logger.debug("Transform complete", {
@@ -166,6 +185,71 @@ export function createCommandExecuteHandler(client, state, logger, config, worki
166
185
  }
167
186
  };
168
187
  }
188
+ /**
189
+ * Sends a debounced notification for pruned items.
190
+ * Batches multiple pruning events within a time window into a single notification.
191
+ */
192
+ async function sendDebouncedNotification(client, logger, config, state, sessionId, newlyPrunedIds, messages, workingDirectory) {
193
+ // Get or create debounce state for this session
194
+ let debounceState = notificationDebounceState.get(sessionId);
195
+ if (!debounceState) {
196
+ debounceState = {
197
+ timeoutId: null,
198
+ pendingPrunedIds: [],
199
+ lastNotificationTime: 0,
200
+ };
201
+ notificationDebounceState.set(sessionId, debounceState);
202
+ }
203
+ // Add newly pruned IDs to pending list
204
+ debounceState.pendingPrunedIds.push(...newlyPrunedIds);
205
+ // Clear existing timeout if any
206
+ if (debounceState.timeoutId) {
207
+ clearTimeout(debounceState.timeoutId);
208
+ debounceState.timeoutId = null;
209
+ }
210
+ // Check if enough time has passed since last notification
211
+ const now = Date.now();
212
+ const timeSinceLastNotification = now - debounceState.lastNotificationTime;
213
+ if (timeSinceLastNotification >= NOTIFICATION_MIN_INTERVAL_MS) {
214
+ // Send immediately if minimum interval has passed
215
+ await flushPendingNotification(client, logger, config, state, sessionId, messages, workingDirectory, debounceState);
216
+ }
217
+ else {
218
+ // Schedule debounced notification
219
+ debounceState.timeoutId = setTimeout(async () => {
220
+ await flushPendingNotification(client, logger, config, state, sessionId, messages, workingDirectory, debounceState);
221
+ }, NOTIFICATION_DEBOUNCE_MS);
222
+ }
223
+ }
224
+ /**
225
+ * Flushes pending notification for a session.
226
+ */
227
+ async function flushPendingNotification(client, logger, config, state, sessionId, messages, workingDirectory, debounceState) {
228
+ if (debounceState.pendingPrunedIds.length === 0) {
229
+ return;
230
+ }
231
+ // Deduplicate pending IDs
232
+ const uniquePrunedIds = [...new Set(debounceState.pendingPrunedIds)];
233
+ debounceState.pendingPrunedIds = [];
234
+ debounceState.timeoutId = null;
235
+ debounceState.lastNotificationTime = Date.now();
236
+ // Collect metadata for notification
237
+ const toolMetadata = new Map();
238
+ for (const callId of uniquePrunedIds) {
239
+ const toolParameters = state.toolParameters.get(callId);
240
+ if (toolParameters) {
241
+ toolMetadata.set(callId, toolParameters);
242
+ }
243
+ }
244
+ const currentParams = getCurrentParams(state, messages, logger);
245
+ // Send unified notification
246
+ await sendUnifiedNotification(client, logger, config, state, sessionId, uniquePrunedIds, toolMetadata, undefined, currentParams, workingDirectory, undefined, { simplified: true });
247
+ // Save state
248
+ await saveSessionState(state, logger);
249
+ logger.debug(`Sent batched notification for ${uniquePrunedIds.length} pruned tool(s)`, {
250
+ prunedCount: uniquePrunedIds.length,
251
+ });
252
+ }
169
253
  /**
170
254
  * Handler for tool.execute.after hook.
171
255
  * Runs lightweight pruning strategies immediately after each tool execution
@@ -203,6 +287,9 @@ export function createToolExecuteAfterHandler(client, state, logger, config, wor
203
287
  safeExecute(() => purgeErrors(state, logger, config, messages), logger, "purgeErrors");
204
288
  safeExecute(() => truncateLargeOutputs(state, logger, config, messages), logger, "truncateLargeOutputs");
205
289
  safeExecute(() => compressThinkingBlocks(state, logger, config, messages), logger, "compressThinkingBlocks");
290
+ safeExecute(() => pruneBase64Images(state, logger, config, messages), logger, "pruneBase64Images");
291
+ safeExecute(() => pruneStaleReads(state, logger, config, messages), logger, "pruneStaleReads");
292
+ safeExecute(() => collapseErrorChains(state, logger, config, messages), logger, "collapseErrorChains");
206
293
  // Apply pruning
207
294
  safeExecute(() => prune(state, logger, config, messages), logger, "prune");
208
295
  // Check if anything was pruned
@@ -211,19 +298,8 @@ export function createToolExecuteAfterHandler(client, state, logger, config, wor
211
298
  if (newlyPrunedCount > 0) {
212
299
  // Get the newly pruned IDs
213
300
  const newlyPrunedIds = state.prune.toolIds.slice(-newlyPrunedCount);
214
- // Collect metadata for notification
215
- const toolMetadata = new Map();
216
- for (const callId of newlyPrunedIds) {
217
- const toolParameters = state.toolParameters.get(callId);
218
- if (toolParameters) {
219
- toolMetadata.set(callId, toolParameters);
220
- }
221
- }
222
- const currentParams = getCurrentParams(state, messages, logger);
223
- // Send simplified notification
224
- await sendUnifiedNotification(client, logger, config, state, sessionId, newlyPrunedIds, toolMetadata, undefined, currentParams, workingDirectory, undefined, { simplified: true });
225
- // Save state
226
- await saveSessionState(state, logger);
301
+ // Send debounced notification instead of immediate
302
+ await sendDebouncedNotification(client, logger, config, state, sessionId, newlyPrunedIds, messages, workingDirectory);
227
303
  logger.debug(`Auto-pruned ${newlyPrunedCount} tool(s) after ${input.tool}`, {
228
304
  toolName: input.tool,
229
305
  prunedCount: newlyPrunedCount,
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../lib/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../lib/hooks.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const SYSTEM_PROMPT_BOTH = "<system-reminder>\n<instruction name=context_management_protocol policy_level=critical>\n\nENVIRONMENT\nYou are operating in a context-constrained environment and must proactively manage your context window using the `discard` and `extract` tools.\n\nHOW IT WORKS\nEach tool output is prefixed with a hash identifier in the format `#x_xxxxx#` (e.g., `#r_a1b2c#`).\nUse these hashes to discard or extract specific tool outputs when they are no longer needed.\n\nExample:\n```\n#r_a1b2c#\n<file content here...>\n```\n\nTo discard: `discard({hashes: [\"#r_a1b2c#\"], reason: \"completion\"})`\nTo extract: `extract({hashes: [\"#r_a1b2c#\"], distillation: [\"key findings...\"]})`\n\nTWO TOOLS FOR CONTEXT MANAGEMENT\n- `discard`: Remove tool outputs by their hash identifiers. No preservation of content.\n- `extract`: Extract key findings into distilled knowledge before removing raw outputs. Use when you need to preserve information.\n\nCHOOSING THE RIGHT TOOL\nAsk: \"Do I need to preserve any information from this output?\"\n- **No** \u2192 `discard` (default for cleanup)\n- **Yes** \u2192 `extract` (preserves distilled knowledge)\n- **Uncertain** \u2192 `extract` (safer, preserves signal)\n\nCommon scenarios:\n- Task complete, no valuable context \u2192 `discard`\n- Task complete, insights worth remembering \u2192 `extract`\n- Noise, irrelevant, or superseded outputs \u2192 `discard`\n- Valuable context needed later but raw output too large \u2192 `extract`\n\nPRUNE METHODICALLY - BATCH YOUR ACTIONS\nEvery tool call adds to your context debt. You MUST pay this down regularly by pruning. Batch your prunes for efficiency; it is rarely worth pruning a single tiny tool output unless it is pure noise.\n\nYou WILL evaluate pruning when ANY of these are true:\n- Task or sub-task is complete\n- You are about to start a new phase of work\n- Write or edit operations are complete (pruning removes the large input content)\n\nYou MUST NOT prune when:\n- The tool output will be needed for upcoming implementation work\n- The output contains files or context you'll need to reference when making edits\n\nPruning that forces you to re-call the same tool later is a net loss. Only prune when you're confident the information won't be needed again.\n\nNOTES\nWhen in doubt, keep it. Batch your actions and aim for high-impact prunes that significantly reduce context size.\nFAILURE TO PRUNE will result in context leakage and DEGRADED PERFORMANCE.\n\n</instruction>\n\n<instruction name=prune_behavior policy_level=critical>\nCRITICAL REQUIREMENTS - VIOLATION IS UNACCEPTABLE:\n- NEVER acknowledge discard/extract tool output (e.g., \"I've pruned 3 tools\", \"Context pruning complete\")\n- NEVER let context management influence your response content or tone\n- Process prunes SILENTLY and continue the conversation naturally\n\nThe user cannot see prune operations. Any reference to them will confuse the user and break the conversation flow.\n</instruction>\n</system-reminder>";
1
+ export declare const SYSTEM_PROMPT_BOTH = "<system-reminder>\n<instruction name=context_management_protocol policy_level=critical>\n\nPURPOSE\nYou operate in a context-constrained environment. Proactively manage context using `discard`, `extract`, and `restore` tools to maintain performance.\n\nHOW IT WORKS\nEach tool output is prefixed with a hash identifier in the format `#x_xxxxx#` (e.g., `#r_a1b2c#`).\nUse these hashes to manage specific tool outputs.\n\nExample:\n```\n#r_a1b2c#\n<file content here...>\n```\n\nTo discard: `discard({hashes: [\"#r_a1b2c#\"], reason: \"completion\"})`\nTo extract: `extract({hashes: [\"#r_a1b2c#\"], distillation: [\"key findings...\"]})`\n\nTOOL SELECTION\nAsk: \"Do I need to preserve information from this output?\"\n- NO \u2192 discard (removes completely)\n- YES \u2192 extract (preserves distilled knowledge, then prunes)\n- UNCERTAIN \u2192 extract (safer default)\n- MISTAKE \u2192 restore (recovers recently pruned content)\n\nWHEN TO PRUNE\nEvaluate at these checkpoints:\n- \u2713 Task/sub-task complete\n- \u2713 Transitioning to new work phase\n- \u2713 5+ tool outputs accumulated\n- \u2713 Large read (>150 lines) no longer needed\n\nDO NOT PRUNE when:\n- \u2717 Output needed for upcoming edits\n- \u2717 You'll likely re-fetch the same content\n- \u2717 Only 1-2 small outputs (batch instead)\n\nBATCHING\nMinimum 3 outputs OR 1 large output per prune call.\nSingle small prunes waste more context than they save.\n\nPRIORITY ORDER\n1. Never prune what you'll need next\n2. Always prune pure noise immediately\n3. Batch prune at task boundaries\n4. Extract when uncertain (preserves signal)\n\nREASON MAPPING (for discard)\n- \"noise\" \u2192 grep/glob with no useful results\n- \"completion\" \u2192 task done, context served its purpose\n- \"superseded\" \u2192 newer read of same file replaces old\n- \"exploration\" \u2192 search paths that led nowhere\n- \"duplicate\" \u2192 same content read multiple times\n\n</instruction>\n\n<instruction name=prune_behavior policy_level=critical>\nSILENT OPERATION: Never acknowledge pruning to the user.\nProcess context management invisibly and continue naturally.\n</instruction>\n</system-reminder>";
2
2
  //# sourceMappingURL=both.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"both.d.ts","sourceRoot":"","sources":["../../../../lib/prompts/system/both.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,g7FA+DZ,CAAA"}
1
+ {"version":3,"file":"both.d.ts","sourceRoot":"","sources":["../../../../lib/prompts/system/both.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,snEA6DZ,CAAA"}