@yemi33/minions 0.1.586 → 0.1.587

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,9 @@
1
1
  # Changelog
2
2
 
3
- ## 0.1.586 (2026-04-08)
3
+ ## 0.1.587 (2026-04-08)
4
4
 
5
5
  ### Fixes
6
+ - use TCP socket probe for minions dash port check
6
7
  - minions dash opens browser when dashboard already running
7
8
  - add conditional block support to playbook renderer
8
9
 
package/bin/minions.js CHANGED
@@ -705,11 +705,15 @@ if (!cmd || cmd === 'help' || cmd === '--help' || cmd === '-h') {
705
705
  } else if (cmd === 'dash' || cmd === 'dashboard') {
706
706
  ensureInstalled();
707
707
  // If dashboard is already running, just open the browser
708
- const http = require('http');
708
+ const net = require('net');
709
709
  const dashPort = 7331;
710
- const probe = http.get(`http://localhost:${dashPort}/api/status`, (res) => {
711
- res.resume();
712
- // Dashboard is running — open browser
710
+ const sock = new net.Socket();
711
+ let handled = false;
712
+ sock.setTimeout(1000);
713
+ sock.on('connect', () => {
714
+ sock.destroy();
715
+ if (handled) return;
716
+ handled = true;
713
717
  const url = `http://localhost:${dashPort}`;
714
718
  console.log(`\n Dashboard already running: ${url}\n`);
715
719
  try {
@@ -717,11 +721,18 @@ if (!cmd || cmd === 'help' || cmd === '--help' || cmd === '-h') {
717
721
  execSync(openCmd, { stdio: 'ignore', windowsHide: true });
718
722
  } catch {}
719
723
  });
720
- probe.on('error', () => {
721
- // Dashboard not running — start it
724
+ sock.on('error', () => {
725
+ if (handled) return;
726
+ handled = true;
722
727
  delegate('dashboard.js', rest);
723
728
  });
724
- probe.setTimeout(2000, () => { probe.destroy(); delegate('dashboard.js', rest); });
729
+ sock.on('timeout', () => {
730
+ sock.destroy();
731
+ if (handled) return;
732
+ handled = true;
733
+ delegate('dashboard.js', rest);
734
+ });
735
+ sock.connect(dashPort, '127.0.0.1');
725
736
  } else if (engineCmds.has(cmd)) {
726
737
  delegate('engine.js', [cmd, ...rest]);
727
738
  } else {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.586",
3
+ "version": "0.1.587",
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"