Skip to content

Browse Goose models and enter provider API keys - #230

Merged
salman1993 merged 9 commits into
mainfrom
codex/goose-provider-models
Sep 25, 2026
Merged

salman1993 merged 9 commits into
mainfrom
codex/goose-provider-models

Conversation

@salman1993

@salman1993 salman1993 commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

Why

Goose agents in Buzz need exact model IDs, but most providers had no model list or API key field in the create form. A wrong ID or missing key may go unnoticed until the agent runs.

What

Buzz asks Goose for the selected provider's models. The picker shows ten matches at a time and searches the full list. Known API key providers now have a masked key field, so users can enter a key and retry model lookup in Buzz.

How

The native lookup passes the effective provider ID and the draft agent environment to Goose's ACP supported-models method. A key entered in Buzz is a write-only per-agent environment override used for model lookup and agent launch. Leaving the field blank preserves a saved key or uses credentials already configured in Goose. Buzz Agent model browsing keeps its existing behavior.

Risk

Goose's model list API may be unavailable or require other provider setup. A successful list fetch does not prove chat access. Saved API keys live in Buzz's local agent settings file and its backup with restricted filesystem permissions; Buzz does not put them in Goose's keyring.

Testing

The create-agent form was rendered in a local browser fixture with 30 synthetic models. The ten-row limit, search, error recovery, and loading state were checked in Chromium and WebKit. A live desktop trial with a configured non-Databricks provider is still pending.

Bigger picture

This follows #214, which added Goose and Databricks v2 model browsing.

Generated with Codex

@salman1993
salman1993 force-pushed the codex/goose-provider-models branch from dabca79 to 1dddcaa Compare September 24, 2026 20:11
@salman1993
salman1993 marked this pull request as ready for review September 24, 2026 22:50
@salman1993
salman1993 requested review from a team, comp615 and wesbillman as code owners September 24, 2026 22:50
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-24T22:54:13.557774Z 1dddcaa Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1dddcaa08c

ℹ️ About Codex in GitHub

Your team has set up Codex to 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 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

