@bonginkan/maria 4.3.19 → 4.3.21

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.3.19
1
+ # MARIA - AI Development Platform v4.3.21
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.3.19 (September 16, 2025)
13
+ ## 🚀 What's New in v4.3.21 (September 16, 2025)
14
14
 
15
15
  ### 🎯 Interactive Improvements & Choice Memory
16
16
  - **Choice Memory System**: Smart persistence of user selections across sessions
@@ -922,7 +922,7 @@ await secureWorkflow.executeWithAuth(workflowDefinition, securityContext);
922
922
  ### Quick Installation
923
923
  ```bash
924
924
  # Install globally (recommended)
925
- npm install -g @bonginkan/maria@4.3.19
925
+ npm install -g @bonginkan/maria@4.3.21
926
926
 
927
927
  # Verify installation
928
928
  maria --version # Should show v4.3.9
@@ -1126,7 +1126,7 @@ MARIA CODE is distributed under a comprehensive licensing system designed for in
1126
1126
 
1127
1127
  *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.*
1128
1128
 
1129
- **Transform your development experience today**: `npm install -g @bonginkan/maria@4.3.19`
1129
+ **Transform your development experience today**: `npm install -g @bonginkan/maria@4.3.21`
1130
1130
 
1131
1131
  🌐 **Official Website**: [https://maria-code.ai](https://maria-code.ai)
1132
1132
  💬 **Community**: [https://discord.gg/SMSmSGcEQy](https://discord.gg/SMSmSGcEQy)
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "lite-1.0.0",
3
- "generatedAt": "2025-09-22T01:57:57.827Z",
3
+ "generatedAt": "2025-09-22T06:06:21.869Z",
4
4
  "totalCommands": 17,
5
5
  "readyCount": 17,
6
6
  "partialCount": 0,
@@ -18690,7 +18690,20 @@ var init_logger = __esm({
18690
18690
  console[level](JSON.stringify(payload));
18691
18691
  return;
18692
18692
  }
18693
- console[level](tag, ...args2);
18693
+ const debugMode = process.env.MARIA_DEBUG === "1";
18694
+ const isError = tag.includes("[ERROR]");
18695
+ let outArgs = args2;
18696
+ if (isError && !debugMode) {
18697
+ const filtered = [];
18698
+ for (const a of args2) {
18699
+ const t2 = typeof a;
18700
+ if (a == null || t2 === "string" || t2 === "number" || t2 === "boolean") {
18701
+ filtered.push(a);
18702
+ }
18703
+ }
18704
+ outArgs = filtered;
18705
+ }
18706
+ console[level](tag, ...outArgs);
18694
18707
  }
18695
18708
  debug(...args2) {
18696
18709
  if (this.level <= 0 /* DEBUG */) {
@@ -23536,11 +23549,33 @@ var init_FormatUtils = __esm({
23536
23549
  "src/services/interactive-session/display/FormatUtils.ts"() {
23537
23550
  }
23538
23551
  });
23552
+
23553
+ // src/utils/terminal.ts
23554
+ function clearTerminal() {
23555
+ const stdout2 = process.stdout;
23556
+ if (!stdout2 || !stdout2.isTTY) {
23557
+ console.log("\n".repeat(10));
23558
+ return;
23559
+ }
23560
+ try {
23561
+ stdout2.write("\x1B[2J\x1B[3J\x1B[H");
23562
+ } catch {
23563
+ try {
23564
+ console.clear();
23565
+ } catch {
23566
+ }
23567
+ }
23568
+ }
23569
+ var init_terminal = __esm({
23570
+ "src/utils/terminal.ts"() {
23571
+ }
23572
+ });
23539
23573
  var DisplayManager;
23540
23574
  var init_DisplayManager = __esm({
23541
23575
  "src/services/interactive-session/display/DisplayManager.ts"() {
23542
23576
  init_SpinnerManager();
23543
23577
  init_FormatUtils();
23578
+ init_terminal();
23544
23579
  DisplayManager = class {
23545
23580
  spinnerManager;
23546
23581
  platform;
@@ -23568,15 +23603,7 @@ var init_DisplayManager = __esm({
23568
23603
  * Clear the terminal screen
23569
23604
  */
23570
23605
  clear() {
23571
- if (!this.isTTY) {
23572
- console.log("\n".repeat(10));
23573
- return;
23574
- }
23575
- if (this.isWindows) {
23576
- process.stdout.write("\x1B[2J\x1B[0f");
23577
- } else {
23578
- console.clear();
23579
- }
23606
+ clearTerminal();
23580
23607
  }
23581
23608
  /**
23582
23609
  * Move cursor to position
@@ -24082,6 +24109,7 @@ var init_StatusDisplay = __esm({
24082
24109
  var HelpHandler, ClearHandler, ExitHandler, VersionHandler, HistoryHandler, CoreHandlers;
24083
24110
  var init_CoreHandlers = __esm({
24084
24111
  "src/services/interactive-session/handlers/CoreHandlers.ts"() {
24112
+ init_terminal();
24085
24113
  HelpHandler = class {
24086
24114
  registry;
24087
24115
  constructor(registry) {
@@ -24155,7 +24183,7 @@ Type '/help <command>' for detailed information about a specific command.`
24155
24183
  ClearHandler = class {
24156
24184
  async execute(args2) {
24157
24185
  const startTime = perf_hooks.performance.now();
24158
- process.stdout.write("\x1B[2J\x1B[0f");
24186
+ clearTerminal();
24159
24187
  const processingTime = perf_hooks.performance.now() - startTime;
24160
24188
  return {
24161
24189
  success: true,
@@ -26038,8 +26066,8 @@ var require_package = __commonJS({
26038
26066
  "package.json"(exports, module) {
26039
26067
  module.exports = {
26040
26068
  name: "@bonginkan/maria",
26041
- version: "4.3.19",
26042
- description: "\u{1F680} MARIA v4.3.19 - Enterprise AI Development Platform with identity system and character voice implementation. 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.",
26069
+ version: "4.3.21",
26070
+ description: "\u{1F680} MARIA v4.3.21 - Enterprise AI Development Platform with identity system and character voice implementation. 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.",
26043
26071
  keywords: [
26044
26072
  "ai",
26045
26073
  "cli",
@@ -28071,7 +28099,7 @@ var init_AuthenticationManager = __esm({
28071
28099
  const response = await fetch(`${this.apiBase}/api/user/profile`, {
28072
28100
  headers: {
28073
28101
  "Authorization": `Bearer ${tokens2.accessToken}`,
28074
- "User-Agent": `maria-cli/${process.env.CLI_VERSION || "4.3.19"}`
28102
+ "User-Agent": `maria-cli/${process.env.CLI_VERSION || "4.3.21"}`
28075
28103
  }
28076
28104
  });
28077
28105
  if (response.status === 401) {
@@ -28703,7 +28731,7 @@ async function callApi(path60, init3 = {}) {
28703
28731
  "Authorization": `Bearer ${token}`,
28704
28732
  "X-Device-Id": getDeviceId(),
28705
28733
  "X-Session-Id": getSessionId() || "",
28706
- "User-Agent": `maria-cli/${process.env.CLI_VERSION || "4.3.19"}`,
28734
+ "User-Agent": `maria-cli/${process.env.CLI_VERSION || "4.3.21"}`,
28707
28735
  "Content-Type": init3.headers?.["Content-Type"] || "application/json"
28708
28736
  });
28709
28737
  const doFetch = async (token) => {
@@ -37601,6 +37629,7 @@ var init_clear_command = __esm({
37601
37629
  init_base_command();
37602
37630
  init_telemetry_helper();
37603
37631
  init_subscription_manager();
37632
+ init_terminal();
37604
37633
  ClearCommand = class extends BaseCommand {
37605
37634
  name = "clear";
37606
37635
  category = "conversation";
@@ -37617,7 +37646,7 @@ var init_clear_command = __esm({
37617
37646
  async execute(args2, context2) {
37618
37647
  const startTime = Date.now();
37619
37648
  try {
37620
- process.stdout.write("\x1B[2J\x1B[3J\x1B[H");
37649
+ clearTerminal();
37621
37650
  if (context2.session) {
37622
37651
  if (context2.session.conversationHistory) {
37623
37652
  context2.session.conversationHistory = [];
@@ -37646,7 +37675,7 @@ var init_clear_command = __esm({
37646
37675
  plan: getUserPlan(),
37647
37676
  quotaLeft: context2.quotaLeft || 999
37648
37677
  });
37649
- process.stdout.write("\x1B[2J\x1B[3J\x1B[H");
37678
+ clearTerminal();
37650
37679
  return this.success(chalk14__default.default.green("\u2705 Cleared"));
37651
37680
  }
37652
37681
  }
@@ -48369,11 +48398,20 @@ var init_image_command = __esm({
48369
48398
  model: cli.model,
48370
48399
  seed: cli.seed
48371
48400
  };
48372
- const apiRes = await callApiJson("/api/v1/image", {
48401
+ const resp = await callApi("/api/v1/image", {
48373
48402
  method: "POST",
48374
48403
  body: JSON.stringify(body),
48375
48404
  headers: { "Content-Type": "application/json" }
48376
48405
  });
48406
+ if (!resp.ok) {
48407
+ const data = await resp.json().catch(() => ({}));
48408
+ const code = data?.error ? String(data.error) : void 0;
48409
+ const msg2 = data?.message ? String(data.message) : `API error: ${resp.status}`;
48410
+ const hint = data?.hint ? String(data.hint) : "";
48411
+ const composed = hint ? `${msg2} (${code || "error"}) \u2014 ${hint}` : code ? `${msg2} (${code})` : msg2;
48412
+ return this.error(composed);
48413
+ }
48414
+ const apiRes = await resp.json();
48377
48415
  const urls = [];
48378
48416
  if (apiRes?.data?.url) urls.push(String(apiRes.data.url));
48379
48417
  const filesInline = apiRes?.data?.filesInline;
@@ -48499,6 +48537,8 @@ var init_image_command = __esm({
48499
48537
  }
48500
48538
  return this.success(msg, void 0, void 0);
48501
48539
  } catch (e2) {
48540
+ const m2 = e2?.message ? String(e2.message) : String(e2);
48541
+ return this.error(m2.startsWith("ERROR:") ? m2 : `ERROR: ${m2}`);
48502
48542
  }
48503
48543
  }
48504
48544
  const res = await runImagePipeline({
@@ -50559,7 +50599,7 @@ var init_about_command = __esm({
50559
50599
  async execute(args2, context2) {
50560
50600
  const output3 = [];
50561
50601
  output3.push("");
50562
- output3.push(chalk14__default.default.cyan.bold("\u{1F916} About MARIA v4.3.19"));
50602
+ output3.push(chalk14__default.default.cyan.bold("\u{1F916} About MARIA v4.3.21"));
50563
50603
  output3.push(chalk14__default.default.gray("\u2550".repeat(40)));
50564
50604
  output3.push("");
50565
50605
  output3.push(chalk14__default.default.white.bold("MARIA - Minimal API, Maximum Power"));
@@ -70768,7 +70808,7 @@ async function handleSlash(input3) {
70768
70808
  const { cmd, args: args2, flags } = parseSlash(input3);
70769
70809
  if (cmd === "clear" || cmd === "cls") {
70770
70810
  try {
70771
- process.stdout.write("\x1Bc");
70811
+ clearTerminal();
70772
70812
  } catch {
70773
70813
  }
70774
70814
  return true;
@@ -70817,6 +70857,7 @@ var init_handle_slash = __esm({
70817
70857
  init_unknown_command();
70818
70858
  init_slash_commands();
70819
70859
  init_cli_auth();
70860
+ init_terminal();
70820
70861
  }
70821
70862
  });
70822
70863
  function formatAnyError(err) {