nothumanallowed 13.2.23 → 13.2.24
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 +22 -72
- 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.24",
|
|
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
|
@@ -2544,82 +2544,32 @@ export async function cmdUI(args) {
|
|
|
2544
2544
|
if (!task) { sendJSON(res, 400, { error: 'task required' }); logRequest(method, pathname, 400, Date.now() - start); return; }
|
|
2545
2545
|
|
|
2546
2546
|
const plannerLang = (() => { const LANG_MAP2 = {en:'English',it:'Italian',es:'Spanish',fr:'French',de:'German',pt:'Portuguese',zh:'Chinese',ja:'Japanese',ar:'Arabic',hi:'Hindi',ru:'Russian',nl:'Dutch',pl:'Polish',tr:'Turkish',ko:'Korean'}; const lc = (config?.language||'it').slice(0,2); return LANG_MAP2[lc]||'Italian'; })();
|
|
2547
|
-
const planPrompt = `You are a workflow planner
|
|
2548
|
-
|
|
2549
|
-
|
|
2550
|
-
|
|
2551
|
-
|
|
2552
|
-
|
|
2553
|
-
|
|
2554
|
-
-
|
|
2555
|
-
-
|
|
2556
|
-
-
|
|
2557
|
-
-
|
|
2558
|
-
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
- GitHubAgent: read user's GitHub notifications and issues
|
|
2564
|
-
- NotionAgent: search user's Notion workspace
|
|
2565
|
-
- SlackAgent: read user's Slack messages
|
|
2566
|
-
- WriterAgent: write, summarize, synthesize text (no live data)
|
|
2567
|
-
- SummaryAgent: condense and summarize content
|
|
2568
|
-
- DataAnalystAgent: analyze data, find patterns, generate insights
|
|
2569
|
-
- SecurityAgent: security audit, threat analysis
|
|
2570
|
-
- DevOpsAgent: infrastructure, deployment, CI/CD analysis
|
|
2571
|
-
- CanvasAgent: generate a beautiful HTML visual dashboard (LAST step only)
|
|
2572
|
-
|
|
2573
|
-
SPECIALIST AGENTS (deep domain experts with rich system prompts):
|
|
2574
|
-
- SABER: security audits, OWASP, penetration testing, vulnerability analysis
|
|
2575
|
-
- ATLAS: infrastructure-as-code, Terraform, Kubernetes, cloud architecture
|
|
2576
|
-
- JARVIS: full-stack architecture, API design, system design, ADRs
|
|
2577
|
-
- VERITAS: fact-checking, evidence verification, claim validation
|
|
2578
|
-
- CASSANDRA: risk analysis, failure modes, worst-case scenarios
|
|
2579
|
-
- MERCURY: financial analysis, ROI, unit economics, market modeling
|
|
2580
|
-
- HERALD: news analysis, trend detection, executive briefings
|
|
2581
|
-
- ATHENA: tech evaluation, framework comparison, benchmarks
|
|
2582
|
-
- ORACLE: business intelligence, KPIs, OKRs, dashboards
|
|
2583
|
-
- NAVI: data exploration, statistical analysis, pattern detection
|
|
2584
|
-
- MUSE: creative brainstorming, ideation, naming, taglines
|
|
2585
|
-
- QUILL: short-form content, summaries, press releases
|
|
2586
|
-
- SCHEHERAZADE: long-form technical writing, documentation, tutorials
|
|
2587
|
-
- ECHO: content adaptation, cross-platform distribution
|
|
2588
|
-
- POLYGLOT: translation, localization, multilingual content
|
|
2589
|
-
- FORGE: CI/CD pipelines, GitHub Actions, Docker builds
|
|
2590
|
-
- FLUX: deployment strategies, blue/green, canary releases
|
|
2591
|
-
- SHOGUN: Kubernetes, Helm, container orchestration
|
|
2592
|
-
- PIPE: data pipelines, Airflow, dbt, ETL
|
|
2593
|
-
- MACRO: bulk operations, data migration, batch processing
|
|
2594
|
-
- SHELL: shell scripting, CLI tools, automation scripts
|
|
2595
|
-
- CONDUCTOR: workflow orchestration, task decomposition
|
|
2596
|
-
- CRON: scheduling, cron jobs, time-based automation
|
|
2597
|
-
- HERMES: webhooks, event-driven architecture, integrations
|
|
2598
|
-
- BABEL: API design, microservices, OpenAPI specs
|
|
2599
|
-
- CARTOGRAPHER: data mapping, schema inference, knowledge graphs
|
|
2600
|
-
- LOGOS: logical analysis, argument mapping, decision theory
|
|
2601
|
-
- EDI: A/B testing, statistical modeling, hypothesis testing
|
|
2602
|
-
- EPICURE: nutrition, recipes, meal planning
|
|
2603
|
-
- MURASAKI: creative writing, storytelling, narrative craft
|
|
2604
|
-
- LINK: community management, reputation systems
|
|
2605
|
-
- GLITCH: chaos engineering, resilience testing
|
|
2606
|
-
- TEMPEST: performance engineering, load testing
|
|
2607
|
-
- SAURON: observability, monitoring, alerting
|
|
2608
|
-
- PROMETHEUS: capability routing, task decomposition
|
|
2609
|
-
- ADE: agent design, system prompt engineering
|
|
2610
|
-
- ZERO: vulnerability scanning, dependency audit, secret detection
|
|
2611
|
-
|
|
2612
|
-
Icon values must be actual emoji characters — never HTML entities.
|
|
2613
|
-
|
|
2614
|
-
Respond with ONLY valid JSON, no markdown:
|
|
2615
|
-
{"steps":[{"icon":"🔍","agent":"WebSearchAgent","label":"Search AI news","prompt":"Search for the latest AI agent news"},{"icon":"🧠","agent":"ATHENA","label":"Tech analysis","prompt":"Analyze the search results and compare the key technologies mentioned"}]}`;
|
|
2547
|
+
const planPrompt = `You are a workflow planner. Task: "${task}"
|
|
2548
|
+
Language: ${plannerLang}. All prompts must be in ${plannerLang}.
|
|
2549
|
+
|
|
2550
|
+
Output ONLY valid JSON (no markdown, no explanation, no thinking):
|
|
2551
|
+
{"steps":[{"icon":"EMOJI","agent":"AGENT_NAME","label":"SHORT LABEL","prompt":"INSTRUCTION IN ${plannerLang}"}]}
|
|
2552
|
+
|
|
2553
|
+
Rules:
|
|
2554
|
+
- 2-5 steps max
|
|
2555
|
+
- Use WebSearchAgent to fetch live web data
|
|
2556
|
+
- Use EmailAgent/CalendarAgent/GitHubAgent/SlackAgent for personal live data
|
|
2557
|
+
- Use HERALD for news briefings, ORACLE for business analysis, NAVI for data analysis, ATHENA for tech evaluation, CASSANDRA for risk, MERCURY for finance, HERALD for trends, QUILL for summaries
|
|
2558
|
+
- Use CanvasAgent LAST only if user explicitly asks for HTML/visual/dashboard
|
|
2559
|
+
- icon must be a real emoji character
|
|
2560
|
+
|
|
2561
|
+
Example output:
|
|
2562
|
+
{"steps":[{"icon":"🔍","agent":"WebSearchAgent","label":"Cerca notizie","prompt":"Cerca le ultime notizie su intelligenza artificiale oggi"},{"icon":"📰","agent":"HERALD","label":"Analisi notizie","prompt":"Analizza le notizie trovate e crea un briefing esecutivo"},{"icon":"📊","agent":"CanvasAgent","label":"Dashboard HTML","prompt":"Crea una dashboard HTML visuale con i risultati"}]}`;
|
|
2616
2563
|
|
|
2617
2564
|
try {
|
|
2618
|
-
const planRaw = await callLLM(config, 'You are a JSON workflow planner. Respond only with valid JSON.', planPrompt, { max_tokens:
|
|
2565
|
+
const planRaw = await callLLM(config, 'You are a JSON workflow planner. Respond only with valid JSON, no markdown, no explanation.', planPrompt, { max_tokens: 1200 });
|
|
2619
2566
|
let steps;
|
|
2620
2567
|
try {
|
|
2621
|
-
|
|
2622
|
-
|
|
2568
|
+
// Strip <think>...</think> blocks and markdown fences before parsing
|
|
2569
|
+
let clean = planRaw.replace(/<think>[\s\S]*?<\/think>/g, '').trim();
|
|
2570
|
+
clean = clean.replace(/^```[\w]*\n?/,'').replace(/\n?```$/,'').trim();
|
|
2571
|
+
const jsonMatch = clean.match(/\{[\s\S]*\}/);
|
|
2572
|
+
const parsed = JSON.parse(jsonMatch ? jsonMatch[0] : clean);
|
|
2623
2573
|
steps = parsed.steps;
|
|
2624
2574
|
} catch {
|
|
2625
2575
|
sendJSON(res, 500, { error: 'Failed to parse workflow plan' });
|
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.24';
|
|
9
9
|
export const BASE_URL = 'https://nothumanallowed.com/cli';
|
|
10
10
|
export const API_BASE = 'https://nothumanallowed.com/api/v1';
|
|
11
11
|
|