@tarquinen/opencode-dcp 1.0.4 → 1.1.0-beta.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 (58) hide show
  1. package/README.md +30 -5
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +45 -16
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/config.d.ts +20 -1
  6. package/dist/lib/config.d.ts.map +1 -1
  7. package/dist/lib/config.js +153 -33
  8. package/dist/lib/config.js.map +1 -1
  9. package/dist/lib/messages/prune.d.ts.map +1 -1
  10. package/dist/lib/messages/prune.js +67 -15
  11. package/dist/lib/messages/prune.js.map +1 -1
  12. package/dist/lib/prompt.js +1 -1
  13. package/dist/lib/prompt.js.map +1 -1
  14. package/dist/lib/prompts/discard-tool-spec.txt +56 -0
  15. package/dist/lib/prompts/extract-tool-spec.txt +79 -0
  16. package/dist/lib/prompts/nudge/nudge-both.txt +10 -0
  17. package/dist/lib/prompts/nudge/nudge-discard.txt +9 -0
  18. package/dist/lib/prompts/nudge/nudge-extract.txt +9 -0
  19. package/dist/lib/prompts/{synthetic.txt → system/system-prompt-both.txt} +23 -13
  20. package/dist/lib/prompts/system/system-prompt-discard.txt +49 -0
  21. package/dist/lib/prompts/system/system-prompt-extract.txt +49 -0
  22. package/dist/lib/state/state.d.ts +1 -0
  23. package/dist/lib/state/state.d.ts.map +1 -1
  24. package/dist/lib/state/state.js +20 -2
  25. package/dist/lib/state/state.js.map +1 -1
  26. package/dist/lib/state/tool-cache.d.ts.map +1 -1
  27. package/dist/lib/state/tool-cache.js +27 -7
  28. package/dist/lib/state/tool-cache.js.map +1 -1
  29. package/dist/lib/state/types.d.ts +2 -0
  30. package/dist/lib/state/types.d.ts.map +1 -1
  31. package/dist/lib/strategies/deduplication.js +1 -1
  32. package/dist/lib/strategies/deduplication.js.map +1 -1
  33. package/dist/lib/strategies/index.d.ts +1 -1
  34. package/dist/lib/strategies/index.d.ts.map +1 -1
  35. package/dist/lib/strategies/index.js +1 -1
  36. package/dist/lib/strategies/index.js.map +1 -1
  37. package/dist/lib/strategies/on-idle.d.ts.map +1 -1
  38. package/dist/lib/strategies/on-idle.js +2 -1
  39. package/dist/lib/strategies/on-idle.js.map +1 -1
  40. package/dist/lib/strategies/{prune-tool.d.ts → tools.d.ts} +3 -6
  41. package/dist/lib/strategies/tools.d.ts.map +1 -0
  42. package/dist/lib/strategies/tools.js +121 -0
  43. package/dist/lib/strategies/tools.js.map +1 -0
  44. package/dist/lib/strategies/utils.d.ts +0 -1
  45. package/dist/lib/strategies/utils.d.ts.map +1 -1
  46. package/dist/lib/strategies/utils.js +0 -1
  47. package/dist/lib/strategies/utils.js.map +1 -1
  48. package/dist/lib/ui/notification.d.ts +1 -0
  49. package/dist/lib/ui/notification.d.ts.map +1 -1
  50. package/dist/lib/ui/notification.js +21 -0
  51. package/dist/lib/ui/notification.js.map +1 -1
  52. package/package.json +1 -1
  53. package/dist/lib/prompts/nudge.txt +0 -10
  54. package/dist/lib/prompts/tool.txt +0 -72
  55. package/dist/lib/strategies/prune-tool.d.ts.map +0 -1
  56. package/dist/lib/strategies/prune-tool.js +0 -88
  57. package/dist/lib/strategies/prune-tool.js.map +0 -1
  58. /package/dist/lib/prompts/{pruning.txt → on-idle-analysis.txt} +0 -0
package/README.md CHANGED
@@ -29,7 +29,9 @@ DCP uses multiple strategies to reduce context size:
29
29
 
30
30
  **Supersede Writes** — Prunes write tool inputs for files that have subsequently been read. When a file is written and later read, the original write content becomes redundant since the current file state is captured in the read result. Runs automatically on every request with zero LLM cost.
31
31
 
32
- **Prune Tool** — Exposes a `prune` tool that the AI can call to manually trigger pruning when it determines context cleanup is needed.
32
+ **Discard Tool** — Exposes a `discard` tool that the AI can call to remove completed or noisy tool outputs from context. Use this for task completion cleanup and removing irrelevant outputs.
33
+
34
+ **Extract Tool** — Exposes an `extract` tool that the AI can call to distill valuable context into concise summaries before removing the raw outputs. Use this when you need to preserve key findings while reducing context size.
33
35
 
