File tree Expand file tree Collapse file tree 2 files changed +12
-3
lines changed
packages/derisk-serve/src/derisk_serve/agent/agents/chat
web/src/app/application/app/components Expand file tree Collapse file tree 2 files changed +12
-3
lines changed Original file line number Diff line number Diff line change @@ -1137,11 +1137,12 @@ async def _load_and_inject_scenes(
11371137 return ""
11381138
11391139 # 构建场景提示词
1140+ scene_separator = "\n \n ---\n \n "
11401141 scene_prompt = f"""# 场景定义
11411142
11421143你是根据以下场景定义来协助用户的智能助手。请严格遵循场景定义中的角色设定、工作流程和工具使用规范。
11431144
1144- { " \n \n --- \n \n " .join (scene_contents )}
1145+ { scene_separator .join (scene_contents )}
11451146
11461147---
11471148
Original file line number Diff line number Diff line change @@ -200,8 +200,14 @@ export default function TabScenes() {
200200
201201 // 从 appInfo 中获取已选择的场景
202202 useEffect ( ( ) => {
203- if ( appInfo ?. scenes ) {
204- setSelectedScenes ( appInfo . scenes ) ;
203+ if ( appInfo ?. scenes && appInfo . scenes . length > 0 ) {
204+ const serverHasNewScenes = appInfo . scenes . some ( id => ! selectedScenes . includes ( id ) ) ;
205+ const localHasUnsyncedScenes = selectedScenes . some ( id => ! appInfo . scenes . includes ( id ) ) ;
206+ const isInitializing = selectedScenes . length === 0 ;
207+
208+ if ( serverHasNewScenes || ( isInitializing && ! localHasUnsyncedScenes ) ) {
209+ setSelectedScenes ( appInfo . scenes ) ;
210+ }
205211 }
206212 } , [ appInfo ?. scenes ] ) ;
207213
@@ -338,10 +344,12 @@ export default function TabScenes() {
338344
339345 const newScenes = [ ...selectedScenes , newScene . scene_id ] ;
340346 setSelectedScenes ( newScenes ) ;
347+
341348 await fetchUpdateApp ( { ...appInfo , scenes : newScenes } ) ;
342349
343350 message . success ( t ( 'scene_create_success' , '场景创建成功' ) ) ;
344351 setCreateModalVisible ( false ) ;
352+
345353 setActiveSceneId ( newScene . scene_id ) ;
346354 setEditingContent ( defaultContent ) ;
347355 setHasChanges ( false ) ;
You can’t perform that action at this time.
0 commit comments