nothumanallowed 13.5.90 → 13.5.91
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/services/web-ui.mjs +48 -48
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nothumanallowed",
|
|
3
|
-
"version": "13.5.
|
|
3
|
+
"version": "13.5.91",
|
|
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/services/web-ui.mjs
CHANGED
|
@@ -6558,6 +6558,53 @@ var _wcLastFilePlan = []; // saved for manual repair trigger
|
|
|
6558
6558
|
var _wcLastSysPreamble = '';
|
|
6559
6559
|
var _wcTokIn = 0; // global token counters (accumulate across generation + repair)
|
|
6560
6560
|
var _wcTokOut = 0;
|
|
6561
|
+
var _wcGenOverlayState = { fi: 0, total: 0, name: '' };
|
|
6562
|
+
var _wcGenStartTime = 0;
|
|
6563
|
+
var _wcTimerInterval = null;
|
|
6564
|
+
|
|
6565
|
+
function wcGenElapsed() {
|
|
6566
|
+
var s = Math.floor((Date.now() - _wcGenStartTime) / 1000);
|
|
6567
|
+
var m = Math.floor(s / 60); s = s % 60;
|
|
6568
|
+
return (m > 0 ? m + 'm ' : '') + s + 's';
|
|
6569
|
+
}
|
|
6570
|
+
|
|
6571
|
+
function wcStartGenTimer() {
|
|
6572
|
+
if (_wcTimerInterval) clearInterval(_wcTimerInterval);
|
|
6573
|
+
_wcTimerInterval = setInterval(function() {
|
|
6574
|
+
if (!wcState.running) { clearInterval(_wcTimerInterval); _wcTimerInterval = null; return; }
|
|
6575
|
+
if (_wcOverlayMinimized) {
|
|
6576
|
+
var pill = document.getElementById('wcPillLabel');
|
|
6577
|
+
if (pill) pill.textContent = _wcGenOverlayState.name || 'Generando...';
|
|
6578
|
+
var ov = document.getElementById('wcGenOverlay');
|
|
6579
|
+
if (ov) { var spans = ov.querySelectorAll('span'); if (spans[1]) spans[1].textContent = wcGenElapsed(); }
|
|
6580
|
+
} else {
|
|
6581
|
+
wcUpdateGenOverlay(_wcGenOverlayState.fi, _wcGenOverlayState.total, _wcGenOverlayState.name);
|
|
6582
|
+
}
|
|
6583
|
+
}, 1000);
|
|
6584
|
+
}
|
|
6585
|
+
|
|
6586
|
+
function wcUpdateGenOverlay(fi2, total, name) {
|
|
6587
|
+
_wcGenOverlayState = { fi: fi2, total: total, name: name };
|
|
6588
|
+
if (_wcOverlayMinimized) return;
|
|
6589
|
+
var ov = document.getElementById('wcGenOverlay');
|
|
6590
|
+
if (!ov) return;
|
|
6591
|
+
var pct = Math.round((fi2 / total) * 100);
|
|
6592
|
+
var tokLabel = (_wcTokIn + _wcTokOut) > 0
|
|
6593
|
+
? '<div style="font-size:10px;color:var(--dim);margin-top:4px;font-family:var(--mono)">⇧' + _wcTokIn.toLocaleString() + ' ⇩' + _wcTokOut.toLocaleString() + ' tok</div>'
|
|
6594
|
+
: '';
|
|
6595
|
+
ov.innerHTML =
|
|
6596
|
+
'<div style="font-size:38px;animation:wcRobotBob 1s ease-in-out infinite">🤖</div>' +
|
|
6597
|
+
'<div style="font-size:13px;font-weight:700;color:var(--green);margin-top:12px">' + (name.indexOf('Retry:') === 0 ? 'Retry in corso...' : name.indexOf('Fix:') === 0 ? 'Correzione in corso...' : 'Generazione in corso...') + '</div>' +
|
|
6598
|
+
'<div style="font-size:10px;color:var(--dim);margin-top:2px">Clicca per navigare i file</div>' +
|
|
6599
|
+
'<div style="font-size:11px;color:'+(name.indexOf('Retry:')===0?'#fb923c':name.indexOf('Fix:')===0?'#facc15':'var(--dim)')+';font-family:var(--mono);max-width:300px;text-align:center;word-break:break-all;margin-top:8px">'+wcEsc(name)+'</div>' +
|
|
6600
|
+
'<div style="width:220px;height:4px;background:rgba(255,255,255,0.1);border-radius:2px;overflow:hidden;margin-top:12px">' +
|
|
6601
|
+
'<div style="height:100%;width:'+pct+'%;background:var(--green);border-radius:2px;transition:width .4s ease;animation:wcBarPulse 1.5s ease-in-out infinite"></div>' +
|
|
6602
|
+
'</div>' +
|
|
6603
|
+
'<div style="font-size:10px;color:var(--dim);margin-top:6px">'+fi2+' / '+total+' file · '+wcGenElapsed()+'</div>' +
|
|
6604
|
+
tokLabel +
|
|
6605
|
+
'<div style="display:flex;gap:4px;margin-top:10px">'+[0,1,2,3,4].map(function(_,idx){ return '<div style="width:6px;height:6px;border-radius:50%;background:var(--green);animation:wcDot 1.1s ease-in-out infinite '+(idx*0.14)+'s"></div>'; }).join('')+'</div>';
|
|
6606
|
+
}
|
|
6607
|
+
|
|
6561
6608
|
// Skills state
|
|
6562
6609
|
var wcSkills = []; // [{name, content, type}] type: 'skill'|'memory'|'provider'
|
|
6563
6610
|
var wcSkillModal = null; // null | {mode:'edit'|'new', idx:number|null, name, content, type, generating}
|
|
@@ -7937,55 +7984,8 @@ async function wcGenerate() {
|
|
|
7937
7984
|
_wcLastFilePlan = filePlan;
|
|
7938
7985
|
_wcLastSysPreamble = sysPreamble;
|
|
7939
7986
|
|
|
7940
|
-
|
|
7987
|
+
_wcGenStartTime = Date.now();
|
|
7941
7988
|
_wcTokIn = 0; _wcTokOut = 0; // reset global counters for this generation run
|
|
7942
|
-
var _wcTimerInterval = null;
|
|
7943
|
-
|
|
7944
|
-
function wcGenElapsed() {
|
|
7945
|
-
var s = Math.floor((Date.now() - _wcGenStartTime) / 1000);
|
|
7946
|
-
var m = Math.floor(s / 60); s = s % 60;
|
|
7947
|
-
return (m > 0 ? m + 'm ' : '') + s + 's';
|
|
7948
|
-
}
|
|
7949
|
-
|
|
7950
|
-
function wcStartGenTimer() {
|
|
7951
|
-
if (_wcTimerInterval) clearInterval(_wcTimerInterval);
|
|
7952
|
-
_wcTimerInterval = setInterval(function() {
|
|
7953
|
-
if (!wcState.running) { clearInterval(_wcTimerInterval); _wcTimerInterval = null; return; }
|
|
7954
|
-
if (_wcOverlayMinimized) {
|
|
7955
|
-
// Update pill label + elapsed without full re-render
|
|
7956
|
-
var pill = document.getElementById('wcPillLabel');
|
|
7957
|
-
if (pill) pill.textContent = _wcGenOverlayState.name || 'Generando...';
|
|
7958
|
-
var ov = document.getElementById('wcGenOverlay');
|
|
7959
|
-
if (ov) { var spans = ov.querySelectorAll('span'); if (spans[1]) spans[1].textContent = wcGenElapsed(); }
|
|
7960
|
-
} else {
|
|
7961
|
-
wcUpdateGenOverlay(_wcGenOverlayState.fi, _wcGenOverlayState.total, _wcGenOverlayState.name);
|
|
7962
|
-
}
|
|
7963
|
-
}, 1000);
|
|
7964
|
-
}
|
|
7965
|
-
|
|
7966
|
-
var _wcGenOverlayState = { fi: 0, total: 0, name: '' };
|
|
7967
|
-
|
|
7968
|
-
function wcUpdateGenOverlay(fi2, total, name) {
|
|
7969
|
-
_wcGenOverlayState = { fi: fi2, total: total, name: name };
|
|
7970
|
-
if (_wcOverlayMinimized) return;
|
|
7971
|
-
var ov = document.getElementById('wcGenOverlay');
|
|
7972
|
-
if (!ov) return;
|
|
7973
|
-
var pct = Math.round((fi2 / total) * 100);
|
|
7974
|
-
var tokLabel = (_wcTokIn + _wcTokOut) > 0
|
|
7975
|
-
? '<div style="font-size:10px;color:var(--dim);margin-top:4px;font-family:var(--mono)">⇧' + _wcTokIn.toLocaleString() + ' ⇩' + _wcTokOut.toLocaleString() + ' tok</div>'
|
|
7976
|
-
: '';
|
|
7977
|
-
ov.innerHTML =
|
|
7978
|
-
'<div style="font-size:38px;animation:wcRobotBob 1s ease-in-out infinite">🤖</div>' +
|
|
7979
|
-
'<div style="font-size:13px;font-weight:700;color:var(--green);margin-top:12px">' + (name.indexOf('Retry:') === 0 ? 'Retry in corso...' : name.indexOf('Fix:') === 0 ? 'Correzione in corso...' : 'Generazione in corso...') + '</div>' +
|
|
7980
|
-
'<div style="font-size:10px;color:var(--dim);margin-top:2px">Clicca per navigare i file</div>' +
|
|
7981
|
-
'<div style="font-size:11px;color:'+(name.indexOf('Retry:')===0?'#fb923c':name.indexOf('Fix:')===0?'#facc15':'var(--dim)')+';font-family:var(--mono);max-width:300px;text-align:center;word-break:break-all;margin-top:8px">'+wcEsc(name)+'</div>' +
|
|
7982
|
-
'<div style="width:220px;height:4px;background:rgba(255,255,255,0.1);border-radius:2px;overflow:hidden;margin-top:12px">' +
|
|
7983
|
-
'<div style="height:100%;width:'+pct+'%;background:var(--green);border-radius:2px;transition:width .4s ease;animation:wcBarPulse 1.5s ease-in-out infinite"></div>' +
|
|
7984
|
-
'</div>' +
|
|
7985
|
-
'<div style="font-size:10px;color:var(--dim);margin-top:6px">'+fi2+' / '+total+' file · '+wcGenElapsed()+'</div>' +
|
|
7986
|
-
tokLabel +
|
|
7987
|
-
'<div style="display:flex;gap:4px;margin-top:10px">'+[0,1,2,3,4].map(function(_,idx){ return '<div style="width:6px;height:6px;border-radius:50%;background:var(--green);animation:wcDot 1.1s ease-in-out infinite '+(idx*0.14)+'s"></div>'; }).join('')+'</div>';
|
|
7988
|
-
}
|
|
7989
7989
|
|
|
7990
7990
|
// Helper: generate one file
|
|
7991
7991
|
async function wcGenOneFile(fp, signal) {
|