(input: RemoveKimiProviderPayload)
| 564 | } |
| 565 | |
| 566 | async removeKimiProvider(input: RemoveKimiProviderPayload): Promise<KimiConfig> { |
| 567 | const config = this.readConfigForWrite(); |
| 568 | delete config.providers[input.providerId]; |
| 569 | |
| 570 | let removedDefault = false; |
| 571 | const existingModels = config.models ?? {}; |
| 572 | for (const [key, model] of Object.entries(existingModels)) { |
| 573 | if ( |
| 574 | typeof model === 'object' && |
| 575 | model !== null && |
| 576 | !Array.isArray(model) && |
| 577 | model['provider'] === input.providerId |
| 578 | ) { |
| 579 | delete existingModels[key]; |
| 580 | if (config.defaultModel === key) removedDefault = true; |
| 581 | } |
| 582 | } |
| 583 | config.models = existingModels; |
| 584 | |
| 585 | if (removedDefault) { |
| 586 | config.defaultModel = undefined; |
| 587 | } |
| 588 | |
| 589 | if (config.defaultProvider === input.providerId) { |
| 590 | config.defaultProvider = undefined; |
| 591 | } |
| 592 | |
| 593 | await writeConfigFile(this.configPath, config); |
| 594 | return this.reloadRuntimeConfig(); |
| 595 | } |
| 596 | |
| 597 | prompt({ sessionId, ...payload }: SessionAgentPayload<PromptPayload>) { |
| 598 | return this.sessionApi(sessionId).prompt(payload); |
no test coverage detected