fix: make TLS configurable in goosed agent via GOOSE_TLS env var#7686
Merged
wpfleger96 merged 3 commits intomainfrom Mar 6, 2026
Merged
fix: make TLS configurable in goosed agent via GOOSE_TLS env var#7686wpfleger96 merged 3 commits intomainfrom
wpfleger96 merged 3 commits intomainfrom
Conversation
PR #7126 hardcoded self-signed HTTPS as the only server mode, breaking headless deployments (K8s health probes, sidecar proxies, plain HTTP clients) that expect HTTP. TLS is now controlled by the GOOSE_TLS env var (default: true), so existing desktop deployments are unaffected and server deployments can opt out with GOOSE_TLS=false.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f4af365b29
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
When GOOSE_TLS=false the tunnel was still hardcoding "https" in start_tunnel_internal, so proxied requests would hit the plain HTTP listener with a TLS handshake. Adds a scheme field to TunnelManager (derived from the tls setting at construction) and uses it in place of the hardcoded value.
* origin/main: Update to rmcp 1.1.0 (#7619)
tlongwell-block
approved these changes
Mar 6, 2026
michaelneale
added a commit
that referenced
this pull request
Mar 6, 2026
* origin/main: (40 commits) fix: make TLS configurable in goosed agent via GOOSE_TLS env var (#7686) Update to rmcp 1.1.0 (#7619) Fix max turns configuration (#7612) feat: add base path field to custom provider configuration (#7614) fix: compare extension configs before skipping add_extension (#7650) chore(release): release version 1.27.0 (minor) (#7611) feat: better private channel detection, bot version debugging (#7680) chore(deps): bump svgo from 3.3.2 to 3.3.3 in /documentation (#7667) fix: only add viewable channels to bot context (#7678) chore: added a recipe to help identify high risk change prs for testing (#7651) fix: make sure platform binary exists (#7676) fix(shell): replace global static output buffer with per-instance TempDir (#7632) opt: remove timestamped config file backup (#7618) chore(deps): bump @hono/node-server from 1.19.9 to 1.19.10 in /ui/desktop (#7662) chore(deps): bump hono from 4.12.3 to 4.12.5 in /evals/open-model-gym/mcp-harness (#7661) chore(deps): bump hono from 4.12.2 to 4.12.5 in /ui/desktop (#7660) fix: resolve parameters in initial message with autosubmit (#7659) fix: this should not be blocked (#7656) Relax the assertion for the model list ACP test (#7653) fix: add analyzer extension in recipe to maintain backwards compatibility (#7652) ...
Abhijay007
pushed a commit
to Abhijay007/goose
that referenced
this pull request
Mar 6, 2026
wpfleger96
added a commit
that referenced
this pull request
Mar 6, 2026
* origin/main: (59 commits) fix: restore smart-approve mode (#7690) fix: make TLS configurable in goosed agent via GOOSE_TLS env var (#7686) Update to rmcp 1.1.0 (#7619) Fix max turns configuration (#7612) feat: add base path field to custom provider configuration (#7614) fix: compare extension configs before skipping add_extension (#7650) chore(release): release version 1.27.0 (minor) (#7611) feat: better private channel detection, bot version debugging (#7680) chore(deps): bump svgo from 3.3.2 to 3.3.3 in /documentation (#7667) fix: only add viewable channels to bot context (#7678) chore: added a recipe to help identify high risk change prs for testing (#7651) fix: make sure platform binary exists (#7676) fix(shell): replace global static output buffer with per-instance TempDir (#7632) opt: remove timestamped config file backup (#7618) chore(deps): bump @hono/node-server from 1.19.9 to 1.19.10 in /ui/desktop (#7662) chore(deps): bump hono from 4.12.3 to 4.12.5 in /evals/open-model-gym/mcp-harness (#7661) chore(deps): bump hono from 4.12.2 to 4.12.5 in /ui/desktop (#7660) fix: resolve parameters in initial message with autosubmit (#7659) fix: this should not be blocked (#7656) Relax the assertion for the model list ACP test (#7653) ...
wpfleger96
added a commit
that referenced
this pull request
Mar 6, 2026
…e-issue * origin/main: feat: combine TUI UX from alexhancock/tui-goodness with publishing config from jackamadeo/package-tui (#7683) chore: cleanup old sandbox (#7700) Correct windows artifact (#7699) gh fall back (#7695) fix: restore smart-approve mode (#7690) fix: make TLS configurable in goosed agent via GOOSE_TLS env var (#7686) Update to rmcp 1.1.0 (#7619)
jh-block
added a commit
that referenced
this pull request
Mar 9, 2026
…deps * origin/main: (34 commits) fix: reduce server log verbosity — skip session in instrument, defaul… (#7729) fix: provider test infrastructure (#7738) fix: sanitize streamable HTTP extension names derived from URLs (#7740) refactor: derive GooseMode string conversions with strum (#7706) docs: Add Spraay Batch Payments MCP Extension Tutorial (#7525) fix: flake.nix (#7224) delete goose web (#7696) Add @angiejones as CODEOWNER for documentation (#7711) Add MLflow integration guide (#7563) docs: LM Studio availability (#7698) feat: add Avian as an LLM provider (#7561) Adds `linux-mcp-server` to the goose registry (#6979) fix: add #[serde(default)] to description field on 4 ExtensionConfig variants (#7708) feat: combine TUI UX from alexhancock/tui-goodness with publishing config from jackamadeo/package-tui (#7683) chore: cleanup old sandbox (#7700) Correct windows artifact (#7699) gh fall back (#7695) fix: restore smart-approve mode (#7690) fix: make TLS configurable in goosed agent via GOOSE_TLS env var (#7686) Update to rmcp 1.1.0 (#7619) ... # Conflicts: # Cargo.lock
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.
Adds a
GOOSE_TLSenv var (defaulttrue) to make TLS configurable ingoosed agent, addressing headless and server deployments that expect plain HTTP.PR #7126 introduced self-signed HTTPS for the desktop app's cert-pinning flow, but without a fallback for non-desktop deployments. K8s health probes, sidecar proxies, and plain HTTP clients receive a TLS handshake instead of an HTTP response. Defaulting
GOOSE_TLStotruepreserves the current desktop behavior — server deployments can opt out by settingGOOSE_TLS=false.tls: boolfield (defaulttrue) toSettingsinconfiguration.rs, read fromGOOSE_TLSvia the existing env prefix configagent.rs: whentrue, usesaxum_server::bind_rustlswith cert fingerprint as before; whenfalse, usestokio::net::TcpListener+axum::servewith graceful shutdownCloses #7685