feat: run_command 改为下拉框设置自动/需确认/禁用三种模式
- 替换原有开关为下拉选择框(selectRunCommandMode) - 新增 setRunCommandMode() 动态控制确认行为 - 需确认模式:弹窗确认后执行 - 自动模式:直接执行,无需确认 - 禁用模式:工具不可用 - 新增 .tool-card-badge.disabled 样式 - 状态从 runCommandEnabled(bool) 迁移为 runCommandMode(string)
This commit is contained in:
@@ -22,7 +22,7 @@ import { initHistoryModal, closeHistoryModal } from './components/history-modal.
|
||||
import { initMemoryModal } from './components/memory-modal.js';
|
||||
import { initToolsModal, closeToolsModal } from './components/tools-modal.js';
|
||||
import { initMemoryManager } from './services/memory-manager.js';
|
||||
import { setToolEnabled } from './services/tool-registry.js';
|
||||
import { setToolEnabled, setRunCommandMode } from './services/tool-registry.js';
|
||||
import { initToolConfirmModal } from './components/tool-confirm-modal.js';
|
||||
import { initWorkspacePanel } from './components/workspace-panel.js';
|
||||
import { initLogPanel, addLog } from './services/log-service.js';
|
||||
@@ -190,7 +190,7 @@ async function init(): Promise<void> {
|
||||
|
||||
// ── 防御性重置:确保首次启动不会遗留脏状态 ──
|
||||
state.set('toolCallingEnabled', false);
|
||||
state.set('runCommandEnabled', true); // 默认开启(需确认)
|
||||
state.set('runCommandMode', 'confirm'); // 默认需确认
|
||||
state.set('memoryEnabled', true);
|
||||
state.set('thinkEnabled', false);
|
||||
|
||||
@@ -236,14 +236,12 @@ async function init(): Promise<void> {
|
||||
|
||||
// ── Tool Calling 设置 ──
|
||||
const toolCallingEnabled = await db.getSetting('toolCallingEnabled', false);
|
||||
const runCommandEnabled = await db.getSetting('runCommandEnabled', true); // 默认开启(需确认)
|
||||
const runCommandMode = await db.getSetting('runCommandMode', 'confirm') as 'auto' | 'confirm' | 'disabled';
|
||||
state.set('toolCallingEnabled', toolCallingEnabled);
|
||||
state.set('runCommandEnabled', runCommandEnabled);
|
||||
if (!runCommandEnabled) setToolEnabled('run_command', false); // 仅在用户明确关闭时禁用
|
||||
state.set('runCommandMode', runCommandMode);
|
||||
setRunCommandMode(runCommandMode);
|
||||
const toggleTC = document.querySelector<HTMLInputElement>('#toggleToolCalling');
|
||||
if (toggleTC) toggleTC.checked = toolCallingEnabled;
|
||||
const toggleRC = document.querySelector<HTMLInputElement>('#toggleRunCommand');
|
||||
if (toggleRC) toggleRC.checked = runCommandEnabled;
|
||||
|
||||
// ── Agent 记忆设置 ──
|
||||
const memoryEnabled = await db.getSetting('memoryEnabled', true);
|
||||
|
||||
Reference in New Issue
Block a user