nothumanallowed 14.0.0 → 14.0.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": "14.0.0",
3
+ "version": "14.0.2",
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 = '14.0.0';
8
+ export const VERSION = '14.0.2';
9
9
  export const BASE_URL = 'https://nothumanallowed.com/cli';
10
10
  export const API_BASE = 'https://nothumanallowed.com/api/v1';
11
11
 
@@ -167,6 +167,11 @@ export function register(router) {
167
167
  let effectiveSystemPrompt = config._chatAgent?.systemPrompt || null;
168
168
  let effectiveMsg = msg;
169
169
 
170
+ // Direct systemPrompt override (e.g. Conductor synthesis call)
171
+ if (body.systemPrompt) {
172
+ effectiveSystemPrompt = body.systemPrompt;
173
+ }
174
+
170
175
  // body.agent takes priority (Agents view sends { agent: 'saber', message: '...' })
171
176
  if (body.agent) {
172
177
  const agentFile = path.join(AGENTS_DIR, `${body.agent.toLowerCase()}.mjs`);
@@ -174,6 +179,10 @@ export function register(router) {
174
179
  const parsed = parseAgentFile(fs.readFileSync(agentFile, 'utf-8'), body.agent);
175
180
  if (parsed.systemPrompt) effectiveSystemPrompt = parsed.systemPrompt;
176
181
  }
182
+ // Fallback: use system prompt sent directly by client (from agent card)
183
+ if (!effectiveSystemPrompt && body._agentSystemPrompt) {
184
+ effectiveSystemPrompt = body._agentSystemPrompt;
185
+ }
177
186
  } else {
178
187
  // @agent inline routing
179
188
  const atMatch = msg.match(/^@(\w+)\s+([\s\S]*)/);