You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**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,8 +74,8 @@ 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": [],
@@ -82,12 +84,30 @@ DCP uses its own config file:
82
84
"enabled":false,
83
85
"turns":4
84
86
},
85
-
// Nudge the LLM to use the prune tool (every <frequency> tool results)
87
+
// Nudge the LLM to use the discard tool (every <frequency> tool results)
86
88
"nudge": {
87
89
"enabled":true,
88
90
"frequency":10
89
91
}
90
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
+
},
91
111
// (Legacy) Run an LLM to analyze what tool calls are no longer relevant on idle
92
112
"onIdle": {
93
113
"enabled":false,
@@ -109,7 +129,7 @@ DCP uses its own config file:
109
129
### Protected Tools
110
130
111
131
By default, these tools are always protected from pruning across all strategies:
0 commit comments