@p4r4d0xb0x/opencode-dcp 3.0.5 → 3.1.12

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 (217) hide show
  1. package/README.md +31 -26
  2. package/dist/index.d.ts +2 -2
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +7909 -76
  5. package/dist/index.js.map +1 -1
  6. package/dist/lib/commands/compression-targets.d.ts +14 -0
  7. package/dist/lib/commands/compression-targets.d.ts.map +1 -0
  8. package/dist/lib/commands/context.d.ts.map +1 -1
  9. package/dist/lib/commands/decompress.d.ts.map +1 -1
  10. package/dist/lib/commands/index.d.ts +8 -0
  11. package/dist/lib/commands/index.d.ts.map +1 -0
  12. package/dist/lib/commands/manual.d.ts +1 -0
  13. package/dist/lib/commands/manual.d.ts.map +1 -1
  14. package/dist/lib/commands/recompress.d.ts.map +1 -1
  15. package/dist/lib/commands/stats.d.ts.map +1 -1
  16. package/dist/lib/commands/sweep.d.ts.map +1 -1
  17. package/dist/lib/compress/index.d.ts +4 -0
  18. package/dist/lib/compress/index.d.ts.map +1 -0
  19. package/dist/lib/compress/message-utils.d.ts +8 -0
  20. package/dist/lib/compress/message-utils.d.ts.map +1 -0
  21. package/dist/lib/compress/message.d.ts +4 -0
  22. package/dist/lib/compress/message.d.ts.map +1 -0
  23. package/dist/lib/compress/pipeline.d.ts +29 -0
  24. package/dist/lib/compress/pipeline.d.ts.map +1 -0
  25. package/dist/lib/compress/protected-content.d.ts +7 -0
  26. package/dist/lib/compress/protected-content.d.ts.map +1 -0
  27. package/dist/lib/compress/range-utils.d.ts +10 -0
  28. package/dist/lib/compress/range-utils.d.ts.map +1 -0
  29. package/dist/lib/compress/range.d.ts +4 -0
  30. package/dist/lib/compress/range.d.ts.map +1 -0
  31. package/dist/lib/compress/search.d.ts +11 -0
  32. package/dist/lib/compress/search.d.ts.map +1 -0
  33. package/dist/lib/compress/state.d.ts +9 -0
  34. package/dist/lib/compress/state.d.ts.map +1 -0
  35. package/dist/lib/compress/timing.d.ts +18 -0
  36. package/dist/lib/compress/timing.d.ts.map +1 -0
  37. package/dist/lib/compress/types.d.ts +94 -0
  38. package/dist/lib/compress/types.d.ts.map +1 -0
  39. package/dist/lib/{shared-utils.d.ts → compress-permission.d.ts} +2 -4
  40. package/dist/lib/compress-permission.d.ts.map +1 -0
  41. package/dist/lib/config.d.ts +7 -7
  42. package/dist/lib/config.d.ts.map +1 -1
  43. package/dist/lib/hooks.d.ts +4 -1
  44. package/dist/lib/hooks.d.ts.map +1 -1
  45. package/dist/lib/message-ids.d.ts +1 -1
  46. package/dist/lib/message-ids.d.ts.map +1 -1
  47. package/dist/lib/messages/index.d.ts +2 -0
  48. package/dist/lib/messages/index.d.ts.map +1 -1
  49. package/dist/lib/messages/inject/inject.d.ts +3 -2
  50. package/dist/lib/messages/inject/inject.d.ts.map +1 -1
  51. package/dist/lib/messages/inject/utils.d.ts +2 -3
  52. package/dist/lib/messages/inject/utils.d.ts.map +1 -1
  53. package/dist/lib/messages/priority.d.ts +13 -0
  54. package/dist/lib/messages/priority.d.ts.map +1 -0
  55. package/dist/lib/messages/prune.d.ts.map +1 -1
  56. package/dist/lib/messages/query.d.ts +7 -0
  57. package/dist/lib/messages/query.d.ts.map +1 -0
  58. package/dist/lib/messages/shape.d.ts +5 -0
  59. package/dist/lib/messages/shape.d.ts.map +1 -0
  60. package/dist/lib/messages/utils.d.ts +10 -4
  61. package/dist/lib/messages/utils.d.ts.map +1 -1
  62. package/dist/lib/prompts/compress-message.d.ts +2 -0
  63. package/dist/lib/prompts/compress-message.d.ts.map +1 -0
  64. package/dist/lib/prompts/compress-range.d.ts +2 -0
  65. package/dist/lib/prompts/compress-range.d.ts.map +1 -0
  66. package/dist/lib/prompts/context-limit-nudge.d.ts +1 -1
  67. package/dist/lib/prompts/context-limit-nudge.d.ts.map +1 -1
  68. package/dist/lib/prompts/extensions/nudge.d.ts +5 -0
  69. package/dist/lib/prompts/extensions/nudge.d.ts.map +1 -0
  70. package/dist/lib/prompts/extensions/system.d.ts +4 -0
  71. package/dist/lib/prompts/extensions/system.d.ts.map +1 -0
  72. package/dist/lib/prompts/extensions/tool.d.ts +3 -0
  73. package/dist/lib/prompts/extensions/tool.d.ts.map +1 -0
  74. package/dist/lib/prompts/index.d.ts +2 -1
  75. package/dist/lib/prompts/index.d.ts.map +1 -1
  76. package/dist/lib/prompts/iteration-nudge.d.ts +1 -1
  77. package/dist/lib/prompts/iteration-nudge.d.ts.map +1 -1
  78. package/dist/lib/prompts/store.d.ts +5 -4
  79. package/dist/lib/prompts/store.d.ts.map +1 -1
  80. package/dist/lib/prompts/system.d.ts +1 -1
  81. package/dist/lib/prompts/system.d.ts.map +1 -1
  82. package/dist/lib/prompts/turn-nudge.d.ts +1 -1
  83. package/dist/lib/prompts/turn-nudge.d.ts.map +1 -1
  84. package/dist/lib/state/index.d.ts +1 -0
  85. package/dist/lib/state/index.d.ts.map +1 -1
  86. package/dist/lib/state/persistence.d.ts +1 -0
  87. package/dist/lib/state/persistence.d.ts.map +1 -1
  88. package/dist/lib/state/state.d.ts.map +1 -1
  89. package/dist/lib/state/types.d.ts +10 -1
  90. package/dist/lib/state/types.d.ts.map +1 -1
  91. package/dist/lib/state/utils.d.ts +9 -5
  92. package/dist/lib/state/utils.d.ts.map +1 -1
  93. package/dist/lib/strategies/index.d.ts +0 -1
  94. package/dist/lib/strategies/index.d.ts.map +1 -1
  95. package/dist/lib/{strategies/utils.d.ts → token-utils.d.ts} +6 -8
  96. package/dist/lib/token-utils.d.ts.map +1 -0
  97. package/dist/lib/ui/notification.d.ts +8 -1
  98. package/dist/lib/ui/notification.d.ts.map +1 -1
  99. package/dist/lib/ui/utils.d.ts +1 -1
  100. package/dist/lib/ui/utils.d.ts.map +1 -1
  101. package/dist/lib/update.d.ts +22 -0
  102. package/dist/lib/update.d.ts.map +1 -0
  103. package/package.json +26 -15
  104. package/dist/lib/auth.js +0 -32
  105. package/dist/lib/auth.js.map +0 -1
  106. package/dist/lib/commands/context.js +0 -241
  107. package/dist/lib/commands/context.js.map +0 -1
  108. package/dist/lib/commands/decompress.js +0 -159
  109. package/dist/lib/commands/decompress.js.map +0 -1
  110. package/dist/lib/commands/help.js +0 -52
  111. package/dist/lib/commands/help.js.map +0 -1
  112. package/dist/lib/commands/manual.js +0 -48
  113. package/dist/lib/commands/manual.js.map +0 -1
  114. package/dist/lib/commands/recompress.js +0 -137
  115. package/dist/lib/commands/recompress.js.map +0 -1
  116. package/dist/lib/commands/stats.js +0 -62
  117. package/dist/lib/commands/stats.js.map +0 -1
  118. package/dist/lib/commands/sweep.js +0 -194
  119. package/dist/lib/commands/sweep.js.map +0 -1
  120. package/dist/lib/config.js +0 -766
  121. package/dist/lib/config.js.map +0 -1
  122. package/dist/lib/hooks.js +0 -195
  123. package/dist/lib/hooks.js.map +0 -1
  124. package/dist/lib/host-permissions.js +0 -58
  125. package/dist/lib/host-permissions.js.map +0 -1
  126. package/dist/lib/logger.js +0 -204
  127. package/dist/lib/logger.js.map +0 -1
  128. package/dist/lib/message-ids.js +0 -112
  129. package/dist/lib/message-ids.js.map +0 -1
  130. package/dist/lib/messages/index.js +0 -7
  131. package/dist/lib/messages/index.js.map +0 -1
  132. package/dist/lib/messages/inject/inject.js +0 -131
  133. package/dist/lib/messages/inject/inject.js.map +0 -1
  134. package/dist/lib/messages/inject/subagent-results.js +0 -58
  135. package/dist/lib/messages/inject/subagent-results.js.map +0 -1
  136. package/dist/lib/messages/inject/utils.js +0 -198
  137. package/dist/lib/messages/inject/utils.js.map +0 -1
  138. package/dist/lib/messages/prune.js +0 -177
  139. package/dist/lib/messages/prune.js.map +0 -1
  140. package/dist/lib/messages/reasoning-strip.js +0 -33
  141. package/dist/lib/messages/reasoning-strip.js.map +0 -1
  142. package/dist/lib/messages/sync.js +0 -93
  143. package/dist/lib/messages/sync.js.map +0 -1
  144. package/dist/lib/messages/utils.js +0 -118
  145. package/dist/lib/messages/utils.js.map +0 -1
  146. package/dist/lib/prompts/compress.d.ts +0 -2
  147. package/dist/lib/prompts/compress.d.ts.map +0 -1
  148. package/dist/lib/prompts/compress.js +0 -85
  149. package/dist/lib/prompts/compress.js.map +0 -1
  150. package/dist/lib/prompts/context-limit-nudge.js +0 -25
  151. package/dist/lib/prompts/context-limit-nudge.js.map +0 -1
  152. package/dist/lib/prompts/index.js +0 -19
  153. package/dist/lib/prompts/index.js.map +0 -1
  154. package/dist/lib/prompts/internal-overlays.d.ts +0 -5
  155. package/dist/lib/prompts/internal-overlays.d.ts.map +0 -1
  156. package/dist/lib/prompts/internal-overlays.js +0 -43
  157. package/dist/lib/prompts/internal-overlays.js.map +0 -1
  158. package/dist/lib/prompts/iteration-nudge.js +0 -9
  159. package/dist/lib/prompts/iteration-nudge.js.map +0 -1
  160. package/dist/lib/prompts/store.js +0 -346
  161. package/dist/lib/prompts/store.js.map +0 -1
  162. package/dist/lib/prompts/system.js +0 -30
  163. package/dist/lib/prompts/system.js.map +0 -1
  164. package/dist/lib/prompts/turn-nudge.js +0 -12
  165. package/dist/lib/prompts/turn-nudge.js.map +0 -1
  166. package/dist/lib/protected-patterns.js +0 -107
  167. package/dist/lib/protected-patterns.js.map +0 -1
  168. package/dist/lib/shared-utils.d.ts.map +0 -1
  169. package/dist/lib/shared-utils.js +0 -30
  170. package/dist/lib/shared-utils.js.map +0 -1
  171. package/dist/lib/state/index.js +0 -4
  172. package/dist/lib/state/index.js.map +0 -1
  173. package/dist/lib/state/persistence.js +0 -174
  174. package/dist/lib/state/persistence.js.map +0 -1
  175. package/dist/lib/state/state.js +0 -134
  176. package/dist/lib/state/state.js.map +0 -1
  177. package/dist/lib/state/tool-cache.js +0 -69
  178. package/dist/lib/state/tool-cache.js.map +0 -1
  179. package/dist/lib/state/types.js +0 -2
  180. package/dist/lib/state/types.js.map +0 -1
  181. package/dist/lib/state/utils.js +0 -196
  182. package/dist/lib/state/utils.js.map +0 -1
  183. package/dist/lib/strategies/deduplication.js +0 -100
  184. package/dist/lib/strategies/deduplication.js.map +0 -1
  185. package/dist/lib/strategies/index.js +0 -4
  186. package/dist/lib/strategies/index.js.map +0 -1
  187. package/dist/lib/strategies/purge-errors.js +0 -62
  188. package/dist/lib/strategies/purge-errors.js.map +0 -1
  189. package/dist/lib/strategies/supersede-writes.d.ts +0 -13
  190. package/dist/lib/strategies/supersede-writes.d.ts.map +0 -1
  191. package/dist/lib/strategies/supersede-writes.js +0 -94
  192. package/dist/lib/strategies/supersede-writes.js.map +0 -1
  193. package/dist/lib/strategies/utils.d.ts.map +0 -1
  194. package/dist/lib/strategies/utils.js +0 -128
  195. package/dist/lib/strategies/utils.js.map +0 -1
  196. package/dist/lib/subagents/subagent-results.js +0 -52
  197. package/dist/lib/subagents/subagent-results.js.map +0 -1
  198. package/dist/lib/tools/compress.d.ts +0 -4
  199. package/dist/lib/tools/compress.d.ts.map +0 -1
  200. package/dist/lib/tools/compress.js +0 -110
  201. package/dist/lib/tools/compress.js.map +0 -1
  202. package/dist/lib/tools/index.d.ts +0 -3
  203. package/dist/lib/tools/index.d.ts.map +0 -1
  204. package/dist/lib/tools/index.js +0 -2
  205. package/dist/lib/tools/index.js.map +0 -1
  206. package/dist/lib/tools/types.d.ts +0 -13
  207. package/dist/lib/tools/types.d.ts.map +0 -1
  208. package/dist/lib/tools/types.js +0 -2
  209. package/dist/lib/tools/types.js.map +0 -1
  210. package/dist/lib/tools/utils.d.ts +0 -80
  211. package/dist/lib/tools/utils.d.ts.map +0 -1
  212. package/dist/lib/tools/utils.js +0 -675
  213. package/dist/lib/tools/utils.js.map +0 -1
  214. package/dist/lib/ui/notification.js +0 -182
  215. package/dist/lib/ui/notification.js.map +0 -1
  216. package/dist/lib/ui/utils.js +0 -255
  217. package/dist/lib/ui/utils.js.map +0 -1
