agent-shell/agent-ops/rules/project/rules.md
toki a43a9f66fa chore(agent-ops): agent-ops 운영 인프라와 진입 파일을 도입한다
agent-ops 공통 규칙/스킬/스크립트, 진입 파일(CLAUDE.md, GEMINI.md 등),
AI 도구별 ignore 정책을 추가해 워크스페이스 공통 운영 체계를 적용한다.
2026-06-02 21:48:27 +09:00

44 lines
2 KiB
Markdown

# 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`를 실행한다.
## 도메인 매핑
| 경로 패턴 | 도메인 | rules.md |
|----------|--------|----------|
| `lib/src/domain/**`, `lib/agent_shell.dart` | domain-model | `agent-ops/rules/project/domain/domain-model/rules.md` |
| `lib/src/widgets/**` | widgets | `agent-ops/rules/project/domain/widgets/rules.md` |
| `test/**`, `pubspec.yaml`, `analysis_options.yaml`, `README.md`, `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`, `.cursorrules`, `.clinerules`, `agent-ops/**` | project-ops | `agent-ops/rules/project/rules.md` |
## 스킬 라우팅
현재 프로젝트 전용 스킬은 없다. 반복 작업이 안정적으로 드러난 뒤 `agent-ops/skills/project/`에 추가한다.