matex-cli 1.2.67 → 1.2.69

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.
@@ -1 +1 @@
1
- {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../src/utils/tui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../src/utils/tui.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "matex-cli",
3
- "version": "1.2.67",
3
+ "version": "1.2.69",
4
4
  "description": "MATEX CLI - The Agentic 'Bro-Swarm' for Engineering. Zero-Cost AI for Students and Pro-Grade Dev Power.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -10,10 +10,14 @@ import { BRO_BANTER_AUGOV } from '../prompts/banter-augov';
10
10
  import { GovPrivacyScrubber } from '../utils/augov-scrubber';
11
11
  import { GovAuditLogger } from '../utils/augov-logger';
12
12
 
13
+ import fs from 'fs';
14
+ import path from 'path';
15
+
13
16
  export const augovCommand = new Command('augov')
14
17
  .description('🇦🇺 Launch AU-GOV in Secure Government Compliance Mode (APS/Cyber Ready)')
15
18
  .option('-m, --model <model>', 'AI model to use', configManager.getDefaultModel())
16
19
  .option('--execute', 'Enable command auto-execution')
20
+ .option('--offline', 'Enable Tactical Edge Deployment (Offline Mode using local Llama-3-8B model)')
17
21
  .action(async (options: any) => {
18
22
  try {
19
23
  const apiKey = configManager.getAPIKey();
@@ -22,13 +26,18 @@ export const augovCommand = new Command('augov')
22
26
  process.exit(1);
23
27
  }
24
28
 
25
- // Zero-Trust Architecture: Connect directly to the sovereign Sydney backend
26
- const AU_GOV_BACKEND_URL = "https://matexaibackendgovernment-964562696516.australia-southeast1.run.app";
29
+ if (options.offline) {
30
+ options.model = 'matexcodexlite'; // Force local quantized model
31
+ }
32
+
33
+ // Zero-Trust Architecture: Connect directly to the sovereign Sydney backend, or localhost if Tactical Edge is active.
34
+ const AU_GOV_BACKEND_URL = options.offline ? "http://localhost:8000" : "https://matexaibackendgovernment-964562696516.australia-southeast1.run.app";
27
35
  const client = new MatexAPIClient(apiKey, AU_GOV_BACKEND_URL);
28
36
 
29
- // We override the default client chat endpoint to hit our specific AU-GOV proxy
37
+ // We override the default client chat endpoint to hit our specific AU-GOV proxy (or local fallback)
30
38
  client.chatStream = async (request: any, onChunk: (chunk: string) => void, signal?: AbortSignal): Promise<string> => {
31
- const response = await fetch(`${AU_GOV_BACKEND_URL}/api/v1/augov/chat`, {
39
+ const endpoint = options.offline ? '/api/v1/chat' : '/api/v1/augov/chat';
40
+ const response = await fetch(`${AU_GOV_BACKEND_URL}${endpoint}`, {
32
41
  method: 'POST',
33
42
  headers: { 'Content-Type': 'application/json', 'Authorization': `Bearer ${apiKey}` },
34
43
  body: JSON.stringify(request),
@@ -71,20 +80,18 @@ export const augovCommand = new Command('augov')
71
80
  TUI.init();
72
81
  AgentOrchestrator.setMode('augov'); // Use secure AU-GOV styling
73
82
 
74
- console.log(chalk.bold.hex('#00008B')('\n 🇦🇺 AU-GOV EDITION - SECURE INTELLIGENCE PROTOCOL 🇦🇺\n'));
75
- TUI.drawWelcomeBanner('ACTIVATING APS COMPLIANCE SHIELD...');
83
+ TUI.drawAugovOrchestratorUI();
84
+
85
+ const pkiClearance = 'PROTECTED'; // Mocked PKI Certificate Clearance
86
+ console.log(chalk.gray(` Verification: `) + chalk.hex('#10b981').bold(`PKI Cert Validated. Clearance Level: [${pkiClearance}]\n`));
76
87
 
77
- console.log(chalk.gray(' Status: ') + chalk.hex('#00FF7F').bold('IRAP Logging Active | Local PII Redaction Active'));
78
- console.log(chalk.gray(' Security: ') + chalk.hex('#D97757').bold('Adhering to 8 Australia AI Ethics Principles'));
79
- console.log(chalk.gray(' Type your request carefully, or "exit" to terminate session\n'));
88
+ if (options.offline) {
89
+ console.log(chalk.hex('#f59e0b').bold(' [TACTICAL EDGE] OFFLINE MODE ACTIVE: Routing to local MatexCodexLite (Llama-3-8B).\n'));
90
+ }
80
91
 
81
- TUI.drawStatusBar('Initializing Secure Local Environment...', options.model, true);
82
92
  const currentDir = process.cwd();
83
93
  const repoMap = await new RepoMapper(currentDir).generateMap();
84
94
 
85
- TUI.drawStatusBar('Compliance Swarm is ready.', options.model, true);
86
- AgentOrchestrator.speak('System', 'Secure terminal established. 100% Privacy Active. Awaiting your command, Public Servant.');
87
-
88
95
  const extraPrompt = '';
89
96
 
90
97
  const initialMessages: ChatMessage[] = [
@@ -92,7 +99,7 @@ export const augovCommand = new Command('augov')
92
99
  role: 'system',
93
100
  // Zero-Trust Architecture: The CLI sends a handshake and environment context only.
94
101
  // The actual secure AU-GOV system prompt is injected on the backend to prevent NPM leaks.
95
- content: `[AUGOV_MODE_HANDSHAKE]\nCURRENT_DIR: ${currentDir}\n\nSECURE ENVIRONMENT CONTEXT:\n${repoMap}`
102
+ content: `[AUGOV_MODE_HANDSHAKE]\n<PKI_CERT_CLEARANCE>${pkiClearance}</PKI_CERT_CLEARANCE>\nCURRENT_DIR: ${currentDir}\n\nSECURE ENVIRONMENT CONTEXT:\n${repoMap}`
96
103
  }
97
104
  ];
98
105
 
@@ -104,7 +111,8 @@ export const augovCommand = new Command('augov')
104
111
  broBanter: BRO_BANTER_AUGOV,
105
112
  baseDir: currentDir,
106
113
  messageScrubber: (input: string) => GovPrivacyScrubber.scrub(input),
107
- auditLogger: new GovAuditLogger(currentDir)
114
+ auditLogger: new GovAuditLogger(currentDir),
115
+ isAugovMode: true
108
116
  });
109
117
 
110
118
  await session.start();
@@ -115,3 +123,157 @@ export const augovCommand = new Command('augov')
115
123
  process.exit(1);
116
124
  }
117
125
  });
126
+
127
+ // Freedom of Information (FOI) Document Redactor
128
+ augovCommand
129
+ .command('redact <file>')
130
+ .description('🇦🇺 Automate FOI Redaction (Blacks out TFNs, Cabinet Data, Military Assets)')
131
+ .action(async (file: string) => {
132
+ TUI.init();
133
+ AgentOrchestrator.setMode('augov');
134
+ TUI.drawAugovOrchestratorUI();
135
+
136
+ console.log(chalk.bold.yellow('\n [FOI REDACTION PROTOCOL INITIATED]'));
137
+ const filePath = path.resolve(process.cwd(), file);
138
+
139
+ if (!fs.existsSync(filePath)) {
140
+ console.error(chalk.red(`\n❌ Error: Document not found at ${filePath}`));
141
+ TUI.exit();
142
+ process.exit(1);
143
+ }
144
+
145
+ try {
146
+ console.log(chalk.gray(` Scanning Document: ${file}...`));
147
+ const content = fs.readFileSync(filePath, 'utf-8');
148
+
149
+ // Execute the highly secure local scrubber
150
+ const { scrubbed, redactionCount } = await GovPrivacyScrubber.redactDocumentContent(content);
151
+
152
+ TUI.drawGlowingContainer('FOI CLEARED DOCUMENT', 'txt', scrubbed);
153
+
154
+ console.log(chalk.bold.green(`\n ✅ Scanning Complete.`));
155
+ console.log(chalk.gray(` Total sensitive assets redacted locally: `) + chalk.bgBlack.white.bold(` ${redactionCount} `));
156
+ console.log(chalk.gray(` Document is now cleared for Public Release.`));
157
+
158
+ } catch (error: any) {
159
+ console.error(chalk.red(`\n❌ FOI Processing Error: ${error.message}`));
160
+ } finally {
161
+ TUI.exit();
162
+ }
163
+ });
164
+
165
+ // Legislative & Policy War-Gaming
166
+ augovCommand
167
+ .command('simulate-policy')
168
+ .description('🇦🇺 Simulate the impact of new legislation against existing frameworks (e.g. Privacy Act 1988)')
169
+ .requiredOption('--bill <file>', 'Path to the drafted bill text document')
170
+ .option('-m, --model <model>', 'AI model to use', configManager.getDefaultModel())
171
+ .action(async (options: any) => {
172
+ try {
173
+ const apiKey = configManager.getAPIKey();
174
+ if (!apiKey) {
175
+ console.error(chalk.red('❌ No API key configured. Run: matex config set-key <key>'));
176
+ process.exit(1);
177
+ }
178
+
179
+ const AU_GOV_BACKEND_URL = "https://matexaibackendgovernment-964562696516.australia-southeast1.run.app";
180
+ const client = new MatexAPIClient(apiKey, AU_GOV_BACKEND_URL);
181
+
182
+ // Override stream endpoint
183
+ client.chatStream = async (request: any, onChunk: (chunk: string) => void, signal?: AbortSignal): Promise<string> => {
184
+ const response = await fetch(`${AU_GOV_BACKEND_URL}/api/v1/augov/chat`, {
185
+ method: 'POST',
186
+ headers: { 'Content-Type': 'application/json', 'Authorization': `Bearer ${apiKey}` },
187
+ body: JSON.stringify(request),
188
+ signal: signal
189
+ });
190
+
191
+ if (!response.ok) throw new Error(`AU-GOV Backend Error: ${response.status} ${response.statusText}`);
192
+ if (!response.body) throw new Error('No response body from AU-GOV backend');
193
+
194
+ const reader = response.body.getReader();
195
+ const decoder = new TextDecoder('utf-8');
196
+ let buffer = "";
197
+ let fullResponse = "";
198
+
199
+ while (true) {
200
+ const { done, value } = await reader.read();
201
+ if (done) break;
202
+
203
+ buffer += decoder.decode(value, { stream: true });
204
+ const lines = buffer.split('\n');
205
+ buffer = lines.pop() || "";
206
+
207
+ for (const line of lines) {
208
+ if (line.startsWith('data: ')) {
209
+ const dataStr = line.slice(6);
210
+ if (dataStr.trim() === '[DONE]') continue;
211
+ try {
212
+ const data = JSON.parse(dataStr);
213
+ if (data.content) {
214
+ fullResponse += data.content;
215
+ onChunk(data.content);
216
+ }
217
+ } catch (e) { /* Ignore parse errors on chunks */ }
218
+ }
219
+ }
220
+ }
221
+ return fullResponse;
222
+ };
223
+
224
+ TUI.init();
225
+ AgentOrchestrator.setMode('augov');
226
+ TUI.drawAugovOrchestratorUI();
227
+
228
+ console.log(chalk.bold.magenta('\n [POLICY WAR-GAMING INITIATED]'));
229
+ const filePath = path.resolve(process.cwd(), options.bill);
230
+
231
+ if (!fs.existsSync(filePath)) {
232
+ console.error(chalk.red(`\n❌ Error: Bill document not found at ${filePath}`));
233
+ TUI.exit();
234
+ process.exit(1);
235
+ }
236
+
237
+ console.log(chalk.gray(` Ingesting Draft Bill: ${options.bill}...`));
238
+ const billContent = fs.readFileSync(filePath, 'utf-8');
239
+ const pkiClearance = 'TOP SECRET';
240
+
241
+ console.log(chalk.gray(` Clearance Validated: `) + chalk.hex('#10b981').bold(`[${pkiClearance}]\n`));
242
+
243
+ const initialMessages: ChatMessage[] = [
244
+ {
245
+ role: 'system',
246
+ content: `[AUGOV_MODE_HANDSHAKE]\n<PKI_CERT_CLEARANCE>${pkiClearance}</PKI_CERT_CLEARANCE>\nCURRENT_DIR: ${process.cwd()}`
247
+ },
248
+ {
249
+ role: 'user',
250
+ content: `Please run a Legislative War-Game on the following drafted text. Your primary objective is to cross-reference this draft against the Australian Privacy Act 1988 and the Protective Security Policy Framework (PSPF). Identify any conflicts, constitutional overreach, or compliance vulnerabilities.\n\n### DRAFT BILL TEXT ###\n${billContent}`
251
+ }
252
+ ];
253
+
254
+ const session = new AgentSession({
255
+ client,
256
+ model: options.model,
257
+ execute: false, // War-gaming does not execute terminal commands
258
+ initialMessages,
259
+ broBanter: BRO_BANTER_AUGOV,
260
+ baseDir: process.cwd(),
261
+ messageScrubber: (input: string) => GovPrivacyScrubber.scrub(input),
262
+ auditLogger: new GovAuditLogger(process.cwd()),
263
+ isAugovMode: true
264
+ });
265
+
266
+ // Fast-forward straight to the agent loop without waiting for user input since the prompt is pre-loaded
267
+ console.log(chalk.gray(` Executing Multi-Agent Swarm Simulation...\n`));
268
+
269
+ // We just trigger a custom agent pass and let it stream
270
+ await (session as any).agenticLoopPass(1);
271
+
272
+ console.log(chalk.bold.green(`\n ✅ Policy Simulation Complete.`));
273
+
274
+ } catch (error: any) {
275
+ console.error(chalk.red(`\n❌ Simulation Error: ${error.message}`));
276
+ } finally {
277
+ TUI.exit();
278
+ }
279
+ });
@@ -8,6 +8,7 @@ import { spinner } from '../utils/spinner';
8
8
  import { RepoMapper } from '../utils/repo-mapper';
9
9
 
10
10
  export interface AgentSessionConfig {
11
+ isAugovMode?: boolean;
11
12
  client: MatexAPIClient;
12
13
  model: string;
13
14
  execute: boolean;
@@ -29,6 +30,7 @@ export class AgentSession {
29
30
  private currentSessionCwd: string;
30
31
  private messageScrubber?: (input: string) => string;
31
32
  private auditLogger?: any;
33
+ private isAugovMode?: boolean;
32
34
 
33
35
  private lastActivityTime: number = Date.now();
34
36
  private isAjaySleeping: boolean = false;
@@ -47,6 +49,7 @@ export class AgentSession {
47
49
  this.currentSessionCwd = config.baseDir;
48
50
  this.messageScrubber = config.messageScrubber;
49
51
  this.auditLogger = config.auditLogger;
52
+ this.isAugovMode = config.isAugovMode;
50
53
  }
51
54
 
52
55
  public async start() {
@@ -59,15 +62,31 @@ export class AgentSession {
59
62
  await this.refreshMap();
60
63
 
61
64
  // Get user input
65
+ const darkBorder = chalk.hex('#1E3A8A');
66
+ const primaryText = chalk.hex('#3B82F6');
67
+ if (this.isAugovMode) {
68
+ console.log(darkBorder('┌─────────────────────────────────────────────────────────────────────────────┐'));
69
+ console.log(darkBorder('│') + chalk.gray(' Using 1 SECURE node file 1 AU-GOV validated server ') + darkBorder('│'));
70
+ console.log(darkBorder('├─────────────────────────────────────────────────────────────────────────────┤'));
71
+ }
72
+
62
73
  const { userInput } = await inquirer.prompt([
63
74
  {
64
75
  type: 'input',
65
76
  name: 'userInput',
66
- message: chalk.cyan(this.isAjayOnChaiBreak ? 'You (Ajay is away):' : 'You:'),
77
+ message: this.isAugovMode
78
+ ? darkBorder('│ ') + primaryText('> ')
79
+ : chalk.cyan(this.isAjayOnChaiBreak ? 'You (Ajay is away):' : 'You:'),
67
80
  prefix: ''
68
81
  }
69
82
  ]);
70
83
 
84
+ if (this.isAugovMode) {
85
+ const homeDirDisplay = this.currentSessionCwd.replace(process.env.HOME || '', '~');
86
+ console.log(darkBorder('└─────────────────────────────────────────────────────────────────────────────┘'));
87
+ console.log(chalk.gray(` ${homeDirDisplay.padEnd(30)} sandbox-exec (validated) au-gov-orch-v1.1-pro\n`));
88
+ }
89
+
71
90
  this.lastActivityTime = Date.now();
72
91
 
73
92
  if (this.isAjaySleeping) {
@@ -133,6 +152,8 @@ export class AgentSession {
133
152
  }
134
153
 
135
154
  private startChaiBreak() {
155
+ if (this.isAugovMode) return; // Feature disabled in secure mode
156
+
136
157
  this.isAjayOnChaiBreak = true;
137
158
  this.chaiBreakEndTime = Date.now() + 120000; // 2 minutes
138
159
  TUI.drawChaiBreakMessage(2);
@@ -159,6 +180,8 @@ export class AgentSession {
159
180
  }
160
181
 
161
182
  private startIdleCheck() {
183
+ if (this.isAugovMode) return; // Strict APS compliance: No sleeping on the job
184
+
162
185
  this.idleCheckInterval = setInterval(() => {
163
186
  if (!this.isAjaySleeping && !this.isAjayOnChaiBreak && Date.now() - this.lastActivityTime > 120000) {
164
187
  this.isAjaySleeping = true;
@@ -168,6 +191,8 @@ export class AgentSession {
168
191
  }
169
192
 
170
193
  private wakeAjayUp() {
194
+ if (this.isAugovMode) return; // Feature disabled in secure mode
195
+
171
196
  this.isAjaySleeping = false;
172
197
  TUI.drawWakeUpMessage();
173
198
  this.messages.push({
@@ -215,7 +240,7 @@ export class AgentSession {
215
240
  messages: this.messages,
216
241
  model: this.model,
217
242
  temperature: 0.3,
218
- max_tokens: 8000,
243
+ max_tokens: 8192,
219
244
  }, (chunk) => {
220
245
  if (!hasStarted) {
221
246
  spinner.stop();
@@ -290,7 +315,9 @@ export class AgentSession {
290
315
  continue;
291
316
  }
292
317
 
293
- const agentMatch = line.match(/(?:\[\**\s*|\b)(Ajay Vai|Sunil Dai|Sandip Dai|Bishal Dai|Narayan Dai|Big Bro)\s*\**\]?[:\s]*/i);
318
+ const agentMatch = line.match(/\[\**\s*(Ajay Vai|Sunil Dai|Sandip Dai|Bishal Dai|Narayan Dai|Big Bro)\s*\**\]?\s*:\s*/i)
319
+ || line.match(/\b(Ajay Vai|Sunil Dai|Sandip Dai|Bishal Dai|Narayan Dai|Big Bro)\s*:\s*/i);
320
+
294
321
  if (agentMatch) {
295
322
  if (currentAgent && currentAgent !== agentMatch[1] && agentBuffer.trim()) {
296
323
  if (currentAgent.toLowerCase().includes('ajay vai')) {
@@ -300,7 +327,8 @@ export class AgentSession {
300
327
  }
301
328
  }
302
329
 
303
- let cleanLine = line.replace(/(?:\[\**\s*|\b)(Ajay Vai|Sunil Dai|Sandip Dai|Bishal Dai|Narayan Dai|Big Bro)\s*\**\]?[:\s]*/i, '');
330
+ let cleanLine = line.replace(/\[\**\s*(Ajay Vai|Sunil Dai|Sandip Dai|Bishal Dai|Narayan Dai|Big Bro)\s*\**\]?\s*:\s*/i, '')
331
+ .replace(/\b(Ajay Vai|Sunil Dai|Sandip Dai|Bishal Dai|Narayan Dai|Big Bro)\s*:\s*/i, '');
304
332
  cleanLine = AgentOrchestrator.cleanText(cleanLine);
305
333
  agentBuffer = cleanLine + '\n';
306
334
  agentBuffer = agentBuffer.replace(/^\([^)]+\)\s*/, '');
@@ -352,6 +380,11 @@ export class AgentSession {
352
380
  if (fullResponse.toLowerCase().includes('<summary>') && !fullResponse.toLowerCase().includes('</summary>')) {
353
381
  const summaryContent = fullResponse.split(/<summary>/i).pop() || '';
354
382
  if (summaryContent.trim()) TUI.drawSummaryBox(AgentOrchestrator.cleanSummary(summaryContent.trim()));
383
+ } else if (fullResponse.toLowerCase().includes('<summary>') && fullResponse.toLowerCase().includes('</summary>')) {
384
+ const match = fullResponse.match(/<summary>([\s\S]*?)<\/summary>/i);
385
+ if (match && match[1].trim()) {
386
+ TUI.drawSummaryBox(AgentOrchestrator.cleanSummary(match[1].trim()));
387
+ }
355
388
  }
356
389
 
357
390
  if (this.auditLogger) {
@@ -1,3 +1,5 @@
1
+ import chalk from 'chalk';
2
+
1
3
  /**
2
4
  * Citizen Privacy Shield
3
5
  * A local redaction engine that scrubs Australian PII (Personally Identifiable Information)
@@ -16,7 +18,20 @@ export class GovPrivacyScrubber {
16
18
  // Email Addresses
17
19
  { regex: /[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g, replacement: '[REDACTED_EMAIL]' },
18
20
  // Credit Card Numbers
19
- { regex: /\b(?:\d[ -]*?){13,16}\b/g, replacement: '[REDACTED_CREDIT_CARD]' }
21
+ { regex: /\b(?:\d[ -]*?){13,16}\b/g, replacement: '[REDACTED_CREDIT_CARD]' },
22
+
23
+ // --- FOI (Freedom of Information) Specific Redactions ---
24
+
25
+ // Cabinet in Confidence Markers
26
+ { regex: /Cabinet in Confidence/ig, replacement: '[REDACTED_CABINET_MATERIAL]' },
27
+ { regex: /National Cabinet/ig, replacement: '[REDACTED_NATIONAL_CABINET_MATERIAL]' },
28
+ // Highly Classified Clearance Words
29
+ { regex: /TOP SECRET/ig, replacement: '[REDACTED_CLASSIFICATION]' },
30
+ // Military Base Locations (Example subset for ADF)
31
+ { regex: /HMAS Stirling|RAAF Base Tindal|Pine Gap|Russell Offices/ig, replacement: '[REDACTED_DEFENCE_ASSET]' },
32
+ // Diplomatic Identifiers
33
+ { regex: /Ambassador [A-Z][a-z]+/ig, replacement: '[REDACTED_DIPLOMAT]' },
34
+ { regex: /Five Eyes|AUKUS/ig, replacement: '[REDACTED_INTELLIGENCE_ALLIANCE]' }
20
35
  ];
21
36
 
22
37
  /**
@@ -31,4 +46,22 @@ export class GovPrivacyScrubber {
31
46
  }
32
47
  return scrubbed;
33
48
  }
49
+
50
+ /**
51
+ * Specialized FOI Document Scrubber
52
+ * Used exclusively for the `matex augov redact` command
53
+ */
54
+ public static async redactDocumentContent(content: string): Promise<{ scrubbed: string, redactionCount: number }> {
55
+ let scrubbed = content;
56
+ let redactionCount = 0;
57
+
58
+ for (const rule of this.patterns) {
59
+ const matches = content.match(rule.regex);
60
+ if (matches) {
61
+ redactionCount += matches.length;
62
+ scrubbed = scrubbed.replace(rule.regex, chalk.bgBlack.white(rule.replacement));
63
+ }
64
+ }
65
+ return { scrubbed, redactionCount };
66
+ }
34
67
  }
package/src/utils/tui.ts CHANGED
@@ -138,7 +138,7 @@ export class TUI {
138
138
  * Draw a clean, minimal status bar
139
139
  */
140
140
  static drawStatusBar(message: string, model: string = 'MATEXCodex', force: boolean = false) {
141
- if (!this.isInitialized) return;
141
+ if (!this.isInitialized || this.currentTheme === 'augov') return; // Disable standard status bar for augov mode to preserve retro UI
142
142
  if (!force && message === this.lastStatus) return;
143
143
  this.lastStatus = message;
144
144
 
@@ -148,7 +148,7 @@ export class TUI {
148
148
  if (width <= 0 || height <= 0) return;
149
149
 
150
150
  const theme = this.getModeTheme(this.currentTheme);
151
- const branding = this.currentTheme === 'augov' ? 'AU-GOV' : 'MATEX';
151
+ const branding = (this.currentTheme as string) === 'augov' ? 'AU-GOV' : 'MATEX';
152
152
  const leftTag = chalk.bgHex('#1E1E1E').hex(theme.bg).bold(` ${theme.icon} ${branding} `);
153
153
  const mainMessage = chalk.bgHex('#1E1E1E').white(` ${message} `);
154
154
  const remainingWidth = width - (leftTag.length + mainMessage.length);
@@ -660,6 +660,51 @@ export class TUI {
660
660
  * Simple log with a prefix
661
661
  */
662
662
  static log(message: string) {
663
- console.log(chalk.gray(` [⚡] ${message}`));
663
+ if (this.currentTheme === 'augov') {
664
+ console.log(chalk.gray(` ║ ${message.replace('[⚡]', '🇦🇺')}`));
665
+ } else {
666
+ console.log(chalk.gray(` [⚡] ${message}`));
667
+ }
668
+ }
669
+
670
+ /**
671
+ * Draw the exact AU-GOV Retro-Terminal Orchestrator UI
672
+ */
673
+ static drawAugovOrchestratorUI() {
674
+ this.clear();
675
+ console.log('\n');
676
+
677
+ // 1. Cyber Logo (Blue to Pink gradient feel via chalk)
678
+ const cyan = chalk.hex('#3B82F6');
679
+ const blue = chalk.hex('#6366F1');
680
+ const purple = chalk.hex('#8B5CF6');
681
+ const pink = chalk.hex('#EC4899');
682
+ const darkBorder = chalk.hex('#1E3A8A');
683
+
684
+ console.log(darkBorder('┌─────────────────────────────────────────────────────────────────────────────┐'));
685
+ console.log(darkBorder('│') + cyan(' █▀▄▀█ █▀█ █▀▀ █ █ █▀▀ █▀ ▀█▀ █▀█ ▄▀█ ▀█▀ █▀█ █▀█ ') + darkBorder('│'));
686
+ console.log(darkBorder('│') + blue(' █ ▀ █ █▄█ █▄▄ █▀█ ██▄ ▄█ █ █▀▄ █▀█ █ █▄█ █▀▄ ') + darkBorder('│'));
687
+ console.log(darkBorder('│') + purple(' 🇦🇺 AU-GOV SECURE INTELLIGENCE PROTOCOL 🇦🇺 ') + darkBorder('│'));
688
+ console.log(darkBorder('└─────────────────────────────────────────────────────────────────────────────┘'));
689
+ console.log('');
690
+
691
+ // 2. Dual Pane Layout
692
+ const statusHeader = chalk.bold.white('PROTOCOL STATUS & COMPLIANCE');
693
+ const logHeader = chalk.bold.white('🇦🇺 AU_GOV_ORCHESTRATOR is speaking...');
694
+
695
+ console.log(` ${statusHeader.padEnd(45)} ${logHeader}`);
696
+
697
+ // Row 1
698
+ console.log(` ${chalk.hex('#ec4899')('1.')} ${chalk.hex('#10b981')('ACTIVATING APS COMPLIANCE SHIELD...').padEnd(38)} ${chalk.gray('God-Mode Research: Indexing /local/env')}`);
699
+ // Row 2
700
+ console.log(` ${chalk.hex('#ec4899')('2.')} ${chalk.hex('#10b981')('IRAP Logging: Active.').padEnd(38)} ${chalk.red('||||||||||||||||||||||||||||||||||||')}`);
701
+ // Row 3
702
+ console.log(` ${chalk.hex('#ec4899')('3.')} ${chalk.hex('#10b981')('Local PII Redaction: Active.').padEnd(38)} ${chalk.gray('God-Mode Research: Injecting scanners...')}`);
703
+ // Row 4
704
+ console.log(` ${chalk.hex('#ec4899')('4.')} ${chalk.hex('#f59e0b')('Adhering to 8 Australia AI Ethics Principles.').padEnd(36)} ${chalk.cyan('🔍 [Deep Scan] Mapping topology...')}`);
705
+ // Row 5
706
+ console.log(` ${chalk.hex('#ec4899')('5.')} ${chalk.white('Session Active. Awaiting validated input.').padEnd(36)} ${chalk.yellow('🔥 [Knowledge Graph] Extracted 12 nodes.')}`);
707
+
708
+ console.log('\n');
664
709
  }
665
710
  }