diff --git a/packages/agent-chat/src/gateway.ts b/packages/agent-chat/src/gateway.ts index 03a2107..950ea64 100644 --- a/packages/agent-chat/src/gateway.ts +++ b/packages/agent-chat/src/gateway.ts @@ -543,6 +543,7 @@ export type GatewayClient = { q?: string; source?: string; active_only?: boolean; + official_shelf?: boolean; limit?: number; offset?: number; }) => Promise; @@ -842,6 +843,7 @@ export function createGatewayClient( if (opts?.q?.trim()) params.set("q", opts.q.trim()); if (opts?.source?.trim()) params.set("source", opts.source.trim()); if (opts?.active_only === false) params.set("active_only", "false"); + if (opts?.official_shelf) params.set("official_shelf", "true"); params.set("limit", String(opts?.limit ?? 100)); params.set("offset", String(opts?.offset ?? 0)); return request(`/api/model-catalog?${params.toString()}`); diff --git a/packages/agent-chat/src/ranch-shell/RanchChatShell.tsx b/packages/agent-chat/src/ranch-shell/RanchChatShell.tsx index 195b56d..41ddd58 100644 --- a/packages/agent-chat/src/ranch-shell/RanchChatShell.tsx +++ b/packages/agent-chat/src/ranch-shell/RanchChatShell.tsx @@ -3251,6 +3251,7 @@ export function RanchChatShell(props: RanchChatShellProps) { const data = await client.listModelCatalog({ source: "openrouter", active_only: true, + official_shelf: official, limit: page, offset, }); @@ -3267,10 +3268,10 @@ export function RanchChatShell(props: RanchChatShellProps) { if (acc.some((item) => sameModelId(item.id, id))) continue; acc.push({ id, in: quote.input, out: quote.output }); } + if (!cancelled) setComposerCatalog([...acc]); if (!data.items.length) break; offset += data.items.length; } - if (!cancelled) setComposerCatalog(acc); } catch { if (!cancelled) setComposerCatalog([]); } finally {