wormclaude 1.0.106 → 1.0.108
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/cli.js +26 -6
- package/dist/theme.js +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -162,7 +162,15 @@ function useDimensions() {
|
|
|
162
162
|
rows: process.stdout.rows || 24,
|
|
163
163
|
});
|
|
164
164
|
useEffect(() => {
|
|
165
|
-
const onResize = () =>
|
|
165
|
+
const onResize = () => {
|
|
166
|
+
// Alt-screen resize'da eski boyutun artıklarını bırakıp yazıyı "kaybediyor".
|
|
167
|
+
// Ekranı temizleyip imleci başa al → Ink yeni boyutta tam repaint eder.
|
|
168
|
+
try {
|
|
169
|
+
process.stdout.write('\x1b[2J\x1b[H');
|
|
170
|
+
}
|
|
171
|
+
catch { /* yok say */ }
|
|
172
|
+
setD({ cols: process.stdout.columns || 80, rows: process.stdout.rows || 24 });
|
|
173
|
+
};
|
|
166
174
|
process.stdout.on('resize', onResize);
|
|
167
175
|
return () => { process.stdout.off('resize', onResize); };
|
|
168
176
|
}, []);
|
|
@@ -742,10 +750,9 @@ function App() {
|
|
|
742
750
|
setStreaming('');
|
|
743
751
|
// Sızan özel-token / tool-call markup'ını bir kez temizle (hem geçmiş hem gösterim için).
|
|
744
752
|
assistantText = cleanModelText(assistantText);
|
|
745
|
-
// Model araç çağrısını metne gömdüyse (
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
}
|
|
753
|
+
// Model araç çağrısını metne gömdüyse (gömülü JSON / AskUserQuestion prose) → gösterim+
|
|
754
|
+
// geçmişten temizle. HER ZAMAN çalıştır: recovery kaçsa bile ham JSON ekrana sızmasın.
|
|
755
|
+
assistantText = stripInlineToolCalls(assistantText);
|
|
749
756
|
// Reactive compact: bağlam taştıysa bir kez özetle ve turu tekrar dene
|
|
750
757
|
if (gotCtxError && !reactiveRetried) {
|
|
751
758
|
reactiveRetried = true;
|
|
@@ -822,10 +829,23 @@ function App() {
|
|
|
822
829
|
setAsk({ question: q.question, options: q.options.length ? q.options : [{ label: 'OK' }], resolve });
|
|
823
830
|
}),
|
|
824
831
|
});
|
|
832
|
+
// Tool çıktısını context'e eklerken KIS: komut çıktıları (curl/scan vb.) çok gürültülü
|
|
833
|
+
// (SSL handshake, tüm header'lar) ve 32k pencereyi hızla doldurur → baş+son tut, ortayı at.
|
|
834
|
+
// Az token = uzun tarama. Read/dosya araçları model içeriği görsün diye geniş kalır.
|
|
835
|
+
const _capOut = (name, out) => {
|
|
836
|
+
const s = out || '';
|
|
837
|
+
const isCmd = name === 'Bash' || name === 'PowerShell';
|
|
838
|
+
const CAP = isCmd ? 2200 : 8000;
|
|
839
|
+
if (s.length <= CAP)
|
|
840
|
+
return s;
|
|
841
|
+
if (isCmd)
|
|
842
|
+
return s.slice(0, 1400) + `\n… [${s.length - 2000} karakter kısaltıldı] …\n` + s.slice(-600);
|
|
843
|
+
return s.slice(0, CAP) + `\n… [${s.length - CAP} karakter kısaltıldı]`;
|
|
844
|
+
};
|
|
825
845
|
// Sonuçları orijinal sırada geçmişe ekle (OpenAI tool sırası şart)
|
|
826
846
|
for (let i = 0; i < toolCalls.length; i++) {
|
|
827
847
|
historyRef.current = [...historyRef.current, {
|
|
828
|
-
role: 'tool', tool_call_id: toolCalls[i].id, content: results[i].output
|
|
848
|
+
role: 'tool', tool_call_id: toolCalls[i].id, content: _capOut(toolCalls[i].name, results[i].output),
|
|
829
849
|
}];
|
|
830
850
|
}
|
|
831
851
|
// Araç-grubu özeti (2+ araçta tek satır etiket)
|
package/dist/theme.js
CHANGED