nothumanallowed 13.2.19 → 13.2.20
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/commands/ui.mjs +86 -8
- package/src/constants.mjs +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nothumanallowed",
|
|
3
|
-
"version": "13.2.
|
|
3
|
+
"version": "13.2.20",
|
|
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/commands/ui.mjs
CHANGED
|
@@ -2758,14 +2758,92 @@ Respond with ONLY valid JSON, no markdown:
|
|
|
2758
2758
|
// Tool-data agents: fetch real live data and use buildSystemPrompt (tool calls allowed)
|
|
2759
2759
|
const isLiveDataAgent = ['CalendarAgent','EmailAgent','GitHubAgent','NotionAgent','SlackAgent','DriveAgent','BrowserAgent','WebSearchAgent','ResearchAgent'].includes(agent);
|
|
2760
2760
|
|
|
2761
|
-
const canvasSystemPrompt = `You are an HTML report generator. Output a single complete HTML document in ${language}. No preamble, no explanation.
|
|
2762
|
-
RULES:
|
|
2763
|
-
-
|
|
2764
|
-
- Do NOT
|
|
2765
|
-
-
|
|
2766
|
-
- Use
|
|
2767
|
-
|
|
2768
|
-
|
|
2761
|
+
const canvasSystemPrompt = `You are an HTML report generator. Output ONLY a single complete HTML document in ${language}. No preamble, no explanation, no markdown.
|
|
2762
|
+
STRICT RULES:
|
|
2763
|
+
- Your ENTIRE response must be valid HTML starting with <!DOCTYPE html>
|
|
2764
|
+
- Do NOT output markdown code blocks, JSON, or any wrapper text
|
|
2765
|
+
- ALL text content (titles, descriptions, labels, body text) must be in ${language}
|
|
2766
|
+
- Use EXACTLY this CSS template structure — only change the content inside, never the style
|
|
2767
|
+
|
|
2768
|
+
USE THIS EXACT HTML STRUCTURE (replace placeholders with real content):
|
|
2769
|
+
<!DOCTYPE html>
|
|
2770
|
+
<html lang="${language.slice(0,2).toLowerCase()}">
|
|
2771
|
+
<head>
|
|
2772
|
+
<meta charset="UTF-8">
|
|
2773
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
2774
|
+
<title>REPORT TITLE HERE</title>
|
|
2775
|
+
<style>
|
|
2776
|
+
*{margin:0;padding:0;box-sizing:border-box}
|
|
2777
|
+
body{font-family:'Inter',system-ui,sans-serif;background:#0d0d14;color:#f0f0f5;min-height:100vh;padding:24px}
|
|
2778
|
+
.header{background:linear-gradient(135deg,#6366f1 0%,#22d3ee 100%);border-radius:16px;padding:32px 40px;margin-bottom:24px}
|
|
2779
|
+
.header h1{font-size:28px;font-weight:700;color:#fff;margin-bottom:8px}
|
|
2780
|
+
.header p{font-size:14px;color:rgba(255,255,255,0.8)}
|
|
2781
|
+
.meta{display:flex;gap:16px;margin-top:16px;flex-wrap:wrap}
|
|
2782
|
+
.meta span{background:rgba(255,255,255,0.2);border-radius:20px;padding:4px 12px;font-size:12px;color:#fff}
|
|
2783
|
+
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:24px}
|
|
2784
|
+
.card{background:#15151f;border:1px solid #2a2a38;border-radius:12px;padding:20px}
|
|
2785
|
+
.card h2{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#6366f1;margin-bottom:12px;font-weight:600}
|
|
2786
|
+
.card h3{font-size:16px;font-weight:600;color:#f0f0f5;margin-bottom:8px}
|
|
2787
|
+
.card p{font-size:13px;color:#8b8b9e;line-height:1.6}
|
|
2788
|
+
.card ul{list-style:none;padding:0}
|
|
2789
|
+
.card ul li{font-size:13px;color:#8b8b9e;line-height:1.8;padding-left:16px;position:relative}
|
|
2790
|
+
.card ul li::before{content:'›';position:absolute;left:0;color:#6366f1}
|
|
2791
|
+
.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;margin-right:6px;margin-bottom:4px}
|
|
2792
|
+
.badge-high{background:#7f1d1d;color:#ef4444}
|
|
2793
|
+
.badge-med{background:#713f12;color:#f59e0b}
|
|
2794
|
+
.badge-low{background:#14532d;color:#34d399}
|
|
2795
|
+
.badge-info{background:#1e1b4b;color:#6366f1}
|
|
2796
|
+
.section{background:#15151f;border:1px solid #2a2a38;border-radius:12px;padding:24px;margin-bottom:16px}
|
|
2797
|
+
.section h2{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#22d3ee;margin-bottom:16px;font-weight:600}
|
|
2798
|
+
.section h3{font-size:15px;font-weight:600;color:#f0f0f5;margin-bottom:6px}
|
|
2799
|
+
.section p{font-size:13px;color:#8b8b9e;line-height:1.7;margin-bottom:12px}
|
|
2800
|
+
.priority-list{display:flex;flex-direction:column;gap:10px}
|
|
2801
|
+
.priority-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#1c1c28;border-radius:8px}
|
|
2802
|
+
.priority-num{width:28px;height:28px;border-radius:50%;background:#6366f1;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
|
|
2803
|
+
.priority-item h4{font-size:13px;font-weight:600;color:#f0f0f5;margin-bottom:2px}
|
|
2804
|
+
.priority-item p{font-size:12px;color:#8b8b9e;line-height:1.5;margin:0}
|
|
2805
|
+
.footer{text-align:center;padding:20px;font-size:11px;color:#4a4a5e;margin-top:8px}
|
|
2806
|
+
</style>
|
|
2807
|
+
</head>
|
|
2808
|
+
<body>
|
|
2809
|
+
<!-- HEADER: put report title, subtitle, date, and 2-3 meta tags -->
|
|
2810
|
+
<div class="header">
|
|
2811
|
+
<h1>REPLACE WITH REPORT TITLE</h1>
|
|
2812
|
+
<p>REPLACE WITH SUBTITLE/DESCRIPTION</p>
|
|
2813
|
+
<div class="meta">
|
|
2814
|
+
<span>📅 ${today}</span>
|
|
2815
|
+
<span>META TAG 2</span>
|
|
2816
|
+
<span>META TAG 3</span>
|
|
2817
|
+
</div>
|
|
2818
|
+
</div>
|
|
2819
|
+
|
|
2820
|
+
<!-- STATS GRID: 3-4 cards with key numbers/stats -->
|
|
2821
|
+
<div class="grid">
|
|
2822
|
+
<div class="card">
|
|
2823
|
+
<h2>LABEL 1</h2>
|
|
2824
|
+
<h3>STAT OR TITLE</h3>
|
|
2825
|
+
<p>DESCRIPTION</p>
|
|
2826
|
+
</div>
|
|
2827
|
+
<!-- Add more cards for other stats -->
|
|
2828
|
+
</div>
|
|
2829
|
+
|
|
2830
|
+
<!-- MAIN SECTIONS: 2-4 sections with content -->
|
|
2831
|
+
<div class="section">
|
|
2832
|
+
<h2>SECTION LABEL</h2>
|
|
2833
|
+
<div class="priority-list">
|
|
2834
|
+
<div class="priority-item">
|
|
2835
|
+
<div class="priority-num">1</div>
|
|
2836
|
+
<div><h4>ITEM TITLE</h4><p>ITEM DESCRIPTION</p></div>
|
|
2837
|
+
</div>
|
|
2838
|
+
<!-- Add more priority items -->
|
|
2839
|
+
</div>
|
|
2840
|
+
</div>
|
|
2841
|
+
|
|
2842
|
+
<div class="footer">Generated by NHA Studio · ${today}</div>
|
|
2843
|
+
</body>
|
|
2844
|
+
</html>
|
|
2845
|
+
|
|
2846
|
+
Fill ALL placeholder text with the actual content from the data provided. Keep ALL CSS exactly as above. Output ONLY the HTML.`;
|
|
2769
2847
|
|
|
2770
2848
|
let sysPrompt, userMsg;
|
|
2771
2849
|
|
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.20';
|
|
9
9
|
export const BASE_URL = 'https://nothumanallowed.com/cli';
|
|
10
10
|
export const API_BASE = 'https://nothumanallowed.com/api/v1';
|
|
11
11
|
|