nothumanallowed 13.2.67 → 13.2.69
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 +1 -1
- package/src/constants.mjs +1 -1
- package/src/services/web-ui.mjs +5 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nothumanallowed",
|
|
3
|
-
"version": "13.2.
|
|
3
|
+
"version": "13.2.69",
|
|
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 = '13.2.
|
|
8
|
+
export const VERSION = '13.2.69';
|
|
9
9
|
export const BASE_URL = 'https://nothumanallowed.com/cli';
|
|
10
10
|
export const API_BASE = 'https://nothumanallowed.com/api/v1';
|
|
11
11
|
|
package/src/services/web-ui.mjs
CHANGED
|
@@ -3268,14 +3268,14 @@ function studioHandleAttach(file) {
|
|
|
3268
3268
|
if (!file) return;
|
|
3269
3269
|
var name = file.name;
|
|
3270
3270
|
var isPdf = name.toLowerCase().endsWith('.pdf');
|
|
3271
|
-
var isImg =
|
|
3271
|
+
var isImg = new RegExp('[.](png|jpe?g|gif|webp)$', 'i').test(name);
|
|
3272
3272
|
if (!isPdf && !isImg) { alert('Supported: PDF, PNG, JPG, GIF, WEBP'); return; }
|
|
3273
3273
|
|
|
3274
3274
|
var reader = new FileReader();
|
|
3275
3275
|
reader.onload = function(ev) {
|
|
3276
3276
|
var dataUrl = ev.target.result;
|
|
3277
3277
|
studioState.attachmentName = name;
|
|
3278
|
-
studioState.attachmentContext = (isPdf ? '[ATTACHED PDF: ' : '[ATTACHED IMAGE: ') + name + ']
|
|
3278
|
+
studioState.attachmentContext = (isPdf ? '[ATTACHED PDF: ' : '[ATTACHED IMAGE: ') + name + ']' + String.fromCharCode(10) + 'Base64: ' + dataUrl;
|
|
3279
3279
|
// Show badge inline without full re-render
|
|
3280
3280
|
var inputRow = document.querySelector('.studio-input-row');
|
|
3281
3281
|
if (inputRow) {
|
|
@@ -3516,8 +3516,9 @@ async function runStudio() {
|
|
|
3516
3516
|
|
|
3517
3517
|
try {
|
|
3518
3518
|
// Step 1: plan the workflow
|
|
3519
|
+
var nl = String.fromCharCode(10);
|
|
3519
3520
|
var taskForPlan = studioState.attachmentContext
|
|
3520
|
-
? task + '
|
|
3521
|
+
? task + nl + nl + '[User has attached a file: ' + studioState.attachmentName + '. Agents will receive the full content.]'
|
|
3521
3522
|
: task;
|
|
3522
3523
|
var planRes = await apiPost('/api/studio/plan', {task: taskForPlan});
|
|
3523
3524
|
if (!planRes || !planRes.steps || !planRes.steps.length) {
|
|
@@ -3781,7 +3782,7 @@ function runStudioStep(idx, node, task, context, stepDef, signal) {
|
|
|
3781
3782
|
var canvasHtml = null;
|
|
3782
3783
|
// Inject attachment context into first step (idx===0) if present
|
|
3783
3784
|
var effectiveContext = (idx === 0 && studioState.attachmentContext)
|
|
3784
|
-
? (studioState.attachmentContext + (context ?
|
|
3785
|
+
? (studioState.attachmentContext + (context ? String.fromCharCode(10) + String.fromCharCode(10) + context : ''))
|
|
3785
3786
|
: context;
|
|
3786
3787
|
var body = JSON.stringify({stepIdx: idx, agent: node.agent, task: task, context: effectiveContext, stepDef: stepDef});
|
|
3787
3788
|
var fetchOpts = {method: 'POST', headers: {'Content-Type': 'application/json'}, body: body};
|