SEP Phase 7 (smooth): th cast models surfaces extension providers + engine pin bump#160
Merged
Merged
Conversation
…roviders + engine pin bump `th cast models` now folds in LLM providers contributed by globally installed extensions. Each such extension is loaded headlessly (via ExtensionHost) and its declared provider models are listed under an `extension <ext>.<provider>` section (in --json, as `<provider>/<model>` ids), filtered + sorted like gateway/local models. Gated to global extensions only — a plain `th cast models` in a repo never spawns a project extension — and any failure yields an empty list, so extension providers are strictly additive and never break the core listing. Engine pin bumped 26b4489 → 46fbbea (smooth-operator-core SEP Phase 7: registerProvider / OAuth / proxied streaming / session/set_model), which exposes ExtensionHost::providers(). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
🦋 Changeset detectedLatest commit: d91e2e1 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
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.
Problem
SEP Phase 7 (pearl th-287d54): with the engine now supporting extension-registered LLM providers, the smooth CLI should surface them.
th cast modelsonly knew about gateway + local providers.Solution
th cast modelsfolds in extension providers. Globally installed extensions (~/.smooth/extensions/) that register a provider via SEPregisterProviderare loaded headlessly (ExtensionHost::providers()), and their declared models are listed under anextension <ext>.<provider>section (in--json, as<provider>/<model>ids). Model ids are filtered + sorted like gateway/local models; a provider with no matching models is dropped.th cast modelsin a repo never spawns a project extension. Any failure yields an empty list, so extension providers are strictly additive and can't break the core listing. The whole extension load is skipped with zero cost when no global extensions are installed.26b4489→46fbbea(smooth-operator-core SEP Phase 7: registerProvider / OAuth / proxied streaming /session/set_model), which exposesExtensionHost::providers().Verification
cargo build --workspaceclean against the bumped engine (additive change — no breakage).fold_extension_modelsmerge (filter/sort/drop-empty).cargo test -p smooai-smooth-cligreen (277 tests);cargo fmt --checkclean; my diff is clippy-clean.docs/Engineering/Using-th-CLI.mddocuments the newth cast modelsbehavior.Paired with merged smooth-operator-core#31 and smooth-operator#157.
🤖 Generated with Claude Code