Without shell=True, subprocess.run(["npm", ...]) fails on Windows because
npm and claude are .cmd batch files, not .exe. Added run_cmd() wrapper that
sets shell=True only on Windows, keeping Linux/macOS behavior unchanged.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Primary: download from unlimitedcoding-config private repo via API token
- Cache: saves .patcher.config.cache.json for offline fallback
- Legacy fallback: still reads local patcher.config.json if present
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
package.json shows npm-installed version (e.g. 2.1.47) while the actual
patched cli.js contains 2.1.50. Now reads "// Version: x.y.z" from the
bundle first, falls back to claude --version, then package.json.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- install_node() now checks ver >= MIN_NODE_VERSION after install (was missing)
- ensure_claude_code() accepts target_version, upgrades npm package if mismatched
- cmd_update() hard-stops with clear message if Node.js can't be upgraded
- Removes stale nodesource apt list before install to prevent version conflicts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Wire ensure_claude_code() into cmd_update() — auto npm install if missing
- uclaude_install.sh: auto-install git, python3, curl via apt/dnf/yum/brew
- uclaude_update.bat: prereq checks with winget install suggestions
- uclaude_update.ps1: auto-install via winget (git, python, node)
- install_node(): macOS support via brew, RHEL/Fedora via rpm.nodesource
- Increased npm install timeout to 300s for slow connections
- Все claude-файлы перенесены в claude/ (uclaude_updater.py, скрипты, config)
- claude/README.md с инструкцией для Claude Code
- Корневой README — общий для всех продуктов (claude, codex, gemini, qwen, antigravity)
- Node.js v24.13+ автоустановка через nodesource
- Sparse checkout: клиент скачивает только latest версию cli.js
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>