nothumanallowed 13.5.170 → 13.5.172

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": "nothumanallowed",
3
- "version": "13.5.170",
3
+ "version": "13.5.172",
4
4
  "description": "NotHumanAllowed — 38 AI agents, 80 tools, Studio (visual agentic workflows). Email, calendar, browser automation, screen capture, canvas, cron/heartbeat, Alexandria E2E messaging, GitHub, Notion, Slack, voice chat, free AI (Liara), 28 languages. Zero-dependency CLI.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -27,6 +27,7 @@ import {
27
27
  } from '../services/task-store.mjs';
28
28
  import { runPlanningPipeline } from '../services/ops-pipeline.mjs';
29
29
  import { AGENTS, AGENTS_DIR, NHA_DIR, VERSION } from '../constants.mjs';
30
+ import { startDaemon, isRunning } from '../services/ops-daemon.mjs';
30
31
  import { getHTML, getJS } from '../services/web-ui.mjs';
31
32
  import { loadChatHistory, saveChatHistory, extractMemory, buildMemoryContext } from '../services/memory.mjs';
32
33
  import {
@@ -249,6 +250,14 @@ export async function cmdUI(args) {
249
250
  const htmlPage = getHTML(port);
250
251
  const jsBundle = getJS();
251
252
 
253
+ // Auto-start daemon (Telegram bot + cron jobs) if not already running
254
+ if (!isRunning()) {
255
+ const daemonResult = startDaemon();
256
+ if (daemonResult.ok) {
257
+ console.log(` ✓ PAO daemon started (PID ${daemonResult.pid}) — Telegram + cron active`);
258
+ }
259
+ }
260
+
252
261
  // Migrate old chat history to multi-conversation format
253
262
  migrateOldHistory();
254
263
 
package/src/constants.mjs CHANGED
@@ -5,7 +5,7 @@ import { fileURLToPath } from 'url';
5
5
  const __filename = fileURLToPath(import.meta.url);
6
6
  const __dirname = path.dirname(__filename);
7
7
 
8
- export const VERSION = '13.5.170';
8
+ export const VERSION = '13.5.172';
9
9
  export const BASE_URL = 'https://nothumanallowed.com/cli';
10
10
  export const API_BASE = 'https://nothumanallowed.com/api/v1';
11
11
 
@@ -3882,10 +3882,18 @@ function npmUpdate() {
3882
3882
  return;
3883
3883
  }
3884
3884
  fetch(window.location.origin + '/api/status', { cache: 'no-store' }).then(function() {
3885
- // Server is back reload at same origin (works on localhost AND VM IP)
3885
+ // First responsewait 2s then confirm server is stable before reloading
3886
3886
  var st = document.getElementById('npmUpdateStatus');
3887
- if (st) st.textContent = 'Update complete! Reloading...';
3888
- setTimeout(function() { window.location.reload(); }, 800);
3887
+ if (st) st.textContent = 'Server back — loading...';
3888
+ setTimeout(function() {
3889
+ fetch(window.location.origin + '/api/status', { cache: 'no-store' }).then(function() {
3890
+ if (st) st.textContent = 'Update complete! Reloading...';
3891
+ setTimeout(function() { window.location.reload(); }, 500);
3892
+ }).catch(function() {
3893
+ // Went back down, keep polling
3894
+ setTimeout(pollUp, 1500);
3895
+ });
3896
+ }, 2000);
3889
3897
  }).catch(function() {
3890
3898
  setTimeout(pollUp, 1500);
3891
3899
  });