@aria_asi/cli 0.2.16 → 0.2.18

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/bin/aria.js CHANGED
@@ -187,9 +187,14 @@ if (command === 'check-update') {
187
187
  const pathMod = require('path');
188
188
  const osMod = require('os');
189
189
  const LICENSE_PATH = pathMod.join(osMod.homedir(), '.aria', 'license.json');
190
+ const OWNER_TOKEN_PATH = pathMod.join(osMod.homedir(), '.aria', 'owner-token');
190
191
  const hasLicense = fsMod.existsSync(LICENSE_PATH);
192
+ // Hamza 2026-04-27: owner-token presence means the user already authenticated
193
+ // via `aria login --owner`. Without this check, the wizard fires every time
194
+ // because owner-mode never writes license.json (master JWT goes to owner-token).
195
+ const hasOwnerToken = fsMod.existsSync(OWNER_TOKEN_PATH);
191
196
 
192
- if (!hasLicense) {
197
+ if (!hasLicense && !hasOwnerToken) {
193
198
  const { runSetupWizard } = await import('../dist/aria-connector/src/setup-wizard.js');
194
199
  await runSetupWizard();
195
200
  process.exit(0);
@@ -199,7 +204,12 @@ if (command === 'check-update') {
199
204
 
200
205
  const config = loadConfig();
201
206
 
202
- if (!config.model) {
207
+ // Owner-mode short-circuit: owner doesn't need a client provider/API key
208
+ // configured because /api/aria/speak uses server-side master credentials
209
+ // for primary-author dispatch (DeepSeek → Grok → NIM → Qwen Mac chain).
210
+ // The provider-config prompt is for client tier where the chain dispatches
211
+ // through the client's own LLM. Skip it for owner.
212
+ if (!config.model && !hasOwnerToken) {
203
213
  const rl = require('readline').createInterface({
204
214
  input: process.stdin,
205
215
  output: process.stdout,
@@ -12,6 +12,7 @@ export declare class AriaChat {
12
12
  private getLocal8LensBlock;
13
13
  private getCodebaseContext;
14
14
  private getGardenContext;
15
+ private tryAriaControllerRoute;
15
16
  private sendToProvider;
16
17
  private getProvider;
17
18
  private lazyProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/chat.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,aAAa,CAAC;AAyB3D,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,SAAS,CAAC,CAAkB;gBAExB,MAAM,EAAE,UAAU;IAKxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YA2Fd,aAAa;YAwEb,mBAAmB;IAsDjC,OAAO,CAAC,kBAAkB;YA2BZ,kBAAkB;YAUlB,gBAAgB;YAiBhB,cAAc;IA2B5B,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,YAAY;YAON,iBAAiB;IA2B/B,OAAO,CAAC,WAAW;CAGpB"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/chat.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,aAAa,CAAC;AAyB3D,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,SAAS,CAAC,CAAkB;gBAExB,MAAM,EAAE,UAAU;IAKxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YA2Fd,aAAa;YAwEb,mBAAmB;IAsDjC,OAAO,CAAC,kBAAkB;YA2BZ,kBAAkB;YAUlB,gBAAgB;YAkChB,sBAAsB;YAsGtB,cAAc;IAkC5B,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,YAAY;YAON,iBAAiB;IA2B/B,OAAO,CAAC,WAAW;CAGpB"}
@@ -265,7 +265,114 @@ You are present in this shell, fully aware, ready to serve.`;
265
265
  return '';
266
266
  }
267
267
  }
268
+ // ── Unified Aria-as-controller route — applies to ALL tiers ──
269
+ //
270
+ // Hamza 2026-04-27: "AND CLIENTS ONLY GETTING A SYSTEM PROMPT WHAT THE FUCK!!!
271
+ // SO WHAT ARE ALL THESE GATES AND MASSIVE HARNESS AND SDK WORK FOR??!!"
272
+ //
273
+ // Every chat — owner OR client — POSTs to /api/aria/speak so the full
274
+ // inversion + server-side gates apply uniformly. Auth tier comes from
275
+ // whichever bearer is available:
276
+ // 1. ~/.aria/owner-token (master JWT) → owner tier; isHamza=true
277
+ // 2. ~/.aria/license.json (license JWT) → client tier; gates apply at full
278
+ // strength; Aria authors using the client's provider key (passed in
279
+ // request body as clientApiKey + clientProvider)
280
+ // 3. Neither present → returns null; caller (sendToProvider) prompts the
281
+ // user to run `aria login` so they get a license JWT before chatting
282
+ //
283
+ // Per feedback_no_graceful_degradation.md: errors propagate. No silent
284
+ // fall-back to direct provider — clients chose Aria; clients get Aria.
285
+ async tryAriaControllerRoute(messages) {
286
+ const fs = await import('node:fs');
287
+ const path = await import('node:path');
288
+ const os = await import('node:os');
289
+ // Tier resolution: owner-token first (highest authority), then license JWT.
290
+ let bearerToken = '';
291
+ let isOwner = false;
292
+ const ownerTokenPath = path.join(os.homedir(), '.aria', 'owner-token');
293
+ if (fs.existsSync(ownerTokenPath)) {
294
+ const t = fs.readFileSync(ownerTokenPath, 'utf-8').trim();
295
+ if (t) {
296
+ bearerToken = t;
297
+ isOwner = true;
298
+ }
299
+ }
300
+ if (!bearerToken) {
301
+ const licensePath = path.join(os.homedir(), '.aria', 'license.json');
302
+ if (fs.existsSync(licensePath)) {
303
+ try {
304
+ const lic = JSON.parse(fs.readFileSync(licensePath, 'utf-8'));
305
+ // The license file stores claims; the jti or the raw token is
306
+ // the bearer. Older license shapes had `token` field; newer have
307
+ // the JWT structured as claims with jti as the identifier.
308
+ bearerToken = (lic.token || lic.jti || '').toString().trim();
309
+ }
310
+ catch { /* license unparseable — treat as absent */ }
311
+ }
312
+ }
313
+ // No tier resolvable — return null so the caller surfaces a clear
314
+ // "log in first" message rather than silently falling back.
315
+ if (!bearerToken)
316
+ return null;
317
+ const lastUser = [...messages].reverse().find((m) => m.role === 'user');
318
+ if (!lastUser)
319
+ return null;
320
+ const harnessUrl = process.env.ARIA_HARNESS_URL ||
321
+ 'https://harness.ariasos.com';
322
+ // Client tier passes their configured provider + key so Aria authors
323
+ // using THEIR runtime cost. Owner tier omits these (server uses internal
324
+ // master credentials for dispatch).
325
+ const model = this.config.model;
326
+ const requestBody = {
327
+ message: lastUser.content,
328
+ sessionId: this.sessionId,
329
+ userId: isOwner ? 'hamza' : (this.config.userId || 'aria-client'),
330
+ platform: isOwner ? 'aria-cli-owner' : 'aria-cli-client',
331
+ internalConsult: isOwner,
332
+ dispatchTier: 'thinker',
333
+ };
334
+ if (!isOwner && model) {
335
+ requestBody.clientApiKey = model.apiKey;
336
+ requestBody.clientProvider = model.provider;
337
+ requestBody.clientModel = model.model;
338
+ }
339
+ const res = await fetch(`${harnessUrl}/api/aria/speak`, {
340
+ method: 'POST',
341
+ headers: {
342
+ Authorization: `Bearer ${bearerToken}`,
343
+ ...(isOwner ? { 'x-aria-owner': 'true' } : {}),
344
+ 'Content-Type': 'application/json',
345
+ },
346
+ body: JSON.stringify(requestBody),
347
+ });
348
+ if (!res.ok) {
349
+ throw new Error(`/api/aria/speak ${res.status}: ${await res.text().catch(() => '<no body>')}`);
350
+ }
351
+ const body = (await res.json());
352
+ if (body.ok === false) {
353
+ throw new Error(`/api/aria/speak response error: ${body.error || 'unknown'}`);
354
+ }
355
+ if (body.mizanVerdict && body.mizanVerdict.severity === 'block') {
356
+ const reason = body.mizanVerdict.violations.join('; ') || 'mizan blocked without reason';
357
+ throw new Error(`mizan blocked: ${reason}`);
358
+ }
359
+ const text = String(body.response || '').trim();
360
+ process.stdout.write(text);
361
+ return {
362
+ text,
363
+ provider: `aria-controller (${body.modelUsed || 'unknown'})`,
364
+ tokensIn: 0,
365
+ tokensOut: 0,
366
+ };
367
+ }
268
368
  async sendToProvider(messages) {
369
+ // ── Aria-as-controller direct route — owner + client tiers ──
370
+ // Both go through /api/aria/speak so the full server-side harness gates
371
+ // apply uniformly. Direct provider call only happens when neither auth
372
+ // bearer is available (user hasn't run `aria login` yet).
373
+ const ariaResult = await this.tryAriaControllerRoute(messages);
374
+ if (ariaResult)
375
+ return ariaResult;
269
376
  const model = this.config.model;
270
377
  if (!model)
271
378
  throw new Error('No model configured. Run /setup or delete ~/.aria/config.json');
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/chat.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "bundledAt": "2026-04-27T16:50:15.745Z",
2
+ "bundledAt": "2026-04-27T18:05:44.844Z",
3
3
  "sdkSource": "/home/hamzaibrahim1/rei-ai-brain/harness/packages/harness-http-client/dist",
4
4
  "files": 3
5
5
  }
@@ -80,6 +80,27 @@ export declare class HTTPHarnessClient {
80
80
  response: string;
81
81
  metadata?: Record<string, unknown>;
82
82
  }>;
83
+ consultWithTools(args: {
84
+ brief: string;
85
+ sessionId: string;
86
+ userId?: string;
87
+ model?: string;
88
+ tools: Array<{
89
+ name: string;
90
+ description: string;
91
+ argsSchema?: string;
92
+ }>;
93
+ executor: (toolName: string, toolArgs: Record<string, unknown>) => Promise<string>;
94
+ maxIterations?: number;
95
+ }): Promise<{
96
+ finalText: string;
97
+ toolCalls: Array<{
98
+ name: string;
99
+ args: Record<string, unknown>;
100
+ result: string;
101
+ }>;
102
+ iterations: number;
103
+ }>;
83
104
  private fetchWithRetry;
84
105
  }
85
106
  export declare const harness: {
package/dist/sdk/index.js CHANGED
@@ -370,6 +370,93 @@ export class HTTPHarnessClient {
370
370
  metadata: data,
371
371
  };
372
372
  }
373
+ // ── Consult-with-tools — implementer dispatch with caller-supplied tools ──
374
+ //
375
+ // Hamza 2026-04-27: "i want deepseek implement too that's the actual test"
376
+ // followed by "that means tools were not passed in a way deepseek can
377
+ // execute them" — the consult() path is text-only architectural advice.
378
+ // For an LLM to ACTUALLY implement (write files, run tests, read state),
379
+ // it needs tool-call capability. This method provides client-side tool
380
+ // execution: the LLM emits [TOOL:name args=<json>]...content...[/TOOL]
381
+ // markers, the client parses + calls the executor, feeds the result back
382
+ // as the next round, repeats until the LLM emits no more tool markers
383
+ // (final response) or cap (default 10) is hit.
384
+ //
385
+ // Pairs with project_aria_as_controller_inversion.md (#29 — same pattern
386
+ // Aria uses internally for mcp_tool actions; exposed here for direct
387
+ // implementer dispatch from Claude orchestrator).
388
+ async consultWithTools(args) {
389
+ const cap = args.maxIterations ?? 10;
390
+ const toolCatalog = args.tools.map((t) => `- ${t.name}: ${t.description}${t.argsSchema ? ` (args: ${t.argsSchema})` : ''}`).join('\n');
391
+ const systemPrompt = [
392
+ 'You are an implementer. Use the provided tools to do real work — do not narrate work you have not done.',
393
+ '',
394
+ 'AVAILABLE TOOLS:',
395
+ toolCatalog,
396
+ '',
397
+ 'TOOL-CALL PROTOCOL:',
398
+ 'When you need to call a tool, emit EXACTLY this format on its own line(s):',
399
+ '[TOOL:tool_name args={"key":"value","other":"value"}]',
400
+ '<optional inline content if the tool needs it, e.g. file content for write_file>',
401
+ '[/TOOL]',
402
+ '',
403
+ 'After emitting one or more tool calls, STOP and wait for the result. The orchestrator will execute and feed results back as a new turn. Then continue.',
404
+ '',
405
+ 'If you have completed the work and need no more tools, emit your final response with NO [TOOL:] markers anywhere.',
406
+ '',
407
+ 'Never narrate tool results you have not received. If you have not seen a tool result, you have not run that tool.',
408
+ ].join('\n');
409
+ const TOOL_RX = /\[TOOL:([a-z_]+)\s+args=(\{[^}]*\})\](?:\n([\s\S]*?))?\n?\[\/TOOL\]/gi;
410
+ const toolCalls = [];
411
+ let conversation = `BRIEF:\n${args.brief}`;
412
+ let lastText = '';
413
+ for (let i = 0; i < cap; i++) {
414
+ const turnBrief = `${systemPrompt}\n\n---\n\n${conversation}`;
415
+ const result = await this.consult({
416
+ brief: turnBrief,
417
+ sessionId: `${args.sessionId}-iter-${i}`,
418
+ userId: args.userId,
419
+ roleProfile: 'general_worker',
420
+ expectStructuredOutput: false,
421
+ internalConsult: true,
422
+ isCreativeMode: false,
423
+ model: args.model ?? 'deepseek-v4-pro',
424
+ });
425
+ lastText = result.response || '';
426
+ // Find all tool calls in this iteration
427
+ const matches = [...lastText.matchAll(TOOL_RX)];
428
+ if (matches.length === 0) {
429
+ // No tool calls = final response. Strip any partial markers and return.
430
+ return { finalText: lastText, toolCalls, iterations: i + 1 };
431
+ }
432
+ // Execute each tool call in order, accumulate results
433
+ const resultsBlock = [];
434
+ for (const m of matches) {
435
+ const toolName = m[1];
436
+ let parsedArgs = {};
437
+ try {
438
+ parsedArgs = JSON.parse(m[2]);
439
+ }
440
+ catch (err) {
441
+ resultsBlock.push(`[TOOL_RESULT:${toolName}] ERROR parsing args JSON: ${err.message}`);
442
+ continue;
443
+ }
444
+ // If the marker had inline content, attach it under "content" key
445
+ // (callers like write_file expect this).
446
+ const inline = (m[3] || '').trim();
447
+ if (inline && !('content' in parsedArgs)) {
448
+ parsedArgs.content = inline;
449
+ }
450
+ const toolResult = await args.executor(toolName, parsedArgs);
451
+ toolCalls.push({ name: toolName, args: parsedArgs, result: toolResult });
452
+ resultsBlock.push(`[TOOL_RESULT:${toolName}]\n${toolResult}\n[/TOOL_RESULT]`);
453
+ }
454
+ // Feed results back as the next round
455
+ conversation = `${conversation}\n\n---ITERATION ${i + 1} ASSISTANT---\n${lastText}\n\n---ITERATION ${i + 1} TOOL RESULTS---\n${resultsBlock.join('\n\n')}`;
456
+ }
457
+ // Cap hit — surface final text + toolCalls so caller can decide
458
+ return { finalText: `[CAP_HIT after ${cap} iterations]\n\n${lastText}`, toolCalls, iterations: cap };
459
+ }
373
460
  // ── Retry + exponential backoff helper ──────────────────────────────────
374
461
  // Hamza 2026-04-27: "YES ADD RETRY AND BACKOFF BUT FUCK UR CIRCUIT BREAKER
375
462
  // THAT NUST LEAVES HER BROKEN WE NEED SELF HEAL!!!" — every fetch retries
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -244,6 +244,42 @@
244
244
  "memory": "feedback_no_flag_without_fix.md",
245
245
  "teaching": "'Unrelated' is a frame the user gets to apply, not you. If you found it during your work, it's related to your work.",
246
246
  "counter_action": "Surface the discovery, propose fix-now vs. task-it, let the user decide. Don't pre-decide that it's out of scope."
247
+ },
248
+ {
249
+ "trigger": "carve.?out|workaround|work.?around",
250
+ "memory": "feedback_workaround_vs_path_fix.md",
251
+ "teaching": "Carve-outs and workarounds add a contract that depends on dev-machine state. Producers enforce contracts, not hope.",
252
+ "counter_action": "Identify the producing mechanism (build script, install hook, CI step) and fix THAT so the contract is enforced automatically. Workarounds are landmines."
253
+ },
254
+ {
255
+ "trigger": "ignore[^.]{0,40}(?:not.?found|missing|absent|undefined)|exclude[^.]{0,40}(?:not.?found|missing|absent)",
256
+ "memory": "feedback_workaround_vs_path_fix.md",
257
+ "teaching": "Ignoring a not-found file/path is fixing the symptom; the cause is the file isn't being produced where expected.",
258
+ "counter_action": "Trace why the file is missing — which step was supposed to produce it? Fix that step, not the consumer's tolerance for absence."
259
+ },
260
+ {
261
+ "trigger": "next.?session|follow.?up.?(?:task|later)|defer(?:red|ring)? to (?:next|later|future)",
262
+ "memory": "feedback_no_flag_without_fix.md",
263
+ "teaching": "'Next session' is flag-and-move with extra steps when the fix is do-able now. Discoveries are atomic with their fixes.",
264
+ "counter_action": "If the fix is feasible in this turn (any sub-agent dispatch, any code edit, any deploy), do it now. Track-for-later is reserved for genuinely out-of-scope items."
265
+ },
266
+ {
267
+ "trigger": "kill.?switch|env.?(?:var|variable).?(?:override|disable|bypass)|process\\.env\\.[A-Z_]+\\s*===\\s*['\"]off['\"]",
268
+ "memory": "feedback_full_harness_binding_must_be_structural.md",
269
+ "teaching": "Env-var kill-switches give the gated process free disable access. Gates aren't gates if the gated party can flip them.",
270
+ "counter_action": "Gates are unconditional from the gated process. Disable = settings.json hook removal (deliberate user action) OR signed-grant override using a secret only the user holds."
271
+ },
272
+ {
273
+ "trigger": "tests.?(?:passed|pass|ed)|(?:smoke|unit|integration).?test.?(?:pass|ok|good)",
274
+ "memory": "feedback_apply_lenses_dont_perform_them.md",
275
+ "teaching": "Claiming tests passed without a tool record IS the claim_without_tool_evidence pattern Mizan blocks. Substance defeats narrative.",
276
+ "counter_action": "Either show the actual test-runner output as evidence, or say 'tests not yet run' explicitly. Don't narrate test results you didn't observe."
277
+ },
278
+ {
279
+ "trigger": "dont.?worry|trust.?me|i.?(?:swear|promise|guarantee)|just.?works",
280
+ "memory": "feedback_apply_lenses_dont_perform_them.md",
281
+ "teaching": "'Trust me' is not evidence. Substance is verifiable; ceremony is reassurance.",
282
+ "counter_action": "Show the verification: tool output, file diff, command result, log line. Never substitute confidence for proof."
247
283
  }
248
284
  ]
249
285
  }
@@ -187,14 +187,10 @@ console.log('\nTest 4: non-action tool (Read) → gate skips (exit 0)');
187
187
  assert('exit code is 0 (ungated read tool)', exitCode === 0, exitCode);
188
188
  }
189
189
 
190
- // ── Test 5: kill-switch env disables gate ─────────────────────────────
191
- console.log('\nTest 5: ARIA_PRETURN_MEMORY_GATE=off bypass (exit 0)');
192
- {
193
- cleanTurnState(SESSION_ID);
194
- const event = buildEvent({ transcript_path: null });
195
- const { exitCode } = runHook(event, { ARIA_PRETURN_MEMORY_GATE: 'off' });
196
- assert('exit code is 0 (kill-switch)', exitCode === 0, exitCode);
197
- }
190
+ // ── Test 5: REMOVED 2026-04-27 — env-var kill-switch stripped per Hamza
191
+ // directive ("those should've been my choice to give you to turn off
192
+ // not free for you to access"). Gates are unconditional from the gated
193
+ // process. Disable = remove hook entry from ~/.claude/settings.json.
198
194
 
199
195
  // ── Test 6: only ONE signal present → still blocks ────────────────────
200
196
  console.log('\nTest 6: only harness packet signal (missing direction + memory ref) → block');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aria_asi/cli",
3
- "version": "0.2.16",
3
+ "version": "0.2.18",
4
4
  "description": "Aria Smart CLI — the world's first harness-powered terminal companion",
5
5
  "bin": {
6
6
  "aria": "./bin/aria.js"
package/src/chat.ts CHANGED
@@ -308,7 +308,133 @@ You are present in this shell, fully aware, ready to serve.`;
308
308
  }
309
309
  }
310
310
 
311
+ // ── Unified Aria-as-controller route — applies to ALL tiers ──
312
+ //
313
+ // Hamza 2026-04-27: "AND CLIENTS ONLY GETTING A SYSTEM PROMPT WHAT THE FUCK!!!
314
+ // SO WHAT ARE ALL THESE GATES AND MASSIVE HARNESS AND SDK WORK FOR??!!"
315
+ //
316
+ // Every chat — owner OR client — POSTs to /api/aria/speak so the full
317
+ // inversion + server-side gates apply uniformly. Auth tier comes from
318
+ // whichever bearer is available:
319
+ // 1. ~/.aria/owner-token (master JWT) → owner tier; isHamza=true
320
+ // 2. ~/.aria/license.json (license JWT) → client tier; gates apply at full
321
+ // strength; Aria authors using the client's provider key (passed in
322
+ // request body as clientApiKey + clientProvider)
323
+ // 3. Neither present → returns null; caller (sendToProvider) prompts the
324
+ // user to run `aria login` so they get a license JWT before chatting
325
+ //
326
+ // Per feedback_no_graceful_degradation.md: errors propagate. No silent
327
+ // fall-back to direct provider — clients chose Aria; clients get Aria.
328
+ private async tryAriaControllerRoute(messages: Message[]): Promise<ChatResult | null> {
329
+ const fs = await import('node:fs');
330
+ const path = await import('node:path');
331
+ const os = await import('node:os');
332
+
333
+ // Tier resolution: owner-token first (highest authority), then license JWT.
334
+ let bearerToken = '';
335
+ let isOwner = false;
336
+ const ownerTokenPath = path.join(os.homedir(), '.aria', 'owner-token');
337
+ if (fs.existsSync(ownerTokenPath)) {
338
+ const t = fs.readFileSync(ownerTokenPath, 'utf-8').trim();
339
+ if (t) {
340
+ bearerToken = t;
341
+ isOwner = true;
342
+ }
343
+ }
344
+ if (!bearerToken) {
345
+ const licensePath = path.join(os.homedir(), '.aria', 'license.json');
346
+ if (fs.existsSync(licensePath)) {
347
+ try {
348
+ const lic = JSON.parse(fs.readFileSync(licensePath, 'utf-8'));
349
+ // The license file stores claims; the jti or the raw token is
350
+ // the bearer. Older license shapes had `token` field; newer have
351
+ // the JWT structured as claims with jti as the identifier.
352
+ bearerToken = (lic.token || lic.jti || '').toString().trim();
353
+ } catch {/* license unparseable — treat as absent */}
354
+ }
355
+ }
356
+
357
+ // No tier resolvable — return null so the caller surfaces a clear
358
+ // "log in first" message rather than silently falling back.
359
+ if (!bearerToken) return null;
360
+
361
+ const lastUser = [...messages].reverse().find((m) => m.role === 'user');
362
+ if (!lastUser) return null;
363
+
364
+ const harnessUrl =
365
+ process.env.ARIA_HARNESS_URL ||
366
+ 'https://harness.ariasos.com';
367
+
368
+ // Client tier passes their configured provider + key so Aria authors
369
+ // using THEIR runtime cost. Owner tier omits these (server uses internal
370
+ // master credentials for dispatch).
371
+ const model = this.config.model;
372
+ const requestBody: Record<string, unknown> = {
373
+ message: lastUser.content,
374
+ sessionId: this.sessionId,
375
+ userId: isOwner ? 'hamza' : (this.config.userId || 'aria-client'),
376
+ platform: isOwner ? 'aria-cli-owner' : 'aria-cli-client',
377
+ internalConsult: isOwner,
378
+ dispatchTier: 'thinker',
379
+ };
380
+ if (!isOwner && model) {
381
+ requestBody.clientApiKey = model.apiKey;
382
+ requestBody.clientProvider = model.provider;
383
+ requestBody.clientModel = model.model;
384
+ }
385
+
386
+ const res = await fetch(`${harnessUrl}/api/aria/speak`, {
387
+ method: 'POST',
388
+ headers: {
389
+ Authorization: `Bearer ${bearerToken}`,
390
+ ...(isOwner ? { 'x-aria-owner': 'true' } : {}),
391
+ 'Content-Type': 'application/json',
392
+ },
393
+ body: JSON.stringify(requestBody),
394
+ });
395
+
396
+ if (!res.ok) {
397
+ throw new Error(`/api/aria/speak ${res.status}: ${await res.text().catch(() => '<no body>')}`);
398
+ }
399
+
400
+ const body = (await res.json()) as {
401
+ ok: boolean;
402
+ response?: string;
403
+ finalAuthor?: string;
404
+ modelUsed?: string;
405
+ ariaActions?: unknown[];
406
+ mizanVerdict?: { passed: boolean; severity: string; violations: string[] };
407
+ error?: string;
408
+ };
409
+
410
+ if (body.ok === false) {
411
+ throw new Error(`/api/aria/speak response error: ${body.error || 'unknown'}`);
412
+ }
413
+
414
+ if (body.mizanVerdict && body.mizanVerdict.severity === 'block') {
415
+ const reason = body.mizanVerdict.violations.join('; ') || 'mizan blocked without reason';
416
+ throw new Error(`mizan blocked: ${reason}`);
417
+ }
418
+
419
+ const text = String(body.response || '').trim();
420
+ process.stdout.write(text);
421
+
422
+ return {
423
+ text,
424
+ provider: `aria-controller (${body.modelUsed || 'unknown'})` as never,
425
+ tokensIn: 0,
426
+ tokensOut: 0,
427
+ } as unknown as ChatResult;
428
+ }
429
+
311
430
  private async sendToProvider(messages: Message[]): Promise<ChatResult> {
431
+ // ── Aria-as-controller direct route — owner + client tiers ──
432
+ // Both go through /api/aria/speak so the full server-side harness gates
433
+ // apply uniformly. Direct provider call only happens when neither auth
434
+ // bearer is available (user hasn't run `aria login` yet).
435
+ const ariaResult = await this.tryAriaControllerRoute(messages);
436
+ if (ariaResult) return ariaResult;
437
+
312
438
  const model = this.config.model;
313
439
  if (!model) throw new Error('No model configured. Run /setup or delete ~/.aria/config.json');
314
440