34
36
  **On Idle Analysis** — Uses a language model to semantically analyze conversation context during idle periods and identify tool outputs that are no longer relevant.
35
37
 
@@ -72,17 +74,40 @@ DCP uses its own config file:
72
74
  "supersedeWrites": {
73
75
  "enabled": true
74
76
  },
75
- // Exposes a prune tool to your LLM to call when it determines pruning is necessary
76
- "pruneTool": {
77
+ // Removes tool content from context without preservation (for completed tasks or noise)
78
+ "discardTool": {
77
79
  "enabled": true,
78
80
  // Additional tools to protect from pruning
79
81
  "protectedTools": [],
80
- // Nudge the LLM to use the prune tool (every <frequency> tool results)
82
+ // Protect from pruning for <turn protection> message turns
83
+ "turnProtection": {
84
+ "enabled": false,
85
+ "turns": 4
86
+ },
87
+ // Nudge the LLM to use the discard tool (every <frequency> tool results)
81
88
  "nudge": {
82
89
  "enabled": true,
83
90
  "frequency": 10
84
91
  }
85
92
  },
93
+ // Distills key findings into preserved knowledge before removing raw content
94
+ "extractTool": {
95
+ "enabled": true,
96
+ // Additional tools to protect from pruning
97
+ "protectedTools": [],
98
+ // Protect from pruning for <turn protection> message turns
99
+ "turnProtection": {
100
+ "enabled": false,
101
+ "turns": 4
102
+ },
103
+ // Nudge the LLM to use the extract tool (every <frequency> tool results)
104
+ "nudge": {
105
+ "enabled": true,
106
+ "frequency": 10
107
+ },
108
+ // Show distillation content as an ignored message notification
109
+ "showDistillation": false
110
+ },
86
111
  // (Legacy) Run an LLM to analyze what tool calls are no longer relevant on idle
87
112
  "onIdle": {
88
113
  "enabled": false,
@@ -104,7 +129,7 @@ DCP uses its own config file:
104
129
  ### Protected Tools
105
130
 
106
131
  By default, these tools are always protected from pruning across all strategies:
107
- `task`, `todowrite`, `todoread`, `prune`, `batch`
132
+ `task`, `todowrite`, `todoread`, `discard`, `extract`, `batch`
108
133
 
109
134
  The `protectedTools` arrays in each strategy add to this default list.
110
135
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAQjD,QAAA,MAAM,MAAM,EAAE,MAuDK,CAAA;AAEnB,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAQjD,QAAA,MAAM,MAAM,EAAE,MAkFK,CAAA;AAEnB,eAAe,MAAM,CAAA"}
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@ import { getConfig } from "./lib/config";
2
2
  import { Logger } from "./lib/logger";
3
3
  import { loadPrompt } from "./lib/prompt";
4
4
  import { createSessionState } from "./lib/state";
5
- import { createPruneTool } from "./lib/strategies";
5
+ import { createDiscardTool, createExtractTool } from "./lib/strategies";
6
6
  import { createChatMessageTransformHandler, createEventHandler } from "./lib/hooks";
7
7
  const plugin = (async (ctx) => {
8
8
  const config = getConfig(ctx);
@@ -13,38 +13,67 @@ const plugin = (async (ctx) => {
13
13
  if (typeof globalThis !== 'undefined') {
14
14
  globalThis.AI_SDK_LOG_WARNINGS = false;
15
15
  }
16
- // Initialize core components
17
16
  const logger = new Logger(config.debug);
18
17
  const state = createSessionState();
19
- // Log initialization
20
18
  logger.info("DCP initialized", {
21
19
  strategies: config.strategies,
22
20
  });
23
21
  return {
24
22
  "experimental.chat.system.transform": async (_input, output) => {
25
- const syntheticPrompt = loadPrompt("synthetic");
23
+ const discardEnabled = config.strategies.discardTool.enabled;
24
+ const extractEnabled = config.strategies.extractTool.enabled;
25
+ let promptName;
26
+ if (discardEnabled && extractEnabled) {
27
+ promptName = "system/system-prompt-both";
28
+ }
29
+ else if (discardEnabled) {
30
+ promptName = "system/system-prompt-discard";
31
+ }
32
+ else if (extractEnabled) {
33
+ promptName = "system/system-prompt-extract";
34
+ }
35
+ else {
36
+ return;
37
+ }
38
+ const syntheticPrompt = loadPrompt(promptName);
26
39
  output.system.push(syntheticPrompt);
27
40
  },
28
41
  "experimental.chat.messages.transform": createChatMessageTransformHandler(ctx.client, state, logger, config),
29
- tool: config.strategies.pruneTool.enabled ? {
30
- prune: createPruneTool({
31
- client: ctx.client,
32
- state,
33
- logger,
34
- config,
35
- workingDirectory: ctx.directory
42
+ tool: {
43
+ ...(config.strategies.discardTool.enabled && {
44
+ discard: createDiscardTool({
45
+ client: ctx.client,
46
+ state,
47
+ logger,
48
+ config,
49
+ workingDirectory: ctx.directory
50
+ }),
51
+ }),
52
+ ...(config.strategies.extractTool.enabled && {
53
+ extract: createExtractTool({
54
+ client: ctx.client,
55
+ state,
56
+ logger,
57
+ config,
58
+ workingDirectory: ctx.directory
59
+ }),
36
60
  }),
37
- } : undefined,
61
+ },
38
62
  config: async (opencodeConfig) => {
39
- // Add prune to primary_tools by mutating the opencode config
63
+ // Add enabled tools to primary_tools by mutating the opencode config
40
64
  // This works because config is cached and passed by reference
41
- if (config.strategies.pruneTool.enabled) {
65
+ const toolsToAdd = [];
66
+ if (config.strategies.discardTool.enabled)
67
+ toolsToAdd.push("discard");
68
+ if (config.strategies.extractTool.enabled)
69
+ toolsToAdd.push("extract");
70
+ if (toolsToAdd.length > 0) {
42
71
  const existingPrimaryTools = opencodeConfig.experimental?.primary_tools ?? [];
43
72
  opencodeConfig.experimental = {
44
73
  ...opencodeConfig.experimental,
45
- primary_tools: [...existingPrimaryTools, "prune"],
74
+ primary_tools: [...existingPrimaryTools, ...toolsToAdd],
46
75
  };
47
- logger.info("Added 'prune' to experimental.primary_tools via config mutation");
76
+ logger.info(`Added ${toolsToAdd.map(t => `'${t}'`).join(" and ")} to experimental.primary_tools via config mutation`);
48
77
  }
49
78
  },
50
79
  event: createEventHandler(ctx.client, config, state, logger, ctx.directory),
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,iCAAiC,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAEnF,MAAM,MAAM,GAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAClC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;IAE7B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,EAAE,CAAA;IACb,CAAC;IAED,2BAA2B;IAC3B,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE,CAAC;QACnC,UAAkB,CAAC,mBAAmB,GAAG,KAAK,CAAA;IACnD,CAAC;IAED,6BAA6B;IAC7B,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACvC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAA;IAElC,qBAAqB;IACrB,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE;QAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;KAChC,CAAC,CAAA;IAEF,OAAO;QACH,oCAAoC,EAAE,KAAK,EAAE,MAAe,EAAE,MAA4B,EAAE,EAAE;YAC1F,MAAM,eAAe,GAAG,UAAU,CAAC,WAAW,CAAC,CAAA;YAC/C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QACvC,CAAC;QACD,sCAAsC,EAAE,iCAAiC,CACrE,GAAG,CAAC,MAAM,EACV,KAAK,EACL,MAAM,EACN,MAAM,CACT;QACD,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YACxC,KAAK,EAAE,eAAe,CAAC;gBACnB,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,KAAK;gBACL,MAAM;gBACN,MAAM;gBACN,gBAAgB,EAAE,GAAG,CAAC,SAAS;aAClC,CAAC;SACL,CAAC,CAAC,CAAC,SAAS;QACb,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;YAC7B,6DAA6D;YAC7D,8DAA8D;YAC9D,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtC,MAAM,oBAAoB,GAAG,cAAc,CAAC,YAAY,EAAE,aAAa,IAAI,EAAE,CAAA;gBAC7E,cAAc,CAAC,YAAY,GAAG;oBAC1B,GAAG,cAAc,CAAC,YAAY;oBAC9B,aAAa,EAAE,CAAC,GAAG,oBAAoB,EAAE,OAAO,CAAC;iBACpD,CAAA;gBACD,MAAM,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAA;YAClF,CAAC;QACL,CAAC;QACD,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC;KAC9E,CAAA;AACL,CAAC,CAAkB,CAAA;AAEnB,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACvE,OAAO,EAAE,iCAAiC,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAEnF,MAAM,MAAM,GAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAClC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;IAE7B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,EAAE,CAAA;IACb,CAAC;IAED,2BAA2B;IAC3B,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE,CAAC;QACnC,UAAkB,CAAC,mBAAmB,GAAG,KAAK,CAAA;IACnD,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACvC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAA;IAElC,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE;QAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;KAChC,CAAC,CAAA;IAEF,OAAO;QACH,oCAAoC,EAAE,KAAK,EAAE,MAAe,EAAE,MAA4B,EAAE,EAAE;YAC1F,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAA;YAC5D,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAA;YAE5D,IAAI,UAAkB,CAAA;YACtB,IAAI,cAAc,IAAI,cAAc,EAAE,CAAC;gBACnC,UAAU,GAAG,2BAA2B,CAAA;YAC5C,CAAC;iBAAM,IAAI,cAAc,EAAE,CAAC;gBACxB,UAAU,GAAG,8BAA8B,CAAA;YAC/C,CAAC;iBAAM,IAAI,cAAc,EAAE,CAAC;gBACxB,UAAU,GAAG,8BAA8B,CAAA;YAC/C,CAAC;iBAAM,CAAC;gBACJ,OAAM;YACV,CAAC;YAED,MAAM,eAAe,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;YAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QACvC,CAAC;QACD,sCAAsC,EAAE,iCAAiC,CACrE,GAAG,CAAC,MAAM,EACV,KAAK,EACL,MAAM,EACN,MAAM,CACT;QACD,IAAI,EAAE;YACF,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,IAAI;gBACzC,OAAO,EAAE,iBAAiB,CAAC;oBACvB,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,KAAK;oBACL,MAAM;oBACN,MAAM;oBACN,gBAAgB,EAAE,GAAG,CAAC,SAAS;iBAClC,CAAC;aACL,CAAC;YACF,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,IAAI;gBACzC,OAAO,EAAE,iBAAiB,CAAC;oBACvB,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,KAAK;oBACL,MAAM;oBACN,MAAM;oBACN,gBAAgB,EAAE,GAAG,CAAC,SAAS;iBAClC,CAAC;aACL,CAAC;SACL;QACD,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;YAC7B,qEAAqE;YACrE,8DAA8D;YAC9D,MAAM,UAAU,GAAa,EAAE,CAAA;YAC/B,IAAI,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO;gBAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YACrE,IAAI,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO;gBAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAErE,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,oBAAoB,GAAG,cAAc,CAAC,YAAY,EAAE,aAAa,IAAI,EAAE,CAAA;gBAC7E,cAAc,CAAC,YAAY,GAAG;oBAC1B,GAAG,cAAc,CAAC,YAAY;oBAC9B,aAAa,EAAE,CAAC,GAAG,oBAAoB,EAAE,GAAG,UAAU,CAAC;iBAC1D,CAAA;gBACD,MAAM,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAA;YACzH,CAAC;QACL,CAAC;QACD,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC;KAC9E,CAAA;AACL,CAAC,CAAkB,CAAA;AAEnB,eAAe,MAAM,CAAA"}
@@ -14,10 +14,28 @@ export interface PruneToolNudge {
14
14
  enabled: boolean;
15
15
  frequency: number;
16
16
  }
17
+ export interface PruneToolTurnProtection {
18
+ enabled: boolean;
19
+ turns: number;
20
+ }
17
21
  export interface PruneTool {
18
22
  enabled: boolean;
19
23
  protectedTools: string[];
24
+ turnProtection: PruneToolTurnProtection;
25
+ nudge: PruneToolNudge;
26
+ }
27
+ export interface DiscardTool {
28
+ enabled: boolean;
29
+ protectedTools: string[];
30
+ turnProtection: PruneToolTurnProtection;
31
+ nudge: PruneToolNudge;
32
+ }
33
+ export interface ExtractTool {
34
+ enabled: boolean;
35
+ protectedTools: string[];
36
+ turnProtection: PruneToolTurnProtection;
20
37
  nudge: PruneToolNudge;
38
+ showDistillation: boolean;
21
39
  }
22
40
  export interface SupersedeWrites {
23
41
  enabled: boolean;
@@ -29,7 +47,8 @@ export interface PluginConfig {
29
47
  strategies: {
30
48
  deduplication: Deduplication;
31
49
  onIdle: OnIdle;
32
- pruneTool: PruneTool;
50
+ discardTool: DiscardTool;
51
+ extractTool: ExtractTool;
33
52
  supersedeWrites: SupersedeWrites;
34
53
  };
35
54
  }
@@ -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,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,MAAM;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,SAAS;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,KAAK,EAAE,cAAc,CAAA;CACxB;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;IACd,cAAc,EAAE,KAAK,GAAG,SAAS,GAAG,UAAU,CAAA;IAC9C,UAAU,EAAE;QACR,aAAa,EAAE,aAAa,CAAA;QAC5B,MAAM,EAAE,MAAM,CAAA;QACd,SAAS,EAAE,SAAS,CAAA;QACpB,eAAe,EAAE,eAAe,CAAA;KACnC,CAAA;CACJ;AAKD,eAAO,MAAM,iBAAiB,aA4B5B,CAAA;AAgBF,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,EAAE,CAG9E;AAgXD,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CA4FxD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEtD,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,MAAM;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,cAAc,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,uBAAuB;IACpC,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,SAAS;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,cAAc,EAAE,uBAAuB,CAAA;IACvC,KAAK,EAAE,cAAc,CAAA;CACxB;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,cAAc,EAAE,uBAAuB,CAAA;IACvC,KAAK,EAAE,cAAc,CAAA;CACxB;AAED,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,cAAc,EAAE,uBAAuB,CAAA;IACvC,KAAK,EAAE,cAAc,CAAA;IACrB,gBAAgB,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;IACd,cAAc,EAAE,KAAK,GAAG,SAAS,GAAG,UAAU,CAAA;IAC9C,UAAU,EAAE;QACR,aAAa,EAAE,aAAa,CAAA;QAC5B,MAAM,EAAE,MAAM,CAAA;QACd,WAAW,EAAE,WAAW,CAAA;QACxB,WAAW,EAAE,WAAW,CAAA;QACxB,eAAe,EAAE,eAAe,CAAA;KACnC,CAAA;CACJ;AAKD,eAAO,MAAM,iBAAiB,aA0C5B,CAAA;AAgBF,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,EAAE,CAG9E;AA2dD,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CA4FxD"}
@@ -2,7 +2,7 @@ import { readFileSync, writeFileSync, existsSync, mkdirSync, statSync } from 'fs
2
2
  import { join, dirname } from 'path';
3
3
  import { homedir } from 'os';
4
4
  import { parse } from 'jsonc-parser';
5
- const DEFAULT_PROTECTED_TOOLS = ['task', 'todowrite', 'todoread', 'prune', 'batch'];
5
+ const DEFAULT_PROTECTED_TOOLS = ['task', 'todowrite', 'todoread', 'discard', 'extract', 'batch'];
6
6
  // Valid config keys for validation against user config
7
7
  export const VALID_CONFIG_KEYS = new Set([
8
8
  // Top-level keys
@@ -25,13 +25,27 @@ export const VALID_CONFIG_KEYS = new Set([
25
25
  'strategies.onIdle.showModelErrorToasts',
26
26
  'strategies.onIdle.strictModelSelection',
27
27
  'strategies.onIdle.protectedTools',
28
- // strategies.pruneTool
29
- 'strategies.pruneTool',
30
- 'strategies.pruneTool.enabled',
31
- 'strategies.pruneTool.protectedTools',
32
- 'strategies.pruneTool.nudge',
33
- 'strategies.pruneTool.nudge.enabled',
34
- 'strategies.pruneTool.nudge.frequency'
28
+ // strategies.discardTool
29
+ 'strategies.discardTool',
30
+ 'strategies.discardTool.enabled',
31
+ 'strategies.discardTool.protectedTools',
32
+ 'strategies.discardTool.turnProtection',
33
+ 'strategies.discardTool.turnProtection.enabled',
34
+ 'strategies.discardTool.turnProtection.turns',
35
+ 'strategies.discardTool.nudge',
36
+ 'strategies.discardTool.nudge.enabled',
37
+ 'strategies.discardTool.nudge.frequency',
38
+ // strategies.extractTool
39
+ 'strategies.extractTool',
40
+ 'strategies.extractTool.enabled',
41
+ 'strategies.extractTool.protectedTools',
42
+ 'strategies.extractTool.turnProtection',
43
+ 'strategies.extractTool.turnProtection.enabled',
44
+ 'strategies.extractTool.turnProtection.turns',
45
+ 'strategies.extractTool.nudge',
46
+ 'strategies.extractTool.nudge.enabled',
47
+ 'strategies.extractTool.nudge.frequency',
48
+ 'strategies.extractTool.showDistillation'
35
49
  ]);
36
50
  // Extract all key paths from a config object for validation
37
51
  function getConfigKeyPaths(obj, prefix = '') {
@@ -93,22 +107,58 @@ function validateConfigTypes(config) {
93
107
  errors.push({ key: 'strategies.onIdle.protectedTools', expected: 'string[]', actual: typeof strategies.onIdle.protectedTools });
94
108
  }
95
109
  }
96
- // pruneTool
97
- if (strategies.pruneTool) {
98
- if (strategies.pruneTool.enabled !== undefined && typeof strategies.pruneTool.enabled !== 'boolean') {
99
- errors.push({ key: 'strategies.pruneTool.enabled', expected: 'boolean', actual: typeof strategies.pruneTool.enabled });
110
+ // discardTool
111
+ if (strategies.discardTool) {
112
+ if (strategies.discardTool.enabled !== undefined && typeof strategies.discardTool.enabled !== 'boolean') {
113
+ errors.push({ key: 'strategies.discardTool.enabled', expected: 'boolean', actual: typeof strategies.discardTool.enabled });
100
114
  }
101
- if (strategies.pruneTool.protectedTools !== undefined && !Array.isArray(strategies.pruneTool.protectedTools)) {
102
- errors.push({ key: 'strategies.pruneTool.protectedTools', expected: 'string[]', actual: typeof strategies.pruneTool.protectedTools });
115
+ if (strategies.discardTool.protectedTools !== undefined && !Array.isArray(strategies.discardTool.protectedTools)) {
116
+ errors.push({ key: 'strategies.discardTool.protectedTools', expected: 'string[]', actual: typeof strategies.discardTool.protectedTools });
103
117
  }
104
- if (strategies.pruneTool.nudge) {
105
- if (strategies.pruneTool.nudge.enabled !== undefined && typeof strategies.pruneTool.nudge.enabled !== 'boolean') {
106
- errors.push({ key: 'strategies.pruneTool.nudge.enabled', expected: 'boolean', actual: typeof strategies.pruneTool.nudge.enabled });
118
+ if (strategies.discardTool.turnProtection) {
119
+ if (strategies.discardTool.turnProtection.enabled !== undefined && typeof strategies.discardTool.turnProtection.enabled !== 'boolean') {
120
+ errors.push({ key: 'strategies.discardTool.turnProtection.enabled', expected: 'boolean', actual: typeof strategies.discardTool.turnProtection.enabled });
107
121
  }
108
- if (strategies.pruneTool.nudge.frequency !== undefined && typeof strategies.pruneTool.nudge.frequency !== 'number') {
109
- errors.push({ key: 'strategies.pruneTool.nudge.frequency', expected: 'number', actual: typeof strategies.pruneTool.nudge.frequency });
122
+ if (strategies.discardTool.turnProtection.turns !== undefined && typeof strategies.discardTool.turnProtection.turns !== 'number') {
123
+ errors.push({ key: 'strategies.discardTool.turnProtection.turns', expected: 'number', actual: typeof strategies.discardTool.turnProtection.turns });
110
124
  }
111
125
  }
126
+ if (strategies.discardTool.nudge) {
127
+ if (strategies.discardTool.nudge.enabled !== undefined && typeof strategies.discardTool.nudge.enabled !== 'boolean') {
128
+ errors.push({ key: 'strategies.discardTool.nudge.enabled', expected: 'boolean', actual: typeof strategies.discardTool.nudge.enabled });
129
+ }
130
+ if (strategies.discardTool.nudge.frequency !== undefined && typeof strategies.discardTool.nudge.frequency !== 'number') {
131
+ errors.push({ key: 'strategies.discardTool.nudge.frequency', expected: 'number', actual: typeof strategies.discardTool.nudge.frequency });
132
+ }
133
+ }
134
+ }
135
+ // extractTool
136
+ if (strategies.extractTool) {
137
+ if (strategies.extractTool.enabled !== undefined && typeof strategies.extractTool.enabled !== 'boolean') {
138
+ errors.push({ key: 'strategies.extractTool.enabled', expected: 'boolean', actual: typeof strategies.extractTool.enabled });
139
+ }
140
+ if (strategies.extractTool.protectedTools !== undefined && !Array.isArray(strategies.extractTool.protectedTools)) {
141
+ errors.push({ key: 'strategies.extractTool.protectedTools', expected: 'string[]', actual: typeof strategies.extractTool.protectedTools });
142
+ }
143
+ if (strategies.extractTool.turnProtection) {
144
+ if (strategies.extractTool.turnProtection.enabled !== undefined && typeof strategies.extractTool.turnProtection.enabled !== 'boolean') {
145
+ errors.push({ key: 'strategies.extractTool.turnProtection.enabled', expected: 'boolean', actual: typeof strategies.extractTool.turnProtection.enabled });
146
+ }
147
+ if (strategies.extractTool.turnProtection.turns !== undefined && typeof strategies.extractTool.turnProtection.turns !== 'number') {
148
+ errors.push({ key: 'strategies.extractTool.turnProtection.turns', expected: 'number', actual: typeof strategies.extractTool.turnProtection.turns });
149
+ }
150
+ }
151
+ if (strategies.extractTool.nudge) {
152
+ if (strategies.extractTool.nudge.enabled !== undefined && typeof strategies.extractTool.nudge.enabled !== 'boolean') {
153
+ errors.push({ key: 'strategies.extractTool.nudge.enabled', expected: 'boolean', actual: typeof strategies.extractTool.nudge.enabled });
154
+ }
155
+ if (strategies.extractTool.nudge.frequency !== undefined && typeof strategies.extractTool.nudge.frequency !== 'number') {
156
+ errors.push({ key: 'strategies.extractTool.nudge.frequency', expected: 'number', actual: typeof strategies.extractTool.nudge.frequency });
157
+ }
158
+ }
159
+ if (strategies.extractTool.showDistillation !== undefined && typeof strategies.extractTool.showDistillation !== 'boolean') {
160
+ errors.push({ key: 'strategies.extractTool.showDistillation', expected: 'boolean', actual: typeof strategies.extractTool.showDistillation });
161
+ }
112
162
  }
113
163
  // supersedeWrites
114
164
  if (strategies.supersedeWrites) {
@@ -167,14 +217,31 @@ const defaultConfig = {
167
217
  supersedeWrites: {
168
218
  enabled: true
169
219
  },
170
- pruneTool: {
220
+ discardTool: {
171
221
  enabled: true,
172
222
  protectedTools: [...DEFAULT_PROTECTED_TOOLS],
223
+ turnProtection: {
224
+ enabled: false,
225
+ turns: 4
226
+ },
173
227
  nudge: {
174
228
  enabled: true,
175
229
  frequency: 10
176
230
  }
177
231
  },
232
+ extractTool: {
233
+ enabled: true,
234
+ protectedTools: [...DEFAULT_PROTECTED_TOOLS],
235
+ turnProtection: {
236
+ enabled: false,
237
+ turns: 4
238
+ },
239
+ nudge: {
240
+ enabled: true,
241
+ frequency: 10
242
+ },
243
+ showDistillation: false
244
+ },
178
245
  onIdle: {
179
246
  enabled: false,
180
247
  protectedTools: [...DEFAULT_PROTECTED_TOOLS],
@@ -262,17 +329,40 @@ function createDefaultConfig() {
262
329
  "supersedeWrites": {
263
330
  "enabled": true
264
331
  },
265
- // Exposes a prune tool to your LLM to call when it determines pruning is necessary
266
- "pruneTool": {
332
+ // Removes tool content from context without preservation (for completed tasks or noise)
333
+ "discardTool": {
267
334
  "enabled": true,
268
335
  // Additional tools to protect from pruning
269
336
  "protectedTools": [],
270
- // Nudge the LLM to use the prune tool (every <frequency> tool results)
337
+ // Protect from pruning for <turn protection> message turns
338
+ "turnProtection": {
339
+ "enabled": false,
340
+ "turns": 4
341
+ },
342
+ // Nudge the LLM to use the discard tool (every <frequency> tool results)
271
343
  "nudge": {
272
344
  "enabled": true,
273
345
  "frequency": 10
274
346
  }
275
347
  },
348
+ // Distills key findings into preserved knowledge before removing raw content
349
+ "extractTool": {
350
+ "enabled": true,
351
+ // Additional tools to protect from pruning
352
+ "protectedTools": [],
353
+ // Protect from pruning for <turn protection> message turns
354
+ "turnProtection": {
355
+ "enabled": false,
356
+ "turns": 4
357
+ },
358
+ // Nudge the LLM to use the extract tool (every <frequency> tool results)
359
+ "nudge": {
360
+ "enabled": true,
361
+ "frequency": 10
362
+ },
363
+ // Show distillation content as an ignored message notification
364
+ "showDistillation": false
365
+ },
276
366
  // (Legacy) Run an LLM to analyze what tool calls are no longer relevant on idle
277
367
  "onIdle": {
278
368
  "enabled": false,
@@ -335,19 +425,41 @@ function mergeStrategies(base, override) {
335
425
  ])
336
426
  ]
337
427
  },
338
- pruneTool: {
339
- enabled: override.pruneTool?.enabled ?? base.pruneTool.enabled,
428
+ discardTool: {
429
+ enabled: override.discardTool?.enabled ?? base.discardTool.enabled,
340
430
  protectedTools: [
341
431
  ...new Set([
342
- ...base.pruneTool.protectedTools,
343
- ...(override.pruneTool?.protectedTools ?? [])
432
+ ...base.discardTool.protectedTools,
433
+ ...(override.discardTool?.protectedTools ?? [])
344
434
  ])
345
435
  ],
436
+ turnProtection: {
437
+ enabled: override.discardTool?.turnProtection?.enabled ?? base.discardTool.turnProtection.enabled,
438
+ turns: override.discardTool?.turnProtection?.turns ?? base.discardTool.turnProtection.turns
439
+ },
346
440
  nudge: {
347
- enabled: override.pruneTool?.nudge?.enabled ?? base.pruneTool.nudge.enabled,
348
- frequency: override.pruneTool?.nudge?.frequency ?? base.pruneTool.nudge.frequency
441
+ enabled: override.discardTool?.nudge?.enabled ?? base.discardTool.nudge.enabled,
442
+ frequency: override.discardTool?.nudge?.frequency ?? base.discardTool.nudge.frequency
349
443
  }
350
444
  },
445
+ extractTool: {
446
+ enabled: override.extractTool?.enabled ?? base.extractTool.enabled,
447
+ protectedTools: [
448
+ ...new Set([
449
+ ...base.extractTool.protectedTools,
450
+ ...(override.extractTool?.protectedTools ?? [])
451
+ ])
452
+ ],
453
+ turnProtection: {
454
+ enabled: override.extractTool?.turnProtection?.enabled ?? base.extractTool.turnProtection.enabled,
455
+ turns: override.extractTool?.turnProtection?.turns ?? base.extractTool.turnProtection.turns
456
+ },
457
+ nudge: {
458
+ enabled: override.extractTool?.nudge?.enabled ?? base.extractTool.nudge.enabled,
459
+ frequency: override.extractTool?.nudge?.frequency ?? base.extractTool.nudge.frequency
460
+ },
461
+ showDistillation: override.extractTool?.showDistillation ?? base.extractTool.showDistillation
462
+ },
351
463
  supersedeWrites: {
352
464
  enabled: override.supersedeWrites?.enabled ?? base.supersedeWrites.enabled
353
465
  }
@@ -365,10 +477,18 @@ function deepCloneConfig(config) {
365
477
  ...config.strategies.onIdle,
366
478
  protectedTools: [...config.strategies.onIdle.protectedTools]
367
479
  },
368
- pruneTool: {
369
- ...config.strategies.pruneTool,
370
- protectedTools: [...config.strategies.pruneTool.protectedTools],
371
- nudge: { ...config.strategies.pruneTool.nudge }
480
+ discardTool: {
481
+ ...config.strategies.discardTool,
482
+ protectedTools: [...config.strategies.discardTool.protectedTools],
483
+ turnProtection: { ...config.strategies.discardTool.turnProtection },
484
+ nudge: { ...config.strategies.discardTool.nudge }
485
+ },
486
+ extractTool: {
487
+ ...config.strategies.extractTool,
488
+ protectedTools: [...config.strategies.extractTool.protectedTools],
489
+ turnProtection: { ...config.strategies.extractTool.turnProtection },
490
+ nudge: { ...config.strategies.extractTool.nudge },
491
+ showDistillation: config.strategies.extractTool.showDistillation
372
492
  },
373
493
  supersedeWrites: {
374
494
  ...config.strategies.supersedeWrites
@@ -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":"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;AA4C7C,eAAO,MAAM,sBAAsB,GAC/B,OAAO,YAAY,EACnB,QAAQ,YAAY,EACpB,QAAQ,MAAM,EACd,UAAU,SAAS,EAAE,KACtB,IA6CF,CAAA;AAED,eAAO,MAAM,KAAK,GACd,OAAO,YAAY,EACnB,QAAQ,MAAM,EACd,QAAQ,YAAY,EACpB,UAAU,SAAS,EAAE,KACtB,IAGF,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;AAsF7C,eAAO,MAAM,sBAAsB,GAC/B,OAAO,YAAY,EACnB,QAAQ,YAAY,EACpB,QAAQ,MAAM,EACd,UAAU,SAAS,EAAE,KACtB,IA8DF,CAAA;AAED,eAAO,MAAM,KAAK,GACd,OAAO,YAAY,EACnB,QAAQ,MAAM,EACd,QAAQ,YAAY,EACpB,UAAU,SAAS,EAAE,KACtB,IAGF,CAAA"}