neohive 6.1.0 → 6.1.1

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/cli.js CHANGED
@@ -5,6 +5,7 @@ const path = require('path');
5
5
  const os = require('os');
6
6
  const { execSync } = require('child_process');
7
7
  const { upsertNeohiveMcpInToml } = require('./lib/codex-neohive-toml');
8
+ const pkg = require('./package.json');
8
9
 
9
10
  // ─────────────────────────────────────────────────────────────────────────────
10
11
  // CLI_CONFIG — centralized constants for the Neohive CLI
@@ -21,7 +22,7 @@ const command = process.argv[2];
21
22
 
22
23
  function printUsage() {
23
24
  console.log(`
24
- Neohive v6.1.0
25
+ Neohive v${pkg.version}
25
26
  The MCP collaboration layer for AI CLI tools.
26
27
 
27
28
  Usage:
package/dashboard.js CHANGED
@@ -5,6 +5,7 @@ const path = require('path');
5
5
  const os = require('os');
6
6
  const { spawn } = require('child_process');
7
7
  const { upsertNeohiveMcpInToml } = require('./lib/codex-neohive-toml');
8
+ const pkg = require(path.join(__dirname, 'package.json'));
8
9
  const { readIdeActivity, applyIdeActivityHint } = require('./lib/ide-activity');
9
10
  const _audit = require('./lib/audit');
10
11
 
@@ -3958,12 +3959,22 @@ function startFileWatcher() {
3958
3959
  sseNotifyAll(changeType);
3959
3960
  }, 2000);
3960
3961
  });
3961
- fsWatcher.on('error', () => {}); // ignore watch errors
3962
+ fsWatcher.on('error', () => {
3963
+ setTimeout(startFileWatcher, 1000);
3964
+ });
3962
3965
  } catch {}
3963
3966
  }
3964
3967
 
3965
3968
  startFileWatcher();
3966
3969
 
3970
+ // macOS fs.watch() loses its handle when files are deleted and recreated (e.g. reset --force).
3971
+ // Periodically verify the watcher is still alive and restart if needed.
3972
+ setInterval(() => {
3973
+ const dataDir = resolveDataDir();
3974
+ if (!fs.existsSync(dataDir)) return;
3975
+ if (!fsWatcher) startFileWatcher();
3976
+ }, 5000).unref();
3977
+
3967
3978
  server.on('error', (err) => {
3968
3979
  if (err.code === 'EADDRINUSE') {
3969
3980
  console.error(`\n Error: Port ${PORT} is already in use.`);
@@ -3979,7 +3990,7 @@ server.listen(PORT, LAN_MODE ? '0.0.0.0' : '127.0.0.1', () => {
3979
3990
  const dataDir = resolveDataDir();
3980
3991
  const lanIP = getLanIP();
3981
3992
  console.log('');
3982
- console.log(' Neohive Dashboard v6.0.0');
3993
+ console.log(` Neohive Dashboard v${pkg.version}`);
3983
3994
  console.log(' ============================================');
3984
3995
  console.log(' Dashboard: http://localhost:' + PORT);
3985
3996
  if (LAN_MODE && lanIP) {
package/logo.png CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neohive",
3
- "version": "6.1.0",
3
+ "version": "6.1.1",
4
4
  "description": "The MCP collaboration layer for AI CLI tools. Turn Claude Code, Gemini CLI, and Codex CLI into a team.",
5
5
  "main": "server.js",
6
6
  "bin": {
package/server.js CHANGED
@@ -6,6 +6,7 @@ const {
6
6
  } = require('@modelcontextprotocol/sdk/types.js');
7
7
  const fs = require('fs');
8
8
  const path = require('path');
9
+ const pkg = require('./package.json');
9
10
 
10
11
  // --- Modular infrastructure (lib/) ---
11
12
  // These modules are the canonical implementations. The inline code below
@@ -7242,7 +7243,7 @@ const messaging = require('./tools/messaging')(_messagingCtx);
7242
7243
  // --- MCP Server setup ---
7243
7244
 
7244
7245
  const server = new Server(
7245
- { name: 'neohive', version: '6.1.0' },
7246
+ { name: 'neohive', version: pkg.version },
7246
7247
  { capabilities: { tools: { listChanged: true } } }
7247
7248
  );
7248
7249