agentgui 1.0.561 → 1.0.563

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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentgui",
3
- "version": "1.0.561",
3
+ "version": "1.0.563",
4
4
  "description": "Multi-agent ACP client with real-time communication",
5
5
  "type": "module",
6
6
  "main": "server.js",
@@ -2565,7 +2565,7 @@ class AgentGUIClient {
2565
2565
  }
2566
2566
 
2567
2567
  if (this.ui.messageInput) {
2568
- this.ui.messageInput.disabled = shouldResumeStreaming;
2568
+ this.ui.messageInput.disabled = false;
2569
2569
  }
2570
2570
 
2571
2571
  const outputEl = document.getElementById('output');
@@ -2847,7 +2847,7 @@ class AgentGUIClient {
2847
2847
 
2848
2848
  if (result.chunks && result.chunks.length > 0) {
2849
2849
  result.chunks.forEach(chunk => {
2850
- const blockEl = this.renderer.renderBlock(chunk.data, chunk.type, false);
2850
+ const blockEl = this.renderer.renderBlock(chunk.data, {}, false);
2851
2851
  if (blockEl) {
2852
2852
  const wrapper = document.createElement('div');
2853
2853
  wrapper.setAttribute('data-chunk-created', chunk.created_at);
@@ -619,8 +619,11 @@ class StreamingRenderer {
619
619
  case 'TodoWrite':
620
620
  if (input.todos && Array.isArray(input.todos)) {
621
621
  const statusIcons = { completed: '✅', in_progress: '⚙', pending: '☐' };
622
+ const completedCount = input.todos.filter(t => t.status === 'completed').length;
623
+ const totalCount = input.todos.length;
622
624
  const items = input.todos.map(t => `<div class="todo-item"><span class="todo-status">${statusIcons[t.status] || '&#9744;'}</span><span class="todo-text">${this.escapeHtml(t.content || '')}</span></div>`).join('');
623
- return `<div class="tool-params"><div class="tool-param-todos">${items}</div></div>`;
625
+ const summary = `<summary class="folded-tool-bar" style="cursor:pointer;padding:0.5rem;background:var(--color-bg-secondary);border-radius:0.25rem;user-select:none"><span style="font-weight:600;font-size:0.9rem">📋 Tasks</span><span style="margin-left:0.5rem;font-size:0.8rem;color:var(--color-text-secondary)">${completedCount}/${totalCount} complete</span></summary>`;
626
+ return `<details class="folded-tool" open>${summary}<div class="folded-tool-body tool-param-todos" style="padding:0.75rem">${items}</div></details>`;
624
627
  }
625
628
  return this.renderJsonParams(input);
626
629
 
@@ -2182,7 +2185,7 @@ class StreamingRenderer {
2182
2185
  summary.textContent = summaryText;
2183
2186
 
2184
2187
  const details = document.createElement('details');
2185
- details.className = `block-type-${block.type}`;
2188
+ details.className = `block-type-${block.type} ${this._getBlockTypeClass(block.type)}`;
2186
2189
  details.setAttribute('data-block-type', block.type);
2187
2190
  details.setAttribute('data-lazy-load', 'pending');
2188
2191
  details.appendChild(summary);