beast-agent 1.9.0 → 2.0.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/LICENSE +21 -21
- package/README.md +130 -130
- package/bin/beast-agent.js +137 -137
- package/package.json +1 -1
- package/scripts/fix-electron.js +138 -138
- package/scripts/release.js +137 -131
- package/scripts/swap-electron.js +40 -40
- package/src/agent/agentdefs.js +122 -122
- package/src/agent/bots.js +580 -580
- package/src/agent/bus.js +389 -389
- package/src/agent/computeruse.js +200 -200
- package/src/agent/config.js +284 -284
- package/src/agent/discord.js +332 -332
- package/src/agent/engine.js +75 -10
- package/src/agent/kb.js +123 -123
- package/src/agent/llm.js +430 -430
- package/src/agent/logger.js +90 -90
- package/src/agent/mcp.js +427 -427
- package/src/agent/mem0.js +605 -605
- package/src/agent/memory.js +427 -427
- package/src/agent/mqueue.js +124 -124
- package/src/agent/pdf.js +20 -20
- package/src/agent/research.js +133 -133
- package/src/agent/scripts/news.py +113 -113
- package/src/agent/scripts/stealthsearch.py +30 -30
- package/src/agent/scripts/websearch.py +225 -225
- package/src/agent/searxng.js +325 -325
- package/src/agent/seeds/brainstorming/SKILL.md +90 -90
- package/src/agent/seeds/dispatching-parallel-agents/SKILL.md +120 -120
- package/src/agent/seeds/executing-plans/SKILL.md +60 -60
- package/src/agent/seeds/subagent-driven-development/SKILL.md +167 -167
- package/src/agent/seeds/systematic-debugging/SKILL.md +131 -131
- package/src/agent/seeds/test-driven-development/SKILL.md +152 -152
- package/src/agent/seeds/verification-before-completion/SKILL.md +63 -63
- package/src/agent/seeds/writing-plans/SKILL.md +162 -162
- package/src/agent/seeds/writing-skills/SKILL.md +229 -229
- package/src/agent/skills.js +652 -652
- package/src/agent/store.js +378 -378
- package/src/agent/telegram.js +155 -155
- package/src/agent/tokens.js +39 -39
- package/src/agent/usage.js +125 -125
- package/src/agent/watchers.js +312 -312
- package/src/agent/watext.js +80 -80
- package/src/agent/whatsapp.js +555 -555
- package/src/cron.js +255 -255
- package/src/main.js +348 -6
- package/src/preload.js +9 -0
- package/src/renderer/browserPreload.js +73 -73
- package/src/renderer/i18n.js +4 -0
- package/src/renderer/index.html +448 -409
- package/src/renderer/renderer.js +824 -41
- package/src/renderer/style.css +264 -5
package/src/renderer/style.css
CHANGED
|
@@ -180,7 +180,8 @@ body {
|
|
|
180
180
|
#langBtn,
|
|
181
181
|
#storeBtn,
|
|
182
182
|
#gitBtn,
|
|
183
|
-
#ideBtn
|
|
183
|
+
#ideBtn,
|
|
184
|
+
#studioBtn {
|
|
184
185
|
background: none;
|
|
185
186
|
border: none;
|
|
186
187
|
color: var(--muted);
|
|
@@ -198,13 +199,18 @@ body {
|
|
|
198
199
|
#langBtn:hover,
|
|
199
200
|
#storeBtn:hover,
|
|
200
201
|
#gitBtn:hover,
|
|
201
|
-
#ideBtn:hover
|
|
202
|
+
#ideBtn:hover,
|
|
203
|
+
#studioBtn:hover { background: var(--panel2); color: var(--text); }
|
|
202
204
|
#gearBtn:focus,
|
|
203
205
|
#themeBtn:focus,
|
|
204
206
|
#langBtn:focus,
|
|
205
207
|
#storeBtn:focus,
|
|
206
208
|
#gitBtn:focus,
|
|
207
|
-
#ideBtn:focus
|
|
209
|
+
#ideBtn:focus,
|
|
210
|
+
#studioBtn:focus { outline: none; }
|
|
211
|
+
/* aktif mod rozeti: IDE/Studio tuşu basılıyken vurgulanır */
|
|
212
|
+
#ideBtn.on,
|
|
213
|
+
#studioBtn.on { color: var(--accent); background: var(--panel2); }
|
|
208
214
|
|
|
209
215
|
/* model refresh butonu — çekerken döner */
|
|
210
216
|
#modelRefreshBtn.spin { opacity: .7; pointer-events: none; }
|
|
@@ -2935,10 +2941,10 @@ body.ide-mode.editor-hidden #ideRow #bcPanel { flex: 1 1 auto; min-width: 0; }
|
|
|
2935
2941
|
background: var(--text);
|
|
2936
2942
|
}
|
|
2937
2943
|
|
|
2938
|
-
/* ---------- dosya ağacı sağ tık menüsü ---------- */
|
|
2944
|
+
/* ---------- dosya ağacı + uygulama geneli sağ tık menüsü ---------- */
|
|
2939
2945
|
#fileCtxMenu {
|
|
2940
2946
|
position: fixed;
|
|
2941
|
-
z-index:
|
|
2947
|
+
z-index: 110; /* tüm modal/overlay'ların ÜSTÜNDE (setup 90, win-controls 100) */
|
|
2942
2948
|
min-width: 150px;
|
|
2943
2949
|
background: var(--panel);
|
|
2944
2950
|
border: 1px solid var(--border);
|
|
@@ -2956,6 +2962,7 @@ body.ide-mode.editor-hidden #ideRow #bcPanel { flex: 1 1 auto; min-width: 0; }
|
|
|
2956
2962
|
}
|
|
2957
2963
|
.ctx-item:hover { background: var(--panel2); }
|
|
2958
2964
|
.ctx-item.danger { color: var(--err); }
|
|
2965
|
+
.ctx-item.disabled { opacity: 0.4; pointer-events: none; }
|
|
2959
2966
|
|
|
2960
2967
|
/* ---------- SKILLS STORE ---------- */
|
|
2961
2968
|
|
|
@@ -3386,3 +3393,255 @@ body.browser-open #ghOverlay { right: var(--bw, 480px); }
|
|
|
3386
3393
|
text-overflow: ellipsis;
|
|
3387
3394
|
white-space: nowrap;
|
|
3388
3395
|
}
|
|
3396
|
+
|
|
3397
|
+
/* ================= BEAST STUDIO MODU =================
|
|
3398
|
+
Beast Code ile AYRI dünya: sol → klasör konsolu (başlığında BEAST STUDIO),
|
|
3399
|
+
sağ → [chat | video bölümü]. Sohbet oturumları Studio'ya özeldir; chat
|
|
3400
|
+
geçmişi ve Beast Code paneliyle ASLA paylaşılmaz. */
|
|
3401
|
+
|
|
3402
|
+
/* STUDIO modunda sol taraf: sohbet geçmişi yerine klasör konsolu —
|
|
3403
|
+
başlıkta "BEAST STUDIO" yazar (Beast Code/Agent değil) */
|
|
3404
|
+
body.studio-mode #newChat,
|
|
3405
|
+
body.studio-mode #sessList,
|
|
3406
|
+
body.studio-mode #botBar { display: none; }
|
|
3407
|
+
body.studio-mode #filePanel {
|
|
3408
|
+
display: flex;
|
|
3409
|
+
flex: 1;
|
|
3410
|
+
width: auto;
|
|
3411
|
+
min-width: 0;
|
|
3412
|
+
border-right: none;
|
|
3413
|
+
}
|
|
3414
|
+
body.studio-mode #filePanelTitle { display: inline; }
|
|
3415
|
+
body.studio-mode #filePreview { display: none; } /* preview statik-site aracı — studio'da yer yok */
|
|
3416
|
+
/* STUDIO modunda orta: sohbet + composer gizli, IDE satırı gizli */
|
|
3417
|
+
body.studio-mode #chatScroll,
|
|
3418
|
+
body.studio-mode #composerWrap,
|
|
3419
|
+
body.studio-mode #ideRow { display: none; }
|
|
3420
|
+
|
|
3421
|
+
#studioRow { display: none; flex: 1; min-height: 0; }
|
|
3422
|
+
body.studio-mode #studioRow { display: flex; flex-direction: row; }
|
|
3423
|
+
|
|
3424
|
+
#stPanel {
|
|
3425
|
+
display: flex;
|
|
3426
|
+
flex-direction: column;
|
|
3427
|
+
min-height: 0;
|
|
3428
|
+
min-width: 300px;
|
|
3429
|
+
flex: 0 0 var(--stSplit, 480px);
|
|
3430
|
+
background: var(--bg);
|
|
3431
|
+
overflow: hidden;
|
|
3432
|
+
}
|
|
3433
|
+
#stSplit {
|
|
3434
|
+
flex: none;
|
|
3435
|
+
width: 6px;
|
|
3436
|
+
cursor: col-resize;
|
|
3437
|
+
background: var(--border);
|
|
3438
|
+
opacity: 0.55;
|
|
3439
|
+
}
|
|
3440
|
+
#stVideo {
|
|
3441
|
+
display: flex;
|
|
3442
|
+
flex-direction: column;
|
|
3443
|
+
min-height: 0;
|
|
3444
|
+
min-width: 220px;
|
|
3445
|
+
flex: 1;
|
|
3446
|
+
background: var(--bg);
|
|
3447
|
+
overflow: hidden;
|
|
3448
|
+
}
|
|
3449
|
+
#stHead {
|
|
3450
|
+
flex: none;
|
|
3451
|
+
display: flex;
|
|
3452
|
+
align-items: center;
|
|
3453
|
+
gap: 8px;
|
|
3454
|
+
padding: 9px 12px;
|
|
3455
|
+
border-bottom: 1px solid var(--border);
|
|
3456
|
+
background: var(--panel);
|
|
3457
|
+
}
|
|
3458
|
+
#stTitle { font-size: 11px; font-weight: 800; letter-spacing: 1px; color: var(--accent); flex: none; }
|
|
3459
|
+
#stCwd {
|
|
3460
|
+
color: var(--muted);
|
|
3461
|
+
font-family: Consolas, monospace;
|
|
3462
|
+
font-size: 11px;
|
|
3463
|
+
min-width: 0;
|
|
3464
|
+
overflow: hidden;
|
|
3465
|
+
text-overflow: ellipsis;
|
|
3466
|
+
white-space: nowrap;
|
|
3467
|
+
}
|
|
3468
|
+
#stHead button {
|
|
3469
|
+
background: none;
|
|
3470
|
+
border: none;
|
|
3471
|
+
color: var(--muted);
|
|
3472
|
+
font-size: 12px;
|
|
3473
|
+
cursor: pointer;
|
|
3474
|
+
padding: 3px 7px;
|
|
3475
|
+
border-radius: 6px;
|
|
3476
|
+
line-height: 1;
|
|
3477
|
+
flex: none;
|
|
3478
|
+
}
|
|
3479
|
+
#stHead button:hover { background: var(--panel2); color: var(--text); }
|
|
3480
|
+
#stOut {
|
|
3481
|
+
flex: 1;
|
|
3482
|
+
overflow-y: auto;
|
|
3483
|
+
padding: 10px 14px;
|
|
3484
|
+
font-family: Consolas, "Cascadia Mono", monospace;
|
|
3485
|
+
font-size: 12px;
|
|
3486
|
+
line-height: 1.55;
|
|
3487
|
+
}
|
|
3488
|
+
#stTodoWrap { flex: none; }
|
|
3489
|
+
/* Studio todo kartı: Beast Code kartıyla aynı görünüm (bc-todobox sınıfları) */
|
|
3490
|
+
#stTodoWrap {
|
|
3491
|
+
display: flex;
|
|
3492
|
+
justify-content: center;
|
|
3493
|
+
padding: 0 12px;
|
|
3494
|
+
margin-top: -16px;
|
|
3495
|
+
position: relative;
|
|
3496
|
+
z-index: 2;
|
|
3497
|
+
}
|
|
3498
|
+
#stTodoWrap[hidden] { display: none; }
|
|
3499
|
+
#stInputRow {
|
|
3500
|
+
flex: none;
|
|
3501
|
+
display: flex;
|
|
3502
|
+
align-items: flex-end;
|
|
3503
|
+
gap: 6px;
|
|
3504
|
+
padding: 10px 12px;
|
|
3505
|
+
border-top: 1px solid var(--border);
|
|
3506
|
+
background: var(--panel);
|
|
3507
|
+
}
|
|
3508
|
+
#stAttach, #stMic {
|
|
3509
|
+
flex: none;
|
|
3510
|
+
width: 26px;
|
|
3511
|
+
height: 26px;
|
|
3512
|
+
margin-bottom: 5px;
|
|
3513
|
+
border: none;
|
|
3514
|
+
background: var(--panel2);
|
|
3515
|
+
color: var(--muted);
|
|
3516
|
+
border-radius: 7px;
|
|
3517
|
+
cursor: pointer;
|
|
3518
|
+
font-size: 14px;
|
|
3519
|
+
line-height: 1;
|
|
3520
|
+
display: inline-flex;
|
|
3521
|
+
align-items: center;
|
|
3522
|
+
justify-content: center;
|
|
3523
|
+
}
|
|
3524
|
+
#stAttach:hover, #stMic:hover { background: var(--panel); color: var(--accent); }
|
|
3525
|
+
#stMic.rec { color: #e5484d; animation: mic-pulse 1.2s ease-in-out infinite; }
|
|
3526
|
+
#stInput {
|
|
3527
|
+
flex: 1;
|
|
3528
|
+
min-width: 0;
|
|
3529
|
+
background: var(--bg);
|
|
3530
|
+
border: 1px solid var(--border);
|
|
3531
|
+
color: var(--text);
|
|
3532
|
+
border-radius: 7px;
|
|
3533
|
+
padding: 7px 10px;
|
|
3534
|
+
font-family: Consolas, monospace;
|
|
3535
|
+
font-size: 12.5px;
|
|
3536
|
+
outline: none;
|
|
3537
|
+
resize: none;
|
|
3538
|
+
overflow-y: hidden;
|
|
3539
|
+
max-height: 140px;
|
|
3540
|
+
line-height: 1.45;
|
|
3541
|
+
display: block;
|
|
3542
|
+
}
|
|
3543
|
+
#stInput.expand { overflow-y: auto; }
|
|
3544
|
+
#stInput:focus { border-color: var(--accent); }
|
|
3545
|
+
#stStop {
|
|
3546
|
+
flex: none;
|
|
3547
|
+
background: none;
|
|
3548
|
+
border: 1px solid var(--border);
|
|
3549
|
+
color: var(--err);
|
|
3550
|
+
border-radius: 7px;
|
|
3551
|
+
cursor: pointer;
|
|
3552
|
+
font-size: 11px;
|
|
3553
|
+
padding: 4px 8px;
|
|
3554
|
+
line-height: 1;
|
|
3555
|
+
margin-bottom: 3px;
|
|
3556
|
+
}
|
|
3557
|
+
#stStop[hidden] { display: none; }
|
|
3558
|
+
#stStop:hover { border-color: var(--err); }
|
|
3559
|
+
#stStatus {
|
|
3560
|
+
flex: none;
|
|
3561
|
+
align-self: center;
|
|
3562
|
+
margin: 0 12px 6px;
|
|
3563
|
+
padding: 3px 10px;
|
|
3564
|
+
font-size: 11px;
|
|
3565
|
+
color: var(--accent);
|
|
3566
|
+
background: var(--accent-dim);
|
|
3567
|
+
border: 1px solid var(--accent);
|
|
3568
|
+
border-radius: 999px;
|
|
3569
|
+
max-width: calc(100% - 24px);
|
|
3570
|
+
overflow: hidden;
|
|
3571
|
+
text-overflow: ellipsis;
|
|
3572
|
+
white-space: nowrap;
|
|
3573
|
+
}
|
|
3574
|
+
/* Studio eklentileri: dosya paneli araç ikonları da aynı boyutta dursun */
|
|
3575
|
+
#stAttach svg, #stMic svg { display: block; }
|
|
3576
|
+
|
|
3577
|
+
/* ---------- Studio video bölümü ---------- */
|
|
3578
|
+
#stVideoHead {
|
|
3579
|
+
flex: none;
|
|
3580
|
+
display: flex;
|
|
3581
|
+
align-items: center;
|
|
3582
|
+
gap: 8px;
|
|
3583
|
+
padding: 9px 12px;
|
|
3584
|
+
border-bottom: 1px solid var(--border);
|
|
3585
|
+
background: var(--panel);
|
|
3586
|
+
}
|
|
3587
|
+
#stVideoTitle { font-size: 11px; font-weight: 800; letter-spacing: 1px; color: var(--accent); flex: none; }
|
|
3588
|
+
#stVideoName {
|
|
3589
|
+
color: var(--muted);
|
|
3590
|
+
font-family: Consolas, monospace;
|
|
3591
|
+
font-size: 11px;
|
|
3592
|
+
min-width: 0;
|
|
3593
|
+
overflow: hidden;
|
|
3594
|
+
text-overflow: ellipsis;
|
|
3595
|
+
white-space: nowrap;
|
|
3596
|
+
}
|
|
3597
|
+
#stVideoHead button {
|
|
3598
|
+
background: none;
|
|
3599
|
+
border: 1px solid var(--border);
|
|
3600
|
+
color: var(--muted);
|
|
3601
|
+
font-size: 11.5px;
|
|
3602
|
+
cursor: pointer;
|
|
3603
|
+
padding: 3px 8px;
|
|
3604
|
+
border-radius: 6px;
|
|
3605
|
+
line-height: 1.2;
|
|
3606
|
+
flex: none;
|
|
3607
|
+
}
|
|
3608
|
+
#stVideoHead button:hover { background: var(--panel2); color: var(--text); border-color: var(--accent); }
|
|
3609
|
+
#stVideoBody {
|
|
3610
|
+
flex: 1;
|
|
3611
|
+
min-height: 0;
|
|
3612
|
+
display: flex;
|
|
3613
|
+
align-items: center;
|
|
3614
|
+
justify-content: center;
|
|
3615
|
+
background: #000;
|
|
3616
|
+
position: relative;
|
|
3617
|
+
}
|
|
3618
|
+
#stVideoEl {
|
|
3619
|
+
width: 100%;
|
|
3620
|
+
height: 100%;
|
|
3621
|
+
object-fit: contain;
|
|
3622
|
+
background: #000;
|
|
3623
|
+
}
|
|
3624
|
+
#stVideoEl[hidden] { display: none; }
|
|
3625
|
+
#stVideoEmpty {
|
|
3626
|
+
color: #888;
|
|
3627
|
+
font-size: 12px;
|
|
3628
|
+
text-align: center;
|
|
3629
|
+
line-height: 1.7;
|
|
3630
|
+
padding: 16px;
|
|
3631
|
+
user-select: none;
|
|
3632
|
+
}
|
|
3633
|
+
#stVideoBody.dragover::after {
|
|
3634
|
+
content: '⤓ bırak — oynat';
|
|
3635
|
+
position: absolute;
|
|
3636
|
+
inset: 8px;
|
|
3637
|
+
display: flex;
|
|
3638
|
+
align-items: center;
|
|
3639
|
+
justify-content: center;
|
|
3640
|
+
color: var(--accent);
|
|
3641
|
+
border: 2px dashed var(--accent);
|
|
3642
|
+
border-radius: 10px;
|
|
3643
|
+
background: rgba(0, 0, 0, 0.55);
|
|
3644
|
+
font-size: 13px;
|
|
3645
|
+
font-weight: 700;
|
|
3646
|
+
pointer-events: none;
|
|
3647
|
+
}
|