beast-agent 1.5.2 → 1.6.0
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 +1 -1
- package/src/agent/engine.js +4904 -4904
- package/src/agent/memory.js +419 -419
- package/src/agent/skills.js +621 -621
- package/src/agent/watext.js +80 -80
- package/src/cron.js +11 -1
- package/src/main.js +7089 -7047
- package/src/preload.js +191 -191
- package/src/renderer/i18n.js +1222 -1221
- package/src/renderer/index.html +408 -408
- package/src/renderer/renderer.js +7420 -7419
- package/src/renderer/style.css +3392 -3392
package/src/renderer/i18n.js
CHANGED
|
@@ -1,1221 +1,1222 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
/* Hafif i18n (TR/EN):
|
|
4
|
-
- data-i18n → textContent
|
|
5
|
-
- data-i18n-ph → placeholder
|
|
6
|
-
- data-i18n-title→ title
|
|
7
|
-
- I18N.t(key) → dinamik render'larda
|
|
8
|
-
Seçim localStorage('beast.lang') içinde kalıcıdır (default tr). */
|
|
9
|
-
|
|
10
|
-
(function () {
|
|
11
|
-
const DICT = {
|
|
12
|
-
tr: {
|
|
13
|
-
// ana ekran
|
|
14
|
-
newChat: '+ Yeni Sohbet',
|
|
15
|
-
emptyHint: 'Hızlı · hafif · becerikli. Ne yapalım?',
|
|
16
|
-
composerPh: 'Bir şey sor ya da görev ver… (Enter: gönder · Shift+Enter: satır · /: komutlar)',
|
|
17
|
-
tipModel: 'Model seç',
|
|
18
|
-
tipThink: 'Düşünme (reasoning) seviyesi',
|
|
19
|
-
tipPickCfg: 'Picker\u2019da görünecek modeller',
|
|
20
|
-
tipRail: 'Paralel Ajan Konsolu',
|
|
21
|
-
tipNet: 'İnternet durumu',
|
|
22
|
-
tip_net_online: 'İnternet: bağlı',
|
|
23
|
-
tip_net_offline: 'İnternet: yok — bağlantı dönünce işler otomatik sürer',
|
|
24
|
-
sess_drag: 'Sürükleyerek sırayı değiştir',
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
r
|
|
1208
|
-
r.querySelectorAll('[data-i18n
|
|
1209
|
-
r.querySelectorAll('[data-i18n-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
apply(
|
|
1221
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/* Hafif i18n (TR/EN):
|
|
4
|
+
- data-i18n → textContent
|
|
5
|
+
- data-i18n-ph → placeholder
|
|
6
|
+
- data-i18n-title→ title
|
|
7
|
+
- I18N.t(key) → dinamik render'larda
|
|
8
|
+
Seçim localStorage('beast.lang') içinde kalıcıdır (default tr). */
|
|
9
|
+
|
|
10
|
+
(function () {
|
|
11
|
+
const DICT = {
|
|
12
|
+
tr: {
|
|
13
|
+
// ana ekran
|
|
14
|
+
newChat: '+ Yeni Sohbet',
|
|
15
|
+
emptyHint: 'Hızlı · hafif · becerikli. Ne yapalım?',
|
|
16
|
+
composerPh: 'Bir şey sor ya da görev ver… (Enter: gönder · Shift+Enter: satır · /: komutlar)',
|
|
17
|
+
tipModel: 'Model seç',
|
|
18
|
+
tipThink: 'Düşünme (reasoning) seviyesi',
|
|
19
|
+
tipPickCfg: 'Picker\u2019da görünecek modeller',
|
|
20
|
+
tipRail: 'Paralel Ajan Konsolu',
|
|
21
|
+
tipNet: 'İnternet durumu',
|
|
22
|
+
tip_net_online: 'İnternet: bağlı',
|
|
23
|
+
tip_net_offline: 'İnternet: yok — bağlantı dönünce işler otomatik sürer',
|
|
24
|
+
sess_drag: 'Sürükleyerek sırayı değiştir',
|
|
25
|
+
sess_del_confirm: 'Bu sohbet oturumunu silmek istediğine emin misin?',
|
|
26
|
+
tipWatch: 'İzleyiciler (Watchers)',
|
|
27
|
+
tipCron: 'Cron Görevler',
|
|
28
|
+
tip_light: 'Açık tema',
|
|
29
|
+
bc_label: 'Beast Kodu',
|
|
30
|
+
bc_copy: 'Kopyala',
|
|
31
|
+
bc_copied: 'Kopyalandı',
|
|
32
|
+
tipModelRefresh: 'Modelleri yeniden çek (tüm providerlar)',
|
|
33
|
+
mr_done: 'Modeller yenilendi',
|
|
34
|
+
tipMic: 'Sesli komut — konuş, bırakınca yazıya çevirsin',
|
|
35
|
+
mic_listening: 'Dinliyorum… bitirmek için mikrofona tekrar bas',
|
|
36
|
+
mic_transcribing: 'Ses yazıya çevriliyor (yerel Whisper)…',
|
|
37
|
+
mic_fail: 'Konuşma algılanamadı',
|
|
38
|
+
mic_denied: 'Mikrofon erişimi verilmedi',
|
|
39
|
+
tip_dark: 'Koyu tema',
|
|
40
|
+
tipTerm: 'Terminal (PowerShell)',
|
|
41
|
+
tipTermG: 'Git Bash terminali',
|
|
42
|
+
tipTermC: 'CMD terminali',
|
|
43
|
+
tipBrowser: 'Dahili tarayıcı',
|
|
44
|
+
tipEye: 'Ajan tarayıcısı görünür/gizli — göz açıkken aramalar panelde izlenir, kapalıyken gizli çalışır',
|
|
45
|
+
tipAttach: 'Dosya / resim ekle',
|
|
46
|
+
tipStop: 'Durdur',
|
|
47
|
+
tipSend: 'Gönder',
|
|
48
|
+
tipMic: 'Konuş — sesin yazıya dönsün',
|
|
49
|
+
tipGear: 'Ayarlar',
|
|
50
|
+
tipThemeDark: 'Koyu tema',
|
|
51
|
+
tipThemeLight: 'Açık tema',
|
|
52
|
+
tipLang: 'Dil değiştir / Switch language',
|
|
53
|
+
// kenar çubuğu & paneller
|
|
54
|
+
labelParallel: 'Paralel Ajanlar',
|
|
55
|
+
set_title: 'AYARLAR',
|
|
56
|
+
tab_lang: 'DİL',
|
|
57
|
+
lang_sub: 'Arayüz dili — uygulama dili ve sesli komut dili buradan değişir',
|
|
58
|
+
tab_provider: 'Provider',
|
|
59
|
+
tab_fallout: 'Fallout',
|
|
60
|
+
tab_memory: 'Memory',
|
|
61
|
+
tab_skills: 'Skills',
|
|
62
|
+
tab_notes: 'Oturum Notları',
|
|
63
|
+
tab_history: 'Oturum Geçmişi',
|
|
64
|
+
tab_agents: 'Paralel Ajanlar',
|
|
65
|
+
tab_tts: 'Sesli Yanıt',
|
|
66
|
+
tab_email: 'E-posta',
|
|
67
|
+
tab_integrations: 'Entegrasyonlar',
|
|
68
|
+
tab_websearch: 'Web Arama',
|
|
69
|
+
tab_limits: 'Limit Ayarları',
|
|
70
|
+
tab_security: 'Güvenlik',
|
|
71
|
+
tab_update: 'Güncelleme',
|
|
72
|
+
up_h2: 'Güncelleme',
|
|
73
|
+
up_sub: 'Sürümler GitHub Releases\u2019ten gelir. Otomatik kontrol açılışta ve 6 saatte bir çalışır.',
|
|
74
|
+
up_current: 'Mevcut sürüm',
|
|
75
|
+
up_latest: 'En son sürüm',
|
|
76
|
+
up_status: 'Durum',
|
|
77
|
+
up_checking: 'Kontrol ediliyor…',
|
|
78
|
+
up_available: 'Yeni sürüm var',
|
|
79
|
+
up_uptodate: 'Güncel',
|
|
80
|
+
up_downloading: 'İndiriliyor…',
|
|
81
|
+
up_downloaded: 'İndirildi — kurulum için hazır',
|
|
82
|
+
up_npm_mode: 'npm kurulumu — güncellemeler otomatik kontrol edilir',
|
|
83
|
+
up_npm_note: 'Yeni sürüm algılanınca buton aktifleşir: uygulama kapanır, güncellenir ve kendiliğinden yeniden açılır. Terminal komutu: beast update',
|
|
84
|
+
up_npm_started: 'Güncelleme başladı — uygulama kapanacak, en son sürüm kurulup kendiliğinden açılacak…',
|
|
85
|
+
up_dev_note: 'Geliştirme modu — güncelleme buradan yapılmaz; dağıtım npm ve GitHub Releases üzerinden. Kaynak kod için: git pull',
|
|
86
|
+
up_auto_check: 'Otomatik sürüm kontrolü (açılış + 6 saatte bir)',
|
|
87
|
+
up_auto_dl: 'Yeni sürümü otomatik indir (kapanışta kurulur)',
|
|
88
|
+
up_check_now: 'Şimdi Kontrol Et',
|
|
89
|
+
up_install_now: 'Yeniden Başlat & Kur',
|
|
90
|
+
up_note: 'Kurulumdan sonra uygulama otomatik yeniden başlar. İstersen WhatsApp\u2019tan /update komutunu da kullanabilirsin.',
|
|
91
|
+
tab_events: 'Olay Merkezi',
|
|
92
|
+
tab_cron: 'Cron',
|
|
93
|
+
tab_usage: 'Maliyet · Limit',
|
|
94
|
+
tab_logs: 'Log',
|
|
95
|
+
tab_dash: 'Dashboard',
|
|
96
|
+
tab_limits: 'Limit',
|
|
97
|
+
logs_h2: 'Loglar',
|
|
98
|
+
logs_sub: 'Uygulama olayları — son 600 satır. Dosya: %APPDATA%\\beast\\logs',
|
|
99
|
+
logs_clear: 'Logları Temizle',
|
|
100
|
+
logs_refresh: 'Yenile',
|
|
101
|
+
logs_empty: 'Henüz log yok.',
|
|
102
|
+
dash_h2: 'Oturum Geçmişi',
|
|
103
|
+
dash_sub: 'Tüm sohbet oturumları — kod, mesaj sayısı ve zaman',
|
|
104
|
+
dash_stat_sessions: 'Oturum',
|
|
105
|
+
dash_stat_msgs: 'Mesaj',
|
|
106
|
+
dash_stat_today: 'Bugün',
|
|
107
|
+
dash_stat_last: 'Son etkinlik',
|
|
108
|
+
dash_open: 'Aç',
|
|
109
|
+
dash_empty: 'Henüz oturum yok.',
|
|
110
|
+
lim_h2: 'Limit',
|
|
111
|
+
lim_sub: 'Provider bazlı maksimum girdi (prompt) token limiti — model başına gönderilen bağlamı kontrol eder. 0 = limitsiz.',
|
|
112
|
+
lim_enabled: 'Limit aktif',
|
|
113
|
+
lim_compress: 'Bağlam sıkıştırma (limit aşılırsa eski mesajlar özetlenerek çıkarılır)',
|
|
114
|
+
lim_default: 'Varsayılan limit (tüm providerlar, token)',
|
|
115
|
+
lim_prov_h2: 'Provider Limitleri',
|
|
116
|
+
lim_prov_sub: 'Provider adına göre limit — boş/0 ise varsayılan kullanılır',
|
|
117
|
+
lim_save: 'Limitleri Kaydet',
|
|
118
|
+
lim_saved_toast: 'Limitler kaydedildi',
|
|
119
|
+
lim_unlimited: 'limitsiz',
|
|
120
|
+
tf_h2: 'TinyFish Arama',
|
|
121
|
+
tf_sub: 'Ücretsiz, hızlı web arama API\u2019si. Anahtar girilirse zincirde KENDİ SIRASINDA kullanılır; anahtar yoksa motor otomatik atlanır.',
|
|
122
|
+
tf_key_label: 'TinyFish API anahtarı (agent.tinyfish.ai/api-keys)',
|
|
123
|
+
tf_status_set: 'TinyFish aktif — kayıtlı anahtar: ',
|
|
124
|
+
tf_status_unset: 'TinyFish pasif — zincir sıradaki motorla devam eder.',
|
|
125
|
+
tf_empty_toast: 'Anahtar boş — mevcut anahtar korundu',
|
|
126
|
+
tf_saved_toast: 'TinyFish anahtarı kaydedildi',
|
|
127
|
+
tf_cleared_toast: 'TinyFish anahtarı silindi',
|
|
128
|
+
btn_close: 'Kapat',
|
|
129
|
+
em_pass_masked: 'Mevcut şifre korunuyor — değiştirmek için yeniden gir',
|
|
130
|
+
p_h2: 'Provider',
|
|
131
|
+
p_sub: 'Beast config.yaml\u2019dan gelen modeller — aktif olanı seç',
|
|
132
|
+
p_del_title: 'Modeli listeden sil',
|
|
133
|
+
p_no_model: 'Model bulunamadı — %APPDATA%\\beast\\config.yaml ve .env kontrol et.',
|
|
134
|
+
p_deleted_h2: 'Silinen Modeller',
|
|
135
|
+
p_deleted_sub: '${n} model listeden çıkarıldı — geri getirebilirsin',
|
|
136
|
+
p_restore: 'Geri Getir',
|
|
137
|
+
p_role_h2: 'Özel Rol Modelleri',
|
|
138
|
+
p_role_sub: 'Vision, Terminal, Coding ve Subagent için ayrı model; boş bırakırsan ana model kullanılır',
|
|
139
|
+
p_role_main: '— Ana model —',
|
|
140
|
+
p_custom_h2: 'Özel Provider',
|
|
141
|
+
p_custom_sub: 'API adres + key ver, modeller otomatik çekilir',
|
|
142
|
+
p_custom_del: 'Sil',
|
|
143
|
+
p_name_opt: 'Ad (opsiyonel)',
|
|
144
|
+
p_api_url: 'API adresi',
|
|
145
|
+
p_api_key: 'API Key',
|
|
146
|
+
p_fetch: 'Modelleri Çek',
|
|
147
|
+
p_models_manual: 'Modelleri elle gir (her satıra bir model adı)',
|
|
148
|
+
p_save: 'Kaydet',
|
|
149
|
+
p_model_toast: 'Model: ',
|
|
150
|
+
p_del_toast: 'Silindi: ',
|
|
151
|
+
p_restore_toast: 'Geri getirildi: ',
|
|
152
|
+
p_prov_del_toast: 'Provider silindi',
|
|
153
|
+
p_fetching: 'çekiliyor…',
|
|
154
|
+
p_no_provider: 'Kayıtlı provider yok — önce Provider sekmesinden bir sağlayıcı ekle.',
|
|
155
|
+
fo_h2: 'Fallout Zinciri',
|
|
156
|
+
fo_enabled: 'Fallout aktif',
|
|
157
|
+
fo_resume: 'Açılışta yarım işi otomatik sürdür',
|
|
158
|
+
fo_count: '${n}/10 kayıt',
|
|
159
|
+
fo_provider_ph: 'provider seç…',
|
|
160
|
+
fo_save: 'Kaydet',
|
|
161
|
+
fo_clear_title: 'Kaydı sil',
|
|
162
|
+
fo_seq: 'Zincir sırası',
|
|
163
|
+
fo_sub: 'Çökme sonrası otomatik kurtarma — model çökerse sıradaki kayda geçer, durum diske yazılır ve kaldığı yerden devam eder. Aynı provider+modeli farklı API key ile birden çok kez ekleyebilirsin.',
|
|
164
|
+
fo_note: 'Sıra önemli: #1 çökerse #2\u0027ye, o da çökerse #3\u0027e… geçilir. Geçişler sohbette <b>☢ FALLOUT</b> durum etiketiyle görünür.',
|
|
165
|
+
mem_h2: 'Memory',
|
|
166
|
+
mem_sub: 'Ajanın kalıcı hafızası — sistem promptuna birebir girer, kısa tut',
|
|
167
|
+
mem_soul: 'SOUL.md — ajanın kişiliği (karakter, ton, davranış kuralları)',
|
|
168
|
+
mem_mem: 'MEMORY.md',
|
|
169
|
+
mem_user: 'USER.md',
|
|
170
|
+
mem_save: 'Kaydet',
|
|
171
|
+
mem_saved: 'Memory kaydedildi — SOUL.md dahil',
|
|
172
|
+
sk_h2: 'Skills',
|
|
173
|
+
sk_sub: 'SKILL.md indeksi — tam metin model tarafından okunur',
|
|
174
|
+
sk_auto: 'Otomatik skill: ajan öğrendiği yeni yöntemleri taslak onayı beklemeden kurar; bir skillin daha kolay/daha iyi yolunu bulursa mevcut skilli kendisi günceller',
|
|
175
|
+
up_npm_only: 'Tek dağıtım npm\u2019dir. "Yeniden başlat ve güncelle" butonu: uygulamayı kapatır, GÖRÜNÜR bir cmd penceresinde "beast update" koşturur (npm install çıktısını ekranda görürsün), kurulum bitince uygulama kendiliğinden açılır.İstersen terminalden de: npm i -g beast-agent@latest',
|
|
176
|
+
sk_rules_h2: 'Kalıcı Kurallar',
|
|
177
|
+
sk_rules_sub: 'Agent\u2019ın her sohbette uyduğu talimatlar — WA\u2019dan /rule ile de eklenir',
|
|
178
|
+
sk_no_rule: 'Henüz kural yok.',
|
|
179
|
+
sk_rule_ph: 'Yeni kural…',
|
|
180
|
+
sk_rule_add: 'Ekle',
|
|
181
|
+
sk_drafts_h2: 'Taslaklar',
|
|
182
|
+
sk_drafts_sub: 'Uzun işlerden otomatik doğan yetenek adayları — kabul edersen skill olur',
|
|
183
|
+
sk_no_draft: 'Taslak yok — agent\u2019ın 5+ araç kullandığı uzun işlerde otomatik üretilir.',
|
|
184
|
+
sk_dr_accept: 'Skill olarak kur',
|
|
185
|
+
sk_dr_drop: 'Sil',
|
|
186
|
+
sk_open_folder: 'Skills klasörünü aç',
|
|
187
|
+
tts_h2: 'Sesli Yanıt (TTS)',
|
|
188
|
+
tts_sub: 'Açık olursa WhatsApp cevapları metnin yanı sıra sesli not olarak da gönderilir.',
|
|
189
|
+
tts_active: 'Aktif',
|
|
190
|
+
tts_save: 'TTS Kaydet',
|
|
191
|
+
tts_note: 'OpenAI-uyumlu bir speech API kullanır (tts-1, tts-1-hd vb.). Sesler: alloy, echo, fable, onyx, nova, shimmer.',
|
|
192
|
+
tts_on: 'TTS açık — cevaplar sesli de gider',
|
|
193
|
+
tts_off: 'TTS kapalı',
|
|
194
|
+
em_h2: 'E-posta (Gmail)',
|
|
195
|
+
em_sub: 'IMAP/SMTP — Gmail hesabında "Uygulama Şifresi" oluşturup buraya gir. Agent mailleri okur, özetler ve senin adına gönderir.',
|
|
196
|
+
em_save: 'E-posta Kaydet',
|
|
197
|
+
em_note: 'Kaydettikten sonra agent\u2019a "gelen mailleri özetle", "X\u2019e mail at" gibi komutlar verebilirsin.',
|
|
198
|
+
em_saved: 'E-posta kaydedildi — agent artık maillere erişebilir',
|
|
199
|
+
it_h2: 'Entegrasyonlar',
|
|
200
|
+
it_sub: 'Mesajlaşma köprüleri — gelen mesajlar Beast\u2019e gider, cevap geri döner',
|
|
201
|
+
it_wa_sub: 'Özel mesajlar · gruplar (@mention ile) · slash komutları (/help)',
|
|
202
|
+
it_connect: 'QR ile Bağlan',
|
|
203
|
+
it_disconnect: 'Kes',
|
|
204
|
+
it_reset_pair: 'Eşlemeyi Sıfırla',
|
|
205
|
+
it_groups_on: 'WhatsApp gruplarında çalış',
|
|
206
|
+
it_groups_mention: 'Sadece @mention edilince cevap ver (grupta botu etiketle)',
|
|
207
|
+
it_groups_seeall: 'Mention modunda grubun TÜM konuşmalarını oku (bağlam biriktirir, yine sadece @mention\'a cevap verir)',
|
|
208
|
+
it_groups_all: 'Grubun her mesajına karış',
|
|
209
|
+
it_allow_label: 'İzinli numaralar',
|
|
210
|
+
it_name_ph: 'İsim (zorunlu)',
|
|
211
|
+
it_num_ph: 'Numara 905xxxxxxxxx',
|
|
212
|
+
it_add: 'Ekle',
|
|
213
|
+
it_allow_note: 'İsim + numara zorunlu. Her kişinin yanındaki serbest/web/okuma/kısıtlı seçimiyle kişiye özel yetki ver.',
|
|
214
|
+
it_tg_sub: 'Bot tokenı ile çalışır — izin listendeki kişilere Telegram\u2019dan cevap verir',
|
|
215
|
+
it_tg_token_ph: 'Bot tokenı (örn. 123456789:AAH…)',
|
|
216
|
+
it_tg_save: 'Kaydet & Bağlan',
|
|
217
|
+
it_tg_connecting: 'Telegram\u2019a bağlanıyor…',
|
|
218
|
+
it_tg_token_bad: 'Token doğrulanamadı — @BotFather\u2019dan aldığın tokenı kontrol et',
|
|
219
|
+
it_tg_id_ph: 'Kullanıcı ID veya @kullanıcı_adı',
|
|
220
|
+
it_tg_note: 'İzin listesi boşsa kimse cevap almaz. Bot oluşturma: @BotFather → /newbot. Kendi ID\u2019ni öğrenmek için @userinfobot\u2019a mesaj at.',
|
|
221
|
+
it_dc_sub: 'Bot tokenı ile çalışır — izin listendeki kişilere Discord\u2019dan cevap verir (sunucularda @mention bekler)',
|
|
222
|
+
it_dc_token_ph: 'Bot tokenı (Developer Portal → Bot → Reset Token)',
|
|
223
|
+
it_dc_connecting: 'Discord\u2019a bağlanıyor…',
|
|
224
|
+
it_dc_token_bad: 'Token doğrulanamadı — Developer Portal\u2019dan aldığın tokenı kontrol et',
|
|
225
|
+
it_dc_id_ph: 'Kullanıcı ID veya @kullanıcı_adı',
|
|
226
|
+
it_dc_note: 'İzin listesi boşsa kimse cevap almaz. Bot oluşturma: discord.com/developers → New Application → Bot → Token. "MESSAGE CONTENT INTENT"i AÇ (yoksa mesajlar boş gelir). Sunucu daveti: OAuth2 → bot yetkisiyle. Kendi ID\u2019ni öğrenmek için geliştirici modunu açıp kendine sağ tıkla → ID\u2019yi kopyala.',
|
|
227
|
+
it_dc_vpn: 'Türkiye\u2019de Discord erişimi zaman zaman engellenir — bağlanamıyorsan VPN açıp tekrar dene.',
|
|
228
|
+
ev_h2: 'Olay Merkezi',
|
|
229
|
+
ev_sub: 'Cron\u2019suz canlı olaylar — kaynakları aç, abonelikleri agent kendisi kurar (event_subscribe). Tetiklenen olay ilgili sohbete düşer, cevap WhatsApp\u2019a gider.',
|
|
230
|
+
ev_on: 'Olay merkezi açık',
|
|
231
|
+
ev_mail: 'Yeni e-posta anlık takip (IMAP IDLE) — E-posta sekmesindeki hesabı kullanır',
|
|
232
|
+
ev_fs: 'Workspace dosya değişimi izleme',
|
|
233
|
+
ev_price_ph: 'Fiyat sembolü (örn PAXGUSDT)',
|
|
234
|
+
ev_save: 'Kaydet',
|
|
235
|
+
ev_price_sub: 'boş sembol = fiyat feed kapalı (Binance miniTicker)',
|
|
236
|
+
ev_token_copy: 'token kopyala',
|
|
237
|
+
ev_subs_h3: 'Aktif Abonelikler',
|
|
238
|
+
ev_no_sub: 'Abonelik yok — agent\u2019a "mail gelince haber ver" ya da "fiyat X altına inerse bağır" de, kendisi kurar.',
|
|
239
|
+
ev_on_toast: 'Olay merkezi açık',
|
|
240
|
+
ev_off_toast: 'Olay merkezi kapandı',
|
|
241
|
+
us_h2: 'Maliyet',
|
|
242
|
+
us_sub: 'Gerçek API kullanımından toplanır. USD tahmini için config.yaml\u2019da provider\u2019a price_in / price_out (1M token) ekle.',
|
|
243
|
+
us_today_calls: 'Bugünkü çağrı',
|
|
244
|
+
us_today_tokens: 'Bugün token',
|
|
245
|
+
us_today_cost: 'Bugün maliyet',
|
|
246
|
+
us_month_cost: 'Bu ay maliyet',
|
|
247
|
+
us_models_today: 'Modeller — bugün',
|
|
248
|
+
us_models_month: 'Modeller — bu ay',
|
|
249
|
+
us_no_records: 'Bu dönemde kayıt yok',
|
|
250
|
+
us_reset: 'Sayaçları sıfırla',
|
|
251
|
+
us_backup_h2: 'Yedekleme',
|
|
252
|
+
us_backup_sub: 'Tüm Beast verisi (ayarlar, API anahtarları, oturumlar, hafıza, WhatsApp eşlemesi) AES-256 ile ŞİFRELİ yedeklenir ve Beast Kodu ile imzalanır: Masaüstü\\Beast-Backups. Yedeği yalnız bu makine geri yükleyebilir.',
|
|
253
|
+
us_backup_now: 'Şimdi yedekle',
|
|
254
|
+
us_where_h2: 'Nerede Kaldım',
|
|
255
|
+
us_where_sub: 'Açılışta son oturumun durumu + yarım kalan todolar sohbete özet olarak düşer.',
|
|
256
|
+
us_where_on: 'Açılışta "nerede kaldım" özeti göster',
|
|
257
|
+
us_no_records: 'Bu dönemde kayıt yok',
|
|
258
|
+
us_reset_toast: 'Kullanım sayaçları sıfırlandı',
|
|
259
|
+
us_backup_ing: 'Yedekleniyor…',
|
|
260
|
+
us_backup_ok: 'Şifreli yedek alındı: Masaüstü\\Beast-Backups',
|
|
261
|
+
us_backup_err: 'Hata: ',
|
|
262
|
+
us_backup_restore: 'Yedekten Geri Yükle',
|
|
263
|
+
us_restore_ing: 'Geri yükleniyor…',
|
|
264
|
+
us_restore_ok: 'Geri yükleme tamamlandı — değişikliklerin oturması için uygulamayı yeniden başlat',
|
|
265
|
+
us_where_on_toast: 'Açılış özeti açık',
|
|
266
|
+
us_where_off_toast: 'Açılış özeti kapandı',
|
|
267
|
+
ws_calls: 'çağrı',
|
|
268
|
+
ws_token: 'token',
|
|
269
|
+
td_hide: 'Görev listesini gizle (yeni güncellemede yine görünür)',
|
|
270
|
+
ws_h2: 'Web Arama',
|
|
271
|
+
ws_sub: 'Arama zinciri: 1) dahili tarayıcı (direk Google) 2) Obscura (stealth headless → DuckDuckGo) 3) TinyFish (anahtar varsa) 4) python çoklu-motor (ddgs / DDG+Bing+Mojeek) — otomatik. Sıra ve aç/kapa aşağıdan değiştirilir.',
|
|
272
|
+
oc_h2: 'Obscura (Stealth Tarayıcı)',
|
|
273
|
+
oc_sub: 'Rust tabanlı gizli headless tarayıcı (anti-detect + V8, Chromium\u2019suz). Paket içinde hazır gelir; ilk açılışta %APPDATA%\\beast\\obscura\'ya açılır; DuckDuckGo aramasını bot korumasını aşarak yapar.',
|
|
274
|
+
oc_status_ok: 'Obscura kurulu ve hazır.',
|
|
275
|
+
oc_status_missing: 'Obscura paket içinde hazır — ilk açılışta otomatik kurulur.',
|
|
276
|
+
oc_install: 'Kur / Güncelle',
|
|
277
|
+
oc_install_running: 'Kuruluyor…',
|
|
278
|
+
oc_installing: 'İndiriliyor… (≈74 MB, bağlantıya göre birkaç dakika)',
|
|
279
|
+
oc_phase_prep: 'Hazırlanıyor',
|
|
280
|
+
oc_phase_download: 'İndiriliyor',
|
|
281
|
+
oc_phase_extract: 'Açılıyor',
|
|
282
|
+
oc_phase_verify: 'Doğrulanıyor',
|
|
283
|
+
oc_phase_done: 'Tamamlandı',
|
|
284
|
+
oc_bg_note: 'Kurulum arka planda sürüyor — ayarlardan çıkıp dönsen bile ilerleme burada devam eder.',
|
|
285
|
+
oc_installed_toast: 'Obscura kuruldu',
|
|
286
|
+
oc_install_fail: 'Kurulamadı: ',
|
|
287
|
+
oc_enabled: 'Obscura arama zincirinde aktif',
|
|
288
|
+
oc_on_toast: 'Obscura aktif',
|
|
289
|
+
oc_off_toast: 'Obscura pasif',
|
|
290
|
+
so_h2: 'Arama Sırası',
|
|
291
|
+
so_sub: 'Motorlar bu sırayla denenir; boş dönen motor atlanıp sıradaki devreye girer. ↑↓ ile sırayı, kutucukla aç/kapa durumunu değiştir.',
|
|
292
|
+
so_engine_browser: 'Dahili Tarayıcı (Google)',
|
|
293
|
+
so_engine_obscura: 'Obscura (Stealth → DuckDuckGo)',
|
|
294
|
+
so_engine_tinyfish: 'TinyFish API (anahtar gerekir)',
|
|
295
|
+
so_engine_python: 'Python Çoklu-Motor (ddgs/DDG/Bing/Mojeek)',
|
|
296
|
+
so_saved_toast: 'Arama sırası kaydedildi',
|
|
297
|
+
ws_save: 'Kaydet',
|
|
298
|
+
ws_clear: 'Anahtarı Sil',
|
|
299
|
+
ws_note: 'Anahtar maskeli tutulur; yenisini yazıp kaydettiğinde eskisinin yerine geçer. Boş kaydet: mevcut anahtar korunur.',
|
|
300
|
+
ws_empty_toast: 'Anahtar boş — mevcut anahtar korundu',
|
|
301
|
+
ws_fail_toast: 'Kaydedilemedi',
|
|
302
|
+
ag_h2: 'Paralel Ajanlar',
|
|
303
|
+
ag_sub: 'CEO\u2019nun devrettiği arka plan işleri — canlı izleme',
|
|
304
|
+
ag_ceo_label: 'CEO modu — konuşan ajan iş yapmaz, sadece emir verir',
|
|
305
|
+
ag_ceo_on: 'CEO modu açıldı',
|
|
306
|
+
ag_ceo_off: 'CEO modu kapandı',
|
|
307
|
+
ag_no_jobs: 'Henüz devredilmiş iş yok. CEO modunda agent somut işleri buraya düşürür.',
|
|
308
|
+
ag_working: 'çalışıyor',
|
|
309
|
+
ag_records: 'kayıt',
|
|
310
|
+
ag_st_running: 'çalışıyor',
|
|
311
|
+
ag_st_queued: 'kuyrukta',
|
|
312
|
+
ag_st_done: 'bitti',
|
|
313
|
+
ag_st_error: 'hata',
|
|
314
|
+
ag_st_aborted: 'iptal',
|
|
315
|
+
ag_cancel: 'İptal',
|
|
316
|
+
ag_delete: 'Sohbeti ve kaydı sil',
|
|
317
|
+
ag_empty: 'Henüz arka plan işi yok.\nCEO modunda ajan verdiği emirleri buraya düşürür.',
|
|
318
|
+
ag_tool_start: 'araç: ',
|
|
319
|
+
ag_detail: 'Dökümü',
|
|
320
|
+
ag_show: 'göster',
|
|
321
|
+
ag_hide: 'gizle',
|
|
322
|
+
ag_live: 'Canlı döküm',
|
|
323
|
+
ag_log_empty: '(boş)',
|
|
324
|
+
ag_detail_err: '(detay alınamadı)',
|
|
325
|
+
us_reset_toast: 'Kullanım sayaçları sıfırlandı',
|
|
326
|
+
us_backup_ok: 'Yedek alındı: Masaüstü\\Beast-Backups',
|
|
327
|
+
us_where_on_toast: 'Açılış özeti açık',
|
|
328
|
+
us_where_off_toast: 'Açılış özeti kapandı',
|
|
329
|
+
ws_h2: 'Web Arama',
|
|
330
|
+
oc_status_ok: 'Obscura kurulu ve hazır.',
|
|
331
|
+
oc_status_missing: 'Obscura paket içinde hazır — ilk açılışta otomatik kurulur.',
|
|
332
|
+
ws_save: 'Kaydet',
|
|
333
|
+
ws_clear: 'Anahtarı Sil',
|
|
334
|
+
ws_key_note: 'Anahtar maskeli tutulur; yenisini yazıp kaydettiğinde eskisinin yerine geçer. Boş kaydet: mevcut anahtar korunur.',
|
|
335
|
+
ws_empty: 'Anahtar boş — mevcut anahtar korundu',
|
|
336
|
+
// terminal & tarayıcı & mini
|
|
337
|
+
term_clear: 'Temizle',
|
|
338
|
+
term_ph: 'komut yaz, Enter\u2019la çalıştır…',
|
|
339
|
+
term_stop: 'Çalışan komutu durdur',
|
|
340
|
+
bb_ph: 'adres yaz veya ara…',
|
|
341
|
+
tip_bb_back: 'Geri',
|
|
342
|
+
tip_bb_phone: 'Telefon modu — mobil versiyon / web versiyonu',
|
|
343
|
+
tip_bb_fwd: 'İleri',
|
|
344
|
+
tip_bb_reload: 'Yenile',
|
|
345
|
+
tip_bb_shot: 'Ekran görüntüsünü sohbete ekle',
|
|
346
|
+
tip_bb_open: 'Tarayıcıda aç',
|
|
347
|
+
tip_bb_close: 'Kapat',
|
|
348
|
+
mini_watch: 'İzleyiciler (Watchers)',
|
|
349
|
+
mini_cron: 'Cron Görevler',
|
|
350
|
+
// cron formu
|
|
351
|
+
cron_h2: 'Cron Görevler',
|
|
352
|
+
cron_sub: 'Zamanlanmış görevler — saati gelince agent otomatik çalışır',
|
|
353
|
+
cron_name_ph: 'Görev adı',
|
|
354
|
+
cron_prompt_ph: 'Agent\u2019a verilecek görev…',
|
|
355
|
+
cron_add: '+ Görev Ekle',
|
|
356
|
+
cron_pr_5: 'Her 5 dakika',
|
|
357
|
+
cron_pr_15: 'Her 15 dakika',
|
|
358
|
+
cron_pr_30: 'Her 30 dakika',
|
|
359
|
+
cron_pr_hour: 'Her saat başı',
|
|
360
|
+
cron_pr_day9: 'Her gün 09:00',
|
|
361
|
+
cron_pr_wd21: 'Hafta içi 21:00',
|
|
362
|
+
cron_pr_custom: 'Özel cron…',
|
|
363
|
+
// tarihçe/limit/güvenlik panelleri (dinamik)
|
|
364
|
+
notes_h2: 'Oturum Notları',
|
|
365
|
+
history_h2: 'Oturum Geçmişi',
|
|
366
|
+
limits_h2: 'Limit Ayarları',
|
|
367
|
+
security_h2: 'Güvenlik',
|
|
368
|
+
st_open: 'Aç',
|
|
369
|
+
st_del: 'Sil',
|
|
370
|
+
sec_toggle: 'Tehlikeli işlemlerde onay iste (silme, değiştirme, komut çalıştırma, mail gönderme…)',
|
|
371
|
+
sec_sub: 'Kapalıyken her şey serbesttir (varsayım). Açıkken ajan riskli bir araç çağırmadan önce onay ister: sohbette onay kartı + WhatsApp\u2019a mesaj gider.',
|
|
372
|
+
sec_note: 'Onay: sohbet kartındaki butonlar ya da /approve · Bu araç için bir daha sorma: /approve always · Reddet: /deny',
|
|
373
|
+
sec_always_h2: 'Bir Daha Sorulmayan Araçlar',
|
|
374
|
+
sec_always_empty: 'Henüz "always" onaylı araç yok.',
|
|
375
|
+
sec_clear_always: 'Listeyi Temizle',
|
|
376
|
+
sec_on_toast: 'Onay kapısı AÇIK — riskli işlemlerde ajan sorar',
|
|
377
|
+
sec_off_toast: 'Onay kapısı KAPALI — her şey serbest',
|
|
378
|
+
sec_ok: 'Onayla',
|
|
379
|
+
sec_always: 'Her zaman',
|
|
380
|
+
sec_no: 'Reddet',
|
|
381
|
+
sec_ok_done: 'Onaylandı — devam ediyor',
|
|
382
|
+
sec_always_done: 'Onaylandı — bu araç için tekrar sorulmayacak',
|
|
383
|
+
sec_no_done: 'Reddedildi — ajan bu işlemi yapmadı',
|
|
384
|
+
// dinamik panel metinleri
|
|
385
|
+
prov_h2: 'Provider',
|
|
386
|
+
prov_sub: 'Beast config.yaml\u2019dan gelen modeller — aktif olanı seç',
|
|
387
|
+
notes_sub: 'Uzun konuşmaların özeti — input token tasarrufu için. Silersen agent o oturumun geçmişini notlardan hatırlamaz.',
|
|
388
|
+
notes_clear_all: 'Tüm Notları Temizle',
|
|
389
|
+
notes_empty: 'Henüz not alınmış oturum yok — konuşmalar 14 mesaja ulaşınca özet çıkarılır.',
|
|
390
|
+
notes_del: 'Notu Sil',
|
|
391
|
+
notes_open: 'Sohbeti Aç',
|
|
392
|
+
history_sub: 'Son 100 sohbet — tıklayıp aç, gereksizleri sil.',
|
|
393
|
+
hist_stat_sess: 'Oturum',
|
|
394
|
+
hist_stat_msg: 'Mesaj',
|
|
395
|
+
hist_stat_7d: 'Son 7 gün',
|
|
396
|
+
hist_empty: 'Henüz oturum yok.',
|
|
397
|
+
limits_sub: 'Provider bazlı maksimum input (bağlam) token limiti. Boş = varsayılan bütçe kullanılır. Ör. Groq 8000 token destekliyorsa 8000 yaz — ajan geçmişi bu bütçeye göre sıkıştırır.',
|
|
398
|
+
limits_compr: 'Bağlam sıkıştırma — eski mesajlar öze dönüşünce diskten de düşer (önerilir)',
|
|
399
|
+
limits_save: 'Limitleri Kaydet',
|
|
400
|
+
limits_note: 'Varsayılan input bütçesi: 18.000 token. Limit set edilen provider\u2019da bu değer geçerli olur.',
|
|
401
|
+
limits_empty: 'Model yok — Provider sekmesinden ekle.',
|
|
402
|
+
security_sub: 'Ajanın tehlikeli işlemlerinde onay kapısı. <b>Default kapalıdır</b> — ajan kendi kararına göre çalışır.',
|
|
403
|
+
stt_lang_label: 'Sesli mesaj dili (Whisper STT) · Voice note language',
|
|
404
|
+
stt_lang_sub: 'WA\u2019dan ve 🎤 mikrofondan gelen sesler bu dilde yazıya çevrilir.',
|
|
405
|
+
deleted: 'Silindi',
|
|
406
|
+
st_thinking: 'düşünüyor…',
|
|
407
|
+
st_queued: 'kuyruğa eklendi — iş bitince gider',
|
|
408
|
+
st_transcribing: 'ses yazıya çevriliyor…',
|
|
409
|
+
st_listening: 'dinliyorum… (bitirmek için 🎤)',
|
|
410
|
+
st_screenshot: 'ekran görüntüsü alınıyor…',
|
|
411
|
+
// bot sistemi
|
|
412
|
+
bot_head: 'BOTLAR',
|
|
413
|
+
bot_add: 'Yeni Bot',
|
|
414
|
+
bot_overview: 'Tüm Botlar',
|
|
415
|
+
bot_overview_sub: 'Tüm botların toplam görünümü — bir bota tıklayıp yönet.',
|
|
416
|
+
bot_chats: 'SOHBET GEÇMİŞİ',
|
|
417
|
+
bot_tab_settings: 'Ayarlar',
|
|
418
|
+
bot_tab_memory: 'Memory',
|
|
419
|
+
bot_tab_log: 'Log',
|
|
420
|
+
bot_tab_plugin: 'Plugin',
|
|
421
|
+
bot_tab_watcher: 'Watcher',
|
|
422
|
+
bot_tab_stats: 'İstatistik',
|
|
423
|
+
bot_tab_notes: 'Notlar',
|
|
424
|
+
bot_name: 'Bot adı',
|
|
425
|
+
bot_icon: 'İkon',
|
|
426
|
+
bot_prompt: 'System prompt (kişilik/görev)',
|
|
427
|
+
bot_prompt_ph: 'Bu bot kim, ne yapar, nasıl konuşur…',
|
|
428
|
+
bot_tpl_hint: 'Hazır şablon seç ya da kendi promptunu yaz:',
|
|
429
|
+
bot_tpl_none: '— boş —',
|
|
430
|
+
bot_tpl_acc: 'Muhasebe Botu',
|
|
431
|
+
bot_tpl_sales: 'Satış Botu',
|
|
432
|
+
bot_tpl_support: 'Destek Botu',
|
|
433
|
+
bot_tpl_pm: 'Proje Yönetimi Botu',
|
|
434
|
+
bot_tpl_pick: 'Prompt şablonu seç (numara yaz):',
|
|
435
|
+
bot_tpl_applied: 'Şablon uygulandı — düzenleyip kaydet',
|
|
436
|
+
bot_numbers: 'Bağlı WhatsApp numaraları',
|
|
437
|
+
bot_no_numbers: 'Henüz numara bağlı değil.',
|
|
438
|
+
bot_num_name_ph: 'Kişi adı',
|
|
439
|
+
bot_num_name_req: 'İsim zorunlu',
|
|
440
|
+
bot_num_added: 'Numara whitelist\u2019e eklendi ve bu bota bağlandı',
|
|
441
|
+
bot_num_removed: 'Numara kaldırıldı',
|
|
442
|
+
bot_num_del: 'Bu numarayı whitelist\u2019ten çıkar',
|
|
443
|
+
bot_see: 'Görebilir (diğer botlar)',
|
|
444
|
+
bot_no_other: 'Başka bot yok.',
|
|
445
|
+
bot_perm: 'Yetki seviyesi',
|
|
446
|
+
bot_perm_note: 'all tek başına tüm araçları açar (özel). Web / Okuma / Sohbet birden fazla seçilebilir — seçilenlerin araçları birleşir.',
|
|
447
|
+
bot_skills: 'Skill erişimi',
|
|
448
|
+
bot_model: 'Model',
|
|
449
|
+
bot_model_global: 'Global seçim (üstteki picker)',
|
|
450
|
+
bot_model_note: 'Bu bot için farklı model seçebilirsin; boş bırakırsan üstteki global model kullanılır. Seçim sadece bu bota bağlı sohbetlerde geçerli.',
|
|
451
|
+
bot_browser: 'Tarayıcı ayarları',
|
|
452
|
+
bot_ext_browser: 'Dış tarayıcı yetkisi (kullanıcı isterse)',
|
|
453
|
+
bot_def_browser: 'Varsayılan tarayıcı',
|
|
454
|
+
bot_br_dahili: 'Dahili (panel)',
|
|
455
|
+
bot_br_dis: 'Dış tarayıcı',
|
|
456
|
+
bot_ext_cmd: 'Dış tarayıcı komutu',
|
|
457
|
+
bot_browser_note: 'Dahili tarayıcı tüm botlarda varsayılan açıktır; dış tarayıcı yalnız yetkisi olan botlarda kullanılır.',
|
|
458
|
+
bot_save: 'Kaydet',
|
|
459
|
+
bot_save_fail: 'Kaydedilemedi',
|
|
460
|
+
bot_saved: 'Kaydedildi',
|
|
461
|
+
bot_delete: 'Botu Sil',
|
|
462
|
+
bot_confirm_del: '"${n}" silinsin mi? Bağlı numaralar botsuz duruma düşer (Beast\u2019e yönlendirilir).',
|
|
463
|
+
bot_deleted: 'Bot silindi',
|
|
464
|
+
bot_deleted_restart: 'Bot silindi — sistem temiz yeniden başlatılıyor…',
|
|
465
|
+
bot_max_toast: 'En fazla ${n} bot olabilir (1 admin + 4 müşteri)',
|
|
466
|
+
bot_name_ph: 'Bot adı (harfle başlar, örn: Muhasebe Botu)',
|
|
467
|
+
bot_icon_ph: 'İkon seç (emoji kopyala-yapıştır)',
|
|
468
|
+
bot_created: 'Bot oluşturuldu:',
|
|
469
|
+
bot_mem_sub: 'Bu botun KENDİ hafızası — SOUL (kişilik) · USER (kullanıcı bilgisi) · MEMORY (hafıza kayıtları). Diğer botlardan tamamen izoledir.',
|
|
470
|
+
bot_mem_admin_sub: 'Beast (admin) botun hafızası = GLOBAL Beast hafızası. Sohbetlerde user_write ile USER.md\u2019ye, memory_write ile MEMORY.md\u2019ye kaydettiği her şey burada görünür.',
|
|
471
|
+
bot_mem_ph: 'Bu bota özel kalıcı notlar…',
|
|
472
|
+
bot_mem_saved: 'Bot hafızası kaydedildi',
|
|
473
|
+
bot_log_sub: 'Yetki/ayar değişiklikleri loglanır (yalnız admin görebilir).',
|
|
474
|
+
bot_plugin_sub: 'Aktif plugin\u2019leri seç (değişiklik loglanır).',
|
|
475
|
+
bot_watcher_sub: 'Bu botun oturumlarına bağlı izleyiciler.',
|
|
476
|
+
bot_no_watchers: 'Bu bota ait izleyici yok.',
|
|
477
|
+
bot_stats_sub: 'Bu botun kullanım özeti.',
|
|
478
|
+
bot_stat_numbers: 'Numara',
|
|
479
|
+
bot_stat_sessions: 'Sohbet',
|
|
480
|
+
bot_stat_msgs: 'Mesaj',
|
|
481
|
+
bot_stat_last: 'Son aktivite',
|
|
482
|
+
bot_total: 'TOPLAM',
|
|
483
|
+
bot_no_chats: 'Bu botun henüz sohbeti yok.',
|
|
484
|
+
bot_msg_user: 'KULLANICI',
|
|
485
|
+
bot_bind_title: 'Bu numarayı hangi bot karşılasın?',
|
|
486
|
+
bot_sel_empty: '— bot seçme —',
|
|
487
|
+
bot_code_title: 'Botun benzersiz 5 haneli kodu — botlar arası DM adresi',
|
|
488
|
+
bot_switch_hint: 'Tıkla: bu botta çalış · ⚙: yönet',
|
|
489
|
+
bot_switched: 'bottasın — sohbetler bu botun kimliğiyle gider',
|
|
490
|
+
bot_manage: 'Botu yönet',
|
|
491
|
+
bot_paused: 'duraklatılmış',
|
|
492
|
+
bot_add_note: 'Kaydettikten sonra Ayarlar sekmesinden numara bağlayabilir, yetkileri düzenleyebilirsin.',
|
|
493
|
+
bot_create: 'Botu Oluştur',
|
|
494
|
+
bot_cancel: 'Vazgeç',
|
|
495
|
+
bot_name_req: 'Bot adı zorunlu',
|
|
496
|
+
bot_name_letter: 'Bot adı HARF ile başlamalı — ilk karakter harf olmalı',
|
|
497
|
+
p_preset: 'Hazır sağlayıcı (endpoint otomatik)',
|
|
498
|
+
p_preset_custom: '— elle gir —',
|
|
499
|
+
p_preset_hint: 'Hazır seçersen adres otomatik dolar; sadece API key girip modelleri çek.',
|
|
500
|
+
p_zen_btn: 'Tek Tıkla Model Ekle (OpenCode Zen Free)',
|
|
501
|
+
p_zen_hint: 'Tek tıkla Zen free modelleri kurulur. Anahtar yoksa OpenCode CLI kurulur ve giriş penceresi açılır — giriş bitince modeller otomatik gelir.',
|
|
502
|
+
p_zen_busy: 'Kuruluyor — OpenCode Zen… (giriş penceresini tamamla)',
|
|
503
|
+
p_zen_ok: '${n} free model yüklendi',
|
|
504
|
+
p_zen_skipped: '${n} model yanıt vermedi, listeye alınmadı',
|
|
505
|
+
p_zen_fail: 'Model kurulumu başarısız',
|
|
506
|
+
net_offline: 'İnternet bağlantısı yok — mesajların kuyruğa alındı',
|
|
507
|
+
net_online: 'Bağlantı geri geldi',
|
|
508
|
+
net_pill_offline: 'İnternet yok — ${n} mesaj kuyrukta',
|
|
509
|
+
net_pill_online: 'İnternet yok',
|
|
510
|
+
q_pending: 'kuyrukta — internet bekleniyor',
|
|
511
|
+
q_flushed: '${n} kuyruktaki mesaj gönderiliyor',
|
|
512
|
+
bot_num_ro_hint: 'Numara ekleme/kişi adı Ayarlar → Entegrasyonlar (WhatsApp izin listesi) üzerinden yapılır; burada yalnızca bağlı numaralar görünür.',
|
|
513
|
+
tipStore: 'Skills Store',
|
|
514
|
+
tipGithub: 'GitHub Trending — repoları favorile, chate at, ajana araştır',
|
|
515
|
+
tipIde: 'IDE Modu — dosyalar + chat + preview',
|
|
516
|
+
tipCodeHide: 'Editörü kapat',
|
|
517
|
+
tipCodeShow: 'Editörü göster',
|
|
518
|
+
ide_files: 'DOSYALAR',
|
|
519
|
+
ide_pick: 'Klasör seç',
|
|
520
|
+
ide_refresh: 'Yenile',
|
|
521
|
+
ide_preview_t: '\u00D6nizleme',
|
|
522
|
+
ide_tasks: 'G\u00F6rev listesi + geri al',
|
|
523
|
+
ide_preview: '▶ Preview',
|
|
524
|
+
ide_saved: 'Kaydedildi — preview\u2019ı yenile',
|
|
525
|
+
bc_ph: 'Beast Code mesajı yaz — Enter ile gönder…',
|
|
526
|
+
bc_new: 'Yeni oturum',
|
|
527
|
+
bc_clear: 'Çıktıyı temizle',
|
|
528
|
+
bc_stop: 'Çalışan mesajı durdur',
|
|
529
|
+
store_title: 'SKILLS STORE',
|
|
530
|
+
store_tab_trending: 'Trending',
|
|
531
|
+
store_tab_stars: 'Stars',
|
|
532
|
+
store_tab_upload: 'Upload',
|
|
533
|
+
store_sub_upload: 'Skill klasörünü yükle (SKILL.md zorunlu). Tutulursa trende girer, uzun süre popüler kalırsa Stars\u2019a yükselir.',
|
|
534
|
+
store_install: 'İste Kur',
|
|
535
|
+
store_installed: 'Kurulu ✓',
|
|
536
|
+
store_update: 'Güncelle',
|
|
537
|
+
store_installs: 'kurulum',
|
|
538
|
+
store_likes: 'beğeni',
|
|
539
|
+
store_empty_trending: 'Mağaza henüz boş — ilk skill\u2019i sen yükle!',
|
|
540
|
+
store_empty_stars: 'Henüz yıldız skill yok — uzun süre popüler olanlar buraya yükselir.',
|
|
541
|
+
store_offline: 'Topluluk indeksine ulaşılamadı (offline) — yerel kayıtlar gösteriliyor.',
|
|
542
|
+
store_id_label: 'Beast Kimliği',
|
|
543
|
+
store_user_label: 'Kullanıcı adı (benzersiz)',
|
|
544
|
+
store_user_ph: 'örn: batuhan',
|
|
545
|
+
store_user_change: 'Değiştir',
|
|
546
|
+
store_user_saved_note: 'Kullanıcı adı kaydedildi — her yüklemede otomatik kullanılır. Değiştirmek istersen "Değiştir"e bas.',
|
|
547
|
+
store_img_label: 'Kapak resmi (kare, zorunlu)',
|
|
548
|
+
store_img_pick: 'Resim Seç',
|
|
549
|
+
store_img_change: 'Resmi Değiştir',
|
|
550
|
+
store_img_auto: 'Seçtiğin resim otomatik kare kırpılır (256×256).',
|
|
551
|
+
store_img_required: 'Kapak resmi zorunlu — kare kırpılmış bir resim seç',
|
|
552
|
+
store_skill_folder: 'Skill klasörü',
|
|
553
|
+
store_pick_btn: 'Klasör Seç',
|
|
554
|
+
store_none_picked: 'Henüz klasör seçilmedi — SKILL.md içeren bir klasör seç.',
|
|
555
|
+
store_name_label: 'Skill adı',
|
|
556
|
+
store_desc_label: 'Açıklama',
|
|
557
|
+
store_tags_label: 'Etiketler (virgülle, en fazla 4)',
|
|
558
|
+
store_tags_ph: 'örn: finans, ocr, eğitim',
|
|
559
|
+
store_files_label: 'Dosyalar',
|
|
560
|
+
store_commit: 'Mağazaya Yükle',
|
|
561
|
+
store_commit_ok: 'Skill mağazaya yüklendi — Trending listesinde!',
|
|
562
|
+
store_identity_first: 'Önce kullanıcı adı ve avatar belirle, sonra yükle.',
|
|
563
|
+
store_id_save: 'Kaydet',
|
|
564
|
+
store_identity_saved: 'Kimlik kaydedildi',
|
|
565
|
+
store_pick_first: 'Önce SKILL.md içeren bir klasör seç',
|
|
566
|
+
store_mine: 'Yüklediklerin',
|
|
567
|
+
store_mine_empty: 'Henüz yükleme yapmadın.',
|
|
568
|
+
store_share: 'GitHub\u2019da Paylaş (JSON kopyala + issue aç)',
|
|
569
|
+
store_share_ok: 'Skill JSON\u2019ı kopyalandı — açılan issue\u2019ya yapıştır ve gönder',
|
|
570
|
+
store_remove: 'Kaldır',
|
|
571
|
+
store_removed: 'Yükleme kaldırıldı',
|
|
572
|
+
store_install_ok: 'Skill kuruldu — agent artık kullanabilir',
|
|
573
|
+
store_install_fail: 'Kurulum başarısız',
|
|
574
|
+
store_like_ok: 'Beğeni kaydedildi',
|
|
575
|
+
store_login_note: 'Beast Kimliği anonimdir; gerçek Beast Kodun asla paylaşılmaz.',
|
|
576
|
+
},
|
|
577
|
+
en: {
|
|
578
|
+
newChat: '+ New Chat',
|
|
579
|
+
emptyHint: 'Fast · light · capable. What shall we do?',
|
|
580
|
+
composerPh: 'Ask something or give a task… (Enter: send · Shift+Enter: newline · /: commands)',
|
|
581
|
+
tipModel: 'Choose model',
|
|
582
|
+
tipThink: 'Reasoning level',
|
|
583
|
+
tipPickCfg: 'Models shown in picker',
|
|
584
|
+
tipRail: 'Parallel Agents Console',
|
|
585
|
+
tipNet: 'Internet status',
|
|
586
|
+
tip_net_online: 'Internet: connected',
|
|
587
|
+
tip_net_offline: 'Internet: offline — work resumes automatically once the connection returns',
|
|
588
|
+
sess_drag: 'Drag to reorder',
|
|
589
|
+
tipWatch: 'Watchers',
|
|
590
|
+
tipCron: 'Cron Jobs',
|
|
591
|
+
tip_light: 'Light theme',
|
|
592
|
+
bc_label: 'Beast Code',
|
|
593
|
+
bc_copy: 'Copy',
|
|
594
|
+
bc_copied: 'Copied',
|
|
595
|
+
tipModelRefresh: 'Refresh models (all providers)',
|
|
596
|
+
mr_done: 'Models refreshed',
|
|
597
|
+
tipMic: 'Voice command — speak, it transcribes when you stop',
|
|
598
|
+
mic_listening: 'Listening… press the mic again to finish',
|
|
599
|
+
mic_transcribing: 'Transcribing (local Whisper)…',
|
|
600
|
+
mic_fail: 'Could not detect speech',
|
|
601
|
+
mic_denied: 'Microphone access denied',
|
|
602
|
+
tip_dark: 'Dark theme',
|
|
603
|
+
tipTerm: 'Terminal (PowerShell)',
|
|
604
|
+
tipTermG: 'Git Bash terminal',
|
|
605
|
+
tipTermC: 'CMD terminal',
|
|
606
|
+
tipBrowser: 'Built-in browser',
|
|
607
|
+
tipEye: 'Agent browser visible/hidden — searches are watched in the panel when open, run hidden when closed',
|
|
608
|
+
tipAttach: 'Attach file / image',
|
|
609
|
+
tipStop: 'Stop',
|
|
610
|
+
tipSend: 'Send',
|
|
611
|
+
tipMic: 'Speak — your voice becomes text',
|
|
612
|
+
tipGear: 'Settings',
|
|
613
|
+
tipThemeDark: 'Dark theme',
|
|
614
|
+
tipThemeLight: 'Light theme',
|
|
615
|
+
tipLang: 'Dil değiştir / Switch language',
|
|
616
|
+
labelParallel: 'Parallel Agents',
|
|
617
|
+
set_title: 'SETTINGS',
|
|
618
|
+
tab_lang: 'LANGUAGE',
|
|
619
|
+
lang_sub: 'Interface language — app UI and voice command language',
|
|
620
|
+
tab_provider: 'Provider',
|
|
621
|
+
tab_fallout: 'Fallout',
|
|
622
|
+
tab_memory: 'Memory',
|
|
623
|
+
tab_skills: 'Skills',
|
|
624
|
+
tab_notes: 'Session Notes',
|
|
625
|
+
tab_history: 'Session History',
|
|
626
|
+
tab_agents: 'Parallel Agents',
|
|
627
|
+
tab_tts: 'Voice Reply',
|
|
628
|
+
tab_email: 'E-mail',
|
|
629
|
+
tab_integrations: 'Integrations',
|
|
630
|
+
tab_websearch: 'Web Search',
|
|
631
|
+
tab_limits: 'Limits',
|
|
632
|
+
tab_security: 'Security',
|
|
633
|
+
tab_update: 'Update',
|
|
634
|
+
up_h2: 'Update',
|
|
635
|
+
up_sub: 'Versions come from GitHub Releases. Automatic check runs on startup and every 6 hours.',
|
|
636
|
+
up_current: 'Current version',
|
|
637
|
+
up_latest: 'Latest version',
|
|
638
|
+
up_status: 'Status',
|
|
639
|
+
up_checking: 'Checking…',
|
|
640
|
+
up_available: 'New version available',
|
|
641
|
+
up_uptodate: 'Up to date',
|
|
642
|
+
up_downloading: 'Downloading…',
|
|
643
|
+
up_downloaded: 'Downloaded — ready to install',
|
|
644
|
+
up_npm_mode: 'npm install — updates are checked automatically',
|
|
645
|
+
up_npm_note: 'The button activates when a new version is detected: the app closes, updates and relaunches by itself. Terminal command: beast update',
|
|
646
|
+
up_npm_started: 'Update started — the app will close, install the latest version and relaunch…',
|
|
647
|
+
up_dev_note: 'Development mode — updates are distributed via npm and GitHub Releases. For source code: git pull',
|
|
648
|
+
up_auto_check: 'Automatic version check (on startup + every 6 hours)',
|
|
649
|
+
up_auto_dl: 'Auto-download new versions (installed on quit)',
|
|
650
|
+
up_check_now: 'Check Now',
|
|
651
|
+
up_install_now: 'Restart & Install',
|
|
652
|
+
up_note: 'The app restarts itself after installing. You can also use the /update command from WhatsApp.',
|
|
653
|
+
tab_events: 'Event Center',
|
|
654
|
+
tab_cron: 'Cron',
|
|
655
|
+
tab_usage: 'Cost · Limit',
|
|
656
|
+
tab_logs: 'Logs',
|
|
657
|
+
tab_dash: 'Dashboard',
|
|
658
|
+
tab_limits: 'Limit',
|
|
659
|
+
logs_h2: 'Logs',
|
|
660
|
+
logs_sub: 'Application events — last 600 lines. File: %APPDATA%\\beast\\logs',
|
|
661
|
+
logs_clear: 'Clear Logs',
|
|
662
|
+
logs_refresh: 'Refresh',
|
|
663
|
+
logs_empty: 'No logs yet.',
|
|
664
|
+
dash_h2: 'Session History',
|
|
665
|
+
dash_sub: 'All chat sessions — code, message count and time',
|
|
666
|
+
dash_stat_sessions: 'Sessions',
|
|
667
|
+
dash_stat_msgs: 'Messages',
|
|
668
|
+
dash_stat_today: 'Today',
|
|
669
|
+
dash_stat_last: 'Last activity',
|
|
670
|
+
dash_open: 'Open',
|
|
671
|
+
dash_empty: 'No sessions yet.',
|
|
672
|
+
lim_h2: 'Limit',
|
|
673
|
+
lim_sub: 'Provider-based maximum input (prompt) token limit — controls the context sent per model. 0 = unlimited.',
|
|
674
|
+
lim_enabled: 'Limit active',
|
|
675
|
+
lim_compress: 'Context compression (when over limit, older messages are dropped with a summary note)',
|
|
676
|
+
lim_default: 'Default limit (all providers, tokens)',
|
|
677
|
+
lim_prov_h2: 'Provider Limits',
|
|
678
|
+
lim_prov_sub: 'Limit per provider name — empty/0 uses the default',
|
|
679
|
+
lim_save: 'Save Limits',
|
|
680
|
+
lim_saved_toast: 'Limits saved',
|
|
681
|
+
lim_unlimited: 'unlimited',
|
|
682
|
+
tf_h2: 'TinyFish Search',
|
|
683
|
+
tf_sub: 'Free, fast web search API. If a key is set it is used in its own slot of the chain; without a key the engine is skipped automatically.',
|
|
684
|
+
tf_key_label: 'TinyFish API key (agent.tinyfish.ai/api-keys)',
|
|
685
|
+
tf_status_set: 'TinyFish active — saved key: ',
|
|
686
|
+
tf_status_unset: 'TinyFish off — the chain continues with the next engine.',
|
|
687
|
+
tf_empty_toast: 'Key empty — current key kept',
|
|
688
|
+
tf_saved_toast: 'TinyFish key saved',
|
|
689
|
+
tf_cleared_toast: 'TinyFish key deleted',
|
|
690
|
+
btn_close: 'Close',
|
|
691
|
+
em_pass_masked: 'Current password kept — type a new one to change it',
|
|
692
|
+
p_h2: 'Provider',
|
|
693
|
+
p_sub: 'Models from Beast config.yaml — pick the active one',
|
|
694
|
+
p_del_title: 'Remove model from list',
|
|
695
|
+
p_no_model: 'No models found — check %APPDATA%\\beast\\config.yaml and .env.',
|
|
696
|
+
p_deleted_h2: 'Deleted Models',
|
|
697
|
+
p_deleted_sub: '${n} model removed from list — you can restore it',
|
|
698
|
+
p_restore: 'Restore',
|
|
699
|
+
p_role_h2: 'Custom Role Models',
|
|
700
|
+
p_role_sub: 'Separate model for Vision, Terminal, Coding and Subagent; leave empty to use the main model',
|
|
701
|
+
p_role_main: '— Main model —',
|
|
702
|
+
p_custom_h2: 'Custom Provider',
|
|
703
|
+
p_custom_sub: 'Provide API URL + key, models are fetched automatically',
|
|
704
|
+
p_custom_del: 'Delete',
|
|
705
|
+
p_name_opt: 'Name (optional)',
|
|
706
|
+
p_api_url: 'API URL',
|
|
707
|
+
p_api_key: 'API Key',
|
|
708
|
+
p_fetch: 'Fetch Models',
|
|
709
|
+
p_models_manual: 'Enter models manually (one per line)',
|
|
710
|
+
p_save: 'Save',
|
|
711
|
+
p_model_toast: 'Model: ',
|
|
712
|
+
p_del_toast: 'Deleted: ',
|
|
713
|
+
p_restore_toast: 'Restored: ',
|
|
714
|
+
p_prov_del_toast: 'Provider deleted',
|
|
715
|
+
p_fetching: 'fetching…',
|
|
716
|
+
p_no_provider: 'No saved provider — add one from the Provider tab first.',
|
|
717
|
+
fo_h2: 'Fallout Chain',
|
|
718
|
+
fo_enabled: 'Fallout active',
|
|
719
|
+
fo_resume: 'Auto-resume unfinished work on startup',
|
|
720
|
+
fo_count: '${n}/10 slots',
|
|
721
|
+
fo_provider_ph: 'select provider…',
|
|
722
|
+
fo_save: 'Save',
|
|
723
|
+
fo_clear_title: 'Delete record',
|
|
724
|
+
fo_seq: 'Chain order',
|
|
725
|
+
fo_sub: 'Automatic recovery after a crash — if a model fails it moves to the next slot, state is written to disk and it resumes where it left off. You can add the same provider+model multiple times with different API keys.',
|
|
726
|
+
fo_note: 'Order matters: if #1 fails it goes to #2, if that fails to #3… Transitions appear in chat tagged with the <b>☢ FALLOUT</b> state label.',
|
|
727
|
+
mem_h2: 'Memory',
|
|
728
|
+
mem_sub: "The agent's persistent memory — goes straight into the system prompt, keep it short",
|
|
729
|
+
mem_soul: 'SOUL.md — agent personality (character, tone, behavior rules)',
|
|
730
|
+
mem_mem: 'MEMORY.md',
|
|
731
|
+
mem_user: 'USER.md',
|
|
732
|
+
mem_save: 'Save',
|
|
733
|
+
mem_saved: 'Memory saved — including SOUL.md',
|
|
734
|
+
sk_h2: 'Skills',
|
|
735
|
+
sk_sub: 'SKILL.md index — full text is read by the model',
|
|
736
|
+
sk_auto: 'Auto skills: the agent installs learned procedures without draft approval and updates existing skills when it finds an easier or better way',
|
|
737
|
+
up_npm_only: 'npm is the only distribution. The "Restart & update" button: closes the app, runs "beast update" in a VISIBLE cmd window (npm install output on screen), and reopens the app when done. Or manually: npm i -g beast-agent@latest',
|
|
738
|
+
sk_rules_h2: 'Persistent Rules',
|
|
739
|
+
sk_rules_sub: 'Instructions the agent follows in every chat — also addable via /rule on WA',
|
|
740
|
+
sk_no_rule: 'No rules yet.',
|
|
741
|
+
sk_rule_ph: 'New rule…',
|
|
742
|
+
sk_rule_add: 'Add',
|
|
743
|
+
sk_drafts_h2: 'Drafts',
|
|
744
|
+
sk_drafts_sub: 'Capability candidates auto-born from long tasks — accept to make a skill',
|
|
745
|
+
sk_no_draft: 'No drafts — auto-generated from long tasks where the agent uses 5+ tools.',
|
|
746
|
+
sk_dr_accept: 'Install as skill',
|
|
747
|
+
sk_dr_drop: 'Delete',
|
|
748
|
+
sk_open_folder: 'Open Skills folder',
|
|
749
|
+
tts_h2: 'Voice Reply (TTS)',
|
|
750
|
+
tts_sub: 'When on, WhatsApp replies are also sent as voice notes alongside text.',
|
|
751
|
+
tts_active: 'Active',
|
|
752
|
+
tts_save: 'Save TTS',
|
|
753
|
+
tts_note: 'Uses an OpenAI-compatible speech API (tts-1, tts-1-hd, etc.). Voices: alloy, echo, fable, onyx, nova, shimmer.',
|
|
754
|
+
tts_on: 'TTS on — replies also go as voice',
|
|
755
|
+
tts_off: 'TTS off',
|
|
756
|
+
em_h2: 'E-mail (Gmail)',
|
|
757
|
+
em_sub: 'IMAP/SMTP — create an "App Password" in your Gmail account and enter it here. The agent reads, summarizes and sends mail on your behalf.',
|
|
758
|
+
em_save: 'Save E-mail',
|
|
759
|
+
em_note: 'After saving you can give the agent commands like "summarize incoming mail", "send mail to X".',
|
|
760
|
+
em_saved: 'E-mail saved — the agent can now access mail',
|
|
761
|
+
it_h2: 'Integrations',
|
|
762
|
+
it_sub: 'Messaging bridges — incoming messages go to Beast, replies come back',
|
|
763
|
+
it_wa_sub: 'Private messages · groups (@mention) · slash commands (/help)',
|
|
764
|
+
it_connect: 'Connect via QR',
|
|
765
|
+
it_disconnect: 'Disconnect',
|
|
766
|
+
it_reset_pair: 'Reset pairing',
|
|
767
|
+
it_groups_on: 'Work in WhatsApp groups',
|
|
768
|
+
it_groups_mention: 'Reply only when @mentioned (tag the bot in the group)',
|
|
769
|
+
it_groups_seeall: 'In mention mode, read ALL group messages as context (still replies only when @mentioned)',
|
|
770
|
+
it_groups_all: 'Respond to every group message',
|
|
771
|
+
it_allow_label: 'Allowed numbers',
|
|
772
|
+
it_name_ph: 'Name (required)',
|
|
773
|
+
it_num_ph: 'Number 905xxxxxxxxx',
|
|
774
|
+
it_add: 'Add',
|
|
775
|
+
it_allow_note: 'Name + number required. Grant per-person permission (free/web/read/restricted) via the selector next to each.',
|
|
776
|
+
it_tg_sub: 'Works with a bot token — replies on Telegram to people in your allow list',
|
|
777
|
+
it_tg_token_ph: 'Bot token (e.g. 123456789:AAH…)',
|
|
778
|
+
it_tg_save: 'Save & Connect',
|
|
779
|
+
it_tg_connecting: 'Connecting to Telegram…',
|
|
780
|
+
it_tg_token_bad: 'Token could not be verified — check the token from @BotFather',
|
|
781
|
+
it_tg_id_ph: 'User ID or @username',
|
|
782
|
+
it_tg_note: 'Empty allow list = nobody gets a reply. Create a bot: @BotFather → /newbot. To learn your ID, message @userinfobot.',
|
|
783
|
+
it_dc_sub: 'Works with a bot token — replies on Discord to people in your allow list (mentions only in servers)',
|
|
784
|
+
it_dc_token_ph: 'Bot token (Developer Portal → Bot → Reset Token)',
|
|
785
|
+
it_dc_connecting: 'Connecting to Discord…',
|
|
786
|
+
it_dc_token_bad: 'Token could not be verified — check the token from the Developer Portal',
|
|
787
|
+
it_dc_id_ph: 'User ID or @username',
|
|
788
|
+
it_dc_note: 'Empty allow list = nobody gets a reply. Create a bot: discord.com/developers → New Application → Bot → Token. Turn ON "MESSAGE CONTENT INTENT". Invite via OAuth2 bot URL. To learn your ID: enable developer mode, right-click yourself → Copy ID.',
|
|
789
|
+
it_dc_vpn: 'Discord may be blocked on some networks — if it won\u2019t connect, turn on a VPN and retry.',
|
|
790
|
+
ev_h2: 'Event Center',
|
|
791
|
+
ev_sub: 'Live events without cron — open sources, the agent sets up subscriptions itself (event_subscribe). The triggered event drops into the relevant chat, the reply goes to WhatsApp.',
|
|
792
|
+
ev_on: 'Event center on',
|
|
793
|
+
ev_mail: 'Live e-mail tracking (IMAP IDLE) — uses the account from the E-mail tab',
|
|
794
|
+
ev_fs: 'Workspace file change monitoring',
|
|
795
|
+
ev_price_ph: 'Price symbol (e.g. PAXGUSDT)',
|
|
796
|
+
ev_save: 'Save',
|
|
797
|
+
ev_price_sub: 'empty symbol = price feed off (Binance miniTicker)',
|
|
798
|
+
ev_token_copy: 'copy token',
|
|
799
|
+
ev_subs_h3: 'Active Subscriptions',
|
|
800
|
+
ev_no_sub: 'No subscriptions — tell the agent "notify me on mail" or "shout if price drops below X" and it sets one up.',
|
|
801
|
+
ev_on_toast: 'Event center on',
|
|
802
|
+
ev_off_toast: 'Event center off',
|
|
803
|
+
us_h2: 'Costs',
|
|
804
|
+
us_sub: 'Collected from real API usage. For USD estimate add price_in / price_out (per 1M tokens) per provider in config.yaml.',
|
|
805
|
+
us_today_calls: 'Today calls',
|
|
806
|
+
us_today_tokens: 'Today tokens',
|
|
807
|
+
us_today_cost: "Today cost",
|
|
808
|
+
us_month_cost: 'This month cost',
|
|
809
|
+
us_models_today: 'Models — today',
|
|
810
|
+
us_models_month: 'Models — this month',
|
|
811
|
+
us_no_records: 'No records this period',
|
|
812
|
+
us_reset: 'Reset counters',
|
|
813
|
+
us_backup_h2: 'Backup',
|
|
814
|
+
us_backup_sub: 'All Beast data (settings, API keys, sessions, memory, WhatsApp mapping) is backed up AES-256 ENCRYPTED and signed with the Beast Code: Desktop\\Beast-Backups. Only this machine can restore it.',
|
|
815
|
+
us_backup_now: 'Backup now',
|
|
816
|
+
us_where_h2: 'Where I Left Off',
|
|
817
|
+
us_where_sub: 'On startup, a summary of the last session state + unfinished todos drops into the chat.',
|
|
818
|
+
us_where_on: 'Show "where I left off" summary on startup',
|
|
819
|
+
us_no_records: 'No records this period',
|
|
820
|
+
us_reset_toast: 'Usage counters reset',
|
|
821
|
+
us_backup_ing: 'Backing up…',
|
|
822
|
+
us_backup_ok: 'Encrypted backup saved: Desktop\\Beast-Backups',
|
|
823
|
+
us_backup_err: 'Error: ',
|
|
824
|
+
us_backup_restore: 'Restore from Backup',
|
|
825
|
+
us_restore_ing: 'Restoring…',
|
|
826
|
+
us_restore_ok: 'Restore complete — restart the app to apply',
|
|
827
|
+
us_where_on_toast: 'Startup summary on',
|
|
828
|
+
us_where_off_toast: 'Startup summary off',
|
|
829
|
+
ws_calls: 'calls',
|
|
830
|
+
ws_token: 'tokens',
|
|
831
|
+
td_hide: 'Hide todo list (reappears on next update)',
|
|
832
|
+
ws_h2: 'Web Search',
|
|
833
|
+
ws_sub: 'Search chain: 1) built-in browser (direct Google) 2) Obscura (stealth headless → DuckDuckGo) 3) TinyFish (if a key is set) 4) python multi-engine (ddgs / DDG+Bing+Mojeek) — automatic. Order and on/off are editable below.',
|
|
834
|
+
oc_h2: 'Obscura (Stealth Browser)',
|
|
835
|
+
oc_sub: 'Rust-based stealth headless browser (anti-detect + V8, no Chromium). It ships inside the package and is extracted to %APPDATA%\\beast\\obscura at first launch; it searches DuckDuckGo past bot protection.',
|
|
836
|
+
oc_status_ok: 'Obscura is installed and ready.',
|
|
837
|
+
oc_status_missing: 'Obscura ships inside the package — it is extracted automatically at first launch.',
|
|
838
|
+
oc_install: 'Install / Update',
|
|
839
|
+
oc_install_running: 'Installing…',
|
|
840
|
+
oc_installing: 'Downloading… (≈74 MB, may take a few minutes)',
|
|
841
|
+
oc_phase_prep: 'Preparing',
|
|
842
|
+
oc_phase_download: 'Downloading',
|
|
843
|
+
oc_phase_extract: 'Extracting',
|
|
844
|
+
oc_phase_verify: 'Verifying',
|
|
845
|
+
oc_phase_done: 'Done',
|
|
846
|
+
oc_bg_note: 'Installation continues in the background — progress stays here even if you leave the settings.',
|
|
847
|
+
oc_installed_toast: 'Obscura installed',
|
|
848
|
+
oc_install_fail: 'Install failed: ',
|
|
849
|
+
oc_enabled: 'Obscura active in the search chain',
|
|
850
|
+
oc_on_toast: 'Obscura enabled',
|
|
851
|
+
oc_off_toast: 'Obscura disabled',
|
|
852
|
+
so_h2: 'Search Order',
|
|
853
|
+
so_sub: 'Engines are tried in this order; an empty engine is skipped and the next one takes over. Use ↑↓ to reorder, checkbox to enable/disable.',
|
|
854
|
+
so_engine_browser: 'Built-in Browser (Google)',
|
|
855
|
+
so_engine_obscura: 'Obscura (Stealth → DuckDuckGo)',
|
|
856
|
+
so_engine_tinyfish: 'TinyFish API (needs a key)',
|
|
857
|
+
so_engine_python: 'Python Multi-Engine (ddgs/DDG/Bing/Mojeek)',
|
|
858
|
+
so_saved_toast: 'Search order saved',
|
|
859
|
+
ws_save: 'Save',
|
|
860
|
+
ws_clear: 'Delete Key',
|
|
861
|
+
ws_note: 'The key is kept masked; saving a new one replaces the old. Saving empty keeps the current key.',
|
|
862
|
+
ws_empty_toast: 'Key empty — current key kept',
|
|
863
|
+
ws_fail_toast: 'Could not save',
|
|
864
|
+
ag_h2: 'Parallel Agents',
|
|
865
|
+
ag_sub: 'Background tasks delegated by the CEO — live monitoring',
|
|
866
|
+
ag_ceo_label: 'CEO mode — the talking agent does no work, only gives orders',
|
|
867
|
+
ag_ceo_on: 'CEO mode on',
|
|
868
|
+
ag_ceo_off: 'CEO mode off',
|
|
869
|
+
ag_no_jobs: 'No delegated tasks yet. In CEO mode the agent drops concrete work here.',
|
|
870
|
+
ag_working: 'running',
|
|
871
|
+
ag_records: 'records',
|
|
872
|
+
ag_st_running: 'running',
|
|
873
|
+
ag_st_queued: 'queued',
|
|
874
|
+
ag_st_done: 'done',
|
|
875
|
+
ag_st_error: 'error',
|
|
876
|
+
ag_st_aborted: 'aborted',
|
|
877
|
+
ag_cancel: 'Cancel',
|
|
878
|
+
ag_delete: 'Delete chat and record',
|
|
879
|
+
ag_empty: 'No background tasks yet.\nIn CEO mode the agent drops the orders it gave here.',
|
|
880
|
+
ag_tool_start: 'tool: ',
|
|
881
|
+
ag_detail: 'Log',
|
|
882
|
+
ag_show: 'show',
|
|
883
|
+
ag_hide: 'hide',
|
|
884
|
+
ag_live: 'Live log',
|
|
885
|
+
ag_log_empty: '(empty)',
|
|
886
|
+
ag_detail_err: '(could not get details)',
|
|
887
|
+
cr_empty: 'No tasks yet — add from above.',
|
|
888
|
+
cr_dot_on: 'active — click: fill the form',
|
|
889
|
+
cr_dot_off: 'off — click: fill the form',
|
|
890
|
+
cr_next: 'next: ',
|
|
891
|
+
cr_last: ' · last: ',
|
|
892
|
+
cr_run: 'Run now',
|
|
893
|
+
cr_pause: 'Pause',
|
|
894
|
+
cr_start: 'Start',
|
|
895
|
+
cr_del: 'Delete',
|
|
896
|
+
cr_modal_empty: 'No saved cron tasks — add from Settings → Cron tab.',
|
|
897
|
+
cr_ran: 'Started',
|
|
898
|
+
cr_toggle_pause: 'Pause',
|
|
899
|
+
w_empty: 'No saved watchers — add from the form above.',
|
|
900
|
+
wa_vazgec: 'Cancel',
|
|
901
|
+
wa_kaydet: 'save',
|
|
902
|
+
wa_updated: 'Updated',
|
|
903
|
+
wa_isim_ph: 'name',
|
|
904
|
+
wa_numara_ph: 'number',
|
|
905
|
+
wa_no_name_title: 'This person will NOT get replies — click to give a name',
|
|
906
|
+
wa_edit_title: 'Click: edit name/number',
|
|
907
|
+
wa_perm_title: 'Permission level — sets this person\u2019s agent access',
|
|
908
|
+
wa_owner_title_on: 'This person is the OWNER of BEAST — click to transfer to someone else',
|
|
909
|
+
wa_owner_title_off: 'Click: make this person the OWNER (only one allowed)',
|
|
910
|
+
wa_owner_on: '👑 owner',
|
|
911
|
+
wa_owner_off: 'make owner',
|
|
912
|
+
wa_perm_all: 'free',
|
|
913
|
+
wa_perm_read: 'read',
|
|
914
|
+
wa_perm_chat: 'restricted',
|
|
915
|
+
wa_queue_info: 'Message queue: ${n} pending',
|
|
916
|
+
wa_queue_failed: '${n} could not be sent',
|
|
917
|
+
wa_queue_empty_ok: 'Queue clear',
|
|
918
|
+
cr_empty: 'Henüz görev yok — yukarıdan ekle.',
|
|
919
|
+
cr_dot_on: 'aktif — tıkla: forma doldur',
|
|
920
|
+
cr_dot_off: 'kapalı — tıkla: forma doldur',
|
|
921
|
+
cr_next: 'sıradaki: ',
|
|
922
|
+
cr_last: ' · son: ',
|
|
923
|
+
cr_run: 'Şimdi çalıştır',
|
|
924
|
+
cr_pause: 'Durdur',
|
|
925
|
+
cr_start: 'Başlat',
|
|
926
|
+
cr_del: 'Sil',
|
|
927
|
+
cr_modal_empty: 'Kayıtlı cron görev yok — Ayarlar → Cron sekmesinden ekle.',
|
|
928
|
+
cr_ran: 'Çalıştırıldı',
|
|
929
|
+
cr_toggle_pause: 'Duraklat',
|
|
930
|
+
w_empty: 'Kayıtlı izleyici yok — yukarıdaki formla ekle.',
|
|
931
|
+
wa_vazgec: 'Vazgeç',
|
|
932
|
+
wa_kaydet: 'kaydet',
|
|
933
|
+
wa_updated: 'Güncellendi',
|
|
934
|
+
wa_isim_ph: 'isim',
|
|
935
|
+
wa_numara_ph: 'numara',
|
|
936
|
+
wa_no_name_title: 'Bu kişiye cevap VERİLMEYECEK — tıklayıp isim ver',
|
|
937
|
+
wa_edit_title: 'Tıkla: isim/numara düzenle',
|
|
938
|
+
wa_perm_title: 'Yetki seviyesi — bu kişinin agent erişimini belirler',
|
|
939
|
+
wa_owner_title_on: 'Bu kişi BEAST\u2019İN SAHİBİ — tıklayıp başka kişiye devret',
|
|
940
|
+
wa_owner_title_off: 'Tıkla: bu kişiyi SAHİP yap (yalnız biri olabilir)',
|
|
941
|
+
wa_owner_on: '👑 sahip',
|
|
942
|
+
wa_owner_off: 'sahip yap',
|
|
943
|
+
wa_perm_all: 'serbest',
|
|
944
|
+
wa_perm_read: 'okuma',
|
|
945
|
+
wa_perm_chat: 'kısıtlı',
|
|
946
|
+
wa_queue_info: 'Mesaj kuyruğu: ${n} bekleyen',
|
|
947
|
+
wa_queue_failed: '${n} gönderilemedi',
|
|
948
|
+
wa_queue_empty_ok: 'Kuyruk temiz',
|
|
949
|
+
us_reset_toast: 'Usage counters reset',
|
|
950
|
+
us_backup_ok: 'Backup taken: Desktop\\Beast-Backups',
|
|
951
|
+
us_where_on_toast: 'Startup summary on',
|
|
952
|
+
us_where_off_toast: 'Startup summary off',
|
|
953
|
+
ws_h2: 'Web Search',
|
|
954
|
+
oc_status_ok: 'Obscura is installed and ready.',
|
|
955
|
+
oc_status_missing: 'Obscura ships inside the package — it is extracted automatically at first launch.',
|
|
956
|
+
ws_save: 'Save',
|
|
957
|
+
ws_clear: 'Delete Key',
|
|
958
|
+
ws_key_note: 'Key is kept masked; saving a new one replaces the old. Save empty: existing key kept.',
|
|
959
|
+
ws_empty: 'Key empty — existing key kept',
|
|
960
|
+
term_clear: 'Clear',
|
|
961
|
+
term_ph: 'type a command, press Enter…',
|
|
962
|
+
term_stop: 'Stop running command',
|
|
963
|
+
bb_ph: 'type an address or search…',
|
|
964
|
+
tip_bb_back: 'Back',
|
|
965
|
+
tip_bb_phone: 'Phone mode — mobile / web version',
|
|
966
|
+
tip_bb_fwd: 'Forward',
|
|
967
|
+
tip_bb_reload: 'Reload',
|
|
968
|
+
tip_bb_shot: 'Add screenshot to chat',
|
|
969
|
+
tip_bb_open: 'Open in browser',
|
|
970
|
+
tip_bb_close: 'Close',
|
|
971
|
+
mini_watch: 'Watchers',
|
|
972
|
+
mini_cron: 'Cron Jobs',
|
|
973
|
+
cron_h2: 'Cron Jobs',
|
|
974
|
+
cron_sub: 'Scheduled tasks — the agent runs automatically when due',
|
|
975
|
+
cron_name_ph: 'Job name',
|
|
976
|
+
cron_prompt_ph: 'Task to give the agent…',
|
|
977
|
+
cron_add: '+ Add Job',
|
|
978
|
+
cron_pr_5: 'Every 5 minutes',
|
|
979
|
+
cron_pr_15: 'Every 15 minutes',
|
|
980
|
+
cron_pr_30: 'Every 30 minutes',
|
|
981
|
+
cron_pr_hour: 'Every hour',
|
|
982
|
+
cron_pr_day9: 'Every day 09:00',
|
|
983
|
+
cron_pr_wd21: 'Weekdays 21:00',
|
|
984
|
+
cron_pr_custom: 'Custom cron…',
|
|
985
|
+
notes_h2: 'Session Notes',
|
|
986
|
+
history_h2: 'Session History',
|
|
987
|
+
limits_h2: 'Limits',
|
|
988
|
+
security_h2: 'Security',
|
|
989
|
+
st_open: 'Open',
|
|
990
|
+
st_del: 'Delete',
|
|
991
|
+
sec_toggle: 'Ask approval for dangerous actions (delete, modify, run commands, send mail…)',
|
|
992
|
+
sec_sub: 'When off, everything is free (default). When on, the agent asks approval before a risky tool call: an approval card in chat + a WhatsApp message.',
|
|
993
|
+
sec_note: 'Approve: chat card buttons or /approve · Never ask again for this tool: /approve always · Deny: /deny',
|
|
994
|
+
sec_always_h2: 'Tools Never Asked Again',
|
|
995
|
+
sec_always_empty: 'No "always" approved tools yet.',
|
|
996
|
+
sec_clear_always: 'Clear List',
|
|
997
|
+
sec_on_toast: 'Approval gate ON — the agent asks before risky actions',
|
|
998
|
+
sec_off_toast: 'Approval gate OFF — everything free',
|
|
999
|
+
sec_ok: 'Approve',
|
|
1000
|
+
sec_always: 'Always',
|
|
1001
|
+
sec_no: 'Deny',
|
|
1002
|
+
sec_ok_done: 'Approved — continuing',
|
|
1003
|
+
sec_always_done: 'Approved — will not ask again for this tool',
|
|
1004
|
+
sec_no_done: 'Denied — the agent did not perform the action',
|
|
1005
|
+
prov_h2: 'Provider',
|
|
1006
|
+
prov_sub: 'Models from Beast config.yaml — pick the active one',
|
|
1007
|
+
notes_sub: 'Summaries of long conversations — saves input tokens. If deleted, the agent loses session recall.',
|
|
1008
|
+
notes_clear_all: 'Clear All Notes',
|
|
1009
|
+
notes_empty: 'No session notes yet — summaries are produced after 14 messages.',
|
|
1010
|
+
notes_del: 'Delete Note',
|
|
1011
|
+
notes_open: 'Open Chat',
|
|
1012
|
+
history_sub: 'Last 100 chats — click to open, delete what you do not need.',
|
|
1013
|
+
hist_stat_sess: 'Sessions',
|
|
1014
|
+
hist_stat_msg: 'Messages',
|
|
1015
|
+
hist_stat_7d: 'Last 7 days',
|
|
1016
|
+
hist_empty: 'No sessions yet.',
|
|
1017
|
+
limits_sub: 'Per-provider maximum input (context) token limit. Empty = default budget. E.g. if Groq supports 8000 tokens, write 8000 — history is compressed to fit.',
|
|
1018
|
+
limits_compr: 'Context compression — summarized old messages are also dropped from disk (recommended)',
|
|
1019
|
+
limits_save: 'Save Limits',
|
|
1020
|
+
limits_note: 'Default input budget: 18,000 tokens. A set limit overrides it for that provider.',
|
|
1021
|
+
limits_empty: 'No models — add one in the Provider tab.',
|
|
1022
|
+
security_sub: 'Approval gate for the agent\u2019s dangerous actions. <b>Off by default</b> — the agent runs on its own judgment.',
|
|
1023
|
+
stt_lang_label: 'Voice note language (Whisper STT) · Sesli mesaj dili',
|
|
1024
|
+
stt_lang_sub: 'Voice from WhatsApp and the 🎤 mic is transcribed in this language.',
|
|
1025
|
+
deleted: 'Deleted',
|
|
1026
|
+
st_thinking: 'thinking…',
|
|
1027
|
+
st_queued: 'queued — sent when current task ends',
|
|
1028
|
+
st_transcribing: 'transcribing voice…',
|
|
1029
|
+
st_listening: 'listening… (tap 🎤 to finish)',
|
|
1030
|
+
st_screenshot: 'capturing screen…',
|
|
1031
|
+
// bot sistemi
|
|
1032
|
+
bot_head: 'BOTS',
|
|
1033
|
+
bot_add: 'New Bot',
|
|
1034
|
+
bot_overview: 'All Bots',
|
|
1035
|
+
bot_overview_sub: 'Overview of all bots — click one to manage.',
|
|
1036
|
+
bot_chats: 'CHAT HISTORY',
|
|
1037
|
+
bot_tab_settings: 'Settings',
|
|
1038
|
+
bot_tab_memory: 'Memory',
|
|
1039
|
+
bot_tab_log: 'Log',
|
|
1040
|
+
bot_tab_plugin: 'Plugin',
|
|
1041
|
+
bot_tab_watcher: 'Watcher',
|
|
1042
|
+
bot_tab_stats: 'Stats',
|
|
1043
|
+
bot_tab_notes: 'Notes',
|
|
1044
|
+
bot_name: 'Bot name',
|
|
1045
|
+
bot_icon: 'Icon',
|
|
1046
|
+
bot_prompt: 'System prompt (personality/task)',
|
|
1047
|
+
bot_prompt_ph: 'Who is this bot, what does it do, how does it talk…',
|
|
1048
|
+
bot_tpl_hint: 'Pick a template or write your own prompt:',
|
|
1049
|
+
bot_tpl_none: '— empty —',
|
|
1050
|
+
bot_tpl_acc: 'Accounting Bot',
|
|
1051
|
+
bot_tpl_sales: 'Sales Bot',
|
|
1052
|
+
bot_tpl_support: 'Support Bot',
|
|
1053
|
+
bot_tpl_pm: 'Project Management Bot',
|
|
1054
|
+
bot_tpl_pick: 'Pick a prompt template (type number):',
|
|
1055
|
+
bot_tpl_applied: 'Template applied — edit and save',
|
|
1056
|
+
bot_numbers: 'Linked WhatsApp numbers',
|
|
1057
|
+
bot_no_numbers: 'No numbers linked yet.',
|
|
1058
|
+
bot_num_name_ph: 'Person name',
|
|
1059
|
+
bot_num_name_req: 'Name is required',
|
|
1060
|
+
bot_num_added: 'Number added to whitelist and linked to this bot',
|
|
1061
|
+
bot_num_removed: 'Number removed',
|
|
1062
|
+
bot_num_del: 'Remove this number from the whitelist',
|
|
1063
|
+
bot_see: 'Can see (other bots)',
|
|
1064
|
+
bot_no_other: 'No other bots.',
|
|
1065
|
+
bot_perm: 'Permission level',
|
|
1066
|
+
bot_perm_note: 'all alone grants every tool (exclusive). Web / Read / Chat can be multi-selected — their tool sets are combined.',
|
|
1067
|
+
bot_skills: 'Skill access',
|
|
1068
|
+
bot_model: 'Model',
|
|
1069
|
+
bot_model_global: 'Global selection (main picker)',
|
|
1070
|
+
bot_model_note: 'You can pick a different model for this bot; leave empty to use the global selection. Applies only to chats bound to this bot.',
|
|
1071
|
+
bot_browser: 'Browser settings',
|
|
1072
|
+
bot_ext_browser: 'External browser permission (when user asks)',
|
|
1073
|
+
bot_def_browser: 'Default browser',
|
|
1074
|
+
bot_br_dahili: 'Built-in (panel)',
|
|
1075
|
+
bot_br_dis: 'External browser',
|
|
1076
|
+
bot_ext_cmd: 'External browser command',
|
|
1077
|
+
bot_browser_note: 'Built-in browser is on by default for all bots; the external browser is only used by permitted bots.',
|
|
1078
|
+
bot_save: 'Save',
|
|
1079
|
+
bot_save_fail: 'Could not save',
|
|
1080
|
+
bot_saved: 'Saved',
|
|
1081
|
+
bot_delete: 'Delete Bot',
|
|
1082
|
+
bot_confirm_del: 'Delete "${n}"? Linked numbers become botless (routed to Beast).',
|
|
1083
|
+
bot_deleted: 'Bot deleted',
|
|
1084
|
+
bot_deleted_restart: 'Bot deleted — system is restarting cleanly…',
|
|
1085
|
+
bot_max_toast: 'Maximum ${n} bots (1 admin + 4 customer)',
|
|
1086
|
+
bot_name_ph: 'Bot name (starts with a letter, e.g. Accounting Bot)',
|
|
1087
|
+
bot_icon_ph: 'Pick an icon (emoji)',
|
|
1088
|
+
bot_created: 'Bot created:',
|
|
1089
|
+
bot_mem_sub: 'This bot\u2019s OWN memory — SOUL (personality) · USER (user info) · MEMORY (memory entries). Fully isolated from other bots.',
|
|
1090
|
+
bot_mem_admin_sub: 'The Beast (admin) bot\u2019s memory = the GLOBAL Beast memory. Everything it saves via user_write (USER.md) or memory_write (MEMORY.md) in chats appears here.',
|
|
1091
|
+
bot_mem_ph: 'Persistent notes for this bot only…',
|
|
1092
|
+
bot_mem_saved: 'Bot memory saved',
|
|
1093
|
+
bot_log_sub: 'Permission/setting changes are logged (admin only).',
|
|
1094
|
+
bot_plugin_sub: 'Select active plugins (changes are logged).',
|
|
1095
|
+
bot_watcher_sub: 'Watchers linked to this bot\u2019s sessions.',
|
|
1096
|
+
bot_no_watchers: 'No watchers for this bot.',
|
|
1097
|
+
bot_stats_sub: 'Usage summary for this bot.',
|
|
1098
|
+
bot_stat_numbers: 'Numbers',
|
|
1099
|
+
bot_stat_sessions: 'Chats',
|
|
1100
|
+
bot_stat_msgs: 'Messages',
|
|
1101
|
+
bot_stat_last: 'Last activity',
|
|
1102
|
+
bot_total: 'TOTAL',
|
|
1103
|
+
bot_no_chats: 'This bot has no chats yet.',
|
|
1104
|
+
bot_msg_user: 'USER',
|
|
1105
|
+
bot_bind_title: 'Which bot should answer this number?',
|
|
1106
|
+
bot_sel_empty: '— no bot —',
|
|
1107
|
+
bot_code_title: "This bot's unique 5-digit code — the inter-bot DM address",
|
|
1108
|
+
bot_switch_hint: 'Click: work as this bot · ⚙: manage',
|
|
1109
|
+
bot_switched: 'active — chats run with this bot\u2019s identity',
|
|
1110
|
+
bot_manage: 'Manage bot',
|
|
1111
|
+
bot_paused: 'paused',
|
|
1112
|
+
bot_add_note: 'After creating, link numbers and tune permissions in the Settings tab.',
|
|
1113
|
+
bot_create: 'Create Bot',
|
|
1114
|
+
bot_cancel: 'Cancel',
|
|
1115
|
+
bot_name_req: 'Bot name is required',
|
|
1116
|
+
bot_name_letter: 'Bot name must START with a letter — first character must be a letter',
|
|
1117
|
+
p_preset: 'Built-in provider (endpoint auto-filled)',
|
|
1118
|
+
p_preset_custom: '— manual —',
|
|
1119
|
+
p_preset_hint: 'Pick a built-in provider to auto-fill the URL; just enter your API key and fetch models.',
|
|
1120
|
+
p_zen_btn: 'One-Click Add Models (OpenCode Zen Free)',
|
|
1121
|
+
p_zen_hint: 'Installs Zen free models in one click. If no key is found, the OpenCode CLI is installed and a login window opens — models arrive automatically once you finish.',
|
|
1122
|
+
p_zen_busy: 'Setting up — OpenCode Zen… (finish the login window)',
|
|
1123
|
+
p_zen_ok: '${n} free models installed',
|
|
1124
|
+
p_zen_skipped: '${n} models did not respond, excluded',
|
|
1125
|
+
p_zen_fail: 'Model setup failed',
|
|
1126
|
+
net_offline: 'No internet connection — messages queued',
|
|
1127
|
+
net_online: 'Connection restored',
|
|
1128
|
+
net_pill_offline: 'No internet — ${n} message(s) queued',
|
|
1129
|
+
net_pill_online: 'No internet',
|
|
1130
|
+
q_pending: 'queued — waiting for internet',
|
|
1131
|
+
q_flushed: '${n} queued message(s) being sent',
|
|
1132
|
+
bot_num_ro_hint: 'Add numbers / person names via Settings → Integrations (WhatsApp allow list); only linked numbers are shown here.',
|
|
1133
|
+
tipStore: 'Skills Store',
|
|
1134
|
+
tipGithub: 'GitHub Trending — favorite repos, send to chat, ask the agent',
|
|
1135
|
+
tipIde: 'IDE Mode — files + chat + preview',
|
|
1136
|
+
tipCodeHide: 'Hide editor',
|
|
1137
|
+
tipCodeShow: 'Show editor',
|
|
1138
|
+
ide_files: 'FILES',
|
|
1139
|
+
ide_pick: 'Choose folder',
|
|
1140
|
+
ide_refresh: 'Refresh',
|
|
1141
|
+
ide_preview_t: 'Preview',
|
|
1142
|
+
ide_tasks: 'Task list + undo',
|
|
1143
|
+
ide_preview: '▶ Preview',
|
|
1144
|
+
ide_saved: 'Saved — refresh the preview',
|
|
1145
|
+
bc_ph: 'Type a message for Beast Code — press Enter to send…',
|
|
1146
|
+
bc_new: 'New session',
|
|
1147
|
+
bc_clear: 'Clear output',
|
|
1148
|
+
bc_stop: 'Stop running message',
|
|
1149
|
+
store_title: 'SKILLS STORE',
|
|
1150
|
+
store_tab_trending: 'Trending',
|
|
1151
|
+
store_tab_stars: 'Stars',
|
|
1152
|
+
store_tab_upload: 'Upload',
|
|
1153
|
+
store_sub_upload: 'Upload a skill folder (SKILL.md required). If it catches on it enters Trending; long-term popularity promotes it to Stars.',
|
|
1154
|
+
store_install: 'Install',
|
|
1155
|
+
store_installed: 'Installed ✓',
|
|
1156
|
+
store_update: 'Update',
|
|
1157
|
+
store_installs: 'installs',
|
|
1158
|
+
store_likes: 'likes',
|
|
1159
|
+
store_empty_trending: 'The store is empty — be the first to upload a skill!',
|
|
1160
|
+
store_empty_stars: 'No star skills yet — long-time popular ones rise here.',
|
|
1161
|
+
store_offline: 'Community index unreachable (offline) — showing local entries.',
|
|
1162
|
+
store_id_label: 'Beast ID',
|
|
1163
|
+
store_user_label: 'Username (unique)',
|
|
1164
|
+
store_user_ph: 'e.g. batuhan',
|
|
1165
|
+
store_user_change: 'Change',
|
|
1166
|
+
store_user_saved_note: 'Username saved — used automatically on every upload. Press "Change" to edit it.',
|
|
1167
|
+
store_img_label: 'Cover image (square, required)',
|
|
1168
|
+
store_img_pick: 'Choose Image',
|
|
1169
|
+
store_img_change: 'Change Image',
|
|
1170
|
+
store_img_auto: 'The image you pick is auto-cropped to a square (256×256).',
|
|
1171
|
+
store_img_required: 'Cover image is required — pick one (auto square-cropped)',
|
|
1172
|
+
store_skill_folder: 'Skill folder',
|
|
1173
|
+
store_pick_btn: 'Choose Folder',
|
|
1174
|
+
store_none_picked: 'No folder picked yet — choose one containing SKILL.md.',
|
|
1175
|
+
store_name_label: 'Skill name',
|
|
1176
|
+
store_desc_label: 'Description',
|
|
1177
|
+
store_tags_label: 'Tags (comma separated, max 4)',
|
|
1178
|
+
store_tags_ph: 'e.g. finance, ocr, education',
|
|
1179
|
+
store_files_label: 'Files',
|
|
1180
|
+
store_commit: 'Publish to Store',
|
|
1181
|
+
store_commit_ok: 'Skill published — see it in Trending!',
|
|
1182
|
+
store_identity_first: 'Set a username and avatar first, then upload.',
|
|
1183
|
+
store_id_save: 'Save',
|
|
1184
|
+
store_identity_saved: 'Identity saved',
|
|
1185
|
+
store_pick_first: 'First pick a folder containing SKILL.md',
|
|
1186
|
+
store_mine: 'Your uploads',
|
|
1187
|
+
store_mine_empty: 'No uploads yet.',
|
|
1188
|
+
store_share: 'Share on GitHub (copy JSON + open issue)',
|
|
1189
|
+
store_share_ok: 'Skill JSON copied — paste it into the opened issue and submit',
|
|
1190
|
+
store_remove: 'Remove',
|
|
1191
|
+
store_removed: 'Upload removed',
|
|
1192
|
+
store_install_ok: 'Skill installed — the agent can use it now',
|
|
1193
|
+
store_install_fail: 'Install failed',
|
|
1194
|
+
store_like_ok: 'Like saved',
|
|
1195
|
+
store_login_note: 'Your Beast ID is anonymous; your real Beast Code is never shared.',
|
|
1196
|
+
},
|
|
1197
|
+
};
|
|
1198
|
+
|
|
1199
|
+
let lang = 'tr';
|
|
1200
|
+
try { lang = localStorage.getItem('beast.lang') === 'en' ? 'en' : 'tr'; } catch {}
|
|
1201
|
+
|
|
1202
|
+
function t(key) {
|
|
1203
|
+
return (DICT[lang] && DICT[lang][key]) || (DICT.tr && DICT.tr[key]) || key;
|
|
1204
|
+
}
|
|
1205
|
+
|
|
1206
|
+
function apply(root) {
|
|
1207
|
+
const r = root || document;
|
|
1208
|
+
r.querySelectorAll('[data-i18n]').forEach((el) => { el.textContent = t(el.dataset.i18n); });
|
|
1209
|
+
r.querySelectorAll('[data-i18n-ph]').forEach((el) => { el.placeholder = t(el.dataset.i18nPh); });
|
|
1210
|
+
r.querySelectorAll('[data-i18n-title]').forEach((el) => { el.title = t(el.dataset.i18nTitle); });
|
|
1211
|
+
}
|
|
1212
|
+
|
|
1213
|
+
function setLang(l) {
|
|
1214
|
+
lang = DICT[l] ? l : 'tr';
|
|
1215
|
+
try { localStorage.setItem('beast.lang', lang); } catch {}
|
|
1216
|
+
apply(document);
|
|
1217
|
+
try { document.dispatchEvent(new CustomEvent('langchange', { detail: { lang } })); } catch {}
|
|
1218
|
+
}
|
|
1219
|
+
|
|
1220
|
+
window.I18N = { t, apply, setLang, get lang() { return lang; } };
|
|
1221
|
+
apply(document);
|
|
1222
|
+
})();
|