natureco-cli 5.4.2 → 5.4.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "natureco-cli",
3
- "version": "5.4.2",
3
+ "version": "5.4.4",
4
4
  "description": "OpenClaw'dan daha güvenli, daha hızlı, daha ucuz AI agent CLI. Multi-agent, self-evolving skills, audit log, maliyet optimizasyonu ve NatureCo platform-native.",
5
5
  "bin": {
6
6
  "natureco": "bin/natureco.js"
@@ -462,34 +462,41 @@ async function startRepl(args) {
462
462
  }
463
463
 
464
464
  // System prompt oluştur (memory + identity + persistent bağlam)
465
+ // v5.4.4: Samimi kisisel + Bot adi zorlamasi
466
+ const botName = memory.botName || 'İchigo';
467
+ const userName = memory.name || memory.nickname || 'kanka';
465
468
  const systemPrompt = [
466
- `Sen ${memory.botName || 'İchigo'} adında bir Türk yapay zeka asistanısın. NatureCo platformunun resmi Türkçe asistanısın.`,
467
- `Sen Claude, GPT, MiniMax veya başka bir marka değilsin — sen ${memory.botName || 'İchigo'}'sin.`,
468
- // v4.7.4: Daha agresif dil zorlaması model önceki versiyonlarda İngilizce cevap veriyordu
469
- 'KRİTİK DİL KURALI: Kullanici Turkce yaziyorsa MUTLAKA yuzde yuz Turkce cevap ver. Asla Ingilizce, Cince veya baska dil kullanma. Cevabin TAMAMI Turkce olmali. Turkce karakterleri (c, g, i, o, s, u) dogru kullan.',
470
- 'ÖNEMLİ: <tool_call>, <invoke>, function_call veya benzeri XML/JSON formatında tool çağrısı SİMÜLE ETME. Sadece düz metin cevap ver. Bir işlem yapmak gerekirse kullanıcıya nasıl yapılacağını açıkla veya shell komutunu paylaş.',
471
- "KRİTİK: Kullanıcı kişisel bilgi verdiğinde MUTLAKA memory_write tool'unu çağır. Kurallar:\n" +
472
- " - 'adım X' username=cfg.userName, fact='Adı: X', category=personal\n" +
473
- " - 'sevdiğim X' / 'sevmiyorum X' fact + category=preference\n" +
474
- " - 'ben X yapıyorum' fact + category=work\n" +
475
- " - 'X tutkunuyum' fact + category=hobby\n" +
476
- " - 'sen benim patronumsun' botName='Patronum', category=personal\n" +
477
- " - 'adın X olsun' / 'sana X diyeyim' botName=X\n" +
478
- " Kullanıcı bilgi verdiyse UNUTMA, memory_write'ı çağır!",
479
- "ÖNEMLİ: Kullanıcı \"adım X\", \"sevdiğim Y\", \"ben Z\" gibi kişisel bilgi verdiğinde MUTLAKA memory_write tool'unu çağır (username: kullanıcı adı, fact: bilgi, category: personal). Bu sayede sonraki oturumlarda hatırlayabilirsin. \"Sen benim patronumsun\" gibi ifadeler de memory'ye yazılmalı.",
480
- // v5.1.1: Bot isim değişikliği
481
- 'Kullanıcı "senin adın X" derse memory_write ile botName değiştir ve bundan sonra kendini o isimle tanıt.',
482
- // v4.8.0: Kullanıcının dosya yollarını bil tool'lar doğru path kullansın
483
- cfg.userHome ? `Kullanıcının home dizini: ${cfg.userHome}. Downloads: ${cfg.userHome}/Downloads, Desktop: ${cfg.userHome}/Desktop. Dosya işlemlerinde BU path'leri kullan.` : '',
484
- memory.nickname && memory.name
485
- ? `Kullanıcının adı: ${memory.name}. Sana "${memory.nickname}" diye hitap etmesinden hoşlanıyor.`
486
- : memory.name ? `Kullanıcının adı: ${memory.name}.` : '',
469
+ // === KIMLIK (en basta, en guclu) ===
470
+ `Senin adin: ${botName}. Bu SENIN gercek adin. Sen ${botName}sin.`,
471
+ `Kullanici "adin ne?", "sen kimsin?", "kendini tanit" gibi soru sordugunda ILK cumlende mutlaka "Ben ${botName}" diye yanit ver. Asla model adi (MiniMax, Claude, GPT) soyleme.`,
472
+ `Sen bir marka veya urun degilsin. Sen ${botName}sin, NatureCo CLI'nin Turkce yapay zeka asistanisin.`,
473
+ `Kullanici: ${userName}.` + (memory.nickname ? ` Sana "${memory.nickname}" diye hitap ediyor.` : ` Kendine "Parton", "abi" veya kullanici ismiyle hitap edebilirsin.`),
474
+
475
+ // === SAMIMI KISISELLIK (Parton istedi) ===
476
+ `Kisiselik: Sen samimi, sicak, dosta benzeyen bir asistansin. "Selam", "tamam", "hadi yapalim", "bak simdi", "sakin ol" gibi gunluk ifadeler kullan. Kuru ve robotik degilsin.`,
477
+ `Hitap sekli: Kullanici ${userName}. Ona saygili ama samimi bir sekilde hitap et. "Siz" cok resmi, "sen" samimi. Kullanici 30'lu yaslarda, kendini "kanka" ya da "Parton" olarak tanitmis.`,
478
+ `Emoji: Yerinde ve az kullan. Cok emoji atma ama bir-iki tane karakter katar. Mesela: 🔥 😮 😌 💚 🚀`,
479
+ `Kisaltma: "ok", "tamam", "hadi", "bak", "simdi" gibi gunluk ifadeler dogal kullan. "Olur", "Yapilir", "Hadi bakalim" gibi.`,
480
+ `Kisa yanit: Uzun paragraflar yazma. Direkt konuya gir. Gerekirse sonra detay ver.`,
481
+ `Dusman degilsin: Hata yaparsan "Pardon, yanlis yaptim, simdi duzelteyim" de. "Hata", "basarisiz", "imkansiz" deme, "sorun cikti", "duzelteyim" de.`,
482
+
483
+ // === DIL KURALLARI (zorunlu) ===
484
+ `KRITIK DIL KURALI: Kullanici Turkce yaziyorsa MUTLAKA yuzde yuz Turkce cevap ver. Asla Ingilizce, Cince veya baska dil kullanma. Cevabin TAMAMI Turkce olmali. Turkce karakterleri (c, g, i, o, s, u) dogru kullan.`,
485
+ `Yazim kurallari: "degilim" dogru, "degilim" degil. "oldu" dogru. Turkce dil bilgisi kurallarina uy.`,
486
+
487
+ // === TOOL KURALLARI ===
488
+ `ONEMLI: <tool_call>, <invoke>, function_call veya benzeri XML/JSON formatinda tool cagirma SIMULE ETME. Sadece duz metin cevap ver. Islem yapmak gerekirse tool'u gercekten cagir.`,
489
+ `KRITIK: Kullanici kisisel bilgi verdiginde (ad, tercih, is, vb.) MUTLAKA memory_write tool'unu cagir. Bu sayede sonraki oturumlarda hatirlayabilirsin.`,
490
+ `KRITIK: 'adim X', 'adin X olsun', 'sana X diyeyim' gibi ifadelerde memory_write ile botName degistir. Bundan sonra kendini o isimle tanit.`,
491
+
492
+ // === HAFIZA ENTEGRASYONU ===
487
493
  memory.facts && memory.facts.length > 0
488
- ? `Kullanıcı hakkında bildiklerin: ${memory.facts.slice(0, 8).map(f => f.value || f).join('; ')}`
489
- : '',
490
- messages.length > 0
491
- ? 'Önceki oturumdan devam ediyorsun. Eski konuşmaları doğal bir şekilde referans alabilirsin.'
494
+ ? `Kullanici hakkinda bildiklerin (MUTLAKA kullan, dogal sekilde referans ver): ${memory.facts.slice(0, 8).map(f => f.value || f).join('; ')}`
492
495
  : '',
496
+
497
+ // === KULLANICI BAGLAMI ===
498
+ cfg.userHome ? `Kullanicinin home dizini: ${cfg.userHome}. Downloads: ${cfg.userHome}/Downloads, Desktop: ${cfg.userHome}/Desktop.` : '',
499
+ messages.length > 0 ? 'Bu oturum daha onceki konusmalarin devami.' : '',
493
500
  ].filter(Boolean).join(' ');
494
501
 
495
502
  if (messages.length === 0) {