온보딩 + 설정 프로토콜

목적: CLI, macOS 앱, Web UI 전반에 걸친 공유 온보딩 + 설정 인터페이스.

구성 요소

  • 위저드 엔진 (공유 세션 + 프롬프트 + 온보딩 상태).
  • CLI 온보딩은 UI 클라이언트와 동일한 위저드 흐름을 사용.
  • Gateway RPC가 위저드 + 설정 스키마 엔드포인트를 노출.
  • macOS 온보딩은 위저드 단계 모델을 사용.
  • Web UI는 JSON Schema + UI 힌트로 설정 폼을 렌더링.

Gateway RPC

  • wizard.start 파라미터: { mode?: "local"|"remote", workspace?: string }
  • wizard.next 파라미터: { sessionId, answer?: { stepId, value? } }
  • wizard.cancel 파라미터: { sessionId }
  • wizard.status 파라미터: { sessionId }
  • config.schema 파라미터: {}
  • config.schema.lookup 파라미터: { path }
    • path는 표준 설정 세그먼트와 슬래시 구분 플러그인 ID를 받습니다. 예: plugins.entries.pack/one.config.

응답 (형태)

  • 위저드: { sessionId, done, step?, status?, error? }
  • 설정 스키마: { schema, uiHints, version, generatedAt }
  • 설정 스키마 조회: { path, schema, hint?, hintPath?, children[] }

UI 힌트

  • uiHints는 경로별로 키가 지정됨. 선택적 메타데이터(label/help/group/order/advanced/sensitive/placeholder).
  • 민감한 필드는 비밀번호 입력으로 렌더링됨. 마스킹 레이어 없음.
  • 지원되지 않는 스키마 노드는 원시 JSON 편집기로 폴백.

참고사항

  • 이 문서는 온보딩/설정을 위한 프로토콜 리팩토링을 추적하는 단일 문서입니다.