@defai.digital/automatosx 6.0.5 → 6.0.6

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/CHANGELOG.md CHANGED
@@ -2,6 +2,38 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [6.0.6] - 2025-10-30
6
+
7
+ ### 🔧 Fixes
8
+
9
+ **CLI-Only Mode for Users Without API Access**
10
+
11
+ - **Environment Variable Override** (`src/cli/commands/run.ts` +17 lines)
12
+ - Added `AUTOMATOSX_CLI_ONLY=true` environment variable to force CLI mode
13
+ - Overrides OpenAI provider from SDK mode to CLI mode when set
14
+ - Prevents API connection attempts for users with CLI-only access
15
+ - Eliminates "Unable to connect to API" errors and retry loops
16
+ - Logging shows when CLI-only mode is enforced
17
+
18
+ - **Documentation** (`README.md` +24 lines)
19
+ - Added comprehensive CLI-only mode documentation
20
+ - Explained when to use (no API keys, corporate firewall, restricted network)
21
+ - Provided clear examples with environment variable usage
22
+ - Listed benefits: no API calls, no retry delays, works with CLI tools only
23
+
24
+ **Bug Fixes**
25
+
26
+ - **Test Generator Syntax Error** (`src/core/spec/TestGenerator.ts` line 262)
27
+ - Fixed malformed string concatenation in generated integration tests
28
+ - Changed `'${current.id}' to '${next.id}'` to `'${current.id}_to_${next.id}'`
29
+ - Fixes: Generated test code now compiles without syntax errors
30
+
31
+ ### 📊 Impact
32
+
33
+ - **Users affected**: CLI-only users (no API access, corporate networks, firewall restrictions)
34
+ - **Breaking changes**: None
35
+ - **Migration**: Optional - set `AUTOMATOSX_CLI_ONLY=true` if experiencing API connection issues
36
+
5
37
  ## [6.0.1] - 2025-10-30
6
38
 
7
39
  ### 🎉 Phase 2 & 3 Completion - PRODUCTION READY
package/README.md CHANGED
@@ -106,6 +106,31 @@ When you say "work with ax agent backend", the AI assistant:
106
106
 
107
107
  **This natural language interface is how we expect users to work with AutomatosX daily.**
108
108
 
109
+ ### CLI-Only Mode (No API Access Required)
110
+
111
+ If you only have CLI tools installed and **no API access** (no API keys or restricted network), you can force CLI-only mode:
112
+
113
+ ```bash
114
+ # Set environment variable to enforce CLI-only mode
115
+ export AUTOMATOSX_CLI_ONLY=true
116
+
117
+ # Now all providers will use CLI integration (subprocess), never API
118
+ ax run backend "implement user authentication"
119
+ ```
120
+
121
+ **When to use CLI-only mode:**
122
+ - ✅ You have `codex`, `gemini`, or `claude` CLI tools installed
123
+ - ✅ You don't have API keys configured
124
+ - ✅ You're behind a corporate firewall blocking API access
125
+ - ✅ You want to avoid API connection attempts and retries
126
+
127
+ **What it does:**
128
+ - Forces `openai` provider to use CLI subprocess mode (`codex` command)
129
+ - Prevents OpenAI SDK API calls even if configured for SDK mode
130
+ - Eliminates "Unable to connect to API" errors and retry loops
131
+
132
+ **Note**: This only affects OpenAI provider. Claude and Gemini providers always use CLI mode by default.
133
+
109
134
  ---
110
135
 
111
136
  ## 🎯 What Makes AutomatosX Different?
package/dist/index.js CHANGED
@@ -23258,7 +23258,16 @@ Complexity Score: ${complexity.score}/10
23258
23258
  connectionPool: openaiConfig.connectionPool,
23259
23259
  fallbackToCLI: openaiConfig.fallbackToCLI
23260
23260
  };
23261
- const integrationMode = openaiConfig.integration || "cli";
23261
+ const cliOnlyMode = process.env.AUTOMATOSX_CLI_ONLY === "true";
23262
+ let integrationMode = openaiConfig.integration || "cli";
23263
+ if (cliOnlyMode && integrationMode === "sdk") {
23264
+ logger.info("\u26A0\uFE0F CLI-only mode enforced (AUTOMATOSX_CLI_ONLY=true)", {
23265
+ provider: "openai",
23266
+ configuredMode: "sdk",
23267
+ enforcedMode: "cli"
23268
+ });
23269
+ integrationMode = "cli";
23270
+ }
23262
23271
  if (integrationMode === "sdk") {
23263
23272
  logger.info("\u{1F4E6} Using OpenAI SDK integration (native, no subprocess)", {
23264
23273
  provider: "openai",
@@ -23267,7 +23276,8 @@ Complexity Score: ${complexity.score}/10
23267
23276
  providers.push(new OpenAISDKProvider(providerConfig, openaiConfig.sdk || {}));
23268
23277
  } else {
23269
23278
  logger.info("\u{1F5A5}\uFE0F Using OpenAI CLI integration (subprocess)", {
23270
- provider: "openai"
23279
+ provider: "openai",
23280
+ cliOnlyMode: cliOnlyMode ? "enforced" : "default"
23271
23281
  });
23272
23282
  providers.push(new OpenAIProvider(providerConfig));
23273
23283
  }
@@ -41261,7 +41271,7 @@ var TestGenerator = class {
41261
41271
  const current = spec.actors[i];
41262
41272
  const next = spec.actors[i + 1];
41263
41273
  if (current && next) {
41264
- lines.push(` expect(result.dataFlow['${current.id}' to '${next.id}']).toBeDefined();`);
41274
+ lines.push(` expect(result.dataFlow['${current.id}_to_${next.id}']).toBeDefined();`);
41265
41275
  }
41266
41276
  }
41267
41277
  lines.push(` });`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defai.digital/automatosx",
3
- "version": "6.0.5",
3
+ "version": "6.0.6",
4
4
  "description": "AI Agent Orchestration Platform",
5
5
  "type": "module",
6
6
  "publishConfig": {