워크스페이스 기본 포트와 검증 문서를 실제 런타임 기본값에 맞추고, 브리지 경계에서 adapter config 타입 정보를 보존해야 이후 원격 smoke와 경계 안정화 작업이 같은 계약을 사용할 수 있다.
2.3 KiB
IOP Client
IOP(Inference Operations Platform)의 공식 Client UI 애플리케이션입니다. Flutter를 사용하여 다중 플랫폼(Web, Desktop, Mobile)을 단일 코드베이스로 지원합니다.
Agent Shell 구성
이 client는 IOP-owned Flutter package인 packages/flutter/iop_console을 path dependency로 사용합니다. iop_console은 workspace sibling package인 agent_shell을 사용해 IopConsoleShell과 IopAgentPanel을 제공하며, IOP 운영/유지보수 agent 화면을 단독 IOP 앱과 외부 임베딩 소비자에서 같은 위젯 경계로 조립하기 위한 시작점입니다.
IOP client는 NomadCode 전용 workbench layout을 소유하지 않습니다. IOP 쪽 책임은 Control Plane을 통해 Edge/Node 운영 상태와 유지보수 작업을 다루는 agent capability와 panel widget을 제공하는 것이고, NomadCode 같은 소비자는 iop_console 또는 향후 IOP console package를 자신의 shell 안에 선택적으로 mount합니다.
개발 및 검증 명령
의존성 설치
flutter pub get
테스트 실행
flutter test
Dart Protobuf 생성
이 프로젝트는 Go/Dart 등 다중 언어 환경의 메시지 계약을 공유하기 위해 protobuf를 사용합니다.
Dart proto 코드를 새로 생성하려면 루트 Makefile에서 make proto-dart를 실행하세요.
필요 조건:
protoc설치protoc_plugin글로벌 설치:
참고:flutter pub global activate protoc_pluginprotoc-gen-dart가 시스템PATH에 등록되어 있지 않더라도,Makefile이 자동으로~/.pub-cache/bin및/config/.pub-cache/bin경로를 검색해 컴파일을 수행하므로 수동 PATH 설정이 필수적이지는 않습니다.
Web 빌드
flutter build web \
--dart-define=IOP_CONTROL_PLANE_HTTP_URL=http://localhost:18000 \
--dart-define=IOP_CONTROL_PLANE_WIRE_URL=ws://localhost:19080/client
환경 변수 및 설정 정의
본 앱은 빌드 시점에 --dart-define 인자를 사용해 설정을 주입받습니다.
| 변수명 | 설명 | 기본값 |
|---|---|---|
IOP_CONTROL_PLANE_HTTP_URL |
Control Plane HTTP API 주소 | http://localhost:18000 |
IOP_CONTROL_PLANE_WIRE_URL |
Control Plane WebSocket 연결 주소 | ws://localhost:19080/client |