@lexwdex-org/opencode-dcp 3.4.7 → 3.4.8

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 (140) hide show
  1. package/LICENSE +0 -0
  2. package/README.en.md +0 -0
  3. package/README.md +0 -0
  4. package/dist/index.d.ts +0 -0
  5. package/dist/index.d.ts.map +0 -0
  6. package/dist/index.js +15 -8
  7. package/dist/index.js.map +1 -1
  8. package/dist/lib/auth.d.ts +0 -0
  9. package/dist/lib/auth.d.ts.map +0 -0
  10. package/dist/lib/commands/compression-targets.d.ts +0 -0
  11. package/dist/lib/commands/compression-targets.d.ts.map +0 -0
  12. package/dist/lib/commands/context.d.ts +0 -0
  13. package/dist/lib/commands/context.d.ts.map +0 -0
  14. package/dist/lib/commands/decompress.d.ts +0 -0
  15. package/dist/lib/commands/decompress.d.ts.map +0 -0
  16. package/dist/lib/commands/help.d.ts +0 -0
  17. package/dist/lib/commands/help.d.ts.map +0 -0
  18. package/dist/lib/commands/index.d.ts +0 -0
  19. package/dist/lib/commands/index.d.ts.map +0 -0
  20. package/dist/lib/commands/manual.d.ts +0 -0
  21. package/dist/lib/commands/manual.d.ts.map +1 -1
  22. package/dist/lib/commands/recompress.d.ts +0 -0
  23. package/dist/lib/commands/recompress.d.ts.map +0 -0
  24. package/dist/lib/commands/stats.d.ts +0 -0
  25. package/dist/lib/commands/stats.d.ts.map +0 -0
  26. package/dist/lib/commands/sweep.d.ts +0 -0
  27. package/dist/lib/commands/sweep.d.ts.map +0 -0
  28. package/dist/lib/compress/external-inference.d.ts +0 -0
  29. package/dist/lib/compress/external-inference.d.ts.map +0 -0
  30. package/dist/lib/compress/index.d.ts +0 -0
  31. package/dist/lib/compress/index.d.ts.map +0 -0
  32. package/dist/lib/compress/message-utils.d.ts +0 -0
  33. package/dist/lib/compress/message-utils.d.ts.map +0 -0
  34. package/dist/lib/compress/message.d.ts +0 -0
  35. package/dist/lib/compress/message.d.ts.map +0 -0
  36. package/dist/lib/compress/pipeline.d.ts +0 -0
  37. package/dist/lib/compress/pipeline.d.ts.map +0 -0
  38. package/dist/lib/compress/protected-content.d.ts +0 -0
  39. package/dist/lib/compress/protected-content.d.ts.map +0 -0
  40. package/dist/lib/compress/range-utils.d.ts +0 -0
  41. package/dist/lib/compress/range-utils.d.ts.map +0 -0
  42. package/dist/lib/compress/range.d.ts +0 -0
  43. package/dist/lib/compress/range.d.ts.map +0 -0
  44. package/dist/lib/compress/search.d.ts +0 -0
  45. package/dist/lib/compress/search.d.ts.map +0 -0
  46. package/dist/lib/compress/state.d.ts +0 -0
  47. package/dist/lib/compress/state.d.ts.map +0 -0
  48. package/dist/lib/compress/timing.d.ts +0 -0
  49. package/dist/lib/compress/timing.d.ts.map +0 -0
  50. package/dist/lib/compress/types.d.ts +0 -0
  51. package/dist/lib/compress/types.d.ts.map +0 -0
  52. package/dist/lib/compress-permission.d.ts +0 -0
  53. package/dist/lib/compress-permission.d.ts.map +0 -0
  54. package/dist/lib/config-env-override.d.ts +0 -0
  55. package/dist/lib/config-env-override.d.ts.map +0 -0
  56. package/dist/lib/config.d.ts +0 -0
  57. package/dist/lib/config.d.ts.map +0 -0
  58. package/dist/lib/hooks.d.ts +0 -0
  59. package/dist/lib/hooks.d.ts.map +0 -0
  60. package/dist/lib/host-permissions.d.ts +0 -0
  61. package/dist/lib/host-permissions.d.ts.map +0 -0
  62. package/dist/lib/logger.d.ts +0 -0
  63. package/dist/lib/logger.d.ts.map +0 -0
  64. package/dist/lib/message-ids.d.ts +0 -0
  65. package/dist/lib/message-ids.d.ts.map +0 -0
  66. package/dist/lib/messages/index.d.ts +0 -0
  67. package/dist/lib/messages/index.d.ts.map +0 -0
  68. package/dist/lib/messages/inject/inject.d.ts +0 -0
  69. package/dist/lib/messages/inject/inject.d.ts.map +0 -0
  70. package/dist/lib/messages/inject/subagent-results.d.ts +0 -0
  71. package/dist/lib/messages/inject/subagent-results.d.ts.map +0 -0
  72. package/dist/lib/messages/inject/utils.d.ts +0 -0
  73. package/dist/lib/messages/inject/utils.d.ts.map +0 -0
  74. package/dist/lib/messages/priority.d.ts +0 -0
  75. package/dist/lib/messages/priority.d.ts.map +0 -0
  76. package/dist/lib/messages/prune.d.ts +0 -0
  77. package/dist/lib/messages/prune.d.ts.map +0 -0
  78. package/dist/lib/messages/query.d.ts +0 -0
  79. package/dist/lib/messages/query.d.ts.map +0 -0
  80. package/dist/lib/messages/reasoning-strip.d.ts +0 -0
  81. package/dist/lib/messages/reasoning-strip.d.ts.map +0 -0
  82. package/dist/lib/messages/shape.d.ts +0 -0
  83. package/dist/lib/messages/shape.d.ts.map +0 -0
  84. package/dist/lib/messages/sync.d.ts +0 -0
  85. package/dist/lib/messages/sync.d.ts.map +0 -0
  86. package/dist/lib/messages/utils.d.ts +0 -0
  87. package/dist/lib/messages/utils.d.ts.map +0 -0
  88. package/dist/lib/prompts/compress-message.d.ts +0 -0
  89. package/dist/lib/prompts/compress-message.d.ts.map +0 -0
  90. package/dist/lib/prompts/compress-range.d.ts +0 -0
  91. package/dist/lib/prompts/compress-range.d.ts.map +0 -0
  92. package/dist/lib/prompts/context-limit-nudge.d.ts +0 -0
  93. package/dist/lib/prompts/context-limit-nudge.d.ts.map +0 -0
  94. package/dist/lib/prompts/extensions/nudge.d.ts +2 -1
  95. package/dist/lib/prompts/extensions/nudge.d.ts.map +1 -1
  96. package/dist/lib/prompts/extensions/system.d.ts +0 -0
  97. package/dist/lib/prompts/extensions/system.d.ts.map +0 -0
  98. package/dist/lib/prompts/extensions/tool.d.ts +0 -0
  99. package/dist/lib/prompts/extensions/tool.d.ts.map +0 -0
  100. package/dist/lib/prompts/index.d.ts +0 -0
  101. package/dist/lib/prompts/index.d.ts.map +0 -0
  102. package/dist/lib/prompts/iteration-nudge.d.ts +0 -0
  103. package/dist/lib/prompts/iteration-nudge.d.ts.map +0 -0
  104. package/dist/lib/prompts/store.d.ts +0 -0
  105. package/dist/lib/prompts/store.d.ts.map +0 -0
  106. package/dist/lib/prompts/system.d.ts +0 -0
  107. package/dist/lib/prompts/system.d.ts.map +0 -0
  108. package/dist/lib/prompts/turn-nudge.d.ts +0 -0
  109. package/dist/lib/prompts/turn-nudge.d.ts.map +0 -0
  110. package/dist/lib/protected-patterns.d.ts +0 -0
  111. package/dist/lib/protected-patterns.d.ts.map +0 -0
  112. package/dist/lib/state/index.d.ts +0 -0
  113. package/dist/lib/state/index.d.ts.map +0 -0
  114. package/dist/lib/state/persistence.d.ts +0 -0
  115. package/dist/lib/state/persistence.d.ts.map +0 -0
  116. package/dist/lib/state/state.d.ts +0 -0
  117. package/dist/lib/state/state.d.ts.map +0 -0
  118. package/dist/lib/state/tool-cache.d.ts +0 -0
  119. package/dist/lib/state/tool-cache.d.ts.map +0 -0
  120. package/dist/lib/state/types.d.ts +0 -0
  121. package/dist/lib/state/types.d.ts.map +0 -0
  122. package/dist/lib/state/utils.d.ts +0 -0
  123. package/dist/lib/state/utils.d.ts.map +0 -0
  124. package/dist/lib/strategies/deduplication.d.ts +0 -0
  125. package/dist/lib/strategies/deduplication.d.ts.map +0 -0
  126. package/dist/lib/strategies/index.d.ts +0 -0
  127. package/dist/lib/strategies/index.d.ts.map +0 -0
  128. package/dist/lib/strategies/purge-errors.d.ts +0 -0
  129. package/dist/lib/strategies/purge-errors.d.ts.map +0 -0
  130. package/dist/lib/subagents/subagent-results.d.ts +0 -0
  131. package/dist/lib/subagents/subagent-results.d.ts.map +0 -0
  132. package/dist/lib/token-utils.d.ts +0 -0
  133. package/dist/lib/token-utils.d.ts.map +0 -0
  134. package/dist/lib/ui/notification.d.ts +0 -0
  135. package/dist/lib/ui/notification.d.ts.map +0 -0
  136. package/dist/lib/ui/utils.d.ts +0 -0
  137. package/dist/lib/ui/utils.d.ts.map +0 -0
  138. package/dist/lib/update.d.ts +0 -0
  139. package/dist/lib/update.d.ts.map +0 -0
  140. package/package.json +4 -4
