# agent-shell project rules ## 응답 언어 - 기본 응답은 한국어로 한다. ## 프로젝트 개요 `agent-shell`은 Flutter 기반 agent interaction package다. 제품 앱, backend, runtime, WebView 조작, IOP Control Plane, NomadCode workflow를 직접 소유하지 않고, host 앱이 주입하는 메시지와 capability를 표시하고 상호작용하는 공통 UI/인터페이스만 제공한다. ## 주요 구조 - `lib/agent_shell.dart` - public export entrypoint. - `lib/src/domain/` - message, tool call, command, event, capability model. - `lib/src/widgets/` - embeddable chat surface와 UI primitives. - `test/` - widget/model tests. ## 기술 스택 - Flutter package - Dart SDK `^3.11.0` - `flutter_test` ## 프로젝트 특화 컨벤션 - `lib/`는 package 코드만 둔다. `runApp`, `MaterialApp`, Firebase/SystemChrome bootstrap은 host 앱 책임이다. - 제품별 package를 import하지 않는다. IOP/NomadCode 연결은 각 제품의 capability pack 또는 optional composition layer에서 구현한다. - Public API는 `lib/agent_shell.dart`에서 export한다. - Host가 theme, navigation, transport, auth, endpoint, persistence를 주입한다. - UI는 좌측 rail, 우측 rail, center content, modal 등 다양한 host layout에 들어갈 수 있어야 한다. - 변경 후 가능한 경우 `flutter test`를 실행한다.