@yemi33/minions 0.1.282 → 0.1.284

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/CHANGELOG.md CHANGED
@@ -1,8 +1,10 @@
1
1
  # Changelog
2
2
 
3
- ## 0.1.282 (2026-04-03)
3
+ ## 0.1.284 (2026-04-03)
4
4
 
5
5
  ### Fixes
6
+ - render proper thinking layout immediately — no flash of unstyled text
7
+ - thinking indicator layout — text ... dots ... elapsed time right-aligned
6
8
  - thinking indicator shows immediately when user sends message
7
9
 
8
10
  ## 0.1.281 (2026-04-03)
@@ -174,14 +174,14 @@ async function _ccDoSend(message, skipUserMsg) {
174
174
  const msgs = document.getElementById('cc-messages');
175
175
  const streamDiv = msgs.lastElementChild;
176
176
  const dotPulse = '<span style="display:inline-flex;gap:3px;margin-left:6px;vertical-align:middle"><span style="width:4px;height:4px;background:var(--blue);border-radius:50%;animation:dotPulse 1.2s infinite"></span><span style="width:4px;height:4px;background:var(--blue);border-radius:50%;animation:dotPulse 1.2s infinite;animation-delay:0.2s"></span><span style="width:4px;height:4px;background:var(--blue);border-radius:50%;animation:dotPulse 1.2s infinite;animation-delay:0.4s"></span></span>';
177
- function _getThinkingPhase() {
177
+ function _getThinkingHtml() {
178
178
  var elapsed = Date.now() - ccStartTime;
179
179
  var label = 'Thinking...';
180
180
  for (var pi = phases.length - 1; pi >= 0; pi--) {
181
181
  if (elapsed >= phases[pi][0]) { label = phases[pi][1]; break; }
182
182
  }
183
183
  var secs = Math.floor(elapsed / 1000);
184
- return label + ' <span style="font-size:9px;color:var(--border)">' + secs + 's</span>';
184
+ return '<div style="display:flex;align-items:center;gap:6px"><span style="color:var(--muted);font-size:11px">' + label + '</span>' + dotPulse + '<span style="margin-left:auto;font-size:10px;color:var(--muted)">' + secs + 's</span></div>';
185
185
  }
186
186
  function updateStreamDiv() {
187
187
  var html = '';
@@ -195,7 +195,7 @@ async function _ccDoSend(message, skipUserMsg) {
195
195
  if (streamedText) {
196
196
  html += renderMd(streamedText);
197
197
  }
198
- html += '<div style="margin-top:' + (streamedText ? '6px' : '0') + '"><span style="color:var(--muted);font-size:11px">' + _getThinkingPhase() + dotPulse + '</span></div>';
198
+ html += '<div style="margin-top:' + (streamedText ? '6px' : '0') + '">' + _getThinkingHtml() + '</div>';
199
199
  streamDiv.innerHTML = html;
200
200
  // Re-append queue indicators so they stay below the streaming content
201
201
  if (_ccQueue.length > 0) _renderQueueIndicator();
@@ -203,6 +203,7 @@ async function _ccDoSend(message, skipUserMsg) {
203
203
  }
204
204
  // Start phase timer immediately so thinking text updates while waiting for SSE
205
205
  const phaseTimer = setInterval(updateStreamDiv, 1000);
206
+ updateStreamDiv(); // render proper layout immediately (not raw "Thinking..." text)
206
207
 
207
208
  try {
208
209
  // Stream response via SSE — shows text as it arrives
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.282",
3
+ "version": "0.1.284",
4
4
  "description": "Multi-agent AI dev team that runs from ~/.minions/ — five autonomous agents share a single engine, dashboard, and knowledge base",
5
5
  "bin": {
6
6
  "minions": "bin/minions.js"