Bug: Windows binary v0.2.10 ships without any auth plugins
Summary
ccproxy.exe v0.2.10 (Windows x86_64 build, GitHub release asset) contains zero auth provider plugins. ccproxy auth providers returns "No OAuth providers found" out of the box, and ccproxy auth login claude fails with:
[ERROR] No auth providers installed in this CCProxy release
This usually means the claude plugin is missing from the binary.
This is reproducible on a fresh install. Confirmed on the v0.2.10 release asset ccproxy-v0.2.10-x86_64-pc-windows-msvc.zip downloaded directly from this repo's GitHub release.
Root cause
The wheel's pyproject.toml declares the plugin entry points correctly under [project.entry-points."ccproxy.plugins"]:
oauth_claude → ccproxy.plugins.oauth_claude.plugin:factory
oauth_codex → ccproxy.plugins.oauth_codex.plugin:factory
claude_api → ccproxy.plugins.claude_api.plugin:factory
claude_sdk → ccproxy.plugins.claude_sdk.plugin:factory
…and the wheel bundles the corresponding ccproxy/plugins/<name>/ source dirs. So when installed via pipx install ccproxy-api, all four entry points are discoverable.
However, the Windows binary appears to have been built with nuitka/pyinstaller and the plugins-claude extra was not installed before the freeze:
plugins-claude = ["claude-agent-sdk>=0.1.4", "qrcode>=8.2", "keyring>=25.7.0"]
plugins-codex = ["qrcode>=8.2", "pyjwt>=2.10.1"]
The factory modules in ccproxy/plugins/oauth_claude/plugin.py and friends import these extras at module load time. When the deps are missing, the entry point fails to load — silently — and ccproxy auth providers returns the empty list.
Evidence
From a fresh install on Windows 11, ccproxy v0.2.10:
$ ccproxy.exe plugins list
warning plugins_directories_missing paths=['C:\\Users\\barsh\\.config\\ccproxy\\plugins']
No plugins found.
$ ccproxy.exe auth providers
Available OAuth Providers
warning plugins_directories_missing paths=['C:\\Users\\barsh\\.config\\ccproxy\\plugins']
warning No OAuth providers found
$ ccproxy.exe auth login claude
[ERROR] No auth providers installed in this CCProxy release
This usually means the claude plugin is missing from the binary.
Check: https://github.com/ClintonSarkar/ccproxy-api/releases
Note: the plugins_directories_missing warning is a red herring. The plugin discovery from ~/.config/ccproxy/plugins/ is filesystem-based for external plugins; the oauth_claude / claude_api / claude_sdk plugins are bundled and discovered through Python entry points, which is what fails.
The wheel (ccproxy_api-0.2.10-py3-none-any.whl) from the same release DOES include the plugin source dirs and entry points. Installing it via pipx install ccproxy_api-0.2.10-py3-none-any.whl[plugins-claude] works correctly.
Expected behavior
A fresh ccproxy.exe install should be able to run ccproxy auth login claude and complete the OAuth flow, with no extra setup beyond ccproxy config init.
Suggested fix
The Windows build pipeline needs to install the optional extras before freezing the binary. Two options:
-
Quickest fix — in whatever step runs pip install . (or uv pip install .) before the binary bundler, change it to install the extras you want bundled. The most useful one is plugins-claude:
pip install ".[plugins-claude,plugins-codex]"
(Or pip install .[all] if you want everything.)
-
Cleaner fix — make the binary build explicit about which extras it bundles, and emit a clear error at startup if a required plugin's deps are missing, instead of silently returning "No OAuth providers found".
Environment
- ccproxy v0.2.10 (
ccproxy-v0.2.10-x86_64-pc-windows-msvc.zip)
- Windows 11 24H2 (build 26200)
- Reproducible 100% on a fresh install
- Also affects the upstream fork
ClintonSarkar/ccproxy-api since it mirrors these release assets
Related
ccproxy plugins list returns "No plugins found" even with a populated ~/.config/ccproxy/plugins/ — same root cause: bundled entry points fail to import.
Bug: Windows binary v0.2.10 ships without any auth plugins
Summary
ccproxy.exev0.2.10 (Windows x86_64 build, GitHub release asset) contains zero auth provider plugins.ccproxy auth providersreturns "No OAuth providers found" out of the box, andccproxy auth login claudefails with:This is reproducible on a fresh install. Confirmed on the v0.2.10 release asset
ccproxy-v0.2.10-x86_64-pc-windows-msvc.zipdownloaded directly from this repo's GitHub release.Root cause
The wheel's
pyproject.tomldeclares the plugin entry points correctly under[project.entry-points."ccproxy.plugins"]:oauth_claude→ccproxy.plugins.oauth_claude.plugin:factoryoauth_codex→ccproxy.plugins.oauth_codex.plugin:factoryclaude_api→ccproxy.plugins.claude_api.plugin:factoryclaude_sdk→ccproxy.plugins.claude_sdk.plugin:factory…and the wheel bundles the corresponding
ccproxy/plugins/<name>/source dirs. So when installed viapipx install ccproxy-api, all four entry points are discoverable.However, the Windows binary appears to have been built with
nuitka/pyinstallerand theplugins-claudeextra was not installed before the freeze:The factory modules in
ccproxy/plugins/oauth_claude/plugin.pyand friendsimportthese extras at module load time. When the deps are missing, the entry point fails to load — silently — andccproxy auth providersreturns the empty list.Evidence
From a fresh install on Windows 11, ccproxy v0.2.10:
Note: the
plugins_directories_missingwarning is a red herring. The plugin discovery from~/.config/ccproxy/plugins/is filesystem-based for external plugins; theoauth_claude/claude_api/claude_sdkplugins are bundled and discovered through Python entry points, which is what fails.The wheel (
ccproxy_api-0.2.10-py3-none-any.whl) from the same release DOES include the plugin source dirs and entry points. Installing it viapipx install ccproxy_api-0.2.10-py3-none-any.whl[plugins-claude]works correctly.Expected behavior
A fresh
ccproxy.exeinstall should be able to runccproxy auth login claudeand complete the OAuth flow, with no extra setup beyondccproxy config init.Suggested fix
The Windows build pipeline needs to install the optional extras before freezing the binary. Two options:
Quickest fix — in whatever step runs
pip install .(oruv pip install .) before the binary bundler, change it to install the extras you want bundled. The most useful one isplugins-claude:(Or
pip install .[all]if you want everything.)Cleaner fix — make the binary build explicit about which extras it bundles, and emit a clear error at startup if a required plugin's deps are missing, instead of silently returning "No OAuth providers found".
Environment
ccproxy-v0.2.10-x86_64-pc-windows-msvc.zip)ClintonSarkar/ccproxy-apisince it mirrors these release assetsRelated
ccproxy plugins listreturns "No plugins found" even with a populated~/.config/ccproxy/plugins/— same root cause: bundled entry points fail to import.