@tarquinen/opencode-dcp 3.1.3 → 3.1.5
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.
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -10
- package/dist/index.js.map +1 -1
- package/dist/lib/hooks.d.ts +10 -0
- package/dist/lib/hooks.d.ts.map +1 -1
- package/dist/lib/hooks.js +12 -3
- package/dist/lib/hooks.js.map +1 -1
- package/dist/lib/messages/inject/inject.d.ts.map +1 -1
- package/dist/lib/messages/inject/inject.js +14 -23
- package/dist/lib/messages/inject/inject.js.map +1 -1
- package/dist/lib/messages/inject/utils.d.ts.map +1 -1
- package/dist/lib/messages/inject/utils.js +14 -4
- package/dist/lib/messages/inject/utils.js.map +1 -1
- package/dist/lib/messages/utils.d.ts +3 -1
- package/dist/lib/messages/utils.d.ts.map +1 -1
- package/dist/lib/messages/utils.js +33 -9
- package/dist/lib/messages/utils.js.map +1 -1
- package/dist/lib/prompts/compress-message.d.ts +1 -1
- package/dist/lib/prompts/compress-message.d.ts.map +1 -1
- package/dist/lib/prompts/compress-message.js +1 -1
- package/dist/lib/prompts/compress-range.d.ts +1 -1
- package/dist/lib/prompts/compress-range.d.ts.map +1 -1
- package/dist/lib/prompts/compress-range.js +1 -1
- package/package.json +1 -1
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAoBjD,QAAA,MAAM,MAAM,EAAE,MAgHK,CAAA;AAEnB,eAAe,MAAM,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -4,7 +4,7 @@ import { compressDisabledByOpencode, hasExplicitToolPermission, } from "./lib/ho
|
|
|
4
4
|
import { Logger } from "./lib/logger";
|
|
5
5
|
import { createSessionState } from "./lib/state";
|
|
6
6
|
import { PromptStore } from "./lib/prompts/store";
|
|
7
|
-
import { createChatMessageTransformHandler, createCommandExecuteHandler, createSystemPromptHandler, createTextCompleteHandler, } from "./lib/hooks";
|
|
7
|
+
import { createChatMessageHandler, createChatMessageTransformHandler, createCommandExecuteHandler, createSystemPromptHandler, createTextCompleteHandler, } from "./lib/hooks";
|
|
8
8
|
import { configureClientAuth, isSecureMode } from "./lib/auth";
|
|
9
9
|
const plugin = (async (ctx) => {
|
|
10
10
|
const config = getConfig(ctx);
|
|
@@ -35,10 +35,7 @@ const plugin = (async (ctx) => {
|
|
|
35
35
|
return {
|
|
36
36
|
"experimental.chat.system.transform": createSystemPromptHandler(state, logger, config, prompts),
|
|
37
37
|
"experimental.chat.messages.transform": createChatMessageTransformHandler(ctx.client, state, logger, config, prompts, hostPermissions),
|
|
38
|
-
"chat.message":
|
|
39
|
-
state.variant = input.variant;
|
|
40
|
-
logger.debug("Cached variant from chat.message hook", { variant: input.variant });
|
|
41
|
-
},
|
|
38
|
+
"chat.message": createChatMessageHandler(state, logger, config, hostPermissions),
|
|
42
39
|
"experimental.text.complete": createTextCompleteHandler(),
|
|
43
40
|
"command.execute.before": createCommandExecuteHandler(ctx.client, state, logger, config, ctx.directory, hostPermissions),
|
|
44
41
|
tool: {
|
|
@@ -49,17 +46,17 @@ const plugin = (async (ctx) => {
|
|
|
49
46
|
}),
|
|
50
47
|
},
|
|
51
48
|
config: async (opencodeConfig) => {
|
|
52
|
-
if (config.
|
|
49
|
+
if (config.compress.permission !== "deny" &&
|
|
50
|
+
compressDisabledByOpencode(opencodeConfig.permission)) {
|
|
51
|
+
config.compress.permission = "deny";
|
|
52
|
+
}
|
|
53
|
+
if (config.commands.enabled && config.compress.permission !== "deny") {
|
|
53
54
|
opencodeConfig.command ??= {};
|
|
54
55
|
opencodeConfig.command["dcp"] = {
|
|
55
56
|
template: "",
|
|
56
57
|
description: "Show available DCP commands",
|
|
57
58
|
};
|
|
58
59
|
}
|
|
59
|
-
if (config.compress.permission !== "deny" &&
|
|
60
|
-
compressDisabledByOpencode(opencodeConfig.permission)) {
|
|
61
|
-
config.compress.permission = "deny";
|
|
62
|
-
}
|
|
63
60
|
const toolsToAdd = [];
|
|
64
61
|
if (config.compress.permission !== "deny" && !config.experimental.allowSubAgents) {
|
|
65
62
|
toolsToAdd.push("compress");
|
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,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AACnF,OAAO,EACH,0BAA0B,EAC1B,yBAAyB,GAE5B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EACH,iCAAiC,EACjC,2BAA2B,EAC3B,yBAAyB,EACzB,yBAAyB,GAC5B,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9D,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,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACvC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAA;IAClC,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAA;IACzF,MAAM,eAAe,GAA2B;QAC5C,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,EAAE;KACb,CAAA;IAED,IAAI,YAAY,EAAE,EAAE,CAAC;QACjB,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC/B,wEAAwE;IAC5E,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE;QAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;KAChC,CAAC,CAAA;IAEF,MAAM,mBAAmB,GAAG;QACxB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,KAAK;QACL,MAAM;QACN,MAAM;QACN,OAAO;KACV,CAAA;IAED,OAAO;QACH,oCAAoC,EAAE,yBAAyB,CAC3D,KAAK,EACL,MAAM,EACN,MAAM,EACN,OAAO,CACV;QAED,sCAAsC,EAAE,iCAAiC,CACrE,GAAG,CAAC,MAAM,EACV,KAAK,EACL,MAAM,EACN,MAAM,EACN,OAAO,EACP,eAAe,CACX;QACR,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/hooks.d.ts
CHANGED
|
@@ -30,4 +30,14 @@ export declare function createTextCompleteHandler(): (_input: {
|
|
|
30
30
|
}, output: {
|
|
31
31
|
text: string;
|
|
32
32
|
}) => Promise<void>;
|
|
33
|
+
export declare function createChatMessageHandler(state: SessionState, logger: Logger, _config: PluginConfig, _hostPermissions: HostPermissionSnapshot): (input: {
|
|
34
|
+
sessionID: string;
|
|
35
|
+
agent?: string;
|
|
36
|
+
model?: {
|
|
37
|
+
providerID: string;
|
|
38
|
+
modelID: string;
|
|
39
|
+
};
|
|
40
|
+
messageID?: string;
|
|
41
|
+
variant?: string;
|
|
42
|
+
}, _output: any) => Promise<void>;
|
|
33
43
|
//# sourceMappingURL=hooks.d.ts.map
|
package/dist/lib/hooks.d.ts.map
CHANGED
|
@@ -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;AAc5C,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,WAAW,CAAA;AAYhE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAWhE,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,mBAyC7D;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,
|
|
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;AAYhE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAWhE,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,mBAyC7D;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,wBAAwB,CACpC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,YAAY,EACrB,gBAAgB,EAAE,sBAAsB,IAGpC,OAAO;IACH,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;CACnB,EACD,SAAS,GAAG,mBAKnB"}
|
package/dist/lib/hooks.js
CHANGED
|
@@ -80,6 +80,9 @@ export function createCommandExecuteHandler(client, state, logger, config, worki
|
|
|
80
80
|
await ensureSessionInitialized(client, state, input.sessionID, logger, messages, config.manualMode.enabled);
|
|
81
81
|
syncCompressPermissionState(state, config, hostPermissions, messages);
|
|
82
82
|
const effectivePermission = compressPermission(state, config);
|
|
83
|
+
if (effectivePermission === "deny") {
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
83
86
|
const args = (input.arguments || "").trim().split(/\s+/).filter(Boolean);
|
|
84
87
|
const subcommand = args[0]?.toLowerCase() || "";
|
|
85
88
|
const subArgs = args.slice(1);
|
|
@@ -111,7 +114,7 @@ export function createCommandExecuteHandler(client, state, logger, config, worki
|
|
|
111
114
|
await handleManualToggleCommand(commandCtx, subArgs[0]?.toLowerCase());
|
|
112
115
|
throw new Error("__DCP_MANUAL_HANDLED__");
|
|
113
116
|
}
|
|
114
|
-
if (subcommand === "compress"
|
|
117
|
+
if (subcommand === "compress") {
|
|
115
118
|
const userFocus = subArgs.join(" ").trim();
|
|
116
119
|
const prompt = await handleManualTriggerCommand(commandCtx, "compress", userFocus);
|
|
117
120
|
if (!prompt) {
|
|
@@ -130,14 +133,14 @@ export function createCommandExecuteHandler(client, state, logger, config, worki
|
|
|
130
133
|
});
|
|
131
134
|
return;
|
|
132
135
|
}
|
|
133
|
-
if (subcommand === "decompress"
|
|
136
|
+
if (subcommand === "decompress") {
|
|
134
137
|
await handleDecompressCommand({
|
|
135
138
|
...commandCtx,
|
|
136
139
|
args: subArgs,
|
|
137
140
|
});
|
|
138
141
|
throw new Error("__DCP_DECOMPRESS_HANDLED__");
|
|
139
142
|
}
|
|
140
|
-
if (subcommand === "recompress"
|
|
143
|
+
if (subcommand === "recompress") {
|
|
141
144
|
await handleRecompressCommand({
|
|
142
145
|
...commandCtx,
|
|
143
146
|
args: subArgs,
|
|
@@ -154,4 +157,10 @@ export function createTextCompleteHandler() {
|
|
|
154
157
|
output.text = stripHallucinationsFromString(output.text);
|
|
155
158
|
};
|
|
156
159
|
}
|
|
160
|
+
export function createChatMessageHandler(state, logger, _config, _hostPermissions) {
|
|
161
|
+
return async (input, _output) => {
|
|
162
|
+
state.variant = input.variant;
|
|
163
|
+
logger.debug("Cached variant from chat.message hook", { variant: input.variant });
|
|
164
|
+
};
|
|
165
|
+
}
|
|
157
166
|
//# sourceMappingURL=hooks.js.map
|
package/dist/lib/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../lib/hooks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../lib/hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +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;AAEzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,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;AAuBzD,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,IAiEF,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { formatMessageIdTag } from "../../message-ids";
|
|
2
2
|
import { compressPermission, getLastUserMessage, messageHasCompress } from "../../shared-utils";
|
|
3
3
|
import { saveSessionState } from "../../state/persistence";
|
|
4
|
-
import { appendToTextPart,
|
|
4
|
+
import { appendToTextPart, appendToLastTextPart, appendToLastToolPart, createSyntheticTextPart, hasContent, isIgnoredUserMessage, isProtectedUserMessage, } from "../utils";
|
|
5
5
|
import { addAnchor, applyAnchoredNudges, countMessagesAfterIndex, findLastNonIgnoredMessage, getIterationNudgeThreshold, getNudgeFrequency, getModelInfo, isContextOverLimits, } from "./utils";
|
|
6
6
|
export const injectCompressNudges = (state, config, logger, messages, prompts, compressionPriorities) => {
|
|
7
7
|
if (compressPermission(state, config) === "deny") {
|
|
@@ -105,31 +105,22 @@ export const injectMessageIds = (state, config, messages, compressionPriorities)
|
|
|
105
105
|
if (message.info.role !== "assistant") {
|
|
106
106
|
continue;
|
|
107
107
|
}
|
|
108
|
-
|
|
109
|
-
(p.type === "tool" &&
|
|
110
|
-
p.state?.status === "completed" &&
|
|
111
|
-
typeof p.state.output === "string"));
|
|
112
|
-
if (!hasContent) {
|
|
108
|
+
if (!hasContent(message)) {
|
|
113
109
|
continue;
|
|
114
110
|
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
if (part.type === "text") {
|
|
118
|
-
injected = appendToTextPart(part, tag) || injected;
|
|
119
|
-
}
|
|
120
|
-
else if (part.type === "tool") {
|
|
121
|
-
injected = appendToToolPart(part, tag) || injected;
|
|
122
|
-
}
|
|
111
|
+
if (appendToLastToolPart(message, tag)) {
|
|
112
|
+
continue;
|
|
123
113
|
}
|
|
124
|
-
if (
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
114
|
+
if (appendToLastTextPart(message, tag)) {
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
const syntheticPart = createSyntheticTextPart(message, tag);
|
|
118
|
+
const firstToolIndex = message.parts.findIndex((p) => p.type === "tool");
|
|
119
|
+
if (firstToolIndex === -1) {
|
|
120
|
+
message.parts.push(syntheticPart);
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
message.parts.splice(firstToolIndex, 0, syntheticPart);
|
|
133
124
|
}
|
|
134
125
|
}
|
|
135
126
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inject.js","sourceRoot":"","sources":["../../../../lib/messages/inject/inject.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EACH,gBAAgB,EAChB,
|
|
1
|
+
{"version":3,"file":"inject.js","sourceRoot":"","sources":["../../../../lib/messages/inject/inject.ts"],"names":[],"mappings":"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"}
|
|
@@ -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;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,EACH,KAAK,sBAAsB,EAG9B,MAAM,aAAa,CAAA;
|
|
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;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,EACH,KAAK,sBAAsB,EAG9B,MAAM,aAAa,CAAA;AAcpB,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;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAaxE;AAoJD,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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { renderMessagePriorityGuidance } from "../../prompts/message-priority-guidance";
|
|
2
2
|
import { listPriorityRefsBeforeIndex, } from "../priority";
|
|
3
|
-
import { appendToLastTextPart, createSyntheticTextPart, isIgnoredUserMessage } from "../utils";
|
|
3
|
+
import { appendToTextPart, appendToLastTextPart, createSyntheticTextPart, hasContent, isIgnoredUserMessage, } from "../utils";
|
|
4
4
|
import { getLastUserMessage } from "../../shared-utils";
|
|
5
5
|
import { getCurrentTokenUsage } from "../../strategies/utils";
|
|
6
6
|
import { getActiveSummaryTokenUsage } from "../../state/utils";
|
|
@@ -150,16 +150,26 @@ function injectAnchoredNudge(message, nudgeText) {
|
|
|
150
150
|
if (!nudgeText.trim()) {
|
|
151
151
|
return;
|
|
152
152
|
}
|
|
153
|
-
if (appendToLastTextPart(message, nudgeText)) {
|
|
154
|
-
return;
|
|
155
|
-
}
|
|
156
153
|
if (message.info.role === "user") {
|
|
154
|
+
if (appendToLastTextPart(message, nudgeText)) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
157
|
message.parts.push(createSyntheticTextPart(message, nudgeText));
|
|
158
158
|
return;
|
|
159
159
|
}
|
|
160
160
|
if (message.info.role !== "assistant") {
|
|
161
161
|
return;
|
|
162
162
|
}
|
|
163
|
+
if (!hasContent(message)) {
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
for (const part of message.parts) {
|
|
167
|
+
if (part.type === "text") {
|
|
168
|
+
if (appendToTextPart(part, nudgeText)) {
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
}
|
|
163
173
|
const syntheticPart = createSyntheticTextPart(message, nudgeText);
|
|
164
174
|
const firstToolIndex = message.parts.findIndex((p) => p.type === "tool");
|
|
165
175
|
if (firstToolIndex === -1) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../lib/messages/inject/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAA;AAGvF,OAAO,EAGH,2BAA2B,GAC9B,MAAM,aAAa,CAAA;AACpB,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../lib/messages/inject/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,9 +15,11 @@ type ToolPart = Extract<MessagePart, {
|
|
|
15
15
|
type TextPart = Extract<MessagePart, {
|
|
16
16
|
type: "text";
|
|
17
17
|
}>;
|
|
18
|
-
export declare const appendToTextPart: (part: TextPart, injection: string) => boolean;
|
|
19
18
|
export declare const appendToLastTextPart: (message: WithParts, injection: string) => boolean;
|
|
19
|
+
export declare const appendToTextPart: (part: TextPart, injection: string) => boolean;
|
|
20
|
+
export declare const appendToLastToolPart: (message: WithParts, tag: string) => boolean;
|
|
20
21
|
export declare const appendToToolPart: (part: ToolPart, tag: string) => boolean;
|
|
22
|
+
export declare const hasContent: (message: WithParts) => boolean;
|
|
21
23
|
export declare function buildToolIdList(state: SessionState, messages: WithParts[]): string[];
|
|
22
24
|
export declare const isIgnoredUserMessage: (message: WithParts) => boolean;
|
|
23
25
|
export declare function isProtectedUserMessage(config: PluginConfig, message: WithParts): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../lib/messages/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAE7C,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAavD,eAAO,MAAM,0BAA0B,GACnC,aAAa,SAAS,EACtB,SAAS,MAAM,EACf,UAAU,MAAM,EAChB,aAAa,MAAM,KACpB,SA2BF,CAAA;AAED,eAAO,MAAM,uBAAuB,GAChC,aAAa,SAAS,EACtB,SAAS,MAAM,EACf,aAAa,MAAM;;;;;;CAatB,CAAA;AAED,KAAK,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAA;AAC7C,KAAK,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AACtD,KAAK,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAEtD,eAAO,MAAM,gBAAgB,GAAI,MAAM,QAAQ,EAAE,WAAW,MAAM,KAAG,OAgBpE,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../lib/messages/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAE7C,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAavD,eAAO,MAAM,0BAA0B,GACnC,aAAa,SAAS,EACtB,SAAS,MAAM,EACf,UAAU,MAAM,EAChB,aAAa,MAAM,KACpB,SA2BF,CAAA;AAED,eAAO,MAAM,uBAAuB,GAChC,aAAa,SAAS,EACtB,SAAS,MAAM,EACf,aAAa,MAAM;;;;;;CAatB,CAAA;AAED,KAAK,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAA;AAC7C,KAAK,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AACtD,KAAK,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAEtD,eAAO,MAAM,oBAAoB,GAAI,SAAS,SAAS,EAAE,WAAW,MAAM,KAAG,OAO5E,CAAA;AAaD,eAAO,MAAM,gBAAgB,GAAI,MAAM,QAAQ,EAAE,WAAW,MAAM,KAAG,OAgBpE,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,SAAS,SAAS,EAAE,KAAK,MAAM,KAAG,OAOtE,CAAA;AAaD,eAAO,MAAM,gBAAgB,GAAI,MAAM,QAAQ,EAAE,KAAK,MAAM,KAAG,OAU9D,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,SAAS,SAAS,KAAG,OAU/C,CAAA;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAiBpF;AAED,eAAO,MAAM,oBAAoB,GAAI,SAAS,SAAS,KAAG,OAiBzD,CAAA;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAOxF;AAED,eAAO,MAAM,0BAA0B,GAAI,MAAM,MAAM,KAAG,MAEzD,CAAA;AAED,eAAO,MAAM,6BAA6B,GAAI,MAAM,MAAM,KAAG,MAE5D,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,UAAU,SAAS,EAAE,KAAG,IAgB3D,CAAA"}
|
|
@@ -47,6 +47,22 @@ export const createSyntheticTextPart = (baseMessage, content, stableSeed) => {
|
|
|
47
47
|
text: content,
|
|
48
48
|
};
|
|
49
49
|
};
|
|
50
|
+
export const appendToLastTextPart = (message, injection) => {
|
|
51
|
+
const textPart = findLastTextPart(message);
|
|
52
|
+
if (!textPart) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
return appendToTextPart(textPart, injection);
|
|
56
|
+
};
|
|
57
|
+
const findLastTextPart = (message) => {
|
|
58
|
+
for (let i = message.parts.length - 1; i >= 0; i--) {
|
|
59
|
+
const part = message.parts[i];
|
|
60
|
+
if (part.type === "text") {
|
|
61
|
+
return part;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return null;
|
|
65
|
+
};
|
|
50
66
|
export const appendToTextPart = (part, injection) => {
|
|
51
67
|
if (typeof part.text !== "string") {
|
|
52
68
|
return false;
|
|
@@ -62,22 +78,22 @@ export const appendToTextPart = (part, injection) => {
|
|
|
62
78
|
part.text = baseText.length > 0 ? `${baseText}\n\n${normalizedInjection}` : normalizedInjection;
|
|
63
79
|
return true;
|
|
64
80
|
};
|
|
65
|
-
const
|
|
81
|
+
export const appendToLastToolPart = (message, tag) => {
|
|
82
|
+
const toolPart = findLastToolPart(message);
|
|
83
|
+
if (!toolPart) {
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
return appendToToolPart(toolPart, tag);
|
|
87
|
+
};
|
|
88
|
+
const findLastToolPart = (message) => {
|
|
66
89
|
for (let i = message.parts.length - 1; i >= 0; i--) {
|
|
67
90
|
const part = message.parts[i];
|
|
68
|
-
if (part.type === "
|
|
91
|
+
if (part.type === "tool") {
|
|
69
92
|
return part;
|
|
70
93
|
}
|
|
71
94
|
}
|
|
72
95
|
return null;
|
|
73
96
|
};
|
|
74
|
-
export const appendToLastTextPart = (message, injection) => {
|
|
75
|
-
const textPart = findLastTextPart(message);
|
|
76
|
-
if (!textPart) {
|
|
77
|
-
return false;
|
|
78
|
-
}
|
|
79
|
-
return appendToTextPart(textPart, injection);
|
|
80
|
-
};
|
|
81
97
|
export const appendToToolPart = (part, tag) => {
|
|
82
98
|
if (part.state?.status !== "completed" || typeof part.state.output !== "string") {
|
|
83
99
|
return false;
|
|
@@ -88,6 +104,14 @@ export const appendToToolPart = (part, tag) => {
|
|
|
88
104
|
part.state.output = `${part.state.output}${tag}`;
|
|
89
105
|
return true;
|
|
90
106
|
};
|
|
107
|
+
export const hasContent = (message) => {
|
|
108
|
+
return message.parts.some((part) => (part.type === "text" &&
|
|
109
|
+
typeof part.text === "string" &&
|
|
110
|
+
part.text.trim().length > 0) ||
|
|
111
|
+
(part.type === "tool" &&
|
|
112
|
+
part.state?.status === "completed" &&
|
|
113
|
+
typeof part.state.output === "string"));
|
|
114
|
+
};
|
|
91
115
|
export function buildToolIdList(state, messages) {
|
|
92
116
|
const toolIds = [];
|
|
93
117
|
for (const msg of messages) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../lib/messages/utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../lib/messages/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const COMPRESS_MESSAGE = "Collapse selected individual messages in the conversation into detailed summaries.\n\nTHE SUMMARY\nYour summary must be EXHAUSTIVE. Capture file paths, function signatures, decisions made, constraints discovered, key findings, tool outcomes, and user intent details that matter... EVERYTHING that preserves the value of the selected message after the raw message is removed.\n\nUSER INTENT FIDELITY\nWhen a selected message contains user intent, preserve that intent with extra care. Do not change scope, constraints, priorities, acceptance criteria, or requested outcomes.\nDirectly quote short user instructions when that best preserves exact meaning.\n\nYet be LEAN. Strip away the noise: failed attempts that led nowhere, verbose tool output, and repetition. What remains should be pure signal - golden nuggets of detail that preserve full understanding with zero ambiguity.\n\nMESSAGE IDS\nYou specify individual raw messages by ID using the injected IDs visible in the conversation:\n\n- `mNNNN` IDs identify raw messages\n\nEach message has an ID inside XML metadata tags like `<dcp-message-id priority=\"high\">m0007</dcp-message-id>`.\nThe ID tag appears at the end of the message it belongs to \u2014
|
|
1
|
+
export declare const COMPRESS_MESSAGE = "Collapse selected individual messages in the conversation into detailed summaries.\n\nTHE SUMMARY\nYour summary must be EXHAUSTIVE. Capture file paths, function signatures, decisions made, constraints discovered, key findings, tool outcomes, and user intent details that matter... EVERYTHING that preserves the value of the selected message after the raw message is removed.\n\nUSER INTENT FIDELITY\nWhen a selected message contains user intent, preserve that intent with extra care. Do not change scope, constraints, priorities, acceptance criteria, or requested outcomes.\nDirectly quote short user instructions when that best preserves exact meaning.\n\nYet be LEAN. Strip away the noise: failed attempts that led nowhere, verbose tool output, and repetition. What remains should be pure signal - golden nuggets of detail that preserve full understanding with zero ambiguity.\n\nMESSAGE IDS\nYou specify individual raw messages by ID using the injected IDs visible in the conversation:\n\n- `mNNNN` IDs identify raw messages\n\nEach message has an ID inside XML metadata tags like `<dcp-message-id priority=\"high\">m0007</dcp-message-id>`.\nThe ID tag appears at the end of the message it belongs to \u2014 each ID covers all the content above it back to the previous ID.\nTreat these tags as message metadata only, not as content to summarize. Use only the inner `mNNNN` value as the `messageId`.\nThe `priority` attribute indicates relative context cost. Prefer higher-priority closed messages before lower-priority ones.\nMessages marked as `<dcp-message-id>BLOCKED</dcp-message-id>` cannot be compressed.\n\nRules:\n\n- Pick each `messageId` directly from injected IDs visible in context.\n- Only use raw message IDs of the form `mNNNN`.\n- Ignore XML attributes such as `priority` when copying the ID; use only the inner `mNNNN` value.\n- Do NOT use compressed block IDs like `bN`.\n- Do not invent IDs. Use only IDs that are present in context.\n- Do not target prior compressed blocks or block summaries.\n\nBATCHING\nSelect MANY messages in a single tool call when they are independently safe to compress.\nEach entry should summarize exactly one message, and the tool can receive as many entries as needed in one batch.\nWhen several messages are equally safe to compress, prefer higher-priority messages first.\n\nBecause each message is compressed independently:\n\n- Do not describe ranges\n- Do not use start/end boundaries\n- Do not use compressed block placeholders\n- Do not reference prior compressed blocks with `(bN)`\n";
|
|
2
2
|
//# sourceMappingURL=compress-message.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compress-message.d.ts","sourceRoot":"","sources":["../../../lib/prompts/compress-message.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"compress-message.d.ts","sourceRoot":"","sources":["../../../lib/prompts/compress-message.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,m/EA0C5B,CAAA"}
|
|
@@ -15,7 +15,7 @@ You specify individual raw messages by ID using the injected IDs visible in the
|
|
|
15
15
|
- \`mNNNN\` IDs identify raw messages
|
|
16
16
|
|
|
17
17
|
Each message has an ID inside XML metadata tags like \`<dcp-message-id priority="high">m0007</dcp-message-id>\`.
|
|
18
|
-
The ID tag appears at the end of the message it belongs to —
|
|
18
|
+
The ID tag appears at the end of the message it belongs to — each ID covers all the content above it back to the previous ID.
|
|
19
19
|
Treat these tags as message metadata only, not as content to summarize. Use only the inner \`mNNNN\` value as the \`messageId\`.
|
|
20
20
|
The \`priority\` attribute indicates relative context cost. Prefer higher-priority closed messages before lower-priority ones.
|
|
21
21
|
Messages marked as \`<dcp-message-id>BLOCKED</dcp-message-id>\` cannot be compressed.
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const COMPRESS_RANGE = "Collapse a range in the conversation into a detailed summary.\n\nTHE SUMMARY\nYour summary must be EXHAUSTIVE. Capture file paths, function signatures, decisions made, constraints discovered, key findings... EVERYTHING that maintains context integrity. This is not a brief note - it is an authoritative record so faithful that the original conversation adds no value.\n\nUSER INTENT FIDELITY\nWhen the compressed range includes user messages, preserve the user's intent with extra care. Do not change scope, constraints, priorities, acceptance criteria, or requested outcomes.\nDirectly quote user messages when they are short enough to include safely. Direct quotes are preferred when they best preserve exact meaning.\n\nYet be LEAN. Strip away the noise: failed attempts that led nowhere, verbose tool outputs, back-and-forth exploration. What remains should be pure signal - golden nuggets of detail that preserve full understanding with zero ambiguity.\n\nCOMPRESSED BLOCK PLACEHOLDERS\nWhen the selected range includes previously compressed blocks, use this exact placeholder format when referencing one:\n\n- `(bN)`\n\nCompressed block sections in context are clearly marked with a header:\n\n- `[Compressed conversation section]`\n\nCompressed block IDs always use the `bN` form (never `mNNNN`) and are represented in the same XML metadata tag format.\n\nRules:\n\n- Include every required block placeholder exactly once.\n- Do not invent placeholders for blocks outside the selected range.\n- Treat `(bN)` placeholders as RESERVED TOKENS. Do not emit `(bN)` text anywhere except intentional placeholders.\n- If you need to mention a block in prose, use plain text like `compressed bN` (not as a placeholder).\n- Preflight check before finalizing: the set of `(bN)` placeholders in your summary must exactly match the required set, with no duplicates.\n\nThese placeholders are semantic references. They will be replaced with the full stored compressed block content when the tool processes your output.\n\nFLOW PRESERVATION WITH PLACEHOLDERS\nWhen you use compressed block placeholders, write the surrounding summary text so it still reads correctly AFTER placeholder expansion.\n\n- Treat each placeholder as a stand-in for a full conversation segment, not as a short label.\n- Ensure transitions before and after each placeholder preserve chronology and causality.\n- Do not write text that depends on the placeholder staying literal (for example, \"as noted in `(b2)`\").\n- Your final meaning must be coherent once each placeholder is replaced with its full compressed block content.\n\nBOUNDARY IDS\nYou specify boundaries by ID using the injected IDs visible in the conversation:\n\n- `mNNNN` IDs identify raw messages\n- `bN` IDs identify previously compressed blocks\n\nEach message has an ID inside XML metadata tags like `<dcp-message-id>...</dcp-message-id>`.\nThe ID tag appears at the end of the message it belongs to \u2014
|
|
1
|
+
export declare const COMPRESS_RANGE = "Collapse a range in the conversation into a detailed summary.\n\nTHE SUMMARY\nYour summary must be EXHAUSTIVE. Capture file paths, function signatures, decisions made, constraints discovered, key findings... EVERYTHING that maintains context integrity. This is not a brief note - it is an authoritative record so faithful that the original conversation adds no value.\n\nUSER INTENT FIDELITY\nWhen the compressed range includes user messages, preserve the user's intent with extra care. Do not change scope, constraints, priorities, acceptance criteria, or requested outcomes.\nDirectly quote user messages when they are short enough to include safely. Direct quotes are preferred when they best preserve exact meaning.\n\nYet be LEAN. Strip away the noise: failed attempts that led nowhere, verbose tool outputs, back-and-forth exploration. What remains should be pure signal - golden nuggets of detail that preserve full understanding with zero ambiguity.\n\nCOMPRESSED BLOCK PLACEHOLDERS\nWhen the selected range includes previously compressed blocks, use this exact placeholder format when referencing one:\n\n- `(bN)`\n\nCompressed block sections in context are clearly marked with a header:\n\n- `[Compressed conversation section]`\n\nCompressed block IDs always use the `bN` form (never `mNNNN`) and are represented in the same XML metadata tag format.\n\nRules:\n\n- Include every required block placeholder exactly once.\n- Do not invent placeholders for blocks outside the selected range.\n- Treat `(bN)` placeholders as RESERVED TOKENS. Do not emit `(bN)` text anywhere except intentional placeholders.\n- If you need to mention a block in prose, use plain text like `compressed bN` (not as a placeholder).\n- Preflight check before finalizing: the set of `(bN)` placeholders in your summary must exactly match the required set, with no duplicates.\n\nThese placeholders are semantic references. They will be replaced with the full stored compressed block content when the tool processes your output.\n\nFLOW PRESERVATION WITH PLACEHOLDERS\nWhen you use compressed block placeholders, write the surrounding summary text so it still reads correctly AFTER placeholder expansion.\n\n- Treat each placeholder as a stand-in for a full conversation segment, not as a short label.\n- Ensure transitions before and after each placeholder preserve chronology and causality.\n- Do not write text that depends on the placeholder staying literal (for example, \"as noted in `(b2)`\").\n- Your final meaning must be coherent once each placeholder is replaced with its full compressed block content.\n\nBOUNDARY IDS\nYou specify boundaries by ID using the injected IDs visible in the conversation:\n\n- `mNNNN` IDs identify raw messages\n- `bN` IDs identify previously compressed blocks\n\nEach message has an ID inside XML metadata tags like `<dcp-message-id>...</dcp-message-id>`.\nThe ID tag appears at the end of the message it belongs to \u2014 each ID covers all the content above it back to the previous ID.\nTreat these tags as boundary metadata only, not as tool result content.\n\nRules:\n\n- Pick `startId` and `endId` directly from injected IDs in context.\n- IDs must exist in the current visible context.\n- `startId` must appear before `endId`.\n- Do not invent IDs. Use only IDs that are present in context.\n\nBATCHING\nWhen multiple independent ranges are ready and their boundaries do not overlap, include all of them as separate entries in the `content` array of a single tool call. Each entry should have its own `startId`, `endId`, and `summary`.\n";
|
|
2
2
|
//# sourceMappingURL=compress-range.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compress-range.d.ts","sourceRoot":"","sources":["../../../lib/prompts/compress-range.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"compress-range.d.ts","sourceRoot":"","sources":["../../../lib/prompts/compress-range.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,o/GA2D1B,CAAA"}
|
|
@@ -45,7 +45,7 @@ You specify boundaries by ID using the injected IDs visible in the conversation:
|
|
|
45
45
|
- \`bN\` IDs identify previously compressed blocks
|
|
46
46
|
|
|
47
47
|
Each message has an ID inside XML metadata tags like \`<dcp-message-id>...</dcp-message-id>\`.
|
|
48
|
-
The ID tag appears at the end of the message it belongs to —
|
|
48
|
+
The ID tag appears at the end of the message it belongs to — each ID covers all the content above it back to the previous ID.
|
|
49
49
|
Treat these tags as boundary metadata only, not as tool result content.
|
|
50
50
|
|
|
51
51
|
Rules:
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "@tarquinen/opencode-dcp",
|
|
4
|
-
"version": "3.1.
|
|
4
|
+
"version": "3.1.5",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "OpenCode plugin that optimizes token usage by pruning obsolete tool outputs from conversation context",
|
|
7
7
|
"main": "./dist/index.js",
|