Files
unlimitedcoding/claude
delta-cloud-208e 47e1978bef fix(installer): retry git ops + reject placeholder api_key + sync public configs
User hit two bugs in production:
1. uclaude_install.sh ERROR: Command failed at line 82 — gitea returned
   transient HTTP 502 to `git fetch`, `2>/dev/null` masked stderr but
   ERR trap fired with cryptic message.
2. After install, claude model picker showed only 5 models (built-in
   defaults) instead of 19. Root cause: load_config() fell back to the
   PUBLIC sanitized patcher.config.json (api_key='YOUR_API_KEY') after
   remote fetch failed → claude API auth broken → custom models invisible.

Fixes:

claude/uclaude_install.sh:
- New retry_git() helper: 3 attempts, 5s backoff, loud diagnostic
- Existing-clone branch: retry_git wraps `git fetch` AND `git reset`
- Fallback: if fetch fails 3x on existing clone, nuke and re-clone fresh
  (incremental fetch breaks more often than full clone on flaky gitea)
- Secondary fetch (before updater): tolerates failure with `|| true`
  (we already have a working clone)

claude/uclaude_updater.py:
- _config_is_usable() guard: rejects {"api_key": "YOUR_API_KEY"} etc.
- load_config() retries remote 3x with backoff before falling back
- Removed local-file fallback (was loading public sanitized = bait)
- Cache-only fallback now (from previous successful fetch)

Public configs synced from canonical (api_key sanitized, models list
fully refreshed):
- claude/patcher.config.json: 17 → 19 models (+gpt-5.5, +gemini-3.1-pro etc)
- codex/codex_config.json: 4 → 5 models (+gpt-5.5)
- gemini/gemini_config.json: refreshed
- target_version: 2.1.112 → 2.1.119

Tests: tests/test_installer_robustness.py — 6 new GREEN guards.
Total: 196 → 207 GREEN.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-25 18:25:43 +00:00
..

Claude Code — Patched CLI

🌐 English | Русский | 中文 | Español

Patched Claude Code CLI for use with custom API endpoints. Latest: v2.1.112 (28 patches).

Install

Install the patched package directly from our npm registry. Updates automatically when new versions are released.

Linux / macOS:

npm config set @anthropic-ai:registry https://npm.sensey24.ru/
npm install -g @anthropic-ai/claude-code

Windows (PowerShell):

npm config set "@anthropic-ai:registry" "https://npm.sensey24.ru/"
npm install -g @anthropic-ai/claude-code

Method B — Automatic installer (backup)

Install with automatic dependency detection and setup. Downloads patched cli.js from releases.

Linux (Debian/Ubuntu/RHEL/Fedora):

curl -fsSL -H "Authorization: token cadffcb0a6a3be728ac1ff619bb40c86588f6837" \
  https://git.sensey24.ru/aibot777/unlimitedcoding/raw/branch/master/claude/uclaude_install.sh \
  -o /tmp/uclaude.sh && sudo bash /tmp/uclaude.sh

macOS:

curl -fsSL -H "Authorization: token cadffcb0a6a3be728ac1ff619bb40c86588f6837" \
  https://git.sensey24.ru/aibot777/unlimitedcoding/raw/branch/master/claude/uclaude_install.sh \
  -o /tmp/uclaude.sh && bash /tmp/uclaude.sh

Windows (PowerShell as Administrator):

$h=@{Authorization="token cadffcb0a6a3be728ac1ff619bb40c86588f6837"}
Set-ExecutionPolicy Bypass -Scope Process -Force
iwr "https://git.sensey24.ru/aibot777/unlimitedcoding/raw/branch/master/claude/uclaude_install.ps1" -OutFile "$env:TEMP\uclaude_install.ps1" -Headers $h
. "$env:TEMP\uclaude_install.ps1"

Windows (CMD as Administrator):

