feat(proxy): ship standalone developer sidecar - #145
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Forge 0.9.1 adds a self-contained developer-sidecar distribution for Forge Proxy without changing the 0.9 forwarding, routing, or guardrail contract.
The punchline is intentionally simple:
curl -fsSL https://raw.githubusercontent.com/antoinezambelli/forge/main/install.sh | sh, thenforge-proxy init—no Python, pip, or repository checkout. Windows gets the equivalent one-line PowerShell installer.This PR:
forge-proxyfor Windows x64, Linux x64/glibc, and macOS ARM64 with a private Python 3.14 runtime;init,check,update, anduninstallcommands;WorkflowRunner, middleware, development, and existing Proxy users.The package version is bumped to
0.9.1.Why
Proxy has become Forge’s most-used integration surface, but using it still requires cloning the repository or installing and managing a Python environment.
The standalone distribution turns Proxy into an ordinary developer sidecar: install one self-contained command, configure a backend profile, and point an OpenAI- or Anthropic-compatible client at it. Existing clients do not need to integrate Forge’s Python API or rewrite their harness.
The artifact deliberately does not install a backend executable, model, GPU or driver stack, service, credentials, or client configuration. Those remain operator- or wrapper-owned.
Installation and profiles
The public bootstraps resolve either the latest verified standalone release or an explicit Forge version, download the matching platform artifact, verify its manifest and checksum, and hand installation to the frozen executable.
Installation:
forge-proxycommand;initandchecknext steps.forge-proxy initwrites sparse TOML profiles using Forge’s existing Proxy configuration contract. Profiles and direct CLI flags remain separate complete configuration sources rather than overlays.forge-proxy checkvalidates managed profiles and exercises a temporary local/forge/healthlistener without contacting or installing a backend.Update and removal
forge-proxy updatefollows the verified stable Proxy pointer.forge-proxy update --version X.Y.Ztargets an explicit newer Forge release.Forge releases may omit standalone artifacts. Every Proxy release uses an exact Forge version, tag, and GitHub Release; the stable Proxy pointer may therefore lag the latest Forge/PyPI version.
Release assurance
Release-candidate and exact-tag workflows:
Compatibility
Existing
python -m forge.proxyinvocations remain supported. Proxy inference, retries, metadata forwarding, model routing, context reporting, and guardrails retain their Forge 0.9 behavior.The source package continues to support Python 3.12 and 3.13 and now officially includes Python 3.14. Python 3.14 is used as the private runtime inside standalone artifacts.
Local validation
Cross-platform GitHub candidate gates and an independent local Linux lifecycle run remain required before merge.
🤖 Generated with Codex and human-reviewed.