Skip to content

feat(vscode): expand custom provider configuration - #11239

Merged
chrarnoldus merged 11 commits into
mainfrom
feature/custom-provider-reasoning-options
Jun 16, 2026
Merged

feat(vscode): expand custom provider configuration#11239
chrarnoldus merged 11 commits into
mainfrom
feature/custom-provider-reasoning-options

Conversation

@chrarnoldus

@chrarnoldus chrarnoldus commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • let custom providers select the OpenAI-compatible, OpenAI Responses, or Anthropic Messages AI SDK package while validating the allowed packages at the extension boundary
  • add adaptive thinking, split reasoning, and output effort controls to model variants, including correct edit and unset persistence
  • stack variant settings vertically for a clearer configuration layout and keep custom-provider classification consistent across supported packages

Why

Custom endpoints use different AI SDK provider contracts and reasoning options. Exposing these settings in the custom-provider editor avoids manual config changes while preserving safe package selection and reliable deep-merge updates.

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
@chrarnoldus chrarnoldus self-assigned this Jun 15, 2026
@kilo-code-bot

kilo-code-bot Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Files Reviewed (2 files, incremental from 8f6a722)
  • packages/kilo-vscode/src/shared/provider-model.ts — formatting only (CUSTOM_PROVIDER_PACKAGES collapsed to single line)
  • packages/kilo-vscode/webview-ui/src/components/settings/CustomProviderDialog.tsx — formatting only (onChangeVariantOutputEffort callback collapsed to single line)

Fix these issues in Kilo Cloud

Previous Review Summaries (6 snapshots, latest commit 8f6a722)

Current summary above is authoritative. Previous snapshots are kept for context only.

Previous review (commit 8f6a722)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (1 file, incremental from 239369a)
  • packages/kilo-vscode/webview-ui/src/components/settings/CustomProviderDialog.tsx — extracted resolveAuth and initForm from component inline logic to module-level functions; added ExistingProvider type alias

Fix these issues in Kilo Cloud

Previous review (commit 239369a)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (1 file, incremental from a10caf9)
  • packages/kilo-vscode/webview-ui/src/components/settings/CustomProviderDialog.tsx — extracted parseVariant, initModels, initHeaders from component closures to module-level pure functions

Fix these issues in Kilo Cloud

Previous review (commit a10caf9)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (20 files, incremental from a65f780)
  • packages/kilo-vscode/tests/unit/custom-provider.test.ts — updated Invalid optionInvalid enum value assertion + effort field test coverage
  • packages/kilo-vscode/webview-ui/src/i18n/ar.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/br.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/bs.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/da.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/de.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/es.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/fr.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/it.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/ja.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/ko.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/nl.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/no.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/pl.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/ru.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/th.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/tr.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/uk.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/zh.ts — +13 i18n keys (English fallback)
  • packages/kilo-vscode/webview-ui/src/i18n/zht.ts — +13 i18n keys (English fallback)

Fix these issues in Kilo Cloud

Previous review (commit a65f780)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (16 files, incremental from 3ffb1ad)
  • packages/kilo-vscode/webview-ui/src/components/settings/CustomProviderModelCard.tsx — output effort variant option UI
  • packages/kilo-vscode/webview-ui/src/components/settings/CustomProviderValidation.ts — effort serialization
  • packages/kilo-vscode/webview-ui/src/i18n/en.ts — output effort i18n keys
  • packages/opencode/src/config/provider.ts — reasoning field nullable for stripNulls
  • packages/opencode/src/kilocode/skill-remove.ts — new safe manifest-only removal module
  • packages/opencode/src/kilocode/server/httpapi/handlers/kilocode.ts — refactored to use safe skill-remove
  • packages/opencode/src/skill/index.ts — removed old recursive rm function
  • packages/opencode/test/kilocode/skill-remove.test.ts — comprehensive target() validation tests
  • packages/opencode/test/kilocode/builtin-skills.test.ts — customize-opencode protection test
  • packages/opencode/test/kilocode/config/config.test.ts — reasoning persistence/removal test
  • packages/opencode/test/kilocode/server/httpapi-exercise-scenarios.ts — sibling file preservation test
  • packages/opencode/CHANGELOG.md — version entry
  • packages/sdk/js/src/v2/gen/sdk.gen.ts — regenerated SDK
  • packages/sdk/openapi.json — regenerated OpenAPI
  • Multiple package.json files — version bump to 7.3.46

Previous review (commit 3ffb1ad)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (9 files, incremental from a5b87fa)
  • .changeset/calm-models-reason.md — changeset description updated
  • packages/kilo-vscode/src/provider-actions.ts — uses isCustomProviderPackage guard
  • packages/kilo-vscode/src/shared/custom-provider.tsnpm field now enum-validated, withCustomProviderDeletions reasoning null fix
  • packages/kilo-vscode/src/shared/provider-model.ts — new CUSTOM_PROVIDER_PACKAGES tuple, isCustomProviderPackage guard
  • packages/kilo-vscode/tests/unit/custom-provider-dialog-validate.test.ts — new package persistence test
  • packages/kilo-vscode/tests/unit/custom-provider.test.ts — new tests for package guard, unapproved package rejection, reasoning null sentinel
  • packages/kilo-vscode/webview-ui/src/components/settings/CustomProviderDialog.tsx — provider API selector, package signal for fetch guard
  • packages/kilo-vscode/webview-ui/src/components/settings/CustomProviderValidation.tsnpm field threaded through form state and result
  • packages/kilo-vscode/webview-ui/src/components/settings/ProvidersTab.tsx — tag logic uses isCustomProviderPackage
  • packages/kilo-vscode/webview-ui/src/i18n/en.ts — new i18n key for package label

Previous review (commit a5b87fa)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (7 files)
  • .changeset/calm-models-reason.md
  • packages/kilo-vscode/src/shared/custom-provider.ts
  • packages/kilo-vscode/tests/unit/custom-provider-dialog-validate.test.ts
  • packages/kilo-vscode/tests/unit/custom-provider.test.ts
  • packages/kilo-vscode/webview-ui/src/components/settings/CustomProviderDialog.tsx
  • packages/kilo-vscode/webview-ui/src/components/settings/CustomProviderModelCard.tsx
  • packages/kilo-vscode/webview-ui/src/i18n/en.ts

Reviewed by deepseek-v4-pro-20260423 · 146,950 tokens

Review guidance: REVIEW.md from base branch main

chrarnoldus and others added 10 commits June 15, 2026 09:25
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
…er-reasoning-options

# Conflicts:
#	packages/kilo-vscode/src/shared/custom-provider.ts

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
@chrarnoldus chrarnoldus changed the title feat(vscode): support custom reasoning options feat(vscode): expand custom provider configuration Jun 16, 2026
@chrarnoldus
chrarnoldus merged commit f09ae31 into main Jun 16, 2026
20 checks passed
@chrarnoldus
chrarnoldus deleted the feature/custom-provider-reasoning-options branch June 16, 2026 10:04
LigiaZ added a commit that referenced this pull request Jun 16, 2026
t7tran pushed a commit to t7tran/kilocode that referenced this pull request Aug 14, 2026
…er-reasoning-options

feat(vscode): expand custom provider configuration
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.

MiniMax M3 reasoning/thinking content leaks into normal response text instead of rendering in a thinking block

2 participants