powershell -NoProfile -ExecutionPolicy Bypass -Command "$h=@{Authorization='token cadffcb0a6a3be728ac1ff619bb40c86588f6837'}; iwr 'https://git.sensey24.ru/aibot777/unlimitedcoding/raw/branch/master/claude/uclaude_install.ps1' -OutFile \"$env:TEMP\uclaude_install.ps1\" -Headers $h; & \"$env:TEMP\uclaude_install.ps1\""

Manual Install

git clone --depth 1 https://x-token:cadffcb0a6a3be728ac1ff619bb40c86588f6837@git.sensey24.ru/aibot777/unlimitedcoding.git
cd unlimitedcoding
Platform Command
Linux sudo bash claude/uclaude_update.sh --force
macOS bash claude/uclaude_update.sh --force
Windows CMD claude\uclaude_update.bat --force
Windows PowerShell powershell -ExecutionPolicy Bypass -File claude\uclaude_update.ps1 --force

Update

Platform Command
Linux cd ~/unlimitedcoding && sudo bash claude/uclaude_update.sh
macOS cd ~/unlimitedcoding && bash claude/uclaude_update.sh
Windows cd %USERPROFILE%\unlimitedcoding && claude\uclaude_update.bat

Options

Flag Description
--check Check for updates only
--force Force reinstall
--settings-only Only patch settings, don't replace cli.js

What's Patched

  • Custom API endpoint (base URL, auth token)
  • Custom model picker (configurable model list)
  • Auth/OAuth bypass for custom endpoints
  • Telemetry disabled (Datadog, Segment)
  • Permission prompts auto-accepted
  • Root/sudo check removed

Auto-Install Chain

The updater automatically installs missing dependencies:

Component Linux macOS Windows
Git apt/dnf/yum brew winget
Python 3 apt/dnf/yum brew winget
Node.js v24.13+ nodesource brew winget
Claude Code npm npm npm

Uninstall

Removes Claude Code CLI, settings, env vars, and npm registry overrides that the installer wrote.

Linux/macOS:

curl -fsSL -H "Authorization: token cadffcb0a6a3be728ac1ff619bb40c86588f6837" \
  https://git.sensey24.ru/aibot777/unlimitedcoding/raw/branch/master/claude/uclaude_uninstall.sh \
  -o /tmp/uclaude_uninstall.sh && sudo bash /tmp/uclaude_uninstall.sh

Windows (PowerShell as admin):

$h=@{Authorization="token cadffcb0a6a3be728ac1ff619bb40c86588f6837"}
iwr "https://git.sensey24.ru/aibot777/unlimitedcoding/raw/branch/master/claude/uclaude_uninstall.ps1" -OutFile "$env:TEMP\uclaude_uninstall.ps1" -Headers $h
. "$env:TEMP\uclaude_uninstall.ps1"

What it removes:

  • @anthropic-ai/claude-code npm package (global)
  • /usr/bin/claude symlink (Linux/macOS) or claude.cmd/.ps1 wrapper (Windows)
  • npm registry override for @anthropic-ai scope
  • env vars: ANTHROPIC_*, CLAUDE_*, DISABLE_TELEMETRY, DISABLE_AUTOUPDATER
  • per-user ~/.claude/settings.json and onboarding config (.claude.json)

NOT removed (preserve for reinstall): ~/.claude/projects/, ~/.claude/history.jsonl.

Files

File Purpose
uclaude_updater.py Main updater — version check, auto-install, cli.js replace, settings patch
uclaude_install.sh / .ps1 One-line installer (curl-friendly, full auto-install)
uclaude_update.sh / .bat / .ps1 Update wrappers (Linux/macOS, Windows CMD, PowerShell)
uclaude_uninstall.sh / .ps1 Uninstaller (cleanup env vars, settings, npm package)
patcher.config.example.json Example config template (real config fetched from private repo)
releases/index.json Version index
releases/v*/cli.js Patched cli.js per version