After upstream switched to SEA (Single Executable Application) layout in v2.1.114+, there is no cli.js anymore — only bin/claude.exe. Before this fix: - find_cli_js() searched only for cli.js → returned None on SEA installs - get_installed_version() returned (None, None) → "Claude Code: not installed" - is_patched() returned (False, [3 markers]) → false-negative even after successful patch - cmd_check showed "not installed" right after a successful update - cmd_update would loop reinstalling because patch markers seemed missing This contributed to a user-facing incident where /model picker showed only built-in models even though CLAUDE_CUSTOM_MODELS was set in settings.json: the binary update path was triggering uninstall+reinstall cycles instead of being recognised as already-patched. Changes: - New find_claude_artifact() finds either cli.js or bin/claude.exe, including the deeply-nested layout npm uses for SEA wrapper packages - find_all_cli_js() returns both legacy and SEA artifacts - is_patched() auto-detects layout: text scan for cli.js, bytes scan for claude.exe (markers: /*ae1_models_filter_patched*/, /*bypass_permissions_prompt*/) - get_installed_version() reads package.json next to bin/ for SEA - uclaude_install.sh adds binary marker verification at end of install so users immediately see if the SEA payload was patched Tests: new tests/test_sea_detect.py covers all 4 detector functions against fake SEA install layouts (including nested form). All 20 tests pass. 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 |
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-codenpm package (global)/usr/bin/claudesymlink (Linux/macOS) orclaude.cmd/.ps1wrapper (Windows)- npm registry override for
@anthropic-aiscope - env vars:
ANTHROPIC_*,CLAUDE_*,DISABLE_TELEMETRY,DISABLE_AUTOUPDATER - per-user
~/.claude/settings.jsonand 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 |