bloby-bot 0.21.10 → 0.21.12
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/bin/cli.js +10 -0
- package/dist-bloby/assets/{bloby-p8qAfNCo.js → bloby-8izT4vax.js} +5 -5
- package/dist-bloby/assets/{highlighted-body-OFNGDK62-BPHX1qLw.js → highlighted-body-OFNGDK62-C3HbR2K9.js} +1 -1
- package/dist-bloby/assets/mermaid-GHXKKRXX-BX4zpcbf.js +1 -0
- package/dist-bloby/bloby.html +1 -1
- package/package.json +1 -1
- package/supervisor/chat/src/components/Chat/InputBar.tsx +4 -1
- package/supervisor/chat/src/hooks/useBlobyChat.ts +21 -0
- package/supervisor/index.ts +1 -1
- package/worker/prompts/bloby-system-prompt.txt +4 -0
- package/dist-bloby/assets/mermaid-GHXKKRXX-LdmqAfl5.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as e,r as t,t as n}from"./jsx-runtime-C0W9Wf2W.js";import{n as r,r as i,t as a}from"./bloby-
|
|
1
|
+
import{c as e,r as t,t as n}from"./jsx-runtime-C0W9Wf2W.js";import{n as r,r as i,t as a}from"./bloby-8izT4vax.js";var o=e(t(),1),s=n(),c=({code:e,language:t,raw:n,className:c,startLine:l,lineNumbers:u,...d})=>{let{shikiTheme:f}=(0,o.useContext)(i),p=r(),[m,h]=(0,o.useState)(n);return(0,o.useEffect)(()=>{if(!p){h(n);return}let r=p.highlight({code:e,language:t,themes:f},e=>{h(e)});r&&h(r)},[e,t,f,p,n]),(0,s.jsx)(a,{className:c,language:t,lineNumbers:u,result:m,startLine:l,...d})};export{c as HighlightedCodeBlockBody};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./bloby-8izT4vax.js";export{e as Mermaid};
|
package/dist-bloby/bloby.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, interactive-widget=resizes-content" />
|
|
6
6
|
<title>Bloby Chat</title>
|
|
7
|
-
<script type="module" crossorigin src="/bloby/assets/bloby-
|
|
7
|
+
<script type="module" crossorigin src="/bloby/assets/bloby-8izT4vax.js"></script>
|
|
8
8
|
<link rel="modulepreload" crossorigin href="/bloby/assets/jsx-runtime-C0W9Wf2W.js">
|
|
9
9
|
<link rel="modulepreload" crossorigin href="/bloby/assets/globals-VdwDxdso.js">
|
|
10
10
|
<link rel="stylesheet" crossorigin href="/bloby/assets/globals-b7xkhPEo.css">
|
package/package.json
CHANGED
|
@@ -441,6 +441,8 @@ export default function InputBar({ onSend, onStop, streaming, whisperEnabled, on
|
|
|
441
441
|
<Camera className="h-4 w-4" />
|
|
442
442
|
</button>
|
|
443
443
|
</div>
|
|
444
|
+
{/* Stop button removed — v2 long-lived conversation model lets users always chat.
|
|
445
|
+
Users can say "stop" or "cancel" naturally if needed.
|
|
444
446
|
{streaming && !hasText ? (
|
|
445
447
|
<button
|
|
446
448
|
onClick={onStop}
|
|
@@ -448,7 +450,8 @@ export default function InputBar({ onSend, onStop, streaming, whisperEnabled, on
|
|
|
448
450
|
>
|
|
449
451
|
<Square className="h-4 w-4" />
|
|
450
452
|
</button>
|
|
451
|
-
) :
|
|
453
|
+
) : */}
|
|
454
|
+
{hasText ? (
|
|
452
455
|
<button
|
|
453
456
|
onClick={handleSend}
|
|
454
457
|
className="flex items-center justify-center h-12 w-12 shrink-0 rounded-full bg-white text-gray-900 transition-colors hover:bg-gray-100"
|
|
@@ -129,6 +129,8 @@ export function useBlobyChat(ws: WsClient | null, triggerReload?: number, enable
|
|
|
129
129
|
useEffect(() => {
|
|
130
130
|
if (!ws) return;
|
|
131
131
|
|
|
132
|
+
console.log('[blobyChat] ──── WS HANDLERS REGISTERED ────');
|
|
133
|
+
|
|
132
134
|
const unsubs = [
|
|
133
135
|
ws.on('bot:typing', () => {
|
|
134
136
|
console.log('[blobyChat] bot:typing → streaming=true');
|
|
@@ -145,6 +147,25 @@ export function useBlobyChat(ws: WsClient | null, triggerReload?: number, enable
|
|
|
145
147
|
});
|
|
146
148
|
}),
|
|
147
149
|
ws.on('bot:tool', (data: { name: string; status?: string }) => {
|
|
150
|
+
// Commit current stream as a bubble when agent pauses for tool use
|
|
151
|
+
// This creates separate message bubbles and shows dots during work
|
|
152
|
+
const content = streamBufferRef.current;
|
|
153
|
+
if (content) {
|
|
154
|
+
console.log(`[blobyChat] bot:tool (${data.name}) — committing ${content.length} chars as bubble`);
|
|
155
|
+
committedTextLength.current += content.length;
|
|
156
|
+
setMessages((msgs) => [
|
|
157
|
+
...msgs,
|
|
158
|
+
{
|
|
159
|
+
id: 'tool-' + Date.now(),
|
|
160
|
+
role: 'assistant' as const,
|
|
161
|
+
content,
|
|
162
|
+
timestamp: new Date().toISOString(),
|
|
163
|
+
},
|
|
164
|
+
]);
|
|
165
|
+
setStreamBuffer('');
|
|
166
|
+
streamBufferRef.current = '';
|
|
167
|
+
// streaming stays true → empty buffer = typing dots
|
|
168
|
+
}
|
|
148
169
|
setTools((prev) => {
|
|
149
170
|
const existing = prev.find((t) => t.name === data.name && t.status === 'running');
|
|
150
171
|
if (existing) return prev;
|
package/supervisor/index.ts
CHANGED
|
@@ -80,7 +80,7 @@ const SW_JS = `// Service worker — app-shell caching + push notifications
|
|
|
80
80
|
// JS/CSS modules → stale-while-revalidate
|
|
81
81
|
// API, WebSocket, Vite internals → network-only (no cache)
|
|
82
82
|
|
|
83
|
-
var CACHE = 'bloby-
|
|
83
|
+
var CACHE = 'bloby-v9';
|
|
84
84
|
var HASHED_RE = new RegExp('/assets/.+-[a-zA-Z0-9]{6,}[.](js|css)$');
|
|
85
85
|
|
|
86
86
|
// Precache the HTML shell on install so the cache is never empty.
|
|
@@ -19,6 +19,10 @@ Your memory files (MYSELF.md, MYHUMAN.md, MEMORY.md) are provided below in this
|
|
|
19
19
|
|
|
20
20
|
If recent conversation history is provided below, use it to maintain continuity. Respond naturally as if you remember the conversation.
|
|
21
21
|
|
|
22
|
+
If your human is talking something that is not on your context, don't act surprised, don't rush conclusions, use the tool grep on your memory files, especially on the memory/ folder
|
|
23
|
+
|
|
24
|
+
If not there and your human explicity say you should remember something, as a last resort, check the whole history of conversation at ~/.bloby/memory.db (This should be the last option tho)
|
|
25
|
+
|
|
22
26
|
You should still WRITE to all memory files whenever you learn something worth remembering. Your writes update the actual files on disk and will appear in your context on the next turn.
|
|
23
27
|
|
|
24
28
|
---
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./bloby-p8qAfNCo.js";export{e as Mermaid};
|