wormclaude 1.0.105 → 1.0.107
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 +21 -31
- 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
|
}, []);
|
|
@@ -466,7 +474,6 @@ function App() {
|
|
|
466
474
|
const [ctxTokens, setCtxTokens] = useState(0);
|
|
467
475
|
const [started, setStarted] = useState(false);
|
|
468
476
|
const [trustSel, setTrustSel] = useState(0); // 0=Evet, 1=Hayir
|
|
469
|
-
const [wsInput, setWsInput] = useState(''); // açılışta yazılan çalışma klasörü (boş=mevcut cwd)
|
|
470
477
|
const [lang, setLangState] = useState(() => loadLang()); // null → dil sor
|
|
471
478
|
const [langSel, setLangSel] = useState(0); // 0=tr 1=en
|
|
472
479
|
const chooseLang = (l) => { setLang(l); saveLang(l); setLangState(l); };
|
|
@@ -498,37 +505,22 @@ function App() {
|
|
|
498
505
|
else if (key.escape)
|
|
499
506
|
exit();
|
|
500
507
|
});
|
|
501
|
-
// Klasör güven sorusu
|
|
508
|
+
// Klasör güven sorusu (Claude Code tarzı: bu klasöre güven? Evet/Hayır)
|
|
502
509
|
useInput((inp, key) => {
|
|
503
510
|
if (lang === null || started)
|
|
504
511
|
return;
|
|
505
|
-
if (key.upArrow)
|
|
512
|
+
if (key.upArrow || inp === '1')
|
|
506
513
|
setTrustSel(0);
|
|
507
|
-
else if (key.downArrow)
|
|
514
|
+
else if (key.downArrow || inp === '2')
|
|
508
515
|
setTrustSel(1);
|
|
509
|
-
else if (key.escape)
|
|
510
|
-
exit();
|
|
511
516
|
else if (key.return) {
|
|
512
|
-
if (trustSel ===
|
|
517
|
+
if (trustSel === 0)
|
|
518
|
+
setStarted(true);
|
|
519
|
+
else
|
|
513
520
|
exit();
|
|
514
|
-
return;
|
|
515
|
-
}
|
|
516
|
-
const tgt = wsInput.trim().replace(/^["']|["']$/g, '');
|
|
517
|
-
if (tgt) {
|
|
518
|
-
try {
|
|
519
|
-
const abs = path.isAbsolute(tgt) ? tgt : path.resolve(process.cwd(), tgt);
|
|
520
|
-
fs.mkdirSync(abs, { recursive: true });
|
|
521
|
-
process.chdir(abs);
|
|
522
|
-
setBashCwd(abs);
|
|
523
|
-
}
|
|
524
|
-
catch { /* geçersiz yol → mevcut cwd ile devam */ }
|
|
525
|
-
}
|
|
526
|
-
setStarted(true);
|
|
527
521
|
}
|
|
528
|
-
else if (key.
|
|
529
|
-
|
|
530
|
-
else if (inp && inp.length === 1 && inp >= ' ' && !key.ctrl && !key.meta)
|
|
531
|
-
setWsInput((s) => s + inp);
|
|
522
|
+
else if (key.escape)
|
|
523
|
+
exit();
|
|
532
524
|
});
|
|
533
525
|
// Soru dialogu (AskUserQuestion / plan onayı)
|
|
534
526
|
useInput((inp, key) => {
|
|
@@ -758,10 +750,9 @@ function App() {
|
|
|
758
750
|
setStreaming('');
|
|
759
751
|
// Sızan özel-token / tool-call markup'ını bir kez temizle (hem geçmiş hem gösterim için).
|
|
760
752
|
assistantText = cleanModelText(assistantText);
|
|
761
|
-
// Model araç çağrısını metne gömdüyse (
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
}
|
|
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);
|
|
765
756
|
// Reactive compact: bağlam taştıysa bir kez özetle ve turu tekrar dene
|
|
766
757
|
if (gotCtxError && !reactiveRetried) {
|
|
767
758
|
reactiveRetried = true;
|
|
@@ -1083,8 +1074,7 @@ function App() {
|
|
|
1083
1074
|
React.createElement(Box, { flexDirection: "column", marginTop: 1, paddingX: 1 },
|
|
1084
1075
|
React.createElement(Text, { color: theme.redBright, bold: true }, t('trust.accessing')),
|
|
1085
1076
|
React.createElement(Text, null, " "),
|
|
1086
|
-
React.createElement(Text, { color: theme.
|
|
1087
|
-
React.createElement(Text, { color: theme.white }, '❯ ' + (wsInput || process.cwd())),
|
|
1077
|
+
React.createElement(Text, { color: theme.white }, process.cwd()),
|
|
1088
1078
|
React.createElement(Text, null, " "),
|
|
1089
1079
|
t('trust.check').split('\n').map((line, i) => React.createElement(Text, { key: i, color: theme.grey }, line)),
|
|
1090
1080
|
React.createElement(Text, null, " "),
|
package/dist/theme.js
CHANGED