@yemi33/minions 0.1.1603 → 0.1.1604

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,12 +1,13 @@
1
1
  # Changelog
2
2
 
3
- ## 0.1.1603 (2026-04-28)
3
+ ## 0.1.1604 (2026-04-28)
4
4
 
5
5
  ### Features
6
6
  - match runtime tags to actual logos (pixel-crab Claude, mascot Copilot)
7
7
  - replace runtime text tag with inline SVG logos
8
8
 
9
9
  ### Fixes
10
+ - preserve copilot cc action blocks
10
11
  - improve copilot command center streaming
11
12
  - guard runtime model races
12
13
  - runtime-aware model picker + cross-runtime validation
package/engine/llm.js CHANGED
@@ -294,12 +294,15 @@ function _createStreamAccumulator({
294
294
  const alreadySeen = copilotTaskCompleteSeen && copilotTaskCompleteSummary === finalSummary;
295
295
  copilotTaskCompleteSeen = true;
296
296
  copilotTaskCompleteSummary = finalSummary;
297
- copilotMessageBuffer = '';
298
- text = finalSummary;
299
- if (onChunk && finalSummary !== lastTextSent) {
300
- lastTextSent = finalSummary;
301
- onChunk(finalSummary);
297
+ const hadText = !!text;
298
+ if (!hadText) {
299
+ text = finalSummary;
300
+ if (onChunk && finalSummary !== lastTextSent) {
301
+ lastTextSent = finalSummary;
302
+ onChunk(finalSummary);
303
+ }
302
304
  }
305
+ copilotMessageBuffer = '';
303
306
  if (!alreadySeen && onTaskComplete) onTaskComplete({ summary: finalSummary, success: success !== false });
304
307
  }
305
308
 
@@ -415,6 +418,7 @@ function _createStreamAccumulator({
415
418
  if (copilotMessageBuffer && !copilotTaskCompleteSeen) {
416
419
  text = _streamText(copilotMessageBuffer);
417
420
  }
421
+ if (!text && copilotTaskCompleteSummary) text = copilotTaskCompleteSummary;
418
422
  // Reconciliation: if any field is still missing, ask the runtime adapter
419
423
  // to re-parse the whole stdout. parseOutput() may catch a result event
420
424
  // that was malformed when streamed in chunks.
@@ -390,7 +390,8 @@ function parseOutput(raw, { maxTextLength = 0 } = {}) {
390
390
  }
391
391
  }
392
392
 
393
- let text = taskCompleteSummary || (messageContents.join('') + pendingDeltaContent);
393
+ let text = messageContents.join('') + pendingDeltaContent;
394
+ if (!text && taskCompleteSummary) text = taskCompleteSummary;
394
395
  if (maxTextLength && text.length > maxTextLength) {
395
396
  text = text.slice(-maxTextLength);
396
397
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.1603",
3
+ "version": "0.1.1604",
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"