beast-agent 0.24.0 → 0.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
package/src/renderer/i18n.js
CHANGED
|
@@ -446,6 +446,7 @@
|
|
|
446
446
|
bot_sel_empty: '— bot seçme —',
|
|
447
447
|
bot_code_title: 'Botun benzersiz 5 haneli kodu — botlar arası DM adresi',
|
|
448
448
|
bot_vis: 'Ana sohbete davet edilebilir (sohbet görünürlüğü)',
|
|
449
|
+
tipGuestBot: 'Konuşmaya bot davet et — davetli botlara ajan bot_dm ile danışır',
|
|
449
450
|
bot_switch_hint: 'Tıkla: bu botta çalış · ⚙: yönet',
|
|
450
451
|
bot_switched: 'bottasın — sohbetler bu botun kimliğiyle gider',
|
|
451
452
|
bot_manage: 'Botu yönet',
|
|
@@ -1022,6 +1023,7 @@
|
|
|
1022
1023
|
bot_sel_empty: '— no bot —',
|
|
1023
1024
|
bot_code_title: "This bot's unique 5-digit code — the inter-bot DM address",
|
|
1024
1025
|
bot_vis: 'Invitable to the main chat (chat visibility)',
|
|
1026
|
+
tipGuestBot: 'Invite a bot to this chat — the agent consults invited bots via bot_dm',
|
|
1025
1027
|
bot_switch_hint: 'Click: work as this bot · ⚙: manage',
|
|
1026
1028
|
bot_switched: 'active — chats run with this bot\u2019s identity',
|
|
1027
1029
|
bot_manage: 'Manage bot',
|
package/src/renderer/index.html
CHANGED
|
@@ -95,16 +95,16 @@
|
|
|
95
95
|
<div id="chips" hidden></div>
|
|
96
96
|
<div id="slashMenu" hidden></div>
|
|
97
97
|
<div id="composer">
|
|
98
|
-
<
|
|
99
|
-
|
|
98
|
+
<div id="composerLeft" class="dd">
|
|
99
|
+
<button id="attachBtn" title="Dosya / resim ekle" data-i18n-title="tipAttach">+</button>
|
|
100
|
+
<button id="micBtn" title="Sesli komut — konuş, bırakınca yazıya çevirsin" data-i18n-title="tipMic"><svg viewBox="0 0 24 24" width="15" height="15" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="2" width="6" height="12" rx="3"/><path d="M19 10v2a7 7 0 0 1-14 0v-2"/><path d="M12 19v3"/></svg></button>
|
|
101
|
+
<button id="guestBotBtn" title="Konuşmaya bot davet et — davetli botlara ajan bot_dm ile danışır" data-i18n-title="tipGuestBot" hidden><span style="filter:grayscale(1)">🤖</span></button>
|
|
102
|
+
<div id="guestBotMenu" class="dd-menu" hidden></div>
|
|
103
|
+
</div>
|
|
100
104
|
<textarea id="input" rows="1" placeholder="Bir şey sor ya da görev ver… (Enter: gönder · Shift+Enter: satır · /: komutlar)" data-i18n-ph="composerPh"></textarea>
|
|
101
105
|
<button id="stopBtn" title="Durdur" hidden data-i18n-title="tipStop">■</button>
|
|
102
106
|
<button id="sendBtn" title="Gönder" data-i18n-title="tipSend">➤︎</button>
|
|
103
107
|
</div>
|
|
104
|
-
<div id="guestBotDD" class="dd" style="align-self:center">
|
|
105
|
-
<button id="guestBotBtn" class="btn ghost" style="margin-top:6px;padding:4px 12px;font-size:12px" title="Konuşmaya başka bot davet et">🤖 Bot davet et</button>
|
|
106
|
-
<div id="guestBotMenu" class="dd-menu" hidden style="left:50%;transform:translateX(-50%)"></div>
|
|
107
|
-
</div>
|
|
108
108
|
</div>
|
|
109
109
|
|
|
110
110
|
<div id="ideRow">
|
package/src/renderer/renderer.js
CHANGED
|
@@ -2463,15 +2463,16 @@ let botPageStats = [];
|
|
|
2463
2463
|
let activeBotId = 'beast'; // masaüstü UI'ının şu an hangi botta olduğu (varsayılan: ilk bot/Beast)
|
|
2464
2464
|
let activeGuests = []; // aktif ana sohbete davetli botlar [{id, code, name}]
|
|
2465
2465
|
|
|
2466
|
-
/* ANA SOHBETE BOT DAVETİ: yalnız admin bottayken görünür
|
|
2467
|
-
session'a kaydedilir, ajan bot_dm aracıyla onlara
|
|
2466
|
+
/* ANA SOHBETE BOT DAVETİ: yalnız admin bottayken görünür (composer'daki 🤖 ikonu);
|
|
2467
|
+
davetli botlar session'a kaydedilir, ajan bot_dm aracıyla onlara danışır */
|
|
2468
2468
|
function renderGuestBotMenu() {
|
|
2469
|
-
const
|
|
2469
|
+
const btn = $('#guestBotBtn');
|
|
2470
2470
|
const menu = $('#guestBotMenu');
|
|
2471
|
-
if (!
|
|
2471
|
+
if (!btn || !menu) return;
|
|
2472
2472
|
const isAdmin = activeBotId === 'beast';
|
|
2473
|
-
|
|
2474
|
-
|
|
2473
|
+
const show = isAdmin && !!activeId;
|
|
2474
|
+
btn.style.display = show ? '' : 'none';
|
|
2475
|
+
if (!show) { menu.hidden = true; return; }
|
|
2475
2476
|
const candidates = botsCache.filter((b) => !b.admin && b.vis !== false);
|
|
2476
2477
|
menu.innerHTML = '';
|
|
2477
2478
|
if (!candidates.length) {
|
package/src/renderer/style.css
CHANGED
|
@@ -998,6 +998,23 @@ body.term-open #settingsOverlay { right: var(--tw, 520px); }
|
|
|
998
998
|
}
|
|
999
999
|
#attachBtn:hover { background: var(--panel); color: var(--accent); }
|
|
1000
1000
|
|
|
1001
|
+
/* composer sol grubu: + mikrofon bot-davet — yanyana boşluksuz */
|
|
1002
|
+
#composerLeft { display: flex; align-items: center; gap: 0; flex-shrink: 0; }
|
|
1003
|
+
#guestBotBtn {
|
|
1004
|
+
width: 32px; height: 32px;
|
|
1005
|
+
border-radius: 9px;
|
|
1006
|
+
border: none;
|
|
1007
|
+
cursor: pointer;
|
|
1008
|
+
font-size: 15px;
|
|
1009
|
+
line-height: 1;
|
|
1010
|
+
flex-shrink: 0;
|
|
1011
|
+
background: none;
|
|
1012
|
+
color: var(--muted);
|
|
1013
|
+
padding: 0;
|
|
1014
|
+
}
|
|
1015
|
+
#guestBotBtn:hover { background: var(--panel); color: var(--accent); }
|
|
1016
|
+
#guestBotMenu { width: 260px; left: 0; }
|
|
1017
|
+
|
|
1001
1018
|
#micBtn {
|
|
1002
1019
|
width: 32px; height: 32px;
|
|
1003
1020
|
border-radius: 9px;
|
|
@@ -1714,7 +1731,6 @@ body.browser-open #toast { left: calc((100vw - var(--bw, 480px)) / 2); }
|
|
|
1714
1731
|
#botList { overflow-y: auto; }
|
|
1715
1732
|
.bot-card {
|
|
1716
1733
|
display: flex;
|
|
1717
|
-
flex-wrap: wrap;
|
|
1718
1734
|
align-items: center;
|
|
1719
1735
|
gap: 8px;
|
|
1720
1736
|
padding: 6px 8px;
|
|
@@ -1726,16 +1742,15 @@ body.browser-open #toast { left: calc((100vw - var(--bw, 480px)) / 2); }
|
|
|
1726
1742
|
.bot-card:hover { background: var(--panel2); color: var(--text); }
|
|
1727
1743
|
.bot-card.active { background: var(--panel2); color: var(--text); box-shadow: inset 2px 0 0 var(--accent); }
|
|
1728
1744
|
.bot-card .bot-ico { font-size: 16px; line-height: 1; flex-shrink: 0; }
|
|
1729
|
-
/* 5 haneli benzersiz bot kodu —
|
|
1745
|
+
/* 5 haneli benzersiz bot kodu — bot adının yanında */
|
|
1730
1746
|
.bot-card .bot-code {
|
|
1731
|
-
width: 100%;
|
|
1732
|
-
text-align: center;
|
|
1733
1747
|
font-family: ui-monospace, Consolas, monospace;
|
|
1734
|
-
font-size:
|
|
1748
|
+
font-size: 10px;
|
|
1735
1749
|
font-weight: 700;
|
|
1736
|
-
letter-spacing:
|
|
1750
|
+
letter-spacing: 1.5px;
|
|
1737
1751
|
color: var(--accent);
|
|
1738
|
-
opacity: 0.
|
|
1752
|
+
opacity: 0.9;
|
|
1753
|
+
margin-left: 2px;
|
|
1739
1754
|
}
|
|
1740
1755
|
.bot-card .bot-gear {
|
|
1741
1756
|
visibility: hidden;
|