fix: Glow im Broker-Modus + Tab-URL in user_message
- handleBrokerMessage: 'round' schaltet notifyGlow(true), 'done'/'error' schalten notifyGlow(false). Vorher wurde Glow nur im direct-Modus (agent.ts) gesteuert — im Broker-Modus blieb er immer aus. - ExtUserMessage: url?-Feld ergänzt. - user_message an Broker: aktuelle Tab-URL wird mitgeschickt, damit der Broker kontextspezifische Prompts einbauen kann.
This commit is contained in:
+20
-4
@@ -152,14 +152,22 @@ async function handleBrokerMessage(msg: BrokerMessage): Promise<void> {
|
||||
switch (msg.type) {
|
||||
case 'welcome':
|
||||
case 'text_delta':
|
||||
case 'round':
|
||||
case 'done':
|
||||
case 'error':
|
||||
case 'approval_request':
|
||||
case 'tool_result_event':
|
||||
case 'mcp_status':
|
||||
sendToPanel(msg);
|
||||
break;
|
||||
case 'round':
|
||||
// Agent läuft — Glow einschalten
|
||||
notifyGlow(true);
|
||||
sendToPanel(msg);
|
||||
break;
|
||||
case 'done':
|
||||
case 'error':
|
||||
// Agent fertig — Glow ausschalten
|
||||
notifyGlow(false);
|
||||
sendToPanel(msg);
|
||||
break;
|
||||
case 'tool_call':
|
||||
await executeForBroker(msg.callId, msg.name, msg.input);
|
||||
break;
|
||||
@@ -1662,7 +1670,15 @@ chrome.runtime.onConnect.addListener((port) => {
|
||||
sendToPanel({ type: 'log', level: 'warn',
|
||||
text: `${msg.images.length} Bild(er) ignoriert: Bildanhänge gehen nur im Antrieb "direct".` });
|
||||
}
|
||||
sendToBroker({ type: 'user_message', text: msg.text, maxRounds: msg.maxRounds ?? cfg.maxRounds } satisfies ExtUserMessage);
|
||||
// Aktuelle Tab-URL mitschicken — der Broker baut daraus den Kontext (z.B. Mercedes-Wissen).
|
||||
let tabUrl: string | undefined;
|
||||
try {
|
||||
const id = await currentTabId();
|
||||
if (typeof id === 'number') {
|
||||
tabUrl = (await chrome.tabs.get(id).catch(() => null))?.url;
|
||||
}
|
||||
} catch { /* ok */ }
|
||||
sendToBroker({ type: 'user_message', text: msg.text, maxRounds: msg.maxRounds ?? cfg.maxRounds, url: tabUrl } satisfies ExtUserMessage);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -24,6 +24,8 @@ export interface ExtUserMessage {
|
||||
text: string;
|
||||
chatId?: string;
|
||||
maxRounds?: number;
|
||||
/** URL des Ziel-Tabs — damit der Broker kontextspezifische Prompts einbauen kann. */
|
||||
url?: string;
|
||||
}
|
||||
|
||||
/** Tool execution result (extension ran a browser tool) */
|
||||
|
||||
Reference in New Issue
Block a user