nothumanallowed 15.0.9 → 15.0.10
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": "15.0.
|
|
3
|
+
"version": "15.0.10",
|
|
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": {
|
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 = '15.0.
|
|
8
|
+
export const VERSION = '15.0.10';
|
|
9
9
|
export const BASE_URL = 'https://nothumanallowed.com/cli';
|
|
10
10
|
export const API_BASE = 'https://nothumanallowed.com/api/v1';
|
|
11
11
|
|
|
@@ -41,6 +41,7 @@ class SandboxManager {
|
|
|
41
41
|
constructor() {
|
|
42
42
|
/** @type {{ proc: import('child_process').ChildProcess; port: number; projectName: string; startedAt: Date; healthy: boolean } | null} */
|
|
43
43
|
this._sandbox = null;
|
|
44
|
+
this._stoppedByUser = false;
|
|
44
45
|
}
|
|
45
46
|
|
|
46
47
|
isRunning() {
|
|
@@ -61,6 +62,7 @@ class SandboxManager {
|
|
|
61
62
|
|
|
62
63
|
async stop() {
|
|
63
64
|
if (!this._sandbox) return;
|
|
65
|
+
this._stoppedByUser = true;
|
|
64
66
|
const { proc, port } = this._sandbox;
|
|
65
67
|
this._sandbox = null;
|
|
66
68
|
|
|
@@ -104,6 +106,7 @@ class SandboxManager {
|
|
|
104
106
|
*/
|
|
105
107
|
async start(projectName, projectDir, emit, _attempt = 1) {
|
|
106
108
|
const MAX_RETRIES = 3;
|
|
109
|
+
this._stoppedByUser = false;
|
|
107
110
|
|
|
108
111
|
// Kill any existing sandbox
|
|
109
112
|
if (this.isRunning()) {
|
|
@@ -239,8 +242,8 @@ class SandboxManager {
|
|
|
239
242
|
|
|
240
243
|
// ── Crash handling — auto-fix missing modules ─────────────────────────
|
|
241
244
|
const exitCode = typeof healthy === 'object' ? healthy.exitCode : -1;
|
|
242
|
-
// If
|
|
243
|
-
if (
|
|
245
|
+
// If user pressed Stop, don't report as crash
|
|
246
|
+
if (this._stoppedByUser) return;
|
|
244
247
|
emit({ type: 'status', msg: `Process exited with code ${exitCode}` });
|
|
245
248
|
|
|
246
249
|
// Extract missing module name from stderr
|