@@ -0,0 +1,14 @@
1
+ import type { CompressionBlock, PruneMessagesState } from "../state";
2
+ export interface CompressionTarget {
3
+ displayId: number;
4
+ runId: number;
5
+ topic: string;
6
+ compressedTokens: number;
7
+ durationMs: number;
8
+ grouped: boolean;
9
+ blocks: CompressionBlock[];
10
+ }
11
+ export declare function getActiveCompressionTargets(messagesState: PruneMessagesState): CompressionTarget[];
12
+ export declare function getRecompressibleCompressionTargets(messagesState: PruneMessagesState, availableMessageIds: Set<string>): CompressionTarget[];
13
+ export declare function resolveCompressionTarget(messagesState: PruneMessagesState, blockId: number): CompressionTarget | null;
14
+ //# sourceMappingURL=compression-targets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compression-targets.d.ts","sourceRoot":"","sources":["../../../lib/commands/compression-targets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAEpE,MAAM,WAAW,iBAAiB;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,gBAAgB,EAAE,CAAA;CAC7B;AA2DD,wBAAgB,2BAA2B,CACvC,aAAa,EAAE,kBAAkB,GAClC,iBAAiB,EAAE,CAMrB;AAED,wBAAgB,mCAAmC,CAC/C,aAAa,EAAE,kBAAkB,EACjC,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,GACjC,iBAAiB,EAAE,CA+BrB;AAED,wBAAgB,wBAAwB,CACpC,aAAa,EAAE,kBAAkB,EACjC,OAAO,EAAE,MAAM,GAChB,iBAAiB,GAAG,IAAI,CAkB1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../lib/commands/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAQvD,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;CACxB;AAiPD,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CASpF"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../lib/commands/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAQvD,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;CACxB;AA8OD,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CASpF"}
@@ -1 +1 @@
1
- {"version":3,"file":"decompress.d.ts","sourceRoot":"","sources":["../../../lib/commands/decompress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAwC,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAQ7F,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;CACjB;AAsHD,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqH1F"}
1
+ {"version":3,"file":"decompress.d.ts","sourceRoot":"","sources":["../../../lib/commands/decompress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAwC,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAa7F,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;CACjB;AAmID,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0H1F"}
@@ -0,0 +1,8 @@
1
+ export { handleContextCommand } from "./context";
2
+ export { handleDecompressCommand } from "./decompress";
3
+ export { handleHelpCommand } from "./help";
4
+ export { applyPendingManualTrigger, handleManualToggleCommand, handleManualTriggerCommand, } from "./manual";
5
+ export { handleRecompressCommand } from "./recompress";
6
+ export { handleStatsCommand } from "./stats";
7
+ export { handleSweepCommand } from "./sweep";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAC1C,OAAO,EACH,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,GAC7B,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA"}
@@ -19,4 +19,5 @@ export interface ManualCommandContext {
19
19
  }
20
20
  export declare function handleManualToggleCommand(ctx: ManualCommandContext, modeArg?: string): Promise<void>;
21
21
  export declare function handleManualTriggerCommand(ctx: ManualCommandContext, tool: "compress", userFocus?: string): Promise<string | null>;
22
+ export declare function applyPendingManualTrigger(state: SessionState, messages: WithParts[], logger: Logger): void;
22
23
  //# sourceMappingURL=manual.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manual.d.ts","sourceRoot":"","sources":["../../../lib/commands/manual.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AA6B7C,MAAM,WAAW,oBAAoB;IACjC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,YAAY,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;CACxB;AAED,wBAAsB,yBAAyB,CAC3C,GAAG,EAAE,oBAAoB,EACzB,OAAO,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAqBf;AAED,wBAAsB,0BAA0B,CAC5C,GAAG,EAAE,oBAAoB,EACzB,IAAI,EAAE,UAAU,EAChB,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAExB"}
1
+ {"version":3,"file":"manual.d.ts","sourceRoot":"","sources":["../../../lib/commands/manual.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAoC7C,MAAM,WAAW,oBAAoB;IACjC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,YAAY,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;CACxB;AAED,wBAAsB,yBAAyB,CAC3C,GAAG,EAAE,oBAAoB,EACzB,OAAO,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAqBf;AAED,wBAAsB,0BAA0B,CAC5C,GAAG,EAAE,oBAAoB,EACzB,IAAI,EAAE,UAAU,EAChB,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAExB;AAED,wBAAgB,yBAAyB,CACrC,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,SAAS,EAAE,EACrB,MAAM,EAAE,MAAM,GACf,IAAI,CA8BN"}
@@ -1 +1 @@
1
- {"version":3,"file":"recompress.d.ts","sourceRoot":"","sources":["../../../lib/commands/recompress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAwC,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAQ7F,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;CACjB;AA4FD,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgH1F"}
1
+ {"version":3,"file":"recompress.d.ts","sourceRoot":"","sources":["../../../lib/commands/recompress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAsB,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAa3E,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;CACjB;AAoFD,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsH1F"}
@@ -1 +1 @@
1
- {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../lib/commands/stats.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAMvD,MAAM,WAAW,mBAAmB;IAChC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;CACxB;AA8BD,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuChF"}
1
+ {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../lib/commands/stats.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAOvD,MAAM,WAAW,mBAAmB;IAChC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;CACxB;AAwED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwDhF"}
@@ -1 +1 @@
1
- {"version":3,"file":"sweep.d.ts","sourceRoot":"","sources":["../../../lib/commands/sweep.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAsB,MAAM,UAAU,CAAA;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAc7C,MAAM,WAAW,mBAAmB;IAChC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,YAAY,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,gBAAgB,EAAE,MAAM,CAAA;CAC3B;AA6FD,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2IhF"}
1
+ {"version":3,"file":"sweep.d.ts","sourceRoot":"","sources":["../../../lib/commands/sweep.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAsB,MAAM,UAAU,CAAA;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAe7C,MAAM,WAAW,mBAAmB;IAChC,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,YAAY,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,SAAS,EAAE,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,gBAAgB,EAAE,MAAM,CAAA;CAC3B;AA6FD,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2IhF"}
@@ -0,0 +1,4 @@
1
+ export { ToolContext } from "./types";
2
+ export { createCompressMessageTool } from "./message";
3
+ export { createCompressRangeTool } from "./range";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/compress/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { PluginConfig } from "../config";
2
+ import type { SessionState } from "../state";
3
+ import type { CompressMessageToolArgs, ResolvedMessageCompressionsResult, SearchContext } from "./types";
4
+ export declare function validateArgs(args: CompressMessageToolArgs): void;
5
+ export declare function formatResult(processedCount: number, skippedIssues: string[], skippedCount: number): string;
6
+ export declare function formatIssues(skippedIssues: string[], skippedCount: number): string;
7
+ export declare function resolveMessages(args: CompressMessageToolArgs, searchContext: SearchContext, state: SessionState, config: PluginConfig): ResolvedMessageCompressionsResult;
8
+ //# sourceMappingURL=message-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-utils.d.ts","sourceRoot":"","sources":["../../../lib/compress/message-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAK5C,OAAO,KAAK,EAER,uBAAuB,EAEvB,iCAAiC,EACjC,aAAa,EAChB,MAAM,SAAS,CAAA;AAiBhB,wBAAgB,YAAY,CAAC,IAAI,EAAE,uBAAuB,GAAG,IAAI,CAyBhE;AAED,wBAAgB,YAAY,CACxB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EAAE,EACvB,YAAY,EAAE,MAAM,GACrB,MAAM,CAcR;AAED,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAIlF;AAkED,wBAAgB,eAAe,CAC3B,IAAI,EAAE,uBAAuB,EAC7B,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,YAAY,GACrB,iCAAiC,CAuCnC"}
@@ -0,0 +1,4 @@
1
+ import { tool } from "@opencode-ai/plugin";
2
+ import type { ToolContext } from "./types";
3
+ export declare function createCompressMessageTool(ctx: ToolContext): ReturnType<typeof tool>;
4
+ //# sourceMappingURL=message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../lib/compress/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAuC1C,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,WAAW,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAwGnF"}
@@ -0,0 +1,29 @@
1
+ import type { WithParts } from "../state";
2
+ import type { ToolContext } from "./types";
3
+ import type { SearchContext } from "./types";
4
+ interface RunContext {
5
+ ask(input: {
6
+ permission: string;
7
+ patterns: string[];
8
+ always: string[];
9
+ metadata: Record<string, unknown>;
10
+ }): Promise<void>;
11
+ metadata(input: {
12
+ title: string;
13
+ }): void;
14
+ sessionID: string;
15
+ }
16
+ export interface NotificationEntry {
17
+ blockId: number;
18
+ runId: number;
19
+ summary: string;
20
+ summaryTokens: number;
21
+ }
22
+ export interface PreparedSession {
23
+ rawMessages: WithParts[];
24
+ searchContext: SearchContext;
25
+ }
26
+ export declare function prepareSession(ctx: ToolContext, toolCtx: RunContext, title: string): Promise<PreparedSession>;
27
+ export declare function finalizeSession(ctx: ToolContext, toolCtx: RunContext, rawMessages: WithParts[], entries: NotificationEntry[], batchTopic: string | undefined): Promise<void>;
28
+ export {};
29
+ //# sourceMappingURL=pipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../lib/compress/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAQzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAG5C,UAAU,UAAU;IAChB,GAAG,CAAC,KAAK,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;QAClB,QAAQ,EAAE,MAAM,EAAE,CAAA;QAClB,MAAM,EAAE,MAAM,EAAE,CAAA;QAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KACpC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjB,QAAQ,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IACxC,SAAS,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,eAAe;IAC5B,WAAW,EAAE,SAAS,EAAE,CAAA;IACxB,aAAa,EAAE,aAAa,CAAA;CAC/B;AAED,wBAAsB,cAAc,CAChC,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,MAAM,GACd,OAAO,CAAC,eAAe,CAAC,CAoC1B;AAED,wBAAsB,eAAe,CACjC,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,UAAU,EACnB,WAAW,EAAE,SAAS,EAAE,EACxB,OAAO,EAAE,iBAAiB,EAAE,EAC5B,UAAU,EAAE,MAAM,GAAG,SAAS,GAC/B,OAAO,CAAC,IAAI,CAAC,CAqBf"}
@@ -0,0 +1,7 @@
1
+ import type { SessionState } from "../state";
2
+ import type { SearchContext, SelectionResolution } from "./types";
3
+ export declare function appendProtectedUserMessages(summary: string, selection: SelectionResolution, searchContext: SearchContext, state: SessionState, enabled: boolean): string;
4
+ export declare function appendProtectedPromptInfo(summary: string, selection: SelectionResolution, searchContext: SearchContext, state: SessionState, enabled: boolean): string;
5
+ export declare function extractProtectedPromptInfo(text: string): string[];
6
+ export declare function appendProtectedTools(client: any, state: SessionState, allowSubAgents: boolean, summary: string, selection: SelectionResolution, searchContext: SearchContext, protectedTools: string[], protectedFilePatterns?: string[]): Promise<string>;
7
+ //# sourceMappingURL=protected-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protected-content.d.ts","sourceRoot":"","sources":["../../../lib/compress/protected-content.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAa5C,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAEjE,wBAAgB,2BAA2B,CACvC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,mBAAmB,EAC9B,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,OAAO,GACjB,MAAM,CAgCR;AAED,wBAAgB,yBAAyB,CACrC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,mBAAmB,EAC9B,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,OAAO,GACjB,MAAM,CAgCR;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAYjE;AAED,wBAAsB,oBAAoB,CACtC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,mBAAmB,EAC9B,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,MAAM,EAAE,EACxB,qBAAqB,GAAE,MAAM,EAAO,GACrC,OAAO,CAAC,MAAM,CAAC,CAyFjB"}
@@ -0,0 +1,10 @@
1
+ import type { CompressionBlock, SessionState } from "../state";
2
+ import type { BoundaryReference, CompressRangeToolArgs, InjectedSummaryResult, ParsedBlockPlaceholder, ResolvedRangeCompression, SearchContext } from "./types";
3
+ export declare function validateArgs(args: CompressRangeToolArgs): void;
4
+ export declare function resolveRanges(args: CompressRangeToolArgs, searchContext: SearchContext, state: SessionState): ResolvedRangeCompression[];
5
+ export declare function validateNonOverlapping(plans: ResolvedRangeCompression[]): void;
6
+ export declare function parseBlockPlaceholders(summary: string): ParsedBlockPlaceholder[];
7
+ export declare function validateSummaryPlaceholders(placeholders: ParsedBlockPlaceholder[], requiredBlockIds: number[], startReference: BoundaryReference, endReference: BoundaryReference, summaryByBlockId: Map<number, CompressionBlock>): number[];
8
+ export declare function injectBlockPlaceholders(summary: string, placeholders: ParsedBlockPlaceholder[], summaryByBlockId: Map<number, CompressionBlock>, startReference: BoundaryReference, endReference: BoundaryReference): InjectedSummaryResult;
9
+ export declare function appendMissingBlockSummaries(summary: string, missingBlockIds: number[], summaryByBlockId: Map<number, CompressionBlock>, consumedBlockIds: number[]): InjectedSummaryResult;
10
+ //# sourceMappingURL=range-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range-utils.d.ts","sourceRoot":"","sources":["../../../lib/compress/range-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE9D,OAAO,KAAK,EACR,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,aAAa,EAChB,MAAM,SAAS,CAAA;AAIhB,wBAAgB,YAAY,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAyB9D;AAED,wBAAgB,aAAa,CACzB,IAAI,EAAE,qBAAqB,EAC3B,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,YAAY,GACpB,wBAAwB,EAAE,CAuB5B;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,wBAAwB,EAAE,GAAG,IAAI,CA+B9E;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB,EAAE,CAsBhF;AAED,wBAAgB,2BAA2B,CACvC,YAAY,EAAE,sBAAsB,EAAE,EACtC,gBAAgB,EAAE,MAAM,EAAE,EAC1B,cAAc,EAAE,iBAAiB,EACjC,YAAY,EAAE,iBAAiB,EAC/B,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAChD,MAAM,EAAE,CAmCV;AAED,wBAAgB,uBAAuB,CACnC,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,sBAAsB,EAAE,EACtC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAC/C,cAAc,EAAE,iBAAiB,EACjC,YAAY,EAAE,iBAAiB,GAChC,qBAAqB,CAgDvB;AAED,wBAAgB,2BAA2B,CACvC,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EAAE,EACzB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAC/C,gBAAgB,EAAE,MAAM,EAAE,GAC3B,qBAAqB,CAkCvB"}
@@ -0,0 +1,4 @@
1
+ import { tool } from "@opencode-ai/plugin";
2
+ import type { ToolContext } from "./types";
3
+ export declare function createCompressRangeTool(ctx: ToolContext): ReturnType<typeof tool>;
4
+ //# sourceMappingURL=range.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range.d.ts","sourceRoot":"","sources":["../../../lib/compress/range.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAsD1C,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,WAAW,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAwIjF"}
@@ -0,0 +1,11 @@
1
+ import type { SessionState, WithParts } from "../state";
2
+ import type { BoundaryReference, SearchContext, SelectionResolution } from "./types";
3
+ export declare function fetchSessionMessages(client: any, sessionId: string): Promise<WithParts[]>;
4
+ export declare function buildSearchContext(state: SessionState, rawMessages: WithParts[]): SearchContext;
5
+ export declare function resolveBoundaryIds(context: SearchContext, state: SessionState, startId: string, endId: string): {
6
+ startReference: BoundaryReference;
7
+ endReference: BoundaryReference;
8
+ };
9
+ export declare function resolveSelection(context: SearchContext, startReference: BoundaryReference, endReference: BoundaryReference): SelectionResolution;
10
+ export declare function resolveAnchorMessageId(startReference: BoundaryReference): string;
11
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../lib/compress/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAKvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAEpF,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAM/F;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,aAAa,CA4B/F;AAED,wBAAgB,kBAAkB,CAC9B,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACd;IAAE,cAAc,EAAE,iBAAiB,CAAC;IAAC,YAAY,EAAE,iBAAiB,CAAA;CAAE,CAwDxE;AAED,wBAAgB,gBAAgB,CAC5B,OAAO,EAAE,aAAa,EACtB,cAAc,EAAE,iBAAiB,EACjC,YAAY,EAAE,iBAAiB,GAChC,mBAAmB,CAoFrB;AAED,wBAAgB,sBAAsB,CAAC,cAAc,EAAE,iBAAiB,GAAG,MAAM,CAYhF"}
@@ -0,0 +1,9 @@
1
+ import type { PruneMessagesState, SessionState } from "../state";
2
+ import type { AppliedCompressionResult, CompressionStateInput, SelectionResolution } from "./types";
3
+ export declare const COMPRESSED_BLOCK_HEADER = "[Compressed conversation section]";
4
+ export declare function allocateBlockId(state: SessionState): number;
5
+ export declare function allocateRunId(state: SessionState): number;
6
+ export declare function attachCompressionDuration(messagesState: PruneMessagesState, messageId: string, callId: string, durationMs: number): number;
7
+ export declare function wrapCompressedSummary(blockId: number, summary: string): string;
8
+ export declare function applyCompressionState(state: SessionState, input: CompressionStateInput, selection: SelectionResolution, anchorMessageId: string, blockId: number, summary: string, consumedBlockIds: number[]): AppliedCompressionResult;
9
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../lib/compress/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,kBAAkB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAElF,OAAO,KAAK,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAEnG,eAAO,MAAM,uBAAuB,sCAAsC,CAAA;AAE1E,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAS3D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CASzD;AAED,wBAAgB,yBAAyB,CACrC,aAAa,EAAE,kBAAkB,EACjC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACnB,MAAM,CAgBR;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAQ9E;AAED,wBAAgB,qBAAqB,CACjC,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,qBAAqB,EAC5B,SAAS,EAAE,mBAAmB,EAC9B,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,EAAE,GAC3B,wBAAwB,CAsM1B"}
@@ -0,0 +1,18 @@
1
+ import type { SessionState } from "../state/types";
2
+ export interface PendingCompressionDuration {
3
+ messageId: string;
4
+ callId: string;
5
+ durationMs: number;
6
+ }
7
+ export interface CompressionTimingState {
8
+ startsByCallId: Map<string, number>;
9
+ pendingByCallId: Map<string, PendingCompressionDuration>;
10
+ }
11
+ export declare function buildCompressionTimingKey(messageId: string, callId: string): string;
12
+ export declare function consumeCompressionStart(state: SessionState, messageId: string, callId: string): number | undefined;
13
+ export declare function resolveCompressionDuration(startedAt: number | undefined, eventTime: number | undefined, partTime: {
14
+ start?: unknown;
15
+ end?: unknown;
16
+ } | undefined): number | undefined;
17
+ export declare function applyPendingCompressionDurations(state: SessionState): number;
18
+ //# sourceMappingURL=timing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timing.d.ts","sourceRoot":"","sources":["../../../lib/compress/timing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAGlD,MAAM,WAAW,0BAA0B;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,sBAAsB;IACnC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAA;CAC3D;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED,wBAAgB,uBAAuB,CACnC,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACf,MAAM,GAAG,SAAS,CAKpB;AAED,wBAAgB,0BAA0B,CACtC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,QAAQ,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,GACzD,MAAM,GAAG,SAAS,CAqBpB;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAoB5E"}
@@ -0,0 +1,94 @@
1
+ import type { PluginConfig } from "../config";
2
+ import type { Logger } from "../logger";
3
+ import type { PromptStore } from "../prompts/store";
4
+ import type { CompressionBlock, CompressionMode, SessionState, WithParts } from "../state";
5
+ export interface ToolContext {
6
+ client: any;
7
+ state: SessionState;
8
+ logger: Logger;
9
+ config: PluginConfig;
10
+ prompts: PromptStore;
11
+ }
12
+ export interface CompressRangeEntry {
13
+ startId: string;
14
+ endId: string;
15
+ summary: string;
16
+ }
17
+ export interface CompressRangeToolArgs {
18
+ topic: string;
19
+ content: CompressRangeEntry[];
20
+ }
21
+ export interface CompressMessageEntry {
22
+ messageId: string;
23
+ topic: string;
24
+ summary: string;
25
+ }
26
+ export interface CompressMessageToolArgs {
27
+ topic: string;
28
+ content: CompressMessageEntry[];
29
+ }
30
+ export interface BoundaryReference {
31
+ kind: "message" | "compressed-block";
32
+ rawIndex: number;
33
+ messageId?: string;
34
+ blockId?: number;
35
+ anchorMessageId?: string;
36
+ }
37
+ export interface SearchContext {
38
+ rawMessages: WithParts[];
39
+ rawMessagesById: Map<string, WithParts>;
40
+ rawIndexById: Map<string, number>;
41
+ summaryByBlockId: Map<number, CompressionBlock>;
42
+ }
43
+ export interface SelectionResolution {
44
+ startReference: BoundaryReference;
45
+ endReference: BoundaryReference;
46
+ messageIds: string[];
47
+ messageTokenById: Map<string, number>;
48
+ toolIds: string[];
49
+ requiredBlockIds: number[];
50
+ }
51
+ export interface ResolvedMessageCompression {
52
+ entry: CompressMessageEntry;
53
+ selection: SelectionResolution;
54
+ anchorMessageId: string;
55
+ }
56
+ export interface ResolvedRangeCompression {
57
+ index: number;
58
+ entry: CompressRangeEntry;
59
+ selection: SelectionResolution;
60
+ anchorMessageId: string;
61
+ }
62
+ export interface ResolvedMessageCompressionsResult {
63
+ plans: ResolvedMessageCompression[];
64
+ skippedIssues: string[];
65
+ skippedCount: number;
66
+ }
67
+ export interface ParsedBlockPlaceholder {
68
+ raw: string;
69
+ blockId: number;
70
+ startIndex: number;
71
+ endIndex: number;
72
+ }
73
+ export interface InjectedSummaryResult {
74
+ expandedSummary: string;
75
+ consumedBlockIds: number[];
76
+ }
77
+ export interface AppliedCompressionResult {
78
+ compressedTokens: number;
79
+ messageIds: string[];
80
+ newlyCompressedMessageIds: string[];
81
+ newlyCompressedToolIds: string[];
82
+ }
83
+ export interface CompressionStateInput {
84
+ topic: string;
85
+ batchTopic: string;
86
+ startId: string;
87
+ endId: string;
88
+ mode: CompressionMode;
89
+ runId: number;
90
+ compressMessageId: string;
91
+ compressCallId?: string;
92
+ summaryTokens: number;
93
+ }
94
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../lib/compress/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE1F,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,YAAY,CAAA;IACpB,OAAO,EAAE,WAAW,CAAA;CACvB;AAED,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,qBAAqB;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,kBAAkB,EAAE,CAAA;CAChC;AAED,MAAM,WAAW,oBAAoB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,uBAAuB;IACpC,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,oBAAoB,EAAE,CAAA;CAClC;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,SAAS,GAAG,kBAAkB,CAAA;IACpC,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,aAAa;IAC1B,WAAW,EAAE,SAAS,EAAE,CAAA;IACxB,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IACvC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CAClD;AAED,MAAM,WAAW,mBAAmB;IAChC,cAAc,EAAE,iBAAiB,CAAA;IACjC,YAAY,EAAE,iBAAiB,CAAA;IAC/B,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,gBAAgB,EAAE,MAAM,EAAE,CAAA;CAC7B;AAED,MAAM,WAAW,0BAA0B;IACvC,KAAK,EAAE,oBAAoB,CAAA;IAC3B,SAAS,EAAE,mBAAmB,CAAA;IAC9B,eAAe,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACrC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,kBAAkB,CAAA;IACzB,SAAS,EAAE,mBAAmB,CAAA;IAC9B,eAAe,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,iCAAiC;IAC9C,KAAK,EAAE,0BAA0B,EAAE,CAAA;IACnC,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,sBAAsB;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,qBAAqB;IAClC,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAA;CAC7B;AAED,MAAM,WAAW,wBAAwB;IACrC,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,yBAAyB,EAAE,MAAM,EAAE,CAAA;IACnC,sBAAsB,EAAE,MAAM,EAAE,CAAA;CACnC;AAED,MAAM,WAAW,qBAAqB;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,eAAe,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,iBAAiB,EAAE,MAAM,CAAA;IACzB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;CACxB"}
@@ -1,8 +1,6 @@
1
1
  import type { PluginConfig } from "./config";
2
2
  import { type HostPermissionSnapshot } from "./host-permissions";
3
- import { SessionState, WithParts } from "./state";
4
- export declare const isMessageCompacted: (state: SessionState, msg: WithParts) => boolean;
5
- export declare const getLastUserMessage: (messages: WithParts[], startIndex?: number) => WithParts | null;
3
+ import type { SessionState, WithParts } from "./state";
6
4
  export declare const compressPermission: (state: SessionState, config: PluginConfig) => "ask" | "allow" | "deny";
7
5
  export declare const syncCompressPermissionState: (state: SessionState, config: PluginConfig, hostPermissions: HostPermissionSnapshot, messages: WithParts[]) => void;
8
- //# sourceMappingURL=shared-utils.d.ts.map
6
+ //# sourceMappingURL=compress-permission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compress-permission.d.ts","sourceRoot":"","sources":["../../lib/compress-permission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,KAAK,sBAAsB,EAAsC,MAAM,oBAAoB,CAAA;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAGtD,eAAO,MAAM,kBAAkB,GAC3B,OAAO,YAAY,EACnB,QAAQ,YAAY,KACrB,KAAK,GAAG,OAAO,GAAG,MAEpB,CAAA;AAED,eAAO,MAAM,2BAA2B,GACpC,OAAO,YAAY,EACnB,QAAQ,YAAY,EACpB,iBAAiB,sBAAsB,EACvC,UAAU,SAAS,EAAE,KACtB,IAOF,CAAA"}
@@ -1,12 +1,15 @@
1
1
  import type { PluginInput } from "@opencode-ai/plugin";
2
2
  type Permission = "ask" | "allow" | "deny";
3
+ type CompressMode = "range" | "message";
3
4
  export interface Deduplication {
4
5
  enabled: boolean;
5
6
  protectedTools: string[];
6
7
  }
7
- export interface CompressTool {
8
+ export interface CompressConfig {
9
+ mode: CompressMode;
8
10
  permission: Permission;
9
11
  showCompression: boolean;
12
+ summaryBuffer: boolean;
10
13
  maxContextLimit: number | `${number}%`;
11
14
  minContextLimit: number | `${number}%`;
12
15
  modelMaxLimits?: Record<string, number | `${number}%`>;
@@ -14,8 +17,8 @@ export interface CompressTool {
14
17
  nudgeFrequency: number;
15
18
  iterationNudgeThreshold: number;
16
19
  nudgeForce: "strong" | "soft";
17
- flatSchema: boolean;
18
20
  protectedTools: string[];
21
+ protectTags: boolean;
19
22
  protectUserMessages: boolean;
20
23
  }
21
24
  export interface Commands {
@@ -26,9 +29,6 @@ export interface ManualModeConfig {
26
29
  enabled: boolean;
27
30
  automaticStrategies: boolean;
28
31
  }
29
- export interface SupersedeWrites {
30
- enabled: boolean;
31
- }
32
32
  export interface PurgeErrors {
33
33
  enabled: boolean;
34
34
  turns: number;
@@ -44,6 +44,7 @@ export interface ExperimentalConfig {
44
44
  }
45
45
  export interface PluginConfig {
46
46
  enabled: boolean;
47
+ autoUpdate: boolean;
47
48
  debug: boolean;
48
49
  pruneNotification: "off" | "minimal" | "detailed";
49
50
  pruneNotificationType: "chat" | "toast";
@@ -52,10 +53,9 @@ export interface PluginConfig {
52
53
  turnProtection: TurnProtection;
53
54
  experimental: ExperimentalConfig;
54
55
  protectedFilePatterns: string[];
55
- compress: CompressTool;
56
+ compress: CompressConfig;
56
57
  strategies: {
57
58
  deduplication: Deduplication;
58
- supersedeWrites: SupersedeWrites;
59
59
  purgeErrors: PurgeErrors;
60
60
  };
61
61
  }
@@ -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;AAEtD,KAAK,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAA;AAE1C,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,YAAY;IACzB,UAAU,EAAE,UAAU,CAAA;IACtB,eAAe,EAAE,OAAO,CAAA;IACxB,eAAe,EAAE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAA;IACtC,eAAe,EAAE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAA;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,CAAA;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,CAAA;IACtD,cAAc,EAAE,MAAM,CAAA;IACtB,uBAAuB,EAAE,MAAM,CAAA;IAC/B,UAAU,EAAE,QAAQ,GAAG,MAAM,CAAA;IAC7B,UAAU,EAAE,OAAO,CAAA;IACnB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,mBAAmB,EAAE,OAAO,CAAA;CAC/B;AAED,MAAM,WAAW,QAAQ;IACrB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,mBAAmB,EAAE,OAAO,CAAA;CAC/B;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,cAAc;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,kBAAkB;IAC/B,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,EAAE,OAAO,CAAA;CACzB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;IACd,iBAAiB,EAAE,KAAK,GAAG,SAAS,GAAG,UAAU,CAAA;IACjD,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAA;IACvC,QAAQ,EAAE,QAAQ,CAAA;IAClB,UAAU,EAAE,gBAAgB,CAAA;IAC5B,cAAc,EAAE,cAAc,CAAA;IAC9B,YAAY,EAAE,kBAAkB,CAAA;IAChC,qBAAqB,EAAE,MAAM,EAAE,CAAA;IAC/B,QAAQ,EAAE,YAAY,CAAA;IACtB,UAAU,EAAE;QACR,aAAa,EAAE,aAAa,CAAA;QAC5B,eAAe,EAAE,eAAe,CAAA;QAChC,WAAW,EAAE,WAAW,CAAA;KAC3B,CAAA;CACJ;AAmBD,eAAO,MAAM,iBAAiB,aA2C5B,CAAA;AAoBF,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,EAAE,CAG9E;AAED,UAAU,eAAe;IACrB,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACjB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,eAAe,EAAE,CA2alF;AAyWD,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CAsCxD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEtD,KAAK,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAA;AAC1C,KAAK,YAAY,GAAG,OAAO,GAAG,SAAS,CAAA;AAEvC,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,YAAY,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,eAAe,EAAE,OAAO,CAAA;IACxB,aAAa,EAAE,OAAO,CAAA;IACtB,eAAe,EAAE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAA;IACtC,eAAe,EAAE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAA;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,CAAA;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,CAAA;IACtD,cAAc,EAAE,MAAM,CAAA;IACtB,uBAAuB,EAAE,MAAM,CAAA;IAC/B,UAAU,EAAE,QAAQ,GAAG,MAAM,CAAA;IAC7B,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,WAAW,EAAE,OAAO,CAAA;IACpB,mBAAmB,EAAE,OAAO,CAAA;CAC/B;AAED,MAAM,WAAW,QAAQ;IACrB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,mBAAmB,EAAE,OAAO,CAAA;CAC/B;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,kBAAkB;IAC/B,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,EAAE,OAAO,CAAA;CACzB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,OAAO,CAAA;IACnB,KAAK,EAAE,OAAO,CAAA;IACd,iBAAiB,EAAE,KAAK,GAAG,SAAS,GAAG,UAAU,CAAA;IACjD,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAA;IACvC,QAAQ,EAAE,QAAQ,CAAA;IAClB,UAAU,EAAE,gBAAgB,CAAA;IAC5B,cAAc,EAAE,cAAc,CAAA;IAC9B,YAAY,EAAE,kBAAkB,CAAA;IAChC,qBAAqB,EAAE,MAAM,EAAE,CAAA;IAC/B,QAAQ,EAAE,cAAc,CAAA;IACxB,UAAU,EAAE;QACR,aAAa,EAAE,aAAa,CAAA;QAC5B,WAAW,EAAE,WAAW,CAAA;KAC3B,CAAA;CACJ;AAmBD,eAAO,MAAM,iBAAiB,aA4C5B,CAAA;AAoBF,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,EAAE,CAG9E;AAED,UAAU,eAAe;IACrB,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACjB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,eAAe,EAAE,CAyblF;AAwWD,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CAsCxD"}
@@ -1,8 +1,8 @@
1
1
  import type { SessionState, WithParts } from "./state";
2
2
  import type { Logger } from "./logger";
3
3
  import type { PluginConfig } from "./config";
4
+ import { type PromptStore } from "./prompts";
4
5
  import { type HostPermissionSnapshot } from "./host-permissions";
5
- import type { PromptStore } from "./prompts/store";
6
6
  export declare function createSystemPromptHandler(state: SessionState, logger: Logger, config: PluginConfig, prompts: PromptStore): (input: {
7
7
  sessionID?: string;
8
8
  model: {
@@ -30,4 +30,7 @@ export declare function createTextCompleteHandler(): (_input: {
30
30
  }, output: {
31
31
  text: string;
32
32
  }) => Promise<void>;
33
+ export declare function createEventHandler(state: SessionState, logger: Logger): (input: {
34
+ event: any;
35
+ }) => Promise<void>;
33
36
  //# sourceMappingURL=hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../lib/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAqB5C,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAIhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AA2ClD,wBAAgB,yBAAyB,CACrC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,WAAW,IAGhB,OAAO;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE;QAAE,KAAK,EAAE;YAAE,OAAO,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,EACpE,QAAQ;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,mBAuCnC;AAED,wBAAgB,iCAAiC,CAC7C,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,sBAAsB,IAEzB,OAAO,EAAE,EAAE,QAAQ;IAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;CAAE,mBAiC7D;AAED,wBAAgB,2BAA2B,CACvC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,sBAAsB,IAGnC,OAAO;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAChE,QAAQ;IAAE,KAAK,EAAE,GAAG,EAAE,CAAA;CAAE,mBAuG/B;AAED,wBAAgB,yBAAyB,KAEjC,QAAQ;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAChE,QAAQ;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,mBAM/B"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../lib/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAc5C,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,WAAW,CAAA;AAoBhE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAYhE,wBAAgB,yBAAyB,CACrC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,WAAW,IAGhB,OAAO;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE;QAAE,KAAK,EAAE;YAAE,OAAO,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,EACpE,QAAQ;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,mBAwCnC;AAED,wBAAgB,iCAAiC,CAC7C,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,sBAAsB,IAEzB,OAAO,EAAE,EAAE,QAAQ;IAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;CAAE,mBAkD7D;AAED,wBAAgB,2BAA2B,CACvC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,sBAAsB,IAGnC,OAAO;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAChE,QAAQ;IAAE,KAAK,EAAE,GAAG,EAAE,CAAA;CAAE,mBA0G/B;AAED,wBAAgB,yBAAyB,KAEjC,QAAQ;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAChE,QAAQ;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,mBAI/B;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,IACpD,OAAO;IAAE,KAAK,EAAE,GAAG,CAAA;CAAE,mBAiFtC"}
@@ -14,6 +14,6 @@ export declare function formatBlockRef(blockId: number): string;
14
14
  export declare function parseMessageRef(ref: string): number | null;
15
15
  export declare function parseBlockRef(ref: string): number | null;
16
16
  export declare function parseBoundaryId(id: string): ParsedBoundaryId | null;
17
- export declare function formatMessageIdTag(ref: string): string;
17
+ export declare function formatMessageIdTag(ref: string, attributes?: Record<string, string | undefined>): string;
18
18
  export declare function assignMessageRefs(state: SessionState, messages: WithParts[]): number;
19
19
  //# sourceMappingURL=message-ids.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-ids.d.ts","sourceRoot":"","sources":["../../lib/message-ids.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAStD,eAAO,MAAM,qBAAqB,OAAO,CAAA;AAEzC,MAAM,MAAM,gBAAgB,GACtB;IACI,IAAI,EAAE,SAAS,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;CAChB,GACD;IACI,IAAI,EAAE,kBAAkB,CAAA;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;CAClB,CAAA;AAEP,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWtD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAKtD;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc1D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQxD;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAqBnE;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,CAkCpF"}
1
+ {"version":3,"file":"message-ids.d.ts","sourceRoot":"","sources":["../../lib/message-ids.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAStD,eAAO,MAAM,qBAAqB,OAAO,CAAA;AAEzC,MAAM,MAAM,gBAAgB,GACtB;IACI,IAAI,EAAE,SAAS,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;CAChB,GACD;IACI,IAAI,EAAE,kBAAkB,CAAA;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;CAClB,CAAA;AAEP,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWtD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAKtD;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc1D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQxD;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAqBnE;AAUD,wBAAgB,kBAAkB,CAC9B,GAAG,EAAE,MAAM,EACX,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAChD,MAAM,CAaR;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,CAkCpF"}
@@ -4,4 +4,6 @@ export { injectCompressNudges } from "./inject/inject";
4
4
  export { injectMessageIds } from "./inject/inject";
5
5
  export { injectExtendedSubAgentResults } from "./inject/subagent-results";
6
6
  export { stripStaleMetadata } from "./reasoning-strip";
7
+ export { buildPriorityMap } from "./priority";
8
+ export { buildToolIdList, stripHallucinations, stripHallucinationsFromString } from "./utils";
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/messages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAA;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/messages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAA;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAA"}
@@ -2,6 +2,7 @@ import type { SessionState, WithParts } from "../../state";
2
2
  import type { Logger } from "../../logger";
3
3
  import type { PluginConfig } from "../../config";
4
4
  import type { RuntimePrompts } from "../../prompts/store";
5
- export declare const injectCompressNudges: (state: SessionState, config: PluginConfig, logger: Logger, messages: WithParts[], prompts: RuntimePrompts) => void;
6
- export declare const injectMessageIds: (state: SessionState, config: PluginConfig, messages: WithParts[]) => void;
5
+ import type { CompressionPriorityMap } from "../priority";
6
+ export declare const injectCompressNudges: (state: SessionState, config: PluginConfig, logger: Logger, messages: WithParts[], prompts: RuntimePrompts, compressionPriorities?: CompressionPriorityMap) => void;
7
+ export declare const injectMessageIds: (state: SessionState, config: PluginConfig, messages: WithParts[], compressionPriorities?: CompressionPriorityMap) => void;
7
8
  //# sourceMappingURL=inject.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../../../../lib/messages/inject/inject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAsBzD,eAAO,MAAM,oBAAoB,GAC7B,OAAO,YAAY,EACnB,QAAQ,YAAY,EACpB,QAAQ,MAAM,EACd,UAAU,SAAS,EAAE,EACrB,SAAS,cAAc,KACxB,IAuGF,CAAA;AAED,eAAO,MAAM,gBAAgB,GACzB,OAAO,YAAY,EACnB,QAAQ,YAAY,EACpB,UAAU,SAAS,EAAE,KACtB,IAmDF,CAAA"}
1
+ {"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../../../../lib/messages/inject/inject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AA2BzD,eAAO,MAAM,oBAAoB,GAC7B,OAAO,YAAY,EACnB,QAAQ,YAAY,EACpB,QAAQ,MAAM,EACd,UAAU,SAAS,EAAE,EACrB,SAAS,cAAc,EACvB,wBAAwB,sBAAsB,KAC/C,IAuGF,CAAA;AAED,eAAO,MAAM,gBAAgB,GACzB,OAAO,YAAY,EACnB,QAAQ,YAAY,EACpB,UAAU,SAAS,EAAE,EACrB,wBAAwB,sBAAsB,KAC/C,IA0EF,CAAA"}
@@ -1,6 +1,7 @@
1
1
  import type { SessionState, WithParts } from "../../state";
2
2
  import type { PluginConfig } from "../../config";
3
3
  import type { RuntimePrompts } from "../../prompts/store";
4
+ import { type CompressionPriorityMap } from "../priority";
4
5
  export interface LastUserModelContext {
5
6
  providerId: string | undefined;
6
7
  modelId: string | undefined;
@@ -13,13 +14,11 @@ export declare function getNudgeFrequency(config: PluginConfig): number;
13
14
  export declare function getIterationNudgeThreshold(config: PluginConfig): number;
14
15
  export declare function findLastNonIgnoredMessage(messages: WithParts[]): LastNonIgnoredMessage | null;
15
16
  export declare function countMessagesAfterIndex(messages: WithParts[], index: number): number;
16
- export declare function messageHasCompress(message: WithParts): boolean;
17
17
  export declare function getModelInfo(messages: WithParts[]): LastUserModelContext;
18
18
  export declare function isContextOverLimits(config: PluginConfig, state: SessionState, providerId: string | undefined, modelId: string | undefined, messages: WithParts[]): {
19
19
  overMaxLimit: boolean;
20
20
  overMinLimit: boolean;
21
21
  };
22
22
  export declare function addAnchor(anchorMessageIds: Set<string>, anchorMessageId: string, anchorMessageIndex: number, messages: WithParts[], interval: number): boolean;
23
- export declare function buildCompressedBlockGuidance(state: SessionState): string;
24
- export declare function applyAnchoredNudges(state: SessionState, config: PluginConfig, messages: WithParts[], prompts: RuntimePrompts): void;
23
+ export declare function applyAnchoredNudges(state: SessionState, config: PluginConfig, messages: WithParts[], prompts: RuntimePrompts, compressionPriorities?: CompressionPriorityMap): void;
25
24
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../lib/messages/inject/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAMzD,MAAM,WAAW,oBAAoB;IACjC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B;AAED,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAE9D;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAEvE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,qBAAqB,GAAG,IAAI,CAU7F;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAYpF;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAM9D;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,oBAAoB,CAcxE;AA+CD,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,QAAQ,EAAE,SAAS,EAAE;;;EAaxB;AAED,wBAAgB,SAAS,CACrB,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,eAAe,EAAE,MAAM,EACvB,kBAAkB,EAAE,MAAM,EAC1B,QAAQ,EAAE,SAAS,EAAE,EACrB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAsBT;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAaxE;AA0ED,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,SAAS,EAAE,EACrB,OAAO,EAAE,cAAc,GACxB,IAAI,CA0BN"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../lib/messages/inject/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAMhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,EACH,KAAK,sBAAsB,EAG9B,MAAM,aAAa,CAAA;AAapB,MAAM,WAAW,oBAAoB;IACjC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B;AAED,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAE9D;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAEvE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,qBAAqB,GAAG,IAAI,CAU7F;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAYpF;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,oBAAoB,CAcxE;AA+CD,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,QAAQ,EAAE,SAAS,EAAE;;;EA0BxB;AAED,wBAAgB,SAAS,CACrB,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,eAAe,EAAE,MAAM,EACvB,kBAAkB,EAAE,MAAM,EAC1B,QAAQ,EAAE,SAAS,EAAE,EACrB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAsBT;AAkJD,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,SAAS,EAAE,EACrB,OAAO,EAAE,cAAc,EACvB,qBAAqB,CAAC,EAAE,sBAAsB,GAC/C,IAAI,CA4CN"}
@@ -0,0 +1,13 @@
1
+ import type { PluginConfig } from "../config";
2
+ import type { SessionState, WithParts } from "../state";
3
+ export type MessagePriority = "low" | "medium" | "high";
4
+ export interface CompressionPriorityEntry {
5
+ ref: string;
6
+ tokenCount: number;
7
+ priority: MessagePriority;
8
+ }
9
+ export type CompressionPriorityMap = Map<string, CompressionPriorityEntry>;
10
+ export declare function buildPriorityMap(config: PluginConfig, state: SessionState, messages: WithParts[]): CompressionPriorityMap;
11
+ export declare function classifyMessagePriority(tokenCount: number): MessagePriority;
12
+ export declare function listPriorityRefsBeforeIndex(messages: WithParts[], priorities: CompressionPriorityMap, anchorIndex: number, priority: MessagePriority): string[];
13
+ //# sourceMappingURL=priority.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"priority.d.ts","sourceRoot":"","sources":["../../../lib/messages/priority.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAG7C,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAMvD,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAA;AAEvD,MAAM,WAAW,wBAAwB;IACrC,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,eAAe,CAAA;CAC5B;AAED,MAAM,MAAM,sBAAsB,GAAG,GAAG,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAA;AAE1E,wBAAgB,gBAAgB,CAC5B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,SAAS,EAAE,GACtB,sBAAsB,CAsCxB;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,CAU3E;AAED,wBAAgB,2BAA2B,CACvC,QAAQ,EAAE,SAAS,EAAE,EACrB,UAAU,EAAE,sBAAsB,EAClC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,eAAe,GAC1B,MAAM,EAAE,CAqBV"}
@@ -1 +1 @@
1
- {"version":3,"file":"prune.d.ts","sourceRoot":"","sources":["../../../lib/messages/prune.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAU7C,eAAO,MAAM,KAAK,GACd,OAAO,YAAY,EACnB,QAAQ,MAAM,EACd,QAAQ,YAAY,EACpB,UAAU,SAAS,EAAE,KACtB,IAMF,CAAA"}
1
+ {"version":3,"file":"prune.d.ts","sourceRoot":"","sources":["../../../lib/messages/prune.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAW7C,eAAO,MAAM,KAAK,GACd,OAAO,YAAY,EACnB,QAAQ,MAAM,EACd,QAAQ,YAAY,EACpB,UAAU,SAAS,EAAE,KACtB,IAMF,CAAA"}
@@ -0,0 +1,7 @@
1
+ import type { PluginConfig } from "../config";
2
+ import type { WithParts } from "../state";
3
+ export declare const getLastUserMessage: (messages: WithParts[], startIndex?: number) => WithParts | null;
4
+ export declare const messageHasCompress: (message: WithParts) => boolean;
5
+ export declare const isIgnoredUserMessage: (message: WithParts) => boolean;
6
+ export declare function isProtectedUserMessage(config: PluginConfig, message: WithParts): boolean;
7
+ //# sourceMappingURL=query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../lib/messages/query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAGzC,eAAO,MAAM,kBAAkB,GAC3B,UAAU,SAAS,EAAE,EACrB,aAAa,MAAM,KACpB,SAAS,GAAG,IAYd,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,SAAS,SAAS,KAAG,OAcvD,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,SAAS,SAAS,KAAG,OAqBzD,CAAA;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAWxF"}
@@ -0,0 +1,5 @@
1
+ import type { WithParts } from "../state";
2
+ export declare function isMessageWithInfo(message: unknown): message is WithParts;
3
+ export declare function filterMessages(messages: unknown): WithParts[];
4
+ export declare function filterMessagesInPlace(messages: unknown): WithParts[];
5
+ //# sourceMappingURL=shape.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shape.d.ts","sourceRoot":"","sources":["../../../lib/messages/shape.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEzC,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,SAAS,CAsBxE;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,EAAE,CAM7D;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,EAAE,CAepE"}