Skip to content

Add remote CLIProxyAPI connection settings - #2

Merged
soojy merged 3 commits into
soojy:mainfrom
DigitalPals:feat/remote-instance-settings
Oct 5, 2026
Merged

soojy merged 3 commits into
soojy:mainfrom
DigitalPals:feat/remote-instance-settings

Conversation

@DigitalPals

@DigitalPals DigitalPals commented Sep 11, 2026 •

Copy link
Copy Markdown

Add Settings → Connection → Remote so users can connect to an existing CLIProxyAPI server without installing a local backend.

Closes #1.

  • Configure and test the server URL, management key, and optional client API key in Settings.

  • Display remote accounts, quotas, and models, with API connection health and controls appropriate to remote mode. New-account sign-in opens the server's management panel.

  • Preserve local mode, store keys privately, support verified HTTPS or loopback HTTP, and isolate cached results when switching connections.

  • Use the standard neutral bar icon color without a status dot.

Validation: 60 Python tests pass; six optional real-backend integration tests also passed before removing the local test backend. JavaScript checks, manifest validation, QML formatting, and diff checks pass. Tested the Settings form, connection submission, account/quota display, and offline behavior in the actual Omarchy shell.

@coderabbitai

coderabbitai Bot commented Sep 11, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 44 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 946ef82b-c019-49c4-8ba1-4666914858d0
📥 Commits

Reviewing files that changed from the base of the PR and between 569a1f7 and bd0e0f4.

📒 Files selected for processing (8)
  • BarWidget.qml
  • README.md
  • SECURITY.md
  • docs/configuration.md
  • scripts/omaproxy.py
  • tests/fixtures/preview_bridge.py
  • tests/test_controls_bridge.py
  • tests/test_remote.py
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

# Conflicts:
#	BarWidget.qml
#	scripts/omaproxy.py

@soojy soojy left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed remote connection URL validation, redirect/proxy refusal, credential storage and output allowlists, authentication-failure backoff, and per-command connection binding. Resolved conflicts with current main while preserving native controls and the existing backend pin. Added isolation for named-key registries and quota-alert state, cleared cached panels/forms on connection changes, guarded stale clipboard receipts, blocked local repair in remote mode, and made saved client-key removal explicit. Regression tests cover connection-specific registries and alerts.

The final tree independently passes all 178 Python tests with zero skips against each of CLIProxyAPI 7.2.154 and 8.0.13 using Codex 0.160.0. JavaScript, manifest and QML gates pass. Native smoke validation passes with fake accounts, including remote/management-only switching, provider edits, named keys, diagnostics, alerts and concealed reopening. Bandit findings were manually reviewed; no additional confirmed source-code blocker was identified. The separate backend dependency advisory findings remain unresolved under #5; this PR does not upgrade the backend.

@soojy
soojy merged commit 5ae9147 into soojy:main Oct 5, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support connections to an existing remote CLIProxyAPI server

3 participants