blun-king-cli 9.1.145 → 9.1.147
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/LIESMICH.txt +4 -0
- package/README.md +4 -0
- package/bin/micro-compaction-policy.cjs +2 -0
- package/bin/tool-result-offload-policy.cjs +21 -2
- package/blun.mjs +3 -3
- package/package.json +1 -1
package/LIESMICH.txt
CHANGED
|
@@ -143,6 +143,10 @@ Ab BLUN King 9.1.144 begrenzt die Modellprojektion adressierte Telegram-Abschnit
|
|
|
143
143
|
|
|
144
144
|
Ab BLUN King 9.1.145 wird ein unterbrochener Anbieterstream automatisch wiederholt, wenn bis dahin ausschließlich interne Denkausgabe eingetroffen ist. Sichtbarer Text und Werkzeugaufrufe verhindern weiterhin eine automatische Wiederholung. Adaptive Folgeschritte mit niedriger Denkstufe verwenden ein Ausgabebudget von 8.192 Token; erste, komplexe und fehlgeschlagene Schritte behalten das konfigurierte Budget, und eine Wiederholung nach Erreichen der Längengrenze kann es vergrößern. Beim Fortsetzen einer Sitzung erscheint der aktuelle Telegram-Plugin-Transporthinweis nicht mehr als roher Chattext.
|
|
145
145
|
|
|
146
|
+
Ab BLUN King 9.1.146 werden ältere, bereits ausgelagerte Werkzeugergebnisse in der Modellprojektion auf die für die Wiederherstellung nötigen Angaben begrenzt: Werkzeugname, Zeichenzahl und Dateipfad. Der vollständige Inhalt bleibt unverändert auf der Festplatte, der Rohverlauf wird nicht verändert, und die neuesten zwölf Nachrichten behalten ihre ausführlichen Hinweise. In Fredriks vermessenem Verlauf reduziert das die wiederholte Modelleingabe um 26.779 Zeichen beziehungsweise rund 6.695 geschätzte Token pro Anfrage.
|
|
147
|
+
|
|
148
|
+
Ab BLUN King 9.1.147 schützt die Mikroverdichtung die neuesten zwölf Nachrichten vollständig statt der neuesten zwanzig und verwendet damit dasselbe Wiederherstellungsfenster wie die bestehende Auslagerung von Werkzeugergebnissen. Ältere abgeschlossene Werkzeugargumente und geeignete Werkzeugergebnisse werden nur in der Modellprojektion verkleinert; Rohverlauf und Wiederherstellungspfade bleiben unverändert. In Fredriks vermessenem Verlauf spart das weitere 560 Zeichen beziehungsweise rund 140 geschätzte Token pro Anfrage.
|
|
149
|
+
|
|
146
150
|
Ab BLUN King 9.1.136 behält die Modellprojektion nur noch den neuesten dynamischen `Mistake.md`-Hinweis. Ältere, zugbezogene Auswahlen bleiben im Sitzungsrohverlauf und in Exporten erhalten, werden nach einer neueren Auswahl aber nicht mehr erneut an das Modell gesendet. Andere geänderte Hinweise bleiben unberührt. In Fredriks aktueller Sitzung lagen fünf `Mistake.md`-Auswahlen vor; das Entfernen der vier überholten Kopien spart pro Modellanfrage 24.143 Zeichen, also etwa 6.036 geschätzte Token.
|
|
147
151
|
|
|
148
152
|
Ab BLUN King 9.1.131 entfernt die Modellprojektion zwei ältere Regelkopien aus dem Systemprompt, sobald gleichwertige Regeln im Conduct-Abschnitt vorhanden sind. Betroffen sind ausschließlich die doppelten Hinweise zu Ehrlichkeit und Zugangsdaten; die vollständigen Conduct-Regeln und alle übrigen Prompt-Abschnitte bleiben unverändert. In der ausgelieferten Standardvorlage sinkt der wiederholt gesendete Prompt dadurch um 1.010 Zeichen, also um etwa 253 geschätzte Token pro Modellanfrage. Fehlt eines der Conduct-Gegenstücke, bleibt die entsprechende ältere Regel unverändert erhalten.
|
package/README.md
CHANGED
|
@@ -151,6 +151,10 @@ Ab BLUN King 9.1.144 begrenzt die Modellprojektion adressierte Telegram-Abschnit
|
|
|
151
151
|
|
|
152
152
|
Ab BLUN King 9.1.145 wird ein unterbrochener Anbieterstream automatisch wiederholt, wenn bis dahin ausschließlich interne Denkausgabe eingetroffen ist. Sichtbarer Text und Werkzeugaufrufe verhindern weiterhin eine automatische Wiederholung. Adaptive Folgeschritte mit niedriger Denkstufe verwenden ein Ausgabebudget von 8.192 Token; erste, komplexe und fehlgeschlagene Schritte behalten das konfigurierte Budget, und eine Wiederholung nach Erreichen der Längengrenze kann es vergrößern. Beim Fortsetzen einer Sitzung erscheint der aktuelle Telegram-Plugin-Transporthinweis nicht mehr als roher Chattext.
|
|
153
153
|
|
|
154
|
+
Ab BLUN King 9.1.146 werden ältere, bereits ausgelagerte Werkzeugergebnisse in der Modellprojektion auf die für die Wiederherstellung nötigen Angaben begrenzt: Werkzeugname, Zeichenzahl und Dateipfad. Der vollständige Inhalt bleibt unverändert auf der Festplatte, der Rohverlauf wird nicht verändert, und die neuesten zwölf Nachrichten behalten ihre ausführlichen Hinweise. In Fredriks vermessenem Verlauf reduziert das die wiederholte Modelleingabe um 26.779 Zeichen beziehungsweise rund 6.695 geschätzte Token pro Anfrage.
|
|
155
|
+
|
|
156
|
+
Ab BLUN King 9.1.147 schützt die Mikroverdichtung die neuesten zwölf Nachrichten vollständig statt der neuesten zwanzig und verwendet damit dasselbe Wiederherstellungsfenster wie die bestehende Auslagerung von Werkzeugergebnissen. Ältere abgeschlossene Werkzeugargumente und geeignete Werkzeugergebnisse werden nur in der Modellprojektion verkleinert; Rohverlauf und Wiederherstellungspfade bleiben unverändert. In Fredriks vermessenem Verlauf spart das weitere 560 Zeichen beziehungsweise rund 140 geschätzte Token pro Anfrage.
|
|
157
|
+
|
|
154
158
|
Ab BLUN King 9.1.136 behält die Modellprojektion nur noch den neuesten dynamischen `Mistake.md`-Hinweis. Ältere, zugbezogene Auswahlen bleiben im Sitzungsrohverlauf und in Exporten erhalten, werden nach einer neueren Auswahl aber nicht mehr erneut an das Modell gesendet. Andere geänderte Hinweise bleiben unberührt. In Fredriks aktueller Sitzung lagen fünf `Mistake.md`-Auswahlen vor; das Entfernen der vier überholten Kopien spart pro Modellanfrage 24.143 Zeichen, also etwa 6.036 geschätzte Token.
|
|
155
159
|
|
|
156
160
|
Ab BLUN King 9.1.131 entfernt die Modellprojektion zwei ältere Regelkopien aus dem Systemprompt, sobald gleichwertige Regeln im Conduct-Abschnitt vorhanden sind. Betroffen sind ausschließlich die doppelten Hinweise zu Ehrlichkeit und Zugangsdaten; die vollständigen Conduct-Regeln und alle übrigen Prompt-Abschnitte bleiben unverändert. In der ausgelieferten Standardvorlage sinkt der wiederholt gesendete Prompt dadurch um 1.010 Zeichen, also um etwa 253 geschätzte Token pro Modellanfrage. Fehlt eines der Conduct-Gegenstücke, bleibt die entsprechende ältere Regel unverändert erhalten.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
const MICRO_COMPACTION_PRESSURE_RATIO = 0.75;
|
|
4
4
|
const MICRO_COMPACTION_MIN_ADVANCE_MESSAGES = 20;
|
|
5
|
+
const MICRO_COMPACTION_RECENT_MESSAGES = 12;
|
|
5
6
|
const MICRO_COMPACTION_TOOL_ARGUMENT_MIN_TOKENS = 32;
|
|
6
7
|
|
|
7
8
|
function selectMicroCompactionCutoff(options = {}) {
|
|
@@ -72,6 +73,7 @@ function positiveFinite(value) {
|
|
|
72
73
|
module.exports = {
|
|
73
74
|
MICRO_COMPACTION_MIN_ADVANCE_MESSAGES,
|
|
74
75
|
MICRO_COMPACTION_PRESSURE_RATIO,
|
|
76
|
+
MICRO_COMPACTION_RECENT_MESSAGES,
|
|
75
77
|
MICRO_COMPACTION_TOOL_ARGUMENT_MIN_TOKENS,
|
|
76
78
|
selectMicroCompactionCutoff,
|
|
77
79
|
};
|
|
@@ -42,11 +42,30 @@ function compactPersistedToolResultReference(content) {
|
|
|
42
42
|
const compacted = content.map((part) => {
|
|
43
43
|
if (part?.type !== 'text' || typeof part.text !== 'string') return part;
|
|
44
44
|
const previewIndex = part.text.indexOf('\n[preview: head and tail]\n');
|
|
45
|
-
|
|
45
|
+
const referenceText = previewIndex < 0
|
|
46
|
+
? part.text
|
|
47
|
+
: part.text.slice(0, previewIndex).trimEnd();
|
|
48
|
+
if (!referenceText.startsWith(`${TOOL_RESULT_OFFLOAD_MARKER}\n`)) {
|
|
49
|
+
if (referenceText === part.text) return part;
|
|
50
|
+
changed = true;
|
|
51
|
+
return { ...part, text: referenceText };
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const lines = referenceText.split(/\r?\n/u);
|
|
55
|
+
const outputPath = lines.find((line) => line.startsWith('output_path: '));
|
|
56
|
+
if (outputPath === undefined) return part;
|
|
57
|
+
const recoveryLines = [TOOL_RESULT_OFFLOAD_MARKER];
|
|
58
|
+
for (const prefix of ['tool_name: ', 'output_size_chars: ']) {
|
|
59
|
+
const line = lines.find((candidate) => candidate.startsWith(prefix));
|
|
60
|
+
if (line !== undefined) recoveryLines.push(line);
|
|
61
|
+
}
|
|
62
|
+
recoveryLines.push(outputPath);
|
|
63
|
+
const text = recoveryLines.join('\n');
|
|
64
|
+
if (text === part.text) return part;
|
|
46
65
|
changed = true;
|
|
47
66
|
return {
|
|
48
67
|
...part,
|
|
49
|
-
text
|
|
68
|
+
text,
|
|
50
69
|
};
|
|
51
70
|
});
|
|
52
71
|
|
package/blun.mjs
CHANGED
|
@@ -75986,15 +75986,15 @@ var init_full = __esmMin((() => {
|
|
|
75986
75986
|
}));
|
|
75987
75987
|
//#endregion
|
|
75988
75988
|
//#region ../../packages/agent-core/src/agent/compaction/micro.ts
|
|
75989
|
-
var selectMicroCompactionCutoff, MICRO_COMPACTION_TOOL_ARGUMENT_MIN_TOKENS, isPersistedToolResultReference, projectHistoricalUnaddressedTelegramMessages, dedupeRecurringCronWakeups, dedupeRepeatedInjections, DEFAULT_CONFIG, MicroCompaction;
|
|
75989
|
+
var selectMicroCompactionCutoff, MICRO_COMPACTION_RECENT_MESSAGES, MICRO_COMPACTION_TOOL_ARGUMENT_MIN_TOKENS, isPersistedToolResultReference, projectHistoricalUnaddressedTelegramMessages, dedupeRecurringCronWakeups, dedupeRepeatedInjections, DEFAULT_CONFIG, MicroCompaction;
|
|
75990
75990
|
var init_micro = __esmMin((() => {
|
|
75991
|
-
({ selectMicroCompactionCutoff, MICRO_COMPACTION_TOOL_ARGUMENT_MIN_TOKENS } = createRequire(import.meta.url)("./bin/micro-compaction-policy.cjs"));
|
|
75991
|
+
({ selectMicroCompactionCutoff, MICRO_COMPACTION_RECENT_MESSAGES, MICRO_COMPACTION_TOOL_ARGUMENT_MIN_TOKENS } = createRequire(import.meta.url)("./bin/micro-compaction-policy.cjs"));
|
|
75992
75992
|
({ isPersistedToolResultReference } = createRequire(import.meta.url)("./bin/tool-result-offload-policy.cjs"));
|
|
75993
75993
|
({ projectHistoricalUnaddressedTelegramMessages } = createRequire(import.meta.url)("./bin/telegram-context-projection-policy.cjs"));
|
|
75994
75994
|
({ dedupeRecurringCronWakeups, dedupeRepeatedInjections } = createRequire(import.meta.url)("./bin/repeated-injection-projection.cjs"));
|
|
75995
75995
|
init_tokens();
|
|
75996
75996
|
DEFAULT_CONFIG = {
|
|
75997
|
-
keepRecentMessages:
|
|
75997
|
+
keepRecentMessages: MICRO_COMPACTION_RECENT_MESSAGES,
|
|
75998
75998
|
minContentTokens: 100,
|
|
75999
75999
|
minToolArgumentTokens: MICRO_COMPACTION_TOOL_ARGUMENT_MIN_TOKENS,
|
|
76000
76000
|
cacheMissedThresholdMs: 3600 * 1e3,
|