feat: introduced external thinking support and private scratchpad think tool

- Added support for external thinking and forced reasoning disablement across AI provider options and request transformers.
- Implemented the private scratchpad think tool along with its renderer, system prompt rules, and schema configuration.
- Updated agent session management and SDK tools to support dynamic runtime activation of the think tool via the externalThinking setting.
- Added comprehensive unit tests covering reasoning fallbacks, tool activation, and rendering behavior.
This commit is contained in:
can1357
2026-08-11 20:39:57 +02:00
parent d3b22a0db6
commit 10fd42289c
26 changed files with 560 additions and 29 deletions
@@ -479,6 +479,11 @@ export class SelectorController {
this.ctx.showError(`Failed to apply vision mode: ${err}`);
});
break;
case "externalThinking":
void this.ctx.session.setThinkToolEnabled(value as boolean).catch(err => {
this.ctx.showError(`Failed to apply external thinking: ${err}`);
});
break;
case "autocompleteMaxVisible":
this.ctx.editor.setAutocompleteMaxVisible(typeof value === "number" ? value : Number(value));