Sub-agents reviewed all 26 installer scripts. Fixed (TDD):
BLOCKERS (install fails on platform):
1. claude/uclaude_uninstall.sh: replace `sed -i` → portable `sedi()` helper
(BSD sed on macOS requires `-i ''`, GNU uses `-i`). Same fix style as
codex/ucodex_install.sh:sedi.
2. claude/uclaude_install.ps1: abort if $apiKey null after fetch attempt
(was silently completing install with broken auth env vars). Guard
added to all 8 ps1 scripts.
3. qwen/uqwen_install.ps1 + uqwen_update.ps1: build trustedFolders.json
via [ordered]@{} | ConvertTo-Json (PowerShell single-quoted literal
was preserving `\"` as backslash+quote, producing INVALID JSON).
4. codex/ucodex_update.ps1: check $LASTEXITCODE after Python patcher call
(native command non-zero exit doesn't throw under
ErrorActionPreference='Continue' — patcher failure was silent, no
PowerShell fallback triggered).
HIGH (wrong behavior / regressions):
5. gemini/ugemini_install.ps1 + update.ps1: read $env:UGEMINI_API_KEY
FIRST (was only checking $env:UCLAUDE_API_KEY — claude variable).
6. gemini/ugemini_update.ps1: download gemini_config.json from PRIVATE
unlimitedcoding-config (was downloading from public — would 404 after
Item 14 sanitization).
7. claude/uclaude_update.ps1: drop ANTHROPIC_API_KEY assignment + dynamic
models fetch (regression — install.ps1 was fixed earlier but update.ps1
still set both env vars, re-introducing Auth conflict warning).
8. codex/ucodex_install.sh + update.sh: GitHub API curl needs
`-H "User-Agent: UnlimitedCoding-Installer"` and `-f` flag (default
curl/X.Y UA gets 403 from GitHub API + silent fail on 5xx).
Bonus fixes pulled in:
- codex/ucodex_install.ps1: switch codex_config download URL to private
repo (consistency with update.ps1 + Item 14 sanitization)
- codex/ucodex_install.ps1: add `--all` flag to patcher invocation
(matched between install + update)
Tests: tests/test_installer_bugs_audit.py — 9 GREEN regression guards.
Total: 186 tests GREEN.
Audit transcripts: gpt-5.5 found 24 issues (claude+gemini), glm-5.1
found 11 issues (codex+qwen). Lower-priority items (heredoc unsafe
quoting, lock files, schema validation) deferred to next iteration.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Claude Code — Patched CLI
🌐 English | Русский | 中文 | Español
Patched Claude Code CLI for use with custom API endpoints. Latest: v2.1.112 (28 patches).
Install
Method A — npm registry (recommended)
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 |
Files
| File | Purpose |
|---|---|
uclaude_updater.py |
Main updater — version check, auto-install, cli.js replace, settings patch |
uclaude_update.sh |
Linux/macOS wrapper |
uclaude_update.bat |
Windows CMD wrapper |
uclaude_update.ps1 |
Windows PowerShell wrapper (auto-elevate, winget) |
uclaude_install.sh |
One-line installer (curl-friendly, full auto-install) |
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 |