Repository navigation
Conversation
Sycun
marked this pull request as ready for review
October 31, 2026 15:32
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.
Proxy arguments previously applied to individual HTTP tool calls only, leaving operators without a persistent way to keep session egress stable. This PR adds Settings → Proxy settings with manual arguments, a fixed proxy, or an explicitly enabled pool. Fixed mode retains the configured endpoint across invocations; pool mode supports sticky/round-robin selection and a minimum switch interval that also prevents early failover.
The policy applies only to
http-framework-test. Other Kali tools, arbitrary shell commands, external MCP servers and LLM API transports retain their existing routing. No global HTTP_PROXY changes, model-client rotation, or restarts of running tools are introduced. A fixed proxy URL still requires provider-side fixed/sticky egress to guarantee a stable public IP.Implementation:
proxyconfiguration section through the existing settings API. Saves apply to subsequent HTTP invocations without calling the platform-wide apply/restart endpoint; active processes and PTY retries retain their launch snapshot.Validation: 33 Python scenarios passed on both HTTPX 0.27.0 and 0.28.1; 333 frontend tests passed;
go test -race ./internal/config ./internal/security ./internal/handlerandgo build ./...passed. Tests cover actual local proxies/TLS/SOCKS5, managed settings overriding model arguments, switch intervals, configuration persistence/masking/rollback/hot application, and routing isolation. The settings panel was visually checked with local preview fixtures. A pre-existing shell test's process-start race was corrected so the race check is reliable.Limits: switch timing/pool health are invocation-local; use fixed mode for stable egress across calls. HTTP 200 CAPTCHA/block pages are not classified. Status matching is a policy, not proof of an IP ban. Managed policy is not a network sandbox for arbitrary shell commands. No production deployment or real provider/target testing was performed.
Refs #357. This implements the HTTP-tool scope and does not automatically close the broader issue.