package/LICENSE CHANGED
File without changes
package/README.en.md CHANGED
File without changes
package/README.md CHANGED
File without changes
package/dist/index.d.ts CHANGED
File without changes
File without changes
package/dist/index.js CHANGED
@@ -6124,9 +6124,11 @@ function buildCompressedBlockGuidance(state) {
6124
6124
  "- \u5982\u679C\u4F60\u9009\u62E9\u7684\u538B\u7F29\u8303\u56F4\u5305\u542B\u4EFB\u4F55\u5217\u51FA\u7684\u5757\uFF0C\u5728\u6458\u8981\u4E2D\u4F7F\u7528 `(bN)` \u6070\u597D\u5305\u542B\u6BCF\u4E2A\u5FC5\u9700\u7684\u5360\u4F4D\u7B26\u4E00\u6B21\u3002"
6125
6125
  ].join("\n");
6126
6126
  }
6127
- function buildAvailableMessageIdGuidance(state, messages) {
6127
+ function buildAvailableMessageIdGuidance(state, config, messages) {
6128
6128
  const visibleIds = new Set(
6129
- messages.filter((msg) => !isIgnoredUserMessage(msg) && !isMessageCompacted(state, msg)).map((msg) => msg.info.id)
6129
+ messages.filter(
6130
+ (msg) => !isIgnoredUserMessage(msg) && !isMessageCompacted(state, msg) && !isProtectedUserMessage(config, msg)
6131
+ ).map((msg) => msg.info.id)
6130
6132
  );
6131
6133
  const refs = [];
6132
6134
  for (const [ref, rawId] of state.messageIds.byRef) {
@@ -6146,7 +6148,7 @@ function buildAvailableMessageIdGuidance(state, messages) {
6146
6148
  return [
6147
6149
  "\u53EF\u7528\u6D88\u606F\u8FB9\u754C ID\uFF1A",
6148
6150
  `- \u5F53\u524D\u4E0A\u4E0B\u6587\u4E2D\u53EF\u4F5C\u4E3A compress \u8FB9\u754C\u7684\u5408\u6CD5\u6D88\u606F ID\uFF1A${refList}`,
6149
- "- \u53EA\u4ECE\u4EE5\u4E0A\u5217\u8868\u4E2D\u9009\u53D6 startId \u548C endId\u3002\u4E0D\u8981\u53D1\u660E\u3001\u5916\u63A8\u6216\u4F7F\u7528\u4E0D\u5728\u5217\u8868\u4E2D\u7684 ID\u3002"
6151
+ config.compress.mode === "message" ? "- \u53EA\u4ECE\u4EE5\u4E0A\u5217\u8868\u4E2D\u9009\u53D6 content[].messageId\u3002\u4E0D\u8981\u53D1\u660E\u3001\u5916\u63A8\u6216\u4F7F\u7528\u4E0D\u5728\u5217\u8868\u4E2D\u7684 ID\u3002" : "- \u53EA\u4ECE\u4EE5\u4E0A\u5217\u8868\u4E2D\u9009\u53D6 startId \u548C endId\u3002\u4E0D\u8981\u53D1\u660E\u3001\u5916\u63A8\u6216\u4F7F\u7528\u4E0D\u5728\u5217\u8868\u4E2D\u7684 ID\u3002"
6150
6152
  ].join("\n");
6151
6153
  }
6152
6154
  function renderMessagePriorityGuidance(priorityLabel, refs) {
@@ -6441,7 +6443,7 @@ function applyMessageModeAnchoredNudge(anchorMessageIds, messages, baseNudgeText
6441
6443
  function applyAnchoredNudges(state, config, messages, prompts, compressionPriorities) {
6442
6444
  const turnNudgeAnchors = collectTurnNudgeAnchors2(state, config, messages);
6443
6445
  if (config.compress.mode === "message") {
6444
- const availableMessageIdGuidance2 = buildAvailableMessageIdGuidance(state, messages);
6446
+ const availableMessageIdGuidance2 = buildAvailableMessageIdGuidance(state, config, messages);
6445
6447
  applyMessageModeAnchoredNudge(
6446
6448
  state.nudges.contextLimitAnchors,
6447
6449
  messages,
@@ -6466,7 +6468,7 @@ function applyAnchoredNudges(state, config, messages, prompts, compressionPriori
6466
6468
  return;
6467
6469
  }
6468
6470
  const compressedBlockGuidance = buildCompressedBlockGuidance(state);
6469
- const availableMessageIdGuidance = buildAvailableMessageIdGuidance(state, messages);
6471
+ const availableMessageIdGuidance = buildAvailableMessageIdGuidance(state, config, messages);
6470
6472
  applyRangeModeAnchoredNudge(
6471
6473
  state.nudges.contextLimitAnchors,
6472
6474
  messages,
@@ -7289,10 +7291,15 @@ var COMPRESS_TRIGGER_PROMPT = [
7289
7291
  "Follow the active compress mode, preserve all critical implementation details, and choose safe targets.",
7290
7292
  "Return after compress with a brief explanation of what content was compressed."
7291
7293
  ].join("\n\n");
7292
- function getTriggerPrompt(tool3, state, config, userFocus) {
7294
+ function getTriggerPrompt(tool3, state, config, messages, userFocus) {
7293
7295
  const base = COMPRESS_TRIGGER_PROMPT;
7294
7296
  const compressedBlockGuidance = config.compress.mode === "message" ? "" : buildCompressedBlockGuidance(state);
7295
- const sections = [base, compressedBlockGuidance];
7297
+ const availableMessageIdGuidance = buildAvailableMessageIdGuidance(
7298
+ state,
7299
+ config,
7300
+ messages
7301
+ );
7302
+ const sections = [base, availableMessageIdGuidance, compressedBlockGuidance];
7296
7303
  if (userFocus && userFocus.trim().length > 0) {
7297
7304
  sections.push(`Additional user focus:
7298
7305
  ${userFocus.trim()}`);
@@ -7320,7 +7327,7 @@ async function handleManualToggleCommand(ctx, modeArg) {
7320
7327
  logger.info("Manual mode toggled", { manualMode: state.manualMode });
7321
7328
  }
7322
7329
  async function handleManualTriggerCommand(ctx, tool3, userFocus) {
7323
- return getTriggerPrompt(tool3, ctx.state, ctx.config, userFocus);
7330
+ return getTriggerPrompt(tool3, ctx.state, ctx.config, ctx.messages, userFocus);
7324
7331
  }
7325
7332
  function applyPendingManualTrigger(state, messages, logger) {
7326
7333
  const pending = state.pendingManualTrigger;