@bonginkan/maria 4.2.7 → 4.2.8

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/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # MARIA - AI Development Platform v4.2.7
1
+ # MARIA - AI Development Platform v4.2.8
2
2
 
3
3
  [![npm version](https://img.shields.io/npm/v/@bonginkan/maria.svg)](https://www.npmjs.com/package/@bonginkan/maria)
4
4
  [![License](https://img.shields.io/badge/license-Multi--tier-blue.svg)](LICENSE)
@@ -10,7 +10,7 @@
10
10
 
11
11
  > **Enterprise-grade AI development platform with 100% command availability and comprehensive fallback support**
12
12
 
13
- ## 🚀 What's New in v4.2.7 (January 2, 2025)
13
+ ## 🚀 What's New in v4.2.8 (September 3, 2025)
14
14
 
15
15
  ### 🏗️ Build Status - All Systems Operational ✅
16
16
  - **CLI NPM Package**: ESM + CJS builds successful (2.02MB/1.16MB)
@@ -707,10 +707,10 @@ await secureWorkflow.executeWithAuth(workflowDefinition, securityContext);
707
707
  ### Quick Installation
708
708
  ```bash
709
709
  # Install globally (recommended)
710
- npm install -g @bonginkan/maria@4.2.7
710
+ npm install -g @bonginkan/maria@4.2.8
711
711
 
712
712
  # Verify installation
713
- maria --version # Should show v4.2.7
713
+ maria --version # Should show v4.2.8
714
714
 
715
715
  # Initialize with authentication
716
716
  maria /login # Setup OAuth2.0 + PKCE authentication
@@ -911,7 +911,7 @@ MARIA CODE is distributed under a comprehensive licensing system designed for in
911
911
 
912
912
  *MARIA v4.1.4 represents the pinnacle of multimodal AI development platform evolution - combining revolutionary voice-to-code capabilities, advanced memory systems, and comprehensive command ecosystems with enterprise-grade security and performance. This release establishes MARIA as the definitive choice for developers and Fortune 500 enterprises seeking intelligent, multimodal development experiences with GraphRAG intelligence, multilingual support, and zero-anxiety coding workflows.*
913
913
 
914
- **Transform your development experience today**: `npm install -g @bonginkan/maria@4.2.7`
914
+ **Transform your development experience today**: `npm install -g @bonginkan/maria@4.2.8`
915
915
 
916
916
  🌐 **Official Website**: [https://maria-code.ai](https://maria-code.ai)
917
917
  💬 **Community**: [https://discord.gg/SMSmSGcEQy](https://discord.gg/SMSmSGcEQy)
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "2.0.0",
3
- "generatedAt": "2025-09-03T10:37:41.196Z",
3
+ "generatedAt": "2025-09-03T11:14:06.483Z",
4
4
  "totalCommands": 76,
5
5
  "readyCount": 74,
6
6
  "partialCount": 1,
@@ -244,13 +244,6 @@
244
244
  "depsAvailable": true,
245
245
  "description": "Evaluate and test AI model performance"
246
246
  },
247
- "conversation/clear": {
248
- "status": "READY",
249
- "hasExecute": true,
250
- "hasMetadata": true,
251
- "depsAvailable": true,
252
- "description": "Clear conversation history"
253
- },
254
247
  "core/whoami": {
255
248
  "status": "READY",
256
249
  "hasExecute": true,
@@ -363,61 +356,61 @@
363
356
  "depsAvailable": true,
364
357
  "description": "About MARIA - version, features, and credits"
365
358
  },
366
- "code/mm": {
359
+ "conversation/clear": {
367
360
  "status": "READY",
368
361
  "hasExecute": true,
369
362
  "hasMetadata": true,
370
363
  "depsAvailable": true,
371
- "description": "Multimodal code generation (image/voice to code)"
364
+ "description": "Clear conversation history"
372
365
  },
373
- "code/multimodal": {
366
+ "configuration/setup": {
374
367
  "status": "READY",
375
368
  "hasExecute": true,
376
369
  "hasMetadata": true,
377
370
  "depsAvailable": true,
378
- "description": "Advanced multimodal AI operations"
371
+ "description": "First-time environment setup wizard"
379
372
  },
380
- "code/code": {
373
+ "business/sales-dashboard": {
381
374
  "status": "READY",
382
375
  "hasExecute": true,
383
376
  "hasMetadata": true,
384
377
  "depsAvailable": true,
385
- "description": "Generate code with AI assistance"
378
+ "description": "Sales metrics and dashboard"
386
379
  },
387
- "configuration/setup": {
380
+ "business/battlecard": {
388
381
  "status": "READY",
389
382
  "hasExecute": true,
390
383
  "hasMetadata": true,
391
384
  "depsAvailable": true,
392
- "description": "First-time environment setup wizard"
385
+ "description": "Competitive battlecard generator"
393
386
  },
394
- "business/sales-dashboard": {
387
+ "code/mm": {
395
388
  "status": "READY",
396
389
  "hasExecute": true,
397
390
  "hasMetadata": true,
398
391
  "depsAvailable": true,
399
- "description": "Sales metrics and dashboard"
392
+ "description": "Multimodal code generation (image/voice to code)"
400
393
  },
401
- "business/battlecard": {
394
+ "code/multimodal": {
402
395
  "status": "READY",
403
396
  "hasExecute": true,
404
397
  "hasMetadata": true,
405
398
  "depsAvailable": true,
406
- "description": "Competitive battlecard generator"
399
+ "description": "Advanced multimodal AI operations"
407
400
  },
408
- "ai/gpu": {
401
+ "code/code": {
409
402
  "status": "READY",
410
403
  "hasExecute": true,
411
404
  "hasMetadata": true,
412
405
  "depsAvailable": true,
413
- "description": "GPU management and monitoring"
406
+ "description": "Generate code with AI assistance"
414
407
  },
415
- "analysis/research": {
408
+ "ai/gpu": {
416
409
  "status": "READY",
417
410
  "hasExecute": true,
418
411
  "hasMetadata": true,
419
412
  "depsAvailable": true,
420
- "description": "AI-powered research and analysis"
413
+ "description": "GPU management and monitoring"
421
414
  },
422
415
  "system/terminal-setup": {
423
416
  "status": "READY",
@@ -441,6 +434,13 @@
441
434
  "depsAvailable": false,
442
435
  "description": "No description available"
443
436
  },
437
+ "analysis/research": {
438
+ "status": "READY",
439
+ "hasExecute": true,
440
+ "hasMetadata": true,
441
+ "depsAvailable": true,
442
+ "description": "AI-powered research and analysis"
443
+ },
444
444
  "core/update": {
445
445
  "status": "READY",
446
446
  "hasExecute": true,
@@ -511,13 +511,6 @@
511
511
  "depsAvailable": true,
512
512
  "description": "Configure and manage command hooks"
513
513
  },
514
- "business/analytics": {
515
- "status": "READY",
516
- "hasExecute": true,
517
- "hasMetadata": true,
518
- "depsAvailable": true,
519
- "description": "Business analytics and reporting"
520
- },
521
514
  "auth/usage": {
522
515
  "status": "READY",
523
516
  "hasExecute": true,
@@ -538,6 +531,13 @@
538
531
  "hasMetadata": true,
539
532
  "depsAvailable": true,
540
533
  "description": "Sign out from MARIA"
534
+ },
535
+ "business/analytics": {
536
+ "status": "READY",
537
+ "hasExecute": true,
538
+ "hasMetadata": true,
539
+ "depsAvailable": true,
540
+ "description": "Business analytics and reporting"
541
541
  }
542
542
  },
543
543
  "typoMappings": {
@@ -7092,15 +7092,36 @@ var init_SecretManagerIntegration = __esm({
7092
7092
  "src/services/intelligent-model-selector/SecretManagerIntegration.ts"() {
7093
7093
  import_secret_manager = require("@google-cloud/secret-manager");
7094
7094
  SecretManagerIntegration = class {
7095
- // 1 hour
7096
7095
  constructor(config2) {
7097
7096
  this.config = config2;
7098
- this.client = new import_secret_manager.SecretManagerServiceClient();
7097
+ this.useGsm = this.shouldUseGsm();
7099
7098
  }
7100
- client;
7099
+ client = null;
7101
7100
  cache = /* @__PURE__ */ new Map();
7102
7101
  cacheExpiry = /* @__PURE__ */ new Map();
7103
7102
  CACHE_TTL = 36e5;
7103
+ // 1 hour
7104
+ useGsm;
7105
+ /** Determine whether GSM should be used in this environment */
7106
+ shouldUseGsm() {
7107
+ if (process.env.MARIA_DISABLE_GSM === "true") return false;
7108
+ if (process.env.GOOGLE_APPLICATION_CREDENTIALS) return true;
7109
+ if (process.env.GOOGLE_CLOUD_PROJECT || process.env.GCLOUD_PROJECT) return true;
7110
+ if (process.env.CLOUD_RUN_SERVICE || process.env.K_SERVICE) return true;
7111
+ if (process.env.GCE_METADATA_HOST) return true;
7112
+ return false;
7113
+ }
7114
+ /** Lazily create Secret Manager client only when permitted */
7115
+ ensureClient() {
7116
+ if (!this.useGsm) return null;
7117
+ if (this.client) return this.client;
7118
+ try {
7119
+ this.client = new import_secret_manager.SecretManagerServiceClient();
7120
+ } catch {
7121
+ this.client = null;
7122
+ }
7123
+ return this.client;
7124
+ }
7104
7125
  /**
7105
7126
  * Get API key from Secret Manager with caching
7106
7127
  */
@@ -7109,13 +7130,17 @@ var init_SecretManagerIntegration = __esm({
7109
7130
  if (!secretName) {
7110
7131
  return void 0;
7111
7132
  }
7133
+ const client = this.ensureClient();
7134
+ if (!client) {
7135
+ return this.getFallbackFromEnv(provider);
7136
+ }
7112
7137
  const cached = this.getCachedSecret(secretName);
7113
7138
  if (cached) {
7114
7139
  return cached;
7115
7140
  }
7116
7141
  try {
7117
7142
  const name2 = `projects/${this.config.projectId}/secrets/${secretName}/versions/latest`;
7118
- const [version] = await this.client.accessSecretVersion({ name: name2 });
7143
+ const [version] = await client.accessSecretVersion({ name: name2 });
7119
7144
  const payload = version.payload?.data;
7120
7145
  if (!payload) {
7121
7146
  return void 0;
@@ -7148,6 +7173,10 @@ var init_SecretManagerIntegration = __esm({
7148
7173
  * Verify that required secrets exist
7149
7174
  */
7150
7175
  async verifySecrets() {
7176
+ const client = this.ensureClient();
7177
+ if (!client) {
7178
+ return { available: [], missing: [] };
7179
+ }
7151
7180
  const available = [];
7152
7181
  const missing = [];
7153
7182
  const providers = ["google", "openai", "anthropic", "groq"];
@@ -7156,7 +7185,7 @@ var init_SecretManagerIntegration = __esm({
7156
7185
  if (!secretName) continue;
7157
7186
  try {
7158
7187
  const name2 = `projects/${this.config.projectId}/secrets/${secretName}`;
7159
- await this.client.getSecret({ name: name2 });
7188
+ await client.getSecret({ name: name2 });
7160
7189
  available.push(provider);
7161
7190
  } catch (error2) {
7162
7191
  missing.push(provider);
@@ -7172,17 +7201,21 @@ var init_SecretManagerIntegration = __esm({
7172
7201
  if (!secretName) {
7173
7202
  return false;
7174
7203
  }
7204
+ const client = this.ensureClient();
7205
+ if (!client) {
7206
+ return false;
7207
+ }
7175
7208
  const secretId = `projects/${this.config.projectId}/secrets/${secretName}`;
7176
7209
  try {
7177
7210
  let secretExists = false;
7178
7211
  try {
7179
- await this.client.getSecret({ name: secretId });
7212
+ await client.getSecret({ name: secretId });
7180
7213
  secretExists = true;
7181
7214
  } catch {
7182
7215
  secretExists = false;
7183
7216
  }
7184
7217
  if (!secretExists) {
7185
- await this.client.createSecret({
7218
+ await client.createSecret({
7186
7219
  parent: `projects/${this.config.projectId}`,
7187
7220
  secretId: secretName,
7188
7221
  secret: {
@@ -7196,7 +7229,7 @@ var init_SecretManagerIntegration = __esm({
7196
7229
  }
7197
7230
  });
7198
7231
  }
7199
- await this.client.addSecretVersion({
7232
+ await client.addSecretVersion({
7200
7233
  parent: secretId,
7201
7234
  payload: {
7202
7235
  data: Buffer.from(apiKey, "utf8")
@@ -21909,8 +21942,8 @@ var init_package = __esm({
21909
21942
  "package.json"() {
21910
21943
  package_default = {
21911
21944
  name: "@bonginkan/maria",
21912
- version: "4.2.7",
21913
- description: "\u{1F680} MARIA v4.2.0 - Enterprise AI Development Platform with 100% Command Availability. Features 74 production-ready commands with comprehensive fallback implementation, local LLM support, and zero external dependencies. Includes natural language coding, AI safety evaluation, intelligent evolution system, episodic memory with PII masking, and real-time monitoring dashboard. Built with TypeScript AST-powered code generation, OAuth2.0 + PKCE authentication, quantum-resistant cryptography, and enterprise-grade performance.",
21945
+ version: "4.2.8",
21946
+ description: "\u{1F680} MARIA v4.2.8 - Enterprise AI Development Platform with 100% Command Availability. Features 74 production-ready commands with comprehensive fallback implementation, local LLM support, and zero external dependencies. Includes natural language coding, AI safety evaluation, intelligent evolution system, episodic memory with PII masking, and real-time monitoring dashboard. Built with TypeScript AST-powered code generation, OAuth2.0 + PKCE authentication, quantum-resistant cryptography, and enterprise-grade performance.",
21914
21947
  keywords: [
21915
21948
  "ai",
21916
21949
  "cli",
@@ -26246,8 +26279,11 @@ var init_autocomplete_dropdown = __esm({
26246
26279
  const isSelected = index === this.selectedIndex;
26247
26280
  const prefix = isSelected ? import_chalk15.default.cyan("\u25BA ") : " ";
26248
26281
  const nameStyle = isSelected ? import_chalk15.default.inverse : (s2) => s2;
26249
- const displayName = suggestion.name.padEnd(20);
26250
- const displayDesc = suggestion.description.length > 30 ? suggestion.description.substring(0, 27) + "..." : suggestion.description.padEnd(30);
26282
+ const safeName = (suggestion?.name ?? "").toString();
26283
+ const safeDescRaw = suggestion?.description ?? "";
26284
+ const safeDesc = typeof safeDescRaw === "string" ? safeDescRaw : String(safeDescRaw ?? "");
26285
+ const displayName = safeName.padEnd(20);
26286
+ const displayDesc = safeDesc.length > 30 ? safeDesc.substring(0, 27) + "..." : safeDesc.padEnd(30);
26251
26287
  const line = `\u2502${prefix}${nameStyle(import_chalk15.default.white(displayName) + " " + import_chalk15.default.gray(displayDesc))} \u2502`;
26252
26288
  process.stdout.write("\x1B[K" + line + "\n");
26253
26289
  });