sam-coder-cli 1.0.41 → 1.0.42

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.
Files changed (2) hide show
  1. package/bin/agi-cli.js +23 -9
  2. package/package.json +1 -1
package/bin/agi-cli.js CHANGED
@@ -3,6 +3,8 @@
3
3
  const ui = require('./ui.js');
4
4
  const readline = require('readline');
5
5
  const path = require('path');
6
+ // Import MultiplayerMode at the top level to avoid reference errors
7
+ let MultiplayerMode;
6
8
  const os = require('os');
7
9
  const fs = require('fs').promises;
8
10
  const { exec } = require('child_process');
@@ -782,15 +784,24 @@ async function start() {
782
784
 
783
785
  ui.showHeader();
784
786
 
785
- // Check for multiplayer mode flag
787
+ // Multiplayer mode via CLI flag
786
788
  if (process.argv.includes('--multiplayer')) {
787
- const multiplayerMode = new MultiplayerMode({
788
- rl,
789
- model: MODEL,
790
- serverUrl: process.env.MP_SERVER_URL || 'ws://localhost:8080'
791
- });
792
- await multiplayerMode.start();
793
- return;
789
+ // Lazy load MultiplayerMode to avoid circular dependencies
790
+ if (!MultiplayerMode) {
791
+ MultiplayerMode = require('./multiplayer-mode');
792
+ }
793
+ try {
794
+ const multiplayerMode = new MultiplayerMode({
795
+ rl,
796
+ model: MODEL,
797
+ serverUrl: process.env.MP_SERVER_URL || 'ws://localhost:8080'
798
+ });
799
+ await multiplayerMode.start();
800
+ return;
801
+ } catch (error) {
802
+ console.error('Failed to start multiplayer mode:', error);
803
+ process.exit(1);
804
+ }
794
805
  }
795
806
 
796
807
  // Standard single-agent mode
@@ -801,7 +812,10 @@ async function start() {
801
812
 
802
813
  const mode = await askForMode(rl, true);
803
814
  if (mode === 'multiplayer') {
804
- const MultiplayerMode = require('./multiplayer-mode');
815
+ // Lazy load MultiplayerMode to avoid circular dependencies
816
+ if (!MultiplayerMode) {
817
+ MultiplayerMode = require('./multiplayer-mode');
818
+ }
805
819
  try {
806
820
  const multiplayerMode = new MultiplayerMode({
807
821
  rl,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sam-coder-cli",
3
- "version": "1.0.41",
3
+ "version": "1.0.42",
4
4
  "description": "SAM-CODER: An animated command-line AI assistant with agency capabilities.",
5
5
  "main": "bin/agi-cli.js",
6
6
  "bin": {