背景
系统提示词虽然要求模型在破坏性操作前确认,但服务端会直接执行模型发起的工具调用。manage_downloads 可以取消并删除文件,manage_feeds 可以删除订阅,manage_tasks 可以触发后台任务。仅依赖提示词不能防止误调用或提示注入。
相关代码:
- Plugins/SecondDimensionWatcherReDive.Chat/ChatSystemPrompt.cs
- Plugins/SecondDimensionWatcherReDive.Chat/ChatController.cs
- Plugins/SecondDimensionWatcherReDive.Chat/Tools/ManageDownloadsTool.cs
- Plugins/SecondDimensionWatcherReDive.Chat/Tools/ManageFeedsTool.cs
- SecondDimensionWatcherReDive.Client/src/components/chat/ToolCallDisplay.tsx
目标
让所有 AI 变更操作经过服务端强制的“计划—批准—执行”流程。
建议范围
- 为工具/action 标注 ReadOnly、Mutating、Destructive 风险级别。
- 变更调用先创建 PendingAction,保存规范化参数、影响对象、风险、可逆性、用户/会话绑定和过期时间。
- SSE 返回 approval_required,前端展示批准/拒绝卡片。
- 批准后使用一次性幂等令牌执行。
- 保存申请、批准、参数摘要、结果和错误审计记录。
- 删除文件等高风险操作显示影响范围并要求二次确认。
验收标准
预估工作量:中高
背景
系统提示词虽然要求模型在破坏性操作前确认,但服务端会直接执行模型发起的工具调用。manage_downloads 可以取消并删除文件,manage_feeds 可以删除订阅,manage_tasks 可以触发后台任务。仅依赖提示词不能防止误调用或提示注入。
相关代码:
目标
让所有 AI 变更操作经过服务端强制的“计划—批准—执行”流程。
建议范围
验收标准
预估工作量:中高