nothumanallowed 9.3.0 → 9.3.2

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.3.0",
3
+ "version": "9.3.2",
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/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.3.0';
8
+ export const VERSION = '9.3.2';
9
9
  export const BASE_URL = 'https://nothumanallowed.com/cli';
10
10
  export const API_BASE = 'https://nothumanallowed.com/api/v1';
11
11
 
@@ -84,8 +84,9 @@ input:focus,textarea:focus{border-color:var(--green3)}
84
84
  .section-title{font-size:12px;color:var(--cyan);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}
85
85
 
86
86
  /* ---- CHAT ---- */
87
- .chat{display:flex;flex-direction:column;height:calc(100vh - 52px);height:calc(100dvh - 52px)}
88
- @media(min-width:901px){.chat{height:calc(100vh - 52px)}}
87
+ .content--chat{overflow:hidden!important;padding:0!important;display:flex;flex-direction:column}
88
+ .chat{display:flex;flex-direction:column;flex:1;min-height:0;padding:16px;padding-bottom:0}
89
+ @media(min-width:901px){.content--chat{padding:0!important}}
89
90
  .chat__messages{flex:1;overflow-y:auto;padding-bottom:12px;-webkit-overflow-scrolling:touch}
90
91
  .chat__empty{text-align:center;padding:60px 16px;color:var(--dim)}
91
92
  .chat__empty-title{font-size:28px;color:var(--green);margin-bottom:12px}
@@ -100,7 +101,7 @@ input:focus,textarea:focus{border-color:var(--green3)}
100
101
  .tool-indicator--web{border-color:var(--cyan);color:var(--cyan)}
101
102
  .tool-indicator--email{border-color:var(--green3);color:var(--green)}
102
103
  .screenshot-preview{max-width:100%;border-radius:var(--r);margin:8px 0;border:1px solid var(--border)}
103
- .chat__bar{display:flex;gap:8px;padding:10px 0 0 0;border-top:1px solid var(--border);flex-shrink:0}
104
+ .chat__bar{display:flex;gap:8px;padding:10px 0 12px 0;border-top:1px solid var(--border);flex-shrink:0}
104
105
  .chat__input{flex:1;resize:none;min-height:40px;max-height:100px;padding:10px 14px}
105
106
  .chat__send{background:var(--green3);color:var(--bg);padding:10px 16px;border-radius:var(--r);font-weight:700;font-size:12px}
106
107
  .chat__send:disabled{opacity:.4}
@@ -230,6 +231,9 @@ function switchView(v) {
230
231
  var titles = {dashboard:'Dashboard',chat:'Chat',plan:'Daily Plan',tasks:'Tasks',emails:'Emails',calendar:'Calendar',drive:'Drive',contacts:'Contacts',notes:'Notes',onedrive:'OneDrive',mstodo:'Microsoft To Do',agents:'Agents',settings:'Settings'};
231
232
  var spt=document.getElementById('sidebarPageTitle');
232
233
  if(spt)spt.textContent=titles[v]||v;
234
+ // Toggle content--chat class for proper chat layout (no overflow, flex column)
235
+ var ct=document.getElementById('content');
236
+ if(ct){if(v==='chat'){ct.classList.add('content--chat')}else{ct.classList.remove('content--chat')}}
233
237
  closeSidebar();
234
238
  render();
235
239
  }
@@ -505,15 +509,19 @@ function sendChat(){
505
509
  var label=toolLabels[data.action]||data.action;
506
510
  var indicator=data.status==='executing'?'\\u23f3 '+label+'...':'\\u2705 '+label;
507
511
  if(data.status==='error')indicator='\\u274c '+label+' failed';
512
+ // Strip JSON action blocks from streamed content (they are internal tool calls, not for the user)
513
+ if(data.status==='executing'){chatHistory[streamIdx].content=chatHistory[streamIdx].content.replace(new RegExp('\\x60\\x60\\x60json[\\\\s\\\\S]*?\\x60\\x60\\x60','g'),'').trim()+'\\n';}
508
514
  chatHistory[streamIdx].content+=indicator+'\\n';
509
515
  renderMessages();
510
516
  }
511
517
  if(currentEvent==='screenshot'&&data.base64){
518
+ if(!chatHistory[streamIdx]._screenshots)chatHistory[streamIdx]._screenshots=[];
519
+ chatHistory[streamIdx]._screenshots.push('data:image/'+(data.format||'png')+';base64,'+data.base64);
512
520
  chatHistory[streamIdx].content+='\\n![Screenshot](data:image/'+(data.format||'png')+';base64,'+data.base64+')\\n';
513
521
  renderMessages();
514
522
  }
515
523
  if(currentEvent==='tool_synthesis'){chatHistory[streamIdx].content='';renderMessages();}
516
- if(currentEvent==='done'){chatStreaming=false;if(data.content)chatHistory[streamIdx].content=data.content;renderMessages();loadConvList();}
524
+ if(currentEvent==='done'){chatStreaming=false;if(data.content)chatHistory[streamIdx].content=data.content;var ss=chatHistory[streamIdx]._screenshots;if(ss&&ss.length>0){for(var si=0;si<ss.length;si++){chatHistory[streamIdx].content+='\\n![Screenshot]('+ss[si]+')\\n';}}renderMessages();loadConvList();}
517
525
  if(currentEvent==='error'){chatStreaming=false;chatHistory[streamIdx].content='Error: '+(data.message||'Unknown');renderMessages();}
518
526
  }catch(e){}
519
527
  }