/// Native-only Goose catalog context; environment values never enter a snapshot.
pub struct GooseModelContext {
pub command: PathBuf,
pub provider_id: String,

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Add the required DCO sign-off

The reviewed commit message has no Signed-off-by trailer, so it violates the repository’s per-commit DCO requirement and will fail the hosted DCO check. Recreate the commit with git commit --signoff using the verified author identity, then verify the DCO check at the new head.

AGENTS.md reference: AGENTS.md:L153-L163

Useful? React with 👍 / 👎.

@salman1993 salman1993 changed the title Browse Goose models for any selected provider Browse Goose models and enter provider API keys Sep 24, 2026
salman1993 and others added 8 commits September 25, 2026 11:24
Use the effective Goose provider for ACP model discovery and keep the model picker compact while searching the full catalog. Surface setup failures so users can retry after configuring Goose.

Signed-off-by: Salman Mohammed <smohammed@squareup.com>
Signed-off-by: Salman Mohammed <smohammed@squareup.com>
Signed-off-by: Salman Mohammed <smohammed@squareup.com>
Signed-off-by: Salman Mohammed <smohammed@squareup.com>
Signed-off-by: Salman Mohammed <smohammed@squareup.com>
Signed-off-by: Codex <codex@openai.com>
Signed-off-by: Codex <codex@openai.com>
Signed-off-by: Codex <codex@openai.com>
@salman1993
salman1993 force-pushed the codex/goose-provider-models branch from ea27c77 to 1fea773 Compare September 25, 2026 15:30

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Carl, an automated reviewer, commenting via Wes’s GitHub account.

Changes requested: one P2 credential/provider mismatch, detailed inline. Bind the new field to the effective draft provider, explicitly handle an unknown saved override without exposing it, and cover both cases before merge.

Reviewed 1fea773c9e073b2eadbd1a29f6d1a8a1b0b0802e against bebcd66e0adb27efa2c320f2bf72b8f3e63a8a45; all three independent review lanes are integrated. Existing JavaScript, Rust/tool integration, Chromium/WebKit and required CI checks pass. Two isolated mounted-component probes reproduced the incorrect credential target; source tracing confirms native lookup and launch honor the override. No production files changed.

Live non-Databricks desktop authentication/inference remains unverified, as disclosed in the PR. No approval submitted. The earlier DCO-only comment is no longer a gate: current DCO Check passes.

Comment thread src/bundled/agents/AgentSettingsFields.tsx Outdated
Signed-off-by: Codex <codex@openai.com>

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Carl, an automated reviewer, commenting via Wes’s GitHub account.

Re-review: the prior P2 is resolved; no remaining code blockers in the four-file repair at 00edfd355583ab7c65a2a65ad6ff4fe3c5200f86 (base bebcd66e0adb27efa2c320f2bf72b8f3e63a8a45). Known draft overrides select the matching key, hidden saved overrides suppress the misleading field with recovery guidance, and removal/undo and pending-key cleanup use the same provider resolution. Independent re-review is integrated.

CI passed all 3,861 Vitest tests in 352 files, including all seven settings-field tests; Rust/tool integration and Chromium/WebKit journeys also passed. No duplicate local suites were run.

CI remains a merge gate: Browser measurements failed the channel warm-switch ceiling (223.6 ms versus <200 ms); two measurement cases did not run. This is not an authentication-test failure, and its cause has not been established here. Live non-Databricks desktop authentication/inference remains unverified. No approval submitted.

@wesbillman
wesbillman dismissed their stale review September 25, 2026 17:10

Carl, an automated reviewer, commenting via Wes’s GitHub account. The sole P2 is fixed in 00edfd3 and verified on re-review. No approval; the failing CI measurement remains a separate merge gate. #230 (review)

@salman1993
salman1993 merged commit 17de590 into main Sep 25, 2026
19 of 21 checks passed
@salman1993
salman1993 deleted the codex/goose-provider-models branch September 25, 2026 17:59
johnmatthewtennant pushed a commit that referenced this pull request Sep 25, 2026
* origin/main:
  Explain missing Pi provider models (#263)
  Browse Goose models and enter provider API keys (#230)
  test(agents): check model lookup Cancel by visible text (#259)
  Ask before mentioning people outside the channel (#257)
  Refine direct message opening (#107)
  feat(messages): report messages to community moderators (#255)

Signed-off-by: Sol <49aa1f65411fd096d2e2ec144f1e7aa36fdc76d1b907cfdf7be000c66f9d3b8e@buzz.block.builderlab.xyz>
johnmatthewtennant pushed a commit that referenced this pull request Sep 25, 2026
* origin/main:
  ci: publish scheduled macOS test prereleases (#262)
  feat: add private text feedback plugin (#242)
  🤖 docs: add pre-PR checklist and review guidance to AGENTS.md (#268)
  perf(sidebar): stop rerendering every row's menu on channel switch (#265)
  Explain missing Pi provider models (#263)
  Browse Goose models and enter provider API keys (#230)
  test(agents): check model lookup Cancel by visible text (#259)

Signed-off-by: Sol <49aa1f65411fd096d2e2ec144f1e7aa36fdc76d1b907cfdf7be000c66f9d3b8e@buzz.block.builderlab.xyz>

# Conflicts:
#	src/bundled/profiles/ProfileAgentIdentity.test.tsx
zrmarley added a commit that referenced this pull request Sep 25, 2026
…-image

* origin/main: (23 commits)
  fix(agents): recover status polling and scope failure diagnostics (#283)
  Share avatar editing across community profiles and managed agents (#271)
  feat(profiles): archive, unarchive and delete agents from the profile pane (#256)
  ci: run browser journeys on three shards per engine (#280)
  ci: publish scheduled macOS test prereleases (#262)
  feat: add private text feedback plugin (#242)
  🤖 docs: add pre-PR checklist and review guidance to AGENTS.md (#268)
  perf(sidebar): stop rerendering every row's menu on channel switch (#265)
  Explain missing Pi provider models (#263)
  Browse Goose models and enter provider API keys (#230)
  test(agents): check model lookup Cancel by visible text (#259)
  Ask before mentioning people outside the channel (#257)
  Refine direct message opening (#107)
  feat(messages): report messages to community moderators (#255)
  perf(channels): stop rerendering message rows after each channel switch (#269)
  feat(profiles): open targeted agent editor from owner profile (#254)
  Let plugins declare local commands and HTTPS origins (#169)
  feat(profiles): show agent metadata and copyable nip05 (#253)
  Organize app and community settings (#173)
  Add status badge cutouts to avatars (#211)
  ...
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.

3 participants