워크플로 모드
워크스페이스에는 모드가 두 개 있습니다. 헤더 오른쪽 상단의 모드 토글 — 아이콘 두 개가 달린 작은 스위치 — 로 전환합니다.
| 아이콘 | 모드 | 용도 |
|---|---|---|
| Sparkles | 생성(Create) | 그래프 편집 — 노드 추가, 연결, 설정 |
| Play | 실행(Execute) | 그래프 실행 — 다시 전환하기 전까지 편집 불가 |
선택한 모드는 localStorage에 workspace.mode로 유지되므로, 워크스페이스를 다시 열면 마지막에 쓰던 모드로 돌아옵니다.
생성 모드
새 워크플로를 시작할 때의 기본 모드입니다.
가능한 것:
- 스마트 아일랜드에 추가 툴바가 표시됩니다 — 새 자료 노드를 놓는 아이콘 일곱 개(텍스트, 이미지, 영상, 오디오, 문서, URL, 3D 모델).
- 컨텍스트 작업 — 노드를 하나 또는 여러 개 선택하면 나타납니다(예: 텍스트 노드 하나를 선택했을 때 “이미지 생성”).
- 드래그 연결 — 출력 핸들에서 입력 핸들로 끌어 노드를 서로 연결합니다.
- 노드 설정 — 노드의 텍스트 필드, 드롭다운, 프롬프트 박스를 클릭해 값을 편집합니다.
- 실행은 안 됩니다. 모든 것이 연결되어 있어도 생성 모드에서는 아무것도 실행되지 않습니다.
실행 모드
그래프가 준비되어 돌려 보고 싶을 때 실행 모드로 전환합니다.
바뀌는 것:
- 스마트 아일랜드가 Play 버튼 하나로 접힙니다. 추가 툴바와 컨텍스트 메뉴는 숨겨집니다.
- 편집이 잠깁니다. 노드의 이동, 삭제, 재연결이 불가능하고 프롬프트도 편집할 수 없습니다.
- Play를 클릭하면 실행됩니다. 저장되지 않은 변경이 있으면 저장 후 실행할지 묻는 대화상자가 먼저 나타납니다.
- 실시간 상태 — 실행 중인 노드는 스피너를, 완료된 노드는 출력을, 실패한 노드는 오류를 표시합니다. 화면 상단의 작업 진행 토스트가 전체 실행 상황을 보여 줍니다.
- 중지는 토스트에서 합니다(스마트 아일랜드가 아닙니다).
- 실행 중에는 Play 버튼이 Siri 스타일로 여러 색이 숨 쉬듯 일렁입니다.
언제 전환하나
정해진 규칙은 없습니다. 흔한 패턴:
- 빠른 반복 — 생성 모드에서 프롬프트를 고치고, 실행 모드로 전환해 돌려 보고, 결과를 확인한 뒤 돌아와 다시 다듬습니다.
- 클라이언트 / 데모용 잠금 — 캔버스를 누군가에게 보여 주기 전에 실행 모드로 전환해 두면, 상대는 실행만 할 수 있고 아무것도 망가뜨리지 못합니다.
- 다른 입력으로 재실행 — 생성 모드에서 업스트림 자료를 바꾸고 돌아와 다시 실행합니다. 변경되지 않은 업스트림 노드의 결과는 캐시에서 재사용됩니다.
실행 간 캐시 동작
Play를 클릭하면 입력이 바뀐 노드(또는 한 번도 실행된 적 없는 노드)만 실제로 작업을 만듭니다. 바뀌지 않은 업스트림 노드는 캐시된 출력을 반환합니다. 특정 노드를 강제로 다시 실행하려면 그 노드의 입력을 하나 바꾸면 됩니다.
구현 참고
모드는 워크스페이스 스토어(src/components/workspace/mode-switch.tsx)가 관리하는 단일 WorkspaceMode = "create" | "execute" 값입니다. 스마트 아일랜드, 캔버스(상호작용 활성화/비활성화), 실행 버튼이 모두 이 값을 읽습니다.
