nothumanallowed 9.4.9 → 9.4.11
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": "9.4.
|
|
3
|
+
"version": "9.4.11",
|
|
4
4
|
"description": "NotHumanAllowed — 38 AI agents + 58 tools + browser automation + web search. Streaming chat, headless Chrome CDP, multi-conversation, export. Gmail, Calendar, Drive, GitHub, Notion, Slack. Zero-dependency CLI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
package/src/commands/ui.mjs
CHANGED
|
@@ -1233,6 +1233,7 @@ export async function cmdUI(args) {
|
|
|
1233
1233
|
const wantsScreenshot = /screenshot|screen\s*shot|schermo|cattura|foto|immagine/i.test(msg);
|
|
1234
1234
|
const wantsSearch = /\b(cerca|search|find|look\s*up|ricerca|cercare)\b/i.test(msg);
|
|
1235
1235
|
|
|
1236
|
+
console.log(` [flow] actions=${actions.length} [${actions.map(a=>a.action).join(',')}] wantsSearch=${wantsSearch} wantsScreenshot=${wantsScreenshot}`);
|
|
1236
1237
|
// If user asked to search but LLM didn't call web_search, force it
|
|
1237
1238
|
if (wantsSearch && !actions.some(a => a.action === 'web_search')) {
|
|
1238
1239
|
// Extract search query from message (remove action words)
|
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 = '9.4.
|
|
8
|
+
export const VERSION = '9.4.11';
|
|
9
9
|
export const BASE_URL = 'https://nothumanallowed.com/cli';
|
|
10
10
|
export const API_BASE = 'https://nothumanallowed.com/api/v1';
|
|
11
11
|
|
|
@@ -1322,9 +1322,12 @@ export async function executeTool(action, params, config) {
|
|
|
1322
1322
|
if (params.screenshot) {
|
|
1323
1323
|
try {
|
|
1324
1324
|
const be = await import('./browser-engine.mjs');
|
|
1325
|
-
|
|
1325
|
+
console.log(` [web_search_ss] isBrowserRunning=${be.isBrowserRunning()}`);
|
|
1326
|
+
// Ensure browser is running
|
|
1326
1327
|
if (!be.isBrowserRunning()) {
|
|
1328
|
+
console.log(` [web_search_ss] launching browser...`);
|
|
1327
1329
|
await be.browserOpen('https://example.com', { waitForLoad: true });
|
|
1330
|
+
console.log(` [web_search_ss] browser launched`);
|
|
1328
1331
|
}
|
|
1329
1332
|
// Build search results HTML
|
|
1330
1333
|
const esc = (s) => (s || '').replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"');
|
|
@@ -1345,7 +1348,7 @@ export async function executeTool(action, params, config) {
|
|
|
1345
1348
|
fsMod.writeFileSync(path.join(ssDir, ssFilename), Buffer.from(ss.base64, 'base64'));
|
|
1346
1349
|
return textResult + `\n\n[Screenshot of results captured (${Math.round(ss.size / 1024)}KB) file:${ssFilename}]`;
|
|
1347
1350
|
}
|
|
1348
|
-
} catch {
|
|
1351
|
+
} catch (ssErr) { console.log(` [web_search_ss] ERROR: ${ssErr.message}`); }
|
|
1349
1352
|
}
|
|
1350
1353
|
|
|
1351
1354
|
return textResult;
|