feat: SEO optimize README and add GLM 4.7 integration
- Add comprehensive SEO meta tags (Open Graph, Twitter Card, Schema.org JSON-LD) - Add GitHub badges (stars, forks, license, release) with CTA - Add dedicated 'Supported AI Models & Providers' section with: - GLM 4.7 spotlight with benchmarks (SWE-bench +73.8%, #1 WebDev) - Z.AI API integration with 10% discount link (R0K78RJKNW) - Complete model listings for Z.AI, Anthropic, OpenAI, Google, Qwen, Ollama - Update installers with npm primary method and ZIP fallback for OpenCode CLI - Add backup files for all installers - Update repository clone URL to new GitHub location - Update all URLs and references to roman-ryzenadvanced/NomadArch-v1.0
This commit is contained in:
312
.backup/Install-Linux.sh.backup
Normal file
312
.backup/Install-Linux.sh.backup
Normal file
@@ -0,0 +1,312 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo ""
|
||||
echo " ███╗ ██╗ ██████╗ ███╗ ███╗ █████╗ ██████╗ █████╗ ██████╗ ██████╗██╗ ██╗"
|
||||
echo " ████╗ ██║██╔═══██╗████╗ ████║██╔══██╗██╔══██╗██╔══██╗██╔════╝██║ ██║"
|
||||
echo " ██╔██╗ ██║██║ ██║██╔████╔██║███████║██║ ██║███████║██████╔╝██║ ███████║"
|
||||
echo " ██║╚██╗██║██║ ██║██║╚██╔╝██║██╔══██║██║ ██║██╔══██║██╔══██╗██║ ██╔══██║"
|
||||
echo " ██║ ╚████║╚██████╔╝██║ ╚═╝ ██║██║ ██║██████╔╝██║ ██║██║ ██║╚██████╗██║ ██║"
|
||||
echo " ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝"
|
||||
echo ""
|
||||
echo " INSTALLER - Enhanced with Auto-Dependency Resolution"
|
||||
echo " ═════════════════════════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
|
||||
ERRORS=0
|
||||
WARNINGS=0
|
||||
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
echo "[STEP 1/6] Detecting Linux Distribution..."
|
||||
echo ""
|
||||
|
||||
# Detect Linux distribution
|
||||
if [ -f /etc/os-release ]; then
|
||||
. /etc/os-release
|
||||
DISTRO=$ID
|
||||
DISTRO_VERSION=$VERSION_ID
|
||||
echo "[OK] Detected: $PRETTY_NAME"
|
||||
else
|
||||
echo "[WARN] Could not detect specific distribution"
|
||||
DISTRO="unknown"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 2/6] Checking System Requirements..."
|
||||
echo ""
|
||||
|
||||
# Check for Node.js
|
||||
echo "[INFO] Checking Node.js..."
|
||||
if ! command -v node &> /dev/null; then
|
||||
echo "[ERROR] Node.js not found!"
|
||||
echo ""
|
||||
echo "NomadArch requires Node.js to run."
|
||||
echo ""
|
||||
echo "Install using your package manager:"
|
||||
if [ "$DISTRO" = "ubuntu" ] || [ "$DISTRO" = "debian" ]; then
|
||||
echo " sudo apt update && sudo apt install -y nodejs npm"
|
||||
elif [ "$DISTRO" = "fedora" ]; then
|
||||
echo " sudo dnf install -y nodejs npm"
|
||||
elif [ "$DISTRO" = "arch" ] || [ "$DISTRO" = "manjaro" ]; then
|
||||
echo " sudo pacman -S nodejs npm"
|
||||
elif [ "$DISTRO" = "opensuse-leap" ] || [ "$DISTRO" = "opensuse-tumbleweed" ]; then
|
||||
echo " sudo zypper install -y nodejs npm"
|
||||
else
|
||||
echo " Visit https://nodejs.org/ for installation instructions"
|
||||
fi
|
||||
echo ""
|
||||
echo "Or install Node.js using NVM (Node Version Manager):"
|
||||
echo " curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash"
|
||||
echo " source ~/.bashrc"
|
||||
echo " nvm install 20"
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
NODE_VERSION=$(node --version)
|
||||
echo "[OK] Node.js detected: $NODE_VERSION"
|
||||
|
||||
# Check Node.js version (require 18+)
|
||||
NODE_MAJOR=$(echo $NODE_VERSION | cut -d. -f1 | sed 's/v//')
|
||||
if [ "$NODE_MAJOR" -lt 18 ]; then
|
||||
echo "[WARN] Node.js version is too old (found v$NODE_VERSION, required 18+)"
|
||||
echo "[INFO] Please update Node.js"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
fi
|
||||
|
||||
# Check for npm
|
||||
echo "[INFO] Checking npm..."
|
||||
if ! command -v npm &> /dev/null; then
|
||||
echo "[ERROR] npm not found! This should come with Node.js."
|
||||
echo "Please reinstall Node.js"
|
||||
ERRORS=$((ERRORS + 1))
|
||||
fi
|
||||
NPM_VERSION=$(npm --version)
|
||||
echo "[OK] npm detected: $NPM_VERSION"
|
||||
|
||||
# Check for build-essential (required for native modules)
|
||||
echo "[INFO] Checking build tools..."
|
||||
if ! command -v make &> /dev/null || ! command -v gcc &> /dev/null || ! command -v g++ &> /dev/null; then
|
||||
echo "[WARN] Build tools not found (gcc, g++, make)"
|
||||
echo "[INFO] Installing build-essential..."
|
||||
if [ "$DISTRO" = "ubuntu" ] || [ "$DISTRO" = "debian" ]; then
|
||||
sudo apt update && sudo apt install -y build-essential
|
||||
elif [ "$DISTRO" = "fedora" ]; then
|
||||
sudo dnf install -y gcc g++ make
|
||||
elif [ "$DISTRO" = "arch" ] || [ "$DISTRO" = "manjaro" ]; then
|
||||
sudo pacman -S --noconfirm base-devel
|
||||
elif [ "$DISTRO" = "opensuse-leap" ] || [ "$DISTRO" = "opensuse-tumbleweed" ]; then
|
||||
sudo zypper install -y gcc-c++ make
|
||||
else
|
||||
echo "[WARN] Could not auto-install build tools. Please install manually."
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
fi
|
||||
else
|
||||
echo "[OK] Build tools detected"
|
||||
fi
|
||||
|
||||
# Check for Git (optional but recommended)
|
||||
echo "[INFO] Checking Git..."
|
||||
if ! command -v git &> /dev/null; then
|
||||
echo "[WARN] Git not found (optional but recommended)"
|
||||
echo "[INFO] Install: sudo apt install git (or equivalent for your distro)"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
GIT_VERSION=$(git --version)
|
||||
echo "[OK] Git detected: $GIT_VERSION"
|
||||
fi
|
||||
|
||||
# Check for Python (optional, for some tools)
|
||||
echo "[INFO] Checking Python..."
|
||||
if command -v python3 &> /dev/null; then
|
||||
PY_VERSION=$(python3 --version 2>&1 | awk '{print $2}')
|
||||
echo "[OK] Python3 detected: $PY_VERSION"
|
||||
elif command -v python &> /dev/null; then
|
||||
PY_VERSION=$(python --version 2>&1 | awk '{print $2}')
|
||||
echo "[OK] Python detected: $PY_VERSION"
|
||||
else
|
||||
echo "[WARN] Python not found (optional, required for some build tools)"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
fi
|
||||
|
||||
# Check disk space (at least 2GB free)
|
||||
FREE_SPACE=$(df -BG "$PWD" | tail -1 | awk '{print int($4/1024/1024)}')
|
||||
if [ "$FREE_SPACE" -lt 2048 ]; then
|
||||
echo "[WARN] Low disk space ($FREE_SPACE MB free, recommended 2GB+)"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
echo "[OK] Disk space: $FREE_SPACE MB free"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 3/7] Downloading OpenCode Binary..."
|
||||
echo ""
|
||||
|
||||
if [ ! -d "bin" ]; then
|
||||
mkdir bin
|
||||
fi
|
||||
|
||||
if [ ! -f "bin/opencode" ]; then
|
||||
echo "[SETUP] Downloading opencode binary from GitHub releases..."
|
||||
echo "[INFO] This is required for workspace functionality."
|
||||
|
||||
# Detect architecture
|
||||
ARCH=$(uname -m)
|
||||
if [ "$ARCH" = "x86_64" ]; then
|
||||
FILENAME="opencode-linux"
|
||||
elif [ "$ARCH" = "aarch64" ] || [ "$ARCH" = "arm64" ]; then
|
||||
FILENAME="opencode-linux-arm64"
|
||||
else
|
||||
echo "[WARN] Unsupported architecture: $ARCH"
|
||||
echo "[INFO] Please download opencode manually from: https://opencode.ai/"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
FILENAME=""
|
||||
fi
|
||||
|
||||
if [ -n "$FILENAME" ]; then
|
||||
curl -L -o "bin/opencode" "https://github.com/NeuralNomadsAI/NomadArch/releases/latest/download/$FILENAME"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "[WARN] Failed to download opencode automatically."
|
||||
echo "[INFO] You can install OpenCode CLI manually from: https://opencode.ai/"
|
||||
echo "[INFO] Or download opencode and place it in bin/ folder"
|
||||
echo "[INFO] Without opencode, workspace creation will fail."
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
chmod +x bin/opencode
|
||||
echo "[OK] opencode downloaded successfully"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "[OK] opencode already exists"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 5/7] Setting Permissions..."
|
||||
echo ""
|
||||
|
||||
# Make scripts executable
|
||||
chmod +x Launch-Unix.sh 2>/dev/null
|
||||
chmod +x Install-Linux.sh 2>/dev/null
|
||||
chmod +x Install-Mac.sh 2>/dev/null
|
||||
|
||||
echo "[OK] Scripts permissions set"
|
||||
|
||||
echo ""
|
||||
echo "[STEP 6/7] Cleaning Previous Installation..."
|
||||
echo ""
|
||||
|
||||
if [ -d "node_modules" ]; then
|
||||
echo "[INFO] Found existing node_modules, cleaning..."
|
||||
rm -rf node_modules
|
||||
echo "[OK] Cleaned previous installation artifacts"
|
||||
else
|
||||
echo "[OK] No previous installation found"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 7/7] Installing Dependencies..."
|
||||
echo ""
|
||||
echo "This may take 3-10 minutes depending on your internet speed."
|
||||
echo "Please be patient and do not close this terminal."
|
||||
echo ""
|
||||
|
||||
npm install
|
||||
if [ $? -ne 0 ]; then
|
||||
echo ""
|
||||
echo "[ERROR] npm install failed!"
|
||||
echo ""
|
||||
echo "Common solutions:"
|
||||
echo " 1. Check your internet connection"
|
||||
echo " 2. Try running with sudo if permission errors occur"
|
||||
echo " 3. Clear npm cache: npm cache clean --force"
|
||||
echo " 4. Delete node_modules and try again"
|
||||
echo ""
|
||||
echo "Attempting to clear npm cache and retry..."
|
||||
npm cache clean --force
|
||||
echo "Retrying installation..."
|
||||
npm install
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "[ERROR] Installation failed after retry."
|
||||
ERRORS=$((ERRORS + 1))
|
||||
fi
|
||||
else
|
||||
echo "[OK] Dependencies installed successfully"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 6/6] Building NomadArch..."
|
||||
echo ""
|
||||
echo "This may take 2-5 minutes depending on your system."
|
||||
echo ""
|
||||
|
||||
npm run build
|
||||
if [ $? -ne 0 ]; then
|
||||
echo ""
|
||||
echo "[ERROR] Build failed!"
|
||||
echo ""
|
||||
echo "Common solutions:"
|
||||
echo " 1. Check that Node.js version is 18+ (node --version)"
|
||||
echo " 2. Clear npm cache: npm cache clean --force"
|
||||
echo " 3. Delete node_modules and reinstall: rm -rf node_modules && npm install"
|
||||
echo " 4. Check for missing system dependencies (build-essential)"
|
||||
echo " 5. Check error messages above for specific issues"
|
||||
echo ""
|
||||
ERRORS=$((ERRORS + 1))
|
||||
else
|
||||
echo "[OK] Build completed successfully"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Verifying Installation"
|
||||
echo ""
|
||||
|
||||
# Check if opencode binary exists
|
||||
if [ ! -f "bin/opencode" ]; then
|
||||
echo "[WARN] opencode binary not found. Workspace creation will fail."
|
||||
echo "[INFO] Download from: https://github.com/NeuralNomadsAI/NomadArch/releases/latest/download/opencode-linux"
|
||||
echo "[INFO] Or install OpenCode CLI from: https://opencode.ai/"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
echo "[OK] opencode binary verified"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Installation Summary"
|
||||
echo ""
|
||||
|
||||
if [ $ERRORS -gt 0 ]; then
|
||||
echo ""
|
||||
echo "════════════════════════════════════════════════════════════════════════════"
|
||||
echo "[FAILED] Installation encountered $ERRORS error(s)!"
|
||||
echo ""
|
||||
echo "Please review error messages above and try again."
|
||||
echo "For help, see: https://github.com/NeuralNomadsAI/NomadArch/issues"
|
||||
echo "════════════════════════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "════════════════════════════════════════════════════════════════════════════"
|
||||
echo "[SUCCESS] Installation Complete!"
|
||||
echo ""
|
||||
|
||||
if [ $WARNINGS -gt 0 ]; then
|
||||
echo "[WARN] There were $WARNINGS warning(s) during installation."
|
||||
echo "Review warnings above. Most warnings are non-critical."
|
||||
echo ""
|
||||
fi
|
||||
|
||||
echo "You can now run NomadArch using:"
|
||||
echo " ./Launch-Unix.sh"
|
||||
echo ""
|
||||
echo "For help and documentation, see: README.md"
|
||||
echo "For troubleshooting, see: TROUBLESHOOTING.md"
|
||||
echo "════════════════════════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
echo "Press Enter to start NomadArch now, or Ctrl+C to start later..."
|
||||
read
|
||||
|
||||
echo ""
|
||||
echo "[INFO] Starting NomadArch..."
|
||||
./Launch-Unix.sh
|
||||
349
.backup/Install-Mac.sh.backup
Normal file
349
.backup/Install-Mac.sh.backup
Normal file
@@ -0,0 +1,349 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo ""
|
||||
echo " ███╗ ██╗ ██████╗ ███╗ ███╗ █████╗ ██████╗ █████╗ ██████╗ ██████╗██╗ ██╗"
|
||||
echo " ████╗ ██║██╔═══██╗████╗ ████║██╔══██╗██╔══██╗██╔══██╗██╔════╝██║ ██║"
|
||||
echo " ██╔██╗ ██║██║ ██║██╔████╔██║███████║██║ ██║███████║██████╔╝██║ ███████║"
|
||||
echo " ██║╚██╗██║██║ ██║██║╚██╔╝██║██╔══██║██║ ██║██╔══██║██╔══██╗██║ ██╔══██║"
|
||||
echo " ██║ ╚████║╚██████╔╝██║ ╚═╝ ██║██║ ██║██████╔╝██║ ██║██║ ██║╚██████╗██║ ██║"
|
||||
echo " ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝"
|
||||
echo ""
|
||||
echo " INSTALLER - macOS Enhanced with Auto-Dependency Resolution"
|
||||
echo " ═══════════════════════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
|
||||
ERRORS=0
|
||||
WARNINGS=0
|
||||
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
echo "[STEP 1/7] Checking macOS Version..."
|
||||
echo ""
|
||||
|
||||
# Detect macOS version
|
||||
if [ -f /System/Library/CoreServices/SystemVersion.plist ]; then
|
||||
MAC_VERSION=$(defaults read /System/Library/CoreServices/SystemVersion.plist ProductVersion)
|
||||
MAC_MAJOR=$(echo $MAC_VERSION | cut -d. -f1)
|
||||
echo "[OK] macOS detected: $MAC_VERSION"
|
||||
|
||||
# Check minimum version (macOS 11+ / Big Sur+)
|
||||
if [ "$MAC_MAJOR" -lt 11 ]; then
|
||||
echo "[WARN] NomadArch requires macOS 11+ (Big Sur or later)"
|
||||
echo "[INFO] Your version is $MAC_VERSION"
|
||||
echo "[INFO] Please upgrade macOS to continue"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "[WARN] Could not detect macOS version"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
fi
|
||||
|
||||
# Check for Apple Silicon
|
||||
ARCH=$(uname -m)
|
||||
if [ "$ARCH" = "arm64" ]; then
|
||||
echo "[OK] Apple Silicon detected (M1/M2/M3 chip)"
|
||||
elif [ "$ARCH" = "x86_64" ]; then
|
||||
echo "[OK] Intel Mac detected"
|
||||
else
|
||||
echo "[WARN] Unknown architecture: $ARCH"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 2/7] Checking System Requirements..."
|
||||
echo ""
|
||||
|
||||
# Check for Node.js
|
||||
echo "[INFO] Checking Node.js..."
|
||||
if ! command -v node &> /dev/null; then
|
||||
echo "[ERROR] Node.js not found!"
|
||||
echo ""
|
||||
echo "NomadArch requires Node.js to run."
|
||||
echo ""
|
||||
echo "Install Node.js using one of these methods:"
|
||||
echo ""
|
||||
echo " 1. Homebrew (recommended):"
|
||||
echo " brew install node"
|
||||
echo ""
|
||||
echo " 2. Download from official site:"
|
||||
echo " Visit https://nodejs.org/"
|
||||
echo " Download and install the macOS installer"
|
||||
echo ""
|
||||
echo " 3. Using NVM (Node Version Manager):"
|
||||
echo " curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash"
|
||||
echo " source ~/.zshrc (or ~/.bash_profile)"
|
||||
echo " nvm install 20"
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
NODE_VERSION=$(node --version)
|
||||
echo "[OK] Node.js detected: $NODE_VERSION"
|
||||
|
||||
# Check Node.js version (require 18+)
|
||||
NODE_MAJOR=$(echo $NODE_VERSION | cut -d. -f1 | sed 's/v//')
|
||||
if [ "$NODE_MAJOR" -lt 18 ]; then
|
||||
echo "[WARN] Node.js version is too old (found v$NODE_VERSION, required 18+)"
|
||||
echo "[INFO] Please update Node.js: brew upgrade node"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
fi
|
||||
|
||||
# Check for npm
|
||||
echo "[INFO] Checking npm..."
|
||||
if ! command -v npm &> /dev/null; then
|
||||
echo "[ERROR] npm not found! This should come with Node.js."
|
||||
echo "Please reinstall Node.js"
|
||||
ERRORS=$((ERRORS + 1))
|
||||
fi
|
||||
NPM_VERSION=$(npm --version)
|
||||
echo "[OK] npm detected: $NPM_VERSION"
|
||||
|
||||
# Check for Xcode Command Line Tools (required for native modules)
|
||||
echo "[INFO] Checking Xcode Command Line Tools..."
|
||||
if ! command -v xcode-select &> /dev/null; then
|
||||
echo "[WARN] Xcode Command Line Tools not installed"
|
||||
echo "[INFO] Required for building native Node.js modules"
|
||||
echo ""
|
||||
echo "Install by running:"
|
||||
echo " xcode-select --install"
|
||||
echo ""
|
||||
echo "This will open a dialog to install the tools."
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
XCODE_PATH=$(xcode-select -p)
|
||||
echo "[OK] Xcode Command Line Tools detected: $XCODE_PATH"
|
||||
fi
|
||||
|
||||
# Check for Homebrew (optional but recommended)
|
||||
echo "[INFO] Checking Homebrew..."
|
||||
if ! command -v brew &> /dev/null; then
|
||||
echo "[WARN] Homebrew not found (optional but recommended)"
|
||||
echo "[INFO] Install Homebrew from: https://brew.sh/"
|
||||
echo "[INFO] Then you can install dependencies with: brew install node git"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
BREW_VERSION=$(brew --version | head -1)
|
||||
echo "[OK] Homebrew detected: $BREW_VERSION"
|
||||
fi
|
||||
|
||||
# Check for Git (optional but recommended)
|
||||
echo "[INFO] Checking Git..."
|
||||
if ! command -v git &> /dev/null; then
|
||||
echo "[WARN] Git not found (optional but recommended)"
|
||||
echo "[INFO] Install: brew install git"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
GIT_VERSION=$(git --version)
|
||||
echo "[OK] Git detected: $GIT_VERSION"
|
||||
fi
|
||||
|
||||
# Check disk space (at least 2GB free)
|
||||
FREE_SPACE=$(df -BG "$PWD" | tail -1 | awk '{print int($4/1024/1024)}')
|
||||
if [ "$FREE_SPACE" -lt 2048 ]; then
|
||||
echo "[WARN] Low disk space ($FREE_SPACE MB free, recommended 2GB+)"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
echo "[OK] Disk space: $FREE_SPACE MB free"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 3/7] Checking Rosetta 2 (Apple Silicon)..."
|
||||
echo ""
|
||||
|
||||
# Check if Rosetta 2 is installed on Apple Silicon
|
||||
if [ "$ARCH" = "arm64" ]; then
|
||||
if ! /usr/bin/pgrep -q oahd; then
|
||||
echo "[INFO] Rosetta 2 is not running"
|
||||
echo "[INFO] Some x86_64 dependencies may need Rosetta"
|
||||
echo ""
|
||||
echo "Install Rosetta 2 if needed:"
|
||||
echo " softwareupdate --install-rosetta"
|
||||
echo ""
|
||||
else
|
||||
echo "[OK] Rosetta 2 is installed and running"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 4/7] Checking Gatekeeper Status..."
|
||||
echo ""
|
||||
|
||||
# Check if Gatekeeper will block unsigned apps
|
||||
echo "[INFO] Gatekeeper may block unsigned applications"
|
||||
echo "[INFO] If NomadArch doesn't open, try:"
|
||||
echo " Right-click -> Open"
|
||||
echo " Or disable Gatekeeper (not recommended):"
|
||||
echo " sudo spctl --master-disable"
|
||||
echo ""
|
||||
|
||||
echo ""
|
||||
echo "[STEP 5/8] Downloading OpenCode Binary..."
|
||||
echo ""
|
||||
|
||||
if [ ! -d "bin" ]; then
|
||||
mkdir bin
|
||||
fi
|
||||
|
||||
if [ ! -f "bin/opencode" ]; then
|
||||
echo "[SETUP] Downloading opencode binary from GitHub releases..."
|
||||
echo "[INFO] This is required for workspace functionality."
|
||||
|
||||
# Detect architecture
|
||||
if [ "$ARCH" = "arm64" ]; then
|
||||
FILENAME="opencode-macos-arm64"
|
||||
elif [ "$ARCH" = "x86_64" ]; then
|
||||
FILENAME="opencode-macos"
|
||||
else
|
||||
echo "[WARN] Unsupported architecture: $ARCH"
|
||||
echo "[INFO] Please download opencode manually from: https://opencode.ai/"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
FILENAME=""
|
||||
fi
|
||||
|
||||
if [ -n "$FILENAME" ]; then
|
||||
curl -L -o "bin/opencode" "https://github.com/NeuralNomadsAI/NomadArch/releases/latest/download/$FILENAME"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "[WARN] Failed to download opencode automatically."
|
||||
echo "[INFO] You can install OpenCode CLI manually from: https://opencode.ai/"
|
||||
echo "[INFO] Or download opencode and place it in bin/ folder"
|
||||
echo "[INFO] Without opencode, workspace creation will fail."
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
chmod +x bin/opencode
|
||||
echo "[OK] opencode downloaded successfully"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "[OK] opencode already exists"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 6/8] Setting Permissions..."
|
||||
echo ""
|
||||
|
||||
# Make scripts executable
|
||||
chmod +x Launch-Unix.sh 2>/dev/null
|
||||
chmod +x Install-Linux.sh 2>/dev/null
|
||||
chmod +x Install-Mac.sh 2>/dev/null
|
||||
|
||||
echo "[OK] Scripts permissions set"
|
||||
|
||||
echo ""
|
||||
echo "[STEP 7/8] Cleaning Previous Installation..."
|
||||
echo ""
|
||||
|
||||
if [ -d "node_modules" ]; then
|
||||
echo "[INFO] Found existing node_modules, cleaning..."
|
||||
rm -rf node_modules
|
||||
echo "[OK] Cleaned previous installation artifacts"
|
||||
else
|
||||
echo "[OK] No previous installation found"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "[STEP 8/8] Installing Dependencies..."
|
||||
echo ""
|
||||
echo "This may take 3-10 minutes depending on your internet speed."
|
||||
echo "Please be patient and do not close this terminal."
|
||||
echo ""
|
||||
|
||||
npm install
|
||||
if [ $? -ne 0 ]; then
|
||||
echo ""
|
||||
echo "[ERROR] npm install failed!"
|
||||
echo ""
|
||||
echo "Common solutions:"
|
||||
echo " 1. Check your internet connection"
|
||||
echo " 2. Try clearing npm cache: npm cache clean --force"
|
||||
echo " 3. Delete node_modules and try again: rm -rf node_modules && npm install"
|
||||
echo " 4. Ensure Xcode Command Line Tools are installed"
|
||||
echo " 5. Check if Node.js version is 18+"
|
||||
echo ""
|
||||
echo "Attempting to clear npm cache and retry..."
|
||||
npm cache clean --force
|
||||
echo "Retrying installation..."
|
||||
npm install
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "[ERROR] Installation failed after retry."
|
||||
ERRORS=$((ERRORS + 1))
|
||||
fi
|
||||
else
|
||||
echo "[OK] Dependencies installed successfully"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Building NomadArch..."
|
||||
echo ""
|
||||
echo "This may take 2-5 minutes depending on your system."
|
||||
echo ""
|
||||
|
||||
npm run build
|
||||
if [ $? -ne 0 ]; then
|
||||
echo ""
|
||||
echo "[ERROR] Build failed!"
|
||||
echo ""
|
||||
echo "Common solutions:"
|
||||
echo " 1. Check that Node.js version is 18+ (node --version)"
|
||||
echo " 2. Ensure Xcode Command Line Tools are installed: xcode-select --install"
|
||||
echo " 3. Clear npm cache: npm cache clean --force"
|
||||
echo " 4. Delete node_modules and reinstall: rm -rf node_modules && npm install"
|
||||
echo " 5. Check error messages above for specific issues"
|
||||
echo ""
|
||||
ERRORS=$((ERRORS + 1))
|
||||
else
|
||||
echo "[OK] Build completed successfully"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Verifying Installation"
|
||||
echo ""
|
||||
|
||||
# Check if opencode binary exists
|
||||
if [ ! -f "bin/opencode" ]; then
|
||||
echo "[WARN] opencode binary not found. Workspace creation will fail."
|
||||
echo "[INFO] Download from: https://github.com/NeuralNomadsAI/NomadArch/releases/latest/download/opencode-macos"
|
||||
echo "[INFO] Or install OpenCode CLI from: https://opencode.ai/"
|
||||
WARNINGS=$((WARNINGS + 1))
|
||||
else
|
||||
echo "[OK] opencode binary verified"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Installation Summary"
|
||||
echo ""
|
||||
|
||||
if [ $ERRORS -gt 0 ]; then
|
||||
echo ""
|
||||
echo "════════════════════════════════════════════════════════════════════════════"
|
||||
echo "[FAILED] Installation encountered $ERRORS error(s)!"
|
||||
echo ""
|
||||
echo "Please review error messages above and try again."
|
||||
echo "For help, see: https://github.com/NeuralNomadsAI/NomadArch/issues"
|
||||
echo "════════════════════════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "══════════════════════════════════════════════════════════════════════════"
|
||||
echo "[SUCCESS] Installation Complete!"
|
||||
echo ""
|
||||
|
||||
if [ $WARNINGS -gt 0 ]; then
|
||||
echo "[WARN] There were $WARNINGS warning(s) during installation."
|
||||
echo "Review warnings above. Most warnings are non-critical."
|
||||
echo ""
|
||||
fi
|
||||
|
||||
echo "You can now run NomadArch using:"
|
||||
echo " ./Launch-Unix.sh"
|
||||
echo ""
|
||||
echo "For help and documentation, see: README.md"
|
||||
echo "For troubleshooting, see: TROUBLESHOOTING.md"
|
||||
echo "════════════════════════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
echo "Press Enter to start NomadArch now, or Ctrl+C to start later..."
|
||||
read
|
||||
|
||||
echo ""
|
||||
echo "[INFO] Starting NomadArch..."
|
||||
./Launch-Unix.sh
|
||||
295
.backup/Install-Windows.bat.backup
Normal file
295
.backup/Install-Windows.bat.backup
Normal file
@@ -0,0 +1,295 @@
|
||||
@echo off
|
||||
title NomadArch Installer
|
||||
color 0A
|
||||
setlocal enabledelayedexpansion
|
||||
|
||||
echo.
|
||||
echo ███╗ ██╗ ██████╗ ███╗ ███╗ █████╗ ██████╗ █████╗ ██████╗ ██████╗██╗ ██╗
|
||||
echo ████╗ ██║██╔═══██╗████╗ ████║██╔══██╗██╔══██╗██╔══██╗██╔════╝██║ ██║
|
||||
echo ██╔██╗ ██║██║ ██║██╔████╔██║███████║██║ ██║███████║██████╔╝██║ ███████║
|
||||
echo ██║╚██╗██║██║ ██║██║╚██╔╝██║██╔══██║██║ ██║██╔══██║██╔══██╗██║ ██╔══██║
|
||||
echo ██║ ╚████║╚██████╔╝██║ ╚═╝ ██║██║ ██║██████╔╝██║ ██║██║ ██║╚██████╗██║ ██║
|
||||
echo ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝
|
||||
echo.
|
||||
echo INSTALLER - Enhanced with Auto-Dependency Resolution
|
||||
echo ═══════════════════════════════════════════════════════════════════════════════
|
||||
echo.
|
||||
|
||||
set ERRORS=0
|
||||
set WARNINGS=0
|
||||
|
||||
cd /d "%~dp0"
|
||||
|
||||
echo [STEP 1/6] Checking System Requirements...
|
||||
echo.
|
||||
|
||||
:: Check for Administrator privileges
|
||||
net session >nul 2>&1
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
echo [WARN] Not running as Administrator. Some operations may fail.
|
||||
set /a WARNINGS+=1
|
||||
echo.
|
||||
)
|
||||
|
||||
:: Check for Node.js
|
||||
echo [INFO] Checking Node.js...
|
||||
where node >nul 2>&1
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
echo [ERROR] Node.js not found!
|
||||
echo.
|
||||
echo NomadArch requires Node.js to run.
|
||||
echo.
|
||||
echo Download from: https://nodejs.org/
|
||||
echo Recommended: Node.js 18.x LTS or 20.x LTS
|
||||
echo.
|
||||
echo Opening download page...
|
||||
start "" "https://nodejs.org/"
|
||||
echo.
|
||||
echo Please install Node.js and run this installer again.
|
||||
echo.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
for /f "tokens=*" %%i in ('node --version') do set NODE_VERSION=%%i
|
||||
echo [OK] Node.js detected: %NODE_VERSION%
|
||||
|
||||
:: Check Node.js version (require 18+)
|
||||
for /f "tokens=1,2 delims=." %%a in ("%NODE_VERSION:v=%") do (
|
||||
set MAJOR=%%a
|
||||
set MINOR=%%b
|
||||
)
|
||||
if %MAJOR% lss 18 (
|
||||
echo [WARN] Node.js version is too old (found v%MAJOR%.%MINOR%, required 18+)
|
||||
echo [INFO] Please update Node.js from: https://nodejs.org/
|
||||
set /a WARNINGS+=1
|
||||
)
|
||||
|
||||
:: Check for npm
|
||||
echo [INFO] Checking npm...
|
||||
where npm >nul 2>&1
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
echo [ERROR] npm not found! This should come with Node.js.
|
||||
echo Please reinstall Node.js from: https://nodejs.org/
|
||||
set /a ERRORS+=1
|
||||
)
|
||||
for /f "tokens=*" %%i in ('npm --version') do set NPM_VERSION=%%i
|
||||
echo [OK] npm detected: %NPM_VERSION%
|
||||
|
||||
:: Check for Git (optional but recommended)
|
||||
echo [INFO] Checking Git...
|
||||
where git >nul 2>&1
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
echo [WARN] Git not found (optional but recommended)
|
||||
echo [INFO] Install from: https://git-scm.com/
|
||||
set /a WARNINGS+=1
|
||||
) else (
|
||||
for /f "tokens=*" %%i in ('git --version') do set GIT_VERSION=%%i
|
||||
echo [OK] Git detected: %GIT_VERSION%
|
||||
)
|
||||
|
||||
:: Check for Python (optional, for some tools)
|
||||
echo [INFO] Checking Python...
|
||||
where python >nul 2>&1
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
where python3 >nul 2>&1
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
echo [WARN] Python not found (optional, required for some build tools)
|
||||
echo [INFO] Install from: https://www.python.org/downloads/
|
||||
set /a WARNINGS+=1
|
||||
) else (
|
||||
echo [OK] Python3 detected
|
||||
)
|
||||
) else (
|
||||
for /f "tokens=2" %%i in ('python --version') do set PY_VERSION=%%i
|
||||
echo [OK] Python detected: %PY_VERSION%
|
||||
)
|
||||
|
||||
:: Check disk space (at least 2GB free)
|
||||
for /f "tokens=3" %%a in ('dir /-c "%~dp0" ^| find "bytes free"') do set FREE_SPACE=%%a
|
||||
set /a FREE_SPACE_GB=!FREE_SPACE!/1024/1024/1024
|
||||
if !FREE_SPACE_GB! lss 2 (
|
||||
echo [WARN] Low disk space (!FREE_SPACE_GB! GB free, recommended 2GB+)
|
||||
set /a WARNINGS+=1
|
||||
) else (
|
||||
echo [OK] Disk space: !FREE_SPACE_GB! GB free
|
||||
)
|
||||
|
||||
echo.
|
||||
echo [STEP 2/6] Cleaning Previous Installation...
|
||||
echo.
|
||||
|
||||
if exist "node_modules" (
|
||||
echo [INFO] Found existing node_modules, cleaning...
|
||||
if exist "node_modules\.package-lock.json" (
|
||||
del /f /q "node_modules\.package-lock.json" 2>nul
|
||||
)
|
||||
echo [OK] Cleaned previous installation artifacts
|
||||
) else (
|
||||
echo [OK] No previous installation found
|
||||
)
|
||||
|
||||
echo.
|
||||
echo [STEP 3/6] Downloading OpenCode Binary...
|
||||
echo.
|
||||
|
||||
if not exist "bin" mkdir bin
|
||||
if not exist "bin\opencode.exe" (
|
||||
echo [SETUP] Downloading opencode.exe from GitHub releases...
|
||||
echo [INFO] This is required for workspace functionality.
|
||||
curl -L -o "bin\opencode.exe" "https://github.com/NeuralNomadsAI/NomadArch/releases/latest/download/opencode.exe"
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
echo [WARN] Failed to download opencode.exe automatically.
|
||||
echo [INFO] You can install OpenCode CLI manually from: https://opencode.ai/
|
||||
echo [INFO] Or download opencode.exe and place it in bin/ folder
|
||||
echo [INFO] Without opencode.exe, workspace creation will fail.
|
||||
set /a WARNINGS+=1
|
||||
) else (
|
||||
echo [OK] opencode.exe downloaded successfully
|
||||
)
|
||||
) else (
|
||||
echo [OK] opencode.exe already exists
|
||||
)
|
||||
|
||||
echo.
|
||||
echo [STEP 4/6] Installing Dependencies...
|
||||
echo.
|
||||
echo This may take 3-10 minutes depending on your internet speed.
|
||||
echo Please be patient and do not close this window.
|
||||
echo.
|
||||
|
||||
call npm install
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
echo.
|
||||
echo [ERROR] npm install failed!
|
||||
echo.
|
||||
echo Common solutions:
|
||||
echo 1. Check your internet connection
|
||||
echo 2. Try running as Administrator
|
||||
echo 3. Clear npm cache: npm cache clean --force
|
||||
echo 4. Delete node_modules and try again
|
||||
echo.
|
||||
echo Attempting to clear npm cache and retry...
|
||||
call npm cache clean --force
|
||||
echo Retrying installation...
|
||||
call npm install
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
echo [ERROR] Installation failed after retry.
|
||||
set /a ERRORS+=1
|
||||
)
|
||||
) else (
|
||||
echo [OK] Dependencies installed successfully
|
||||
)
|
||||
|
||||
echo.
|
||||
echo [STEP 5/6] Building NomadArch...
|
||||
echo.
|
||||
echo This may take 2-5 minutes depending on your system.
|
||||
echo.
|
||||
|
||||
call npm run build
|
||||
if %ERRORLEVEL% neq 0 (
|
||||
echo.
|
||||
echo [ERROR] Build failed!
|
||||
echo.
|
||||
echo Common solutions:
|
||||
echo 1. Check that Node.js version is 18+ (node --version)
|
||||
echo 2. Clear npm cache: npm cache clean --force
|
||||
echo 3. Delete node_modules and reinstall: rm -rf node_modules ^&^& npm install
|
||||
echo 4. Check the error messages above for specific issues
|
||||
echo.
|
||||
set /a ERRORS+=1
|
||||
) else (
|
||||
echo [OK] Build completed successfully
|
||||
)
|
||||
|
||||
echo.
|
||||
echo [STEP 6/6] Verifying Installation...
|
||||
echo.
|
||||
|
||||
:: Check UI build
|
||||
if not exist "packages\ui\dist" (
|
||||
echo [WARN] UI build not found
|
||||
set /a WARNINGS+=1
|
||||
) else (
|
||||
echo [OK] UI build verified
|
||||
)
|
||||
|
||||
:: Check Server build
|
||||
if not exist "packages\server\dist\bin.js" (
|
||||
echo [WARN] Server build not found
|
||||
set /a WARNINGS+=1
|
||||
) else (
|
||||
echo [OK] Server build verified
|
||||
)
|
||||
|
||||
:: Check Electron build
|
||||
if not exist "packages\electron-app\dist\main\main.js" (
|
||||
echo [WARN] Electron build not found
|
||||
set /a WARNINGS+=1
|
||||
) else (
|
||||
echo [OK] Electron build verified
|
||||
)
|
||||
|
||||
:: Check opencode.exe
|
||||
if not exist "bin\opencode.exe" (
|
||||
echo [WARN] opencode.exe not found. Workspace creation will fail.
|
||||
echo [INFO] Download from: https://github.com/NeuralNomadsAI/NomadArch/releases/latest/download/opencode.exe
|
||||
echo [INFO] Or install OpenCode CLI from: https://opencode.ai/
|
||||
set /a WARNINGS+=1
|
||||
) else (
|
||||
echo [OK] opencode.exe verified
|
||||
)
|
||||
|
||||
echo.
|
||||
echo [STEP 7/7] Installation Summary
|
||||
echo.
|
||||
|
||||
if %ERRORS% gtr 0 (
|
||||
echo.
|
||||
echo ═══════════════════════════════════════════════════════════════════════════════
|
||||
echo [FAILED] Installation encountered %ERRORS% error^(s^)!
|
||||
echo.
|
||||
echo Please review the error messages above and try again.
|
||||
echo For help, see: https://github.com/NeuralNomadsAI/NomadArch/issues
|
||||
echo ═══════════════════════════════════════════════════════════════════════════════
|
||||
echo.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo.
|
||||
echo ═══════════════════════════════════════════════════════════════════════════════
|
||||
echo [SUCCESS] Installation Complete!
|
||||
echo.
|
||||
if %WARNINGS% gtr 0 (
|
||||
echo [WARN] There were %WARNINGS% warning^(s^) during installation.
|
||||
echo Review the warnings above. Most warnings are non-critical.
|
||||
echo.
|
||||
)
|
||||
echo You can now run NomadArch using:
|
||||
echo - Launch-Windows.bat ^(Production mode^)
|
||||
echo - Launch-Dev-Windows.bat ^(Developer mode with hot reload^)
|
||||
echo - NomadArch.vbs ^(Silent mode, no console window^)
|
||||
echo.
|
||||
echo For help and documentation, see: README.md
|
||||
echo For troubleshooting, see: TROUBLESHOOTING.md
|
||||
echo ═══════════════════════════════════════════════════════════════════════════════
|
||||
echo.
|
||||
echo Press any key to start NomadArch now, or close this window to start later...
|
||||
pause >nul
|
||||
|
||||
:: Offer to start the app
|
||||
echo.
|
||||
echo [OPTION] Would you like to start NomadArch now? ^(Y/N^)
|
||||
set /p START_APP="> "
|
||||
if /i "%START_APP%"=="Y" (
|
||||
echo.
|
||||
echo [INFO] Starting NomadArch...
|
||||
call Launch-Windows.bat
|
||||
) else (
|
||||
echo.
|
||||
echo [INFO] You can start NomadArch later by running Launch-Windows.bat
|
||||
echo.
|
||||
)
|
||||
|
||||
exit /b 0
|
||||
572
README.md
Normal file
572
README.md
Normal file
@@ -0,0 +1,572 @@
|
||||
<!--
|
||||
NomadArch - Advanced AI Coding Workspace
|
||||
SEO Optimized: AI coding assistant, multi-model support, GLM 4.7, Z.AI API, autonomous coding, TypeScript, Electron
|
||||
-->
|
||||
<meta name="description" content="NomadArch - Advanced AI-powered coding workspace with multi-model support including GLM 4.7, Anthropic Claude, OpenAI GPT, and local Ollama models. Autonomous coding, real-time streaming, and intelligent code fixes.">
|
||||
<meta name="keywords" content="AI coding assistant, GLM 4.7, Z.AI API, multi-model AI, autonomous coding, code generation, TypeScript, Electron, SolidJS, OpenAI, Anthropic, Qwen, Ollama">
|
||||
<meta name="author" content="NeuralNomadsAI">
|
||||
<meta name="robots" content="index, follow">
|
||||
|
||||
<meta property="og:title" content="NomadArch - Advanced AI Coding Workspace with GLM 4.7">
|
||||
<meta property="og:description" content="Multi-model AI coding assistant featuring GLM 4.7, Claude, GPT, and local models. Autonomous coding, real-time streaming, intelligent fixes.">
|
||||
<meta property="og:image" content="https://github.com/roman-ryzenadvanced/NomadArch-v1.0/raw/main/packages/ui/src/images/CodeNomad-Icon.png">
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:url" content="https://github.com/roman-ryzenadvanced/NomadArch-v1.0">
|
||||
|
||||
<meta name="twitter:card" content="summary_large_image">
|
||||
<meta name="twitter:title" content="NomadArch - Advanced AI Coding Workspace">
|
||||
<meta name="twitter:description" content="Multi-model AI coding assistant featuring GLM 4.7, Claude, GPT, and local models.">
|
||||
<meta name="twitter:image" content="https://github.com/roman-ryzenadvanced/NomadArch-v1.0/raw/main/packages/ui/src/images/CodeNomad-Icon.png">
|
||||
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "SoftwareApplication",
|
||||
"name": "NomadArch",
|
||||
"operatingSystem": "Windows, macOS, Linux",
|
||||
"applicationCategory": "DeveloperApplication",
|
||||
"description": "Advanced AI-powered coding workspace with multi-model support including GLM 4.7, Anthropic Claude, OpenAI GPT, and local Ollama models",
|
||||
"author": {
|
||||
"@type": "Organization",
|
||||
"name": "NeuralNomadsAI"
|
||||
},
|
||||
"offers": {
|
||||
"@type": "Offer",
|
||||
"price": "0",
|
||||
"priceCurrency": "USD"
|
||||
},
|
||||
"featureList": [
|
||||
"Multi-provider AI support",
|
||||
"GLM 4.7 integration via Z.AI API",
|
||||
"Autonomous coding with APEX mode",
|
||||
"Real-time token streaming",
|
||||
"Intelligent code fixes",
|
||||
"Ollama local model support"
|
||||
],
|
||||
"softwareVersion": "1.0.0"
|
||||
}
|
||||
</script>
|
||||
|
||||
# NomadArch
|
||||
|
||||
<p align="center">
|
||||
<img src="packages/ui/src/images/CodeNomad-Icon.png" alt="NomadArch Logo" width="180" height="180">
|
||||
</p>
|
||||
|
||||
<h3 align="center">NomadArch - Advanced AI Coding Workspace</h3>
|
||||
|
||||
<p align="center">
|
||||
<strong>Fork of CodeNomad by OpenCode</strong>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/roman-ryzenadvanced/NomadArch-v1.0/stargazers">
|
||||
<img src="https://img.shields.io/github/stars/roman-ryzenadvanced/NomadArch-v1.0?style=social" alt="GitHub Stars">
|
||||
</a>
|
||||
<a href="https://github.com/roman-ryzenadvanced/NomadArch-v1.0/network/members">
|
||||
<img src="https://img.shields.io/github/forks/roman-ryzenadvanced/NomadArch-v1.0?style=social" alt="GitHub Forks">
|
||||
</a>
|
||||
<a href="https://github.com/roman-ryzenadvanced/NomadArch-v1.0/blob/main/LICENSE">
|
||||
<img src="https://img.shields.io/github/license/roman-ryzenadvanced/NomadArch-v1.0" alt="License">
|
||||
</a>
|
||||
<a href="https://github.com/roman-ryzenadvanced/NomadArch-v1.0/releases">
|
||||
<img src="https://img.shields.io/github/v/release/roman-ryzenadvanced/NomadArch-v1.0" alt="Latest Release">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="#features">Features</a> •
|
||||
<a href="#supported-ai-models">AI Models</a> •
|
||||
<a href="#installation">Installation</a> •
|
||||
<a href="#usage">Usage</a> •
|
||||
<a href="#whats-new">What's New</a> •
|
||||
<a href="#credits">Credits</a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/roman-ryzenadvanced/NomadArch-v1.0">
|
||||
<img src="https://img.shields.io/badge/Star%20this%20repo-%E2%AD%90-yellow?style=for-the-badge" alt="Star this repo">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
NomadArch is an enhanced fork of CodeNomad by OpenCode, featuring significant UI/UX improvements, additional AI integrations, and a more robust architecture. This is a full-featured AI coding assistant with support for multiple AI providers including **GLM 4.7**, Anthropic, OpenAI, Google, Qwen, and local models via Ollama.
|
||||
|
||||
### Key Improvements Over CodeNomad
|
||||
- Fixed Qwen OAuth authentication flow
|
||||
- Enhanced MULTIX Mode with live token streaming
|
||||
- Improved UI/UX with detailed tooltips
|
||||
- Auto-build verification on launch
|
||||
- Comprehensive installer scripts for all platforms
|
||||
- Port conflict detection and resolution hints
|
||||
|
||||
---
|
||||
|
||||
## Supported AI Models & Providers
|
||||
|
||||
NomadArch supports a wide range of AI models from multiple providers, giving you flexibility to choose the best model for your coding tasks.
|
||||
|
||||
### 🚀 Featured Model: GLM 4.7 (Z.AI)
|
||||
|
||||
**GLM 4.7** is the latest state-of-the-art open model from Z.AI, now fully integrated into NomadArch. Released in December 2025, GLM 4.7 ranks **#1 for Web Development** and **#6 overall** on the LM Arena leaderboard.
|
||||
|
||||
#### Key Features
|
||||
- 🔥 **128K Context Window** - Process entire codebases in a single session
|
||||
- 🧠 **Interleaved Thinking** - Advanced reasoning with multi-step analysis
|
||||
- 💭 **Preserved Thinking** - Maintains reasoning chain across long conversations
|
||||
- 🔄 **Turn-level Thinking** - Optimized per-response reasoning for efficiency
|
||||
|
||||
#### Benchmark Performance
|
||||
| Benchmark | Score | Improvement |
|
||||
|-----------|-------|-------------|
|
||||
| SWE-bench | **+73.8%** | Over GLM-4.6 |
|
||||
| SWE-bench Multilingual | **+66.7%** | Over GLM-4.6 |
|
||||
| Terminal Bench 2.0 | **+41%** | Over GLM-4.6 |
|
||||
| LM Arena WebDev | **#1** | Open Model Ranking |
|
||||
| LM Arena Overall | **#6** | Open Model Ranking |
|
||||
|
||||
GLM 4.7 beats GPT-5, Claude Sonnet, and Gemini on multiple coding benchmarks.
|
||||
|
||||
#### Z.AI API Integration
|
||||
- ✅ Fully integrated via Z.AI Plan API
|
||||
- ✅ Compatible with Claude Code, Cline, Roo Code, Kilo Code
|
||||
- ✅ Get **10% discount** with code: [`R0K78RJKNW`](https://z.ai/subscribe?ic=R0K78RJKNW)
|
||||
- 🎯 [Subscribe to Z.AI with 10% off](https://z.ai/subscribe?ic=R0K78RJKNW)
|
||||
|
||||
---
|
||||
|
||||
### 🤖 All Supported Models
|
||||
|
||||
#### Z.AI
|
||||
| Model | Context | Specialty |
|
||||
|-------|---------|-----------|
|
||||
| **GLM 4.7** | 128K | Web Development, Coding |
|
||||
| GLM 4.6 | 128K | General Coding |
|
||||
| GLM-4 | 128K | Versatile |
|
||||
|
||||
#### Anthropic
|
||||
| Model | Context | Specialty |
|
||||
|-------|---------|-----------|
|
||||
| Claude 3.7 Sonnet | 200K | Complex Reasoning |
|
||||
| Claude 3.5 Sonnet | 200K | Balanced Performance |
|
||||
| Claude 3 Opus | 200K | Maximum Quality |
|
||||
|
||||
#### OpenAI
|
||||
| Model | Context | Specialty |
|
||||
|-------|---------|-----------|
|
||||
| GPT-5 Preview | 200K | Latest Capabilities |
|
||||
| GPT-4.1 | 128K | Production Ready |
|
||||
| GPT-4 Turbo | 128K | Fast & Efficient |
|
||||
|
||||
#### Google
|
||||
| Model | Context | Specialty |
|
||||
|-------|---------|-----------|
|
||||
| Gemini 2.0 Pro | 1M+ | Massive Context |
|
||||
| Gemini 2.0 Flash | 1M+ | Ultra Fast |
|
||||
|
||||
#### Qwen
|
||||
| Model | Context | Specialty |
|
||||
|-------|---------|-----------|
|
||||
| Qwen 2.5 Coder | 32K | Code Specialized |
|
||||
| Qwen 2.5 | 32K | General Purpose |
|
||||
|
||||
#### Local (Ollama)
|
||||
| Model | Size | Specialty |
|
||||
|-------|------|-----------|
|
||||
| DeepSeek Coder | Varies | Code |
|
||||
| Llama 3.1 | Varies | General |
|
||||
| CodeLlama | Varies | Code |
|
||||
| Mistral | Varies | General |
|
||||
|
||||
---
|
||||
|
||||
## Installation
|
||||
|
||||
### Quick Start (Recommended)
|
||||
|
||||
The installers will automatically install **OpenCode CLI** (required for workspace functionality) using:
|
||||
1. **Primary**: `npm install -g opencode-ai@latest` (fastest)
|
||||
2. **Fallback**: Download from official GitHub releases if npm fails
|
||||
|
||||
#### Windows
|
||||
```batch
|
||||
# Double-click and run
|
||||
Install-Windows.bat
|
||||
|
||||
# Then start app
|
||||
Launch-Windows.bat
|
||||
```
|
||||
|
||||
#### Linux
|
||||
```bash
|
||||
chmod +x Install-Linux.sh
|
||||
./Install-Linux.sh
|
||||
|
||||
# Then start app
|
||||
./Launch-Unix.sh
|
||||
```
|
||||
|
||||
#### macOS
|
||||
```bash
|
||||
chmod +x Install-Mac.sh
|
||||
./Install-Mac.sh
|
||||
|
||||
# Then start app
|
||||
./Launch-Unix.sh
|
||||
```
|
||||
|
||||
### Manual Installation
|
||||
|
||||
```bash
|
||||
# Clone the repository
|
||||
git clone https://github.com/roman-ryzenadvanced/NomadArch-v1.0.git
|
||||
cd NomadArch
|
||||
|
||||
# Install dependencies
|
||||
npm install
|
||||
|
||||
# Start the application
|
||||
npm run dev:electron
|
||||
```
|
||||
|
||||
### Building from Source
|
||||
|
||||
```bash
|
||||
# Build all packages
|
||||
npm run build
|
||||
|
||||
# Or build individual packages
|
||||
npm run build:ui # Build UI
|
||||
npm run build:server # Build server
|
||||
npm run build:electron # Build Electron app
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Features
|
||||
|
||||
### Core Features
|
||||
- 🤖 **Multi-Provider AI Support** - GLM 4.7, Anthropic, OpenAI, Google, Qwen, Ollama (local)
|
||||
- 🖥️ **Electron Desktop App** - Native feel with modern web technologies
|
||||
- 📁 **Workspace Management** - Organize your projects efficiently
|
||||
- 💬 **Real-time Streaming** - Live responses from AI models
|
||||
- 🔧 **Smart Fix** - AI-powered code error detection and fixes
|
||||
- 🏗️ **Build Integration** - One-click project builds
|
||||
- 🔌 **Ollama Integration** - Run local AI models for privacy
|
||||
|
||||
### UI/UX Highlights
|
||||
- ⚡ **MULTIX Mode** - Multi-task parallel AI conversations with live token counting
|
||||
- 🛡️ **SHIELD Mode** - Auto-approval for hands-free operation
|
||||
- 🚀 **APEX Mode** - Autonomous AI that chains tasks together
|
||||
- 📊 **Live Token Counter** - Real-time token usage during streaming
|
||||
- 💭 **Thinking Indicator** - Animated visual feedback when AI is processing
|
||||
- 🎨 **Modern Dark Theme** - Beautiful, eye-friendly dark interface
|
||||
- 🖱️ **Detailed Tooltips** - Hover over any button for explanations
|
||||
|
||||
---
|
||||
|
||||
## What's New in NomadArch
|
||||
|
||||
### Major Improvements Over Original CodeNomad
|
||||
|
||||
#### 🎨 Branding & Identity
|
||||
- ✅ **New Branding**: "NomadArch" with proper attribution to OpenCode
|
||||
- ✅ **Updated Loading Screen**: New branding with fork attribution
|
||||
- ✅ **Updated Empty States**: All screens show NomadArch branding
|
||||
|
||||
#### 🔐 Qwen OAuth Integration
|
||||
- ✅ **Fixed OAuth Flow**: Resolved "Body cannot be empty" error in Qwen authentication
|
||||
- ✅ **Proper API Bodies**: POST requests now include proper JSON bodies
|
||||
- ✅ **Fixed Device Poll Schema**: Corrected Fastify schema validation for OAuth polling
|
||||
|
||||
#### 🚀 MULTIX Mode Enhancements
|
||||
- ✅ **Live Streaming Token Counter**: Visible in header during AI processing
|
||||
- ✅ **Thinking Roller Indicator**: Animated indicator with bouncing dots
|
||||
- ✅ **Token Stats Display**: Shows input/output tokens processed
|
||||
- ✅ **Auto-Scroll**: Intelligent scrolling during streaming
|
||||
|
||||
#### 🖥️ UI/UX Improvements
|
||||
- ✅ **Detailed Button Tooltips**: Hover over any button for detailed explanations
|
||||
- AUTHED: Authentication status explanation
|
||||
- AI MODEL: Model selection help
|
||||
- SMART FIX: AI code analysis feature
|
||||
- BUILD: Project compilation
|
||||
- APEX: Autonomous mode description
|
||||
- SHIELD: Auto-approval mode
|
||||
- MULTIX MODE: Multi-task interface
|
||||
- ✅ **Bulletproof Layout**: Fixed layout issues with Editor/MultiX panels
|
||||
- ✅ **Overflow Handling**: Long code lines don't break layout
|
||||
- ✅ **Responsive Panels**: Editor and chat panels properly sized
|
||||
|
||||
#### 📂 File Editor Improvements
|
||||
- ✅ **Proper File Loading**: Files load correctly when selected in explorer
|
||||
- ✅ **Line Numbers**: Clean line number display
|
||||
- ✅ **Word Wrap**: Long lines wrap instead of overflowing
|
||||
|
||||
#### 🔧 Developer Experience
|
||||
- ✅ **Disabled Auto-Browser Open**: Dev server no longer opens browser automatically
|
||||
- ✅ **Unified Installers**: One-click installers for Windows, Linux, and macOS
|
||||
- ✅ **Enhanced Launchers**: Auto-fix capabilities, dependency checking, build verification
|
||||
- ✅ **Port Conflict Detection**: Warns if default ports are in use
|
||||
- ✅ **Error Recovery**: Provides actionable error messages with fixes
|
||||
|
||||
#### 🐛 Bug Fixes
|
||||
- ✅ Fixed Qwen OAuth "empty body" errors
|
||||
- ✅ Fixed MultiX panel being pushed off screen when Editor is open
|
||||
- ✅ Fixed top menu/toolbar disappearing when file is selected
|
||||
- ✅ Fixed layout breaking when scrolling in Editor or Chat
|
||||
- ✅ Fixed auto-scroll interrupting manual scrolling
|
||||
- ✅ Fixed sessions not showing on workspace first entry
|
||||
|
||||
---
|
||||
|
||||
## Button Features Guide
|
||||
|
||||
| Button | Description |
|
||||
|--------|-------------|
|
||||
| **AUTHED** | Shows authentication status. Green = connected, Red = not authenticated |
|
||||
| **AI MODEL** | Click to switch between AI models (GLM 4.7, Claude, GPT, etc.) |
|
||||
| **SMART FIX** | AI analyzes your code for errors and automatically applies fixes |
|
||||
| **BUILD** | Compiles and builds your project using detected build system |
|
||||
| **APEX** | Autonomous mode - AI chains actions without waiting for approval |
|
||||
| **SHIELD** | Auto-approval mode - AI makes changes without confirmation prompts |
|
||||
| **MULTIX MODE** | Opens multi-task pipeline for parallel AI conversations |
|
||||
|
||||
---
|
||||
|
||||
## Folder Structure
|
||||
|
||||
```
|
||||
NomadArch/
|
||||
├── Install-Windows.bat # Windows installer with dependency checking
|
||||
├── Install-Linux.sh # Linux installer with distro support
|
||||
├── Install-Mac.sh # macOS installer with Apple Silicon support
|
||||
├── Launch-Windows.bat # Windows launcher with auto-fix
|
||||
├── Launch-Dev-Windows.bat # Windows developer mode launcher
|
||||
├── Launch-Unix.sh # Linux/macOS launcher
|
||||
├── packages/
|
||||
│ ├── electron-app/ # Electron main process
|
||||
│ ├── server/ # Backend server (Fastify)
|
||||
│ ├── ui/ # Frontend (SolidJS + Vite)
|
||||
│ ├── tauri-app/ # Tauri alternative desktop app
|
||||
│ └── opencode-config/ # OpenCode configuration
|
||||
├── README.md # This file
|
||||
└── package.json # Root package manifest
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Requirements
|
||||
|
||||
- **Node.js**: v18 or higher
|
||||
- **npm**: v9 or higher
|
||||
- **Git**: For version control features
|
||||
- **OS**: Windows 10+, macOS 11+ (Big Sur), or Linux (Ubuntu 20.04+, Fedora, Arch, OpenSUSE)
|
||||
|
||||
### Platform-Specific Requirements
|
||||
|
||||
**Windows**:
|
||||
- Administrator privileges recommended for installation
|
||||
- 2GB free disk space
|
||||
|
||||
**Linux**:
|
||||
- Build tools (gcc, g++, make)
|
||||
- Package manager (apt, dnf, pacman, or zypper)
|
||||
|
||||
**macOS**:
|
||||
- Xcode Command Line Tools
|
||||
- Homebrew (recommended)
|
||||
- Rosetta 2 for Apple Silicon (for x86_64 compatibility)
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### "Dependencies not installed" Error
|
||||
Run the installer script first:
|
||||
- Windows: `Install-Windows.bat`
|
||||
- Linux: `./Install-Linux.sh`
|
||||
- macOS: `./Install-Mac.sh`
|
||||
|
||||
### "opencode not found" or Workspace Creation Fails
|
||||
The installer should automatically install OpenCode CLI. If it fails:
|
||||
|
||||
**Option 1 - Manual npm install:**
|
||||
```bash
|
||||
npm install -g opencode-ai@latest
|
||||
```
|
||||
|
||||
**Option 2 - Manual download:**
|
||||
1. Visit: https://github.com/sst/opencode/releases/latest
|
||||
2. Download the appropriate ZIP for your platform:
|
||||
- Windows: `opencode-windows-x64.zip`
|
||||
- Linux x64: `opencode-linux-x64.zip`
|
||||
- Linux ARM64: `opencode-linux-arm64.zip`
|
||||
- macOS Intel: `opencode-darwin-x64.zip`
|
||||
- macOS Apple Silicon: `opencode-darwin-arm64.zip`
|
||||
3. Extract and place `opencode` or `opencode.exe` in the `bin/` folder
|
||||
|
||||
### Port 3000 or 3001 Already in Use
|
||||
The launchers will detect port conflicts and warn you. To fix:
|
||||
1. Close other applications using these ports
|
||||
2. Check for running NomadArch instances
|
||||
3. Kill the process: `taskkill /F /PID <PID>` (Windows) or `kill -9 <PID>` (Unix)
|
||||
|
||||
### Layout Issues
|
||||
If the UI looks broken, try:
|
||||
1. Refresh the app (Ctrl+R or Cmd+R)
|
||||
2. Restart the application
|
||||
3. Clear node_modules and reinstall: `rm -rf node_modules && npm install`
|
||||
|
||||
### OAuth Authentication Fails
|
||||
1. Check your internet connection
|
||||
2. Ensure you completed the OAuth flow in your browser
|
||||
3. Try logging out and back in
|
||||
4. Clear browser cookies for the OAuth provider
|
||||
|
||||
### Build Errors
|
||||
1. Ensure you have the latest Node.js (18+)
|
||||
2. Clear npm cache: `npm cache clean --force`
|
||||
3. Delete node_modules: `rm -rf node_modules` (or `rmdir /s /q node_modules` on Windows)
|
||||
4. Reinstall: `npm install`
|
||||
|
||||
### Sessions Not Showing on Workspace Entry
|
||||
This has been fixed with SSE connection waiting. The app now waits for the Server-Sent Events connection to be established before fetching sessions.
|
||||
|
||||
---
|
||||
|
||||
## Credits
|
||||
|
||||
### Core Framework & Build Tools
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [SolidJS](https://www.solidjs.com/) | ^1.8.0 | Reactive JavaScript UI framework | MIT |
|
||||
| [Vite](https://vitejs.dev/) | ^5.0.0 | Next-generation frontend build tool | MIT |
|
||||
| [TypeScript](https://www.typescriptlang.org/) | ^5.3.0 - 5.6.3 | JavaScript with type system | Apache-2.0 |
|
||||
| [Electron](https://www.electronjs.org/) | Via electron-app | Cross-platform desktop app framework | MIT |
|
||||
| [Tauri](https://tauri.app/) | Via tauri-app | Alternative desktop app framework | Apache-2.0/MIT |
|
||||
|
||||
### UI Components & Styling
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [@suid/material](https://suid.io/) | ^0.19.0 | Material Design components for SolidJS | MIT |
|
||||
| [@suid/icons-material](https://suid.io/) | ^0.9.0 | Material Design icons for SolidJS | MIT |
|
||||
| [@suid/system](https://suid.io/) | ^0.14.0 | System components for SolidJS | MIT |
|
||||
| [@kobalte/core](https://kobalte.dev/) | 0.13.11 | Accessible, unstyled UI components | MIT |
|
||||
| [TailwindCSS](https://tailwindcss.com/) | ^3.0.0 | Utility-first CSS framework | MIT |
|
||||
| [PostCSS](https://postcss.org/) | ^8.5.6 | CSS transformation tool | MIT |
|
||||
| [Autoprefixer](https://github.com/postcss/autoprefixer) | ^10.4.21 | Parse CSS and add vendor prefixes | MIT |
|
||||
|
||||
### Routing & State Management
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [@solidjs/router](https://github.com/solidjs/solid-router) | ^0.13.0 | Router for SolidJS | MIT |
|
||||
|
||||
### Markdown & Code Display
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [Marked](https://marked.js.org/) | ^12.0.0 | Markdown parser and compiler | MIT |
|
||||
| [GitHub Markdown CSS](https://github.com/sindresorhus/github-markdown-css) | ^5.8.1 | Markdown styling from GitHub | MIT |
|
||||
| [Shiki](https://shiki.style/) | ^3.13.0 | Syntax highlighting | MIT |
|
||||
| [@git-diff-view/solid](https://github.com/git-diff-view/git-diff-view) | ^0.0.8 | Git diff visualization for SolidJS | MIT |
|
||||
|
||||
### Icons & Visuals
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [Lucide Solid](https://lucide.dev/) | ^0.300.0 | Beautiful & consistent icon toolkit | ISC |
|
||||
| [QRCode](https://github.com/soldair/node-qrcode) | ^1.5.3 | QR code generation | MIT |
|
||||
|
||||
### Backend & Server
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [Fastify](https://www.fastify.io/) | ^4.28.1 | Fast and low overhead web framework | MIT |
|
||||
| [@fastify/cors](https://github.com/fastify/fastify-cors) | ^8.5.0 | CORS support for Fastify | MIT |
|
||||
| [@fastify/reply-from](https://github.com/fastify/fastify-reply-from) | ^9.8.0 | Proxy support for Fastify | MIT |
|
||||
| [@fastify/static](https://github.com/fastify/fastify-static) | ^7.0.4 | Static file serving for Fastify | MIT |
|
||||
| [Ollama](https://ollama.com/) | ^0.5.0 | Local AI model integration | MIT |
|
||||
|
||||
### AI & SDK
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [OpenCode CLI](https://github.com/sst/opencode) | v1.0.191 | Open source AI coding agent - Required for workspace functionality | MIT |
|
||||
| [@opencode-ai/sdk](https://github.com/opencode/ai-sdk) | ^1.0.138 | OpenCode AI SDK | Custom |
|
||||
| [google-auth-library](https://github.com/googleapis/google-auth-library-nodejs) | ^10.5.0 | Google OAuth authentication | Apache-2.0 |
|
||||
|
||||
### HTTP & Networking
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [Axios](https://axios-http.com/) | ^1.6.0 | Promise-based HTTP client | MIT |
|
||||
| [undici](https://undici.nodejs.org/) | ^6.19.8 | HTTP/1.1 client for Node.js | MIT |
|
||||
| [node-fetch](https://github.com/node-fetch/node-fetch) | ^3.3.2 | A light-weight module that brings window.fetch to Node.js | MIT |
|
||||
|
||||
### Utilities & Helpers
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [Nanoid](https://github.com/ai/nanoid) | ^5.0.4 | Unique string ID generator | MIT |
|
||||
| [Debug](https://github.com/debug-js/debug) | ^4.4.3 | Debug logging utility | MIT |
|
||||
| [Pino](https://getpino.io/) | ^9.4.0 | Extremely fast Node.js logger | MIT |
|
||||
| [FuzzySort](https://github.com/farzher/fuzzysort) | ^2.0.4 | Fuzzy search and sort | MIT |
|
||||
| [Zod](https://zod.dev/) | ^3.23.8 | TypeScript-first schema validation | MIT |
|
||||
| [Commander](https://github.com/tj/commander.js) | ^12.1.0 | Node.js command-line interface | MIT |
|
||||
| [7zip-bin](https://github.com/felixrieseberg/7zip-bin) | ^5.2.0 | 7-Zip binary wrapper | MIT |
|
||||
|
||||
### Notifications & Feedback
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [solid-toast](https://github.com/ThisIsFlorian/solid-toast) | ^0.5.0 | Toast notifications for SolidJS | MIT |
|
||||
|
||||
### Desktop Integration
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [@tauri-apps/api](https://tauri.app/) | ^2.9.1 | Tauri API for desktop integration | Apache-2.0/MIT |
|
||||
| [@tauri-apps/plugin-opener](https://tauri.app/) | ^2.5.2 | Tauri plugin for opening URLs/paths | Apache-2.0/MIT |
|
||||
|
||||
### Development Tools
|
||||
|
||||
| Project | Version | Description | License |
|
||||
|----------|----------|-------------|----------|
|
||||
| [Vite Plugin Solid](https://github.com/solidjs/vite-plugin-solid) | ^2.10.0 | Vite plugin for SolidJS | MIT |
|
||||
| [ts-node](https://github.com/TypeStrong/ts-node) | ^10.9.2 | TypeScript execution and REPL | MIT |
|
||||
| [tsx](https://github.com/privatenumber/tsx) | ^4.20.6 | TypeScript execution | MIT |
|
||||
| [cross-env](https://github.com/kentcdodds/cross-env) | ^7.0.3 | Set environment variables across platforms | MIT |
|
||||
|
||||
---
|
||||
|
||||
## Project Fork
|
||||
|
||||
| Project | Repository | Description |
|
||||
|----------|-------------|-------------|
|
||||
| [CodeNomad](https://github.com/opencode/codenom) | OpenCode - Original AI coding workspace |
|
||||
| [NomadArch](https://github.com/roman-ryzenadvanced/NomadArch-v1.0) | Enhanced fork by NeuralNomadsAI |
|
||||
|
||||
---
|
||||
|
||||
## License
|
||||
|
||||
This project is a fork of CodeNomad by OpenCode. Please refer to the original project for licensing information.
|
||||
|
||||
All third-party libraries listed above retain their respective licenses.
|
||||
|
||||
---
|
||||
|
||||
<p align="center">
|
||||
Made with ❤️ by <a href="https://github.com/NeuralNomadsAI">NeuralNomadsAI</a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
Forked from <a href="https://github.com/opencode/codenom">CodeNomad by OpenCode</a>
|
||||
</p>
|
||||
Reference in New Issue
Block a user