# Milestone v1.1: OpenClaude CLI Integration — Requirements

## v1.1 Requirements

### Provider Connection (CONN)
- [x] **CONN-01**: OpenClaude가 Variet Engine(`http://<Machine-A>:8000/v1`)에 OpenAI-compatible 프로바이더로 연결된다.
- [x] **CONN-02**: 프로바이더 프로필(`.openclaude-profile.json`)이 Variet Engine 전용으로 저장된다.

### Model Routing (ROUTE)
- [x] **ROUTE-01**: 5-Tier agentRouting이 설정되어 에이전트 유형별(Explore, Plan, general-purpose 등) 모델이 자동 선택된다.
- [x] **ROUTE-02**: `/engine/switch/{role}` API를 통해 OpenClaude 세션 내에서 모델 핫스왑이 트리거 가능하다.

### Agent Loop Validation (AGENT)
- [x] **AGENT-01**: OpenClaude CLI에서 프롬프트 → LLM 응답 → 도구 호출(bash, file read/write, grep, glob) → 코드 변경의 전체 루프가 동작한다.
- [x] **AGENT-02**: 스트리밍 응답이 실시간으로 터미널에 출력된다.

### Build & Deploy (BUILD)
- [x] **BUILD-01**: OpenClaude CLI가 Machine B에서 `bun install && bun run build`로 빌드되고 `node dist/cli.mjs`로 실행 가능하다.
- [ ] **BUILD-02**: VS Code Extension이 `npx @vscode/vsce package`로 `.vsix` 패키징되어 Machine B의 VS Code에 설치 가능하다.
- [ ] **BUILD-03**: Extension 설정(`launchCommand`, `useOpenAIShim`)이 Variet Engine용으로 구성된다.

## Future Requirements (Deferred)
- [ ] Discord Bot (discord.py) on Machine B for personal assistant tools.
- [ ] MCP Tools (SearXNG, Google Calendar, Gmail) integration on Machine B.
- [ ] Auto-start Variet Engine via Windows Task Scheduler or service on Machine A.

## Out of Scope
- Running inference on Machine B (no GPU resources in this architecture).
- Exposing Machine A to the public internet (LAN only).
- Modifying OpenClaude core source code (use as-is from upstream).

## Traceability

| REQ-ID | Phase | Status |
|--------|-------|--------|
| CONN-01 | 03 | Complete |
| CONN-02 | 03 | Complete |
| ROUTE-01 | 04 | Complete |
| ROUTE-02 | 04 | Complete |
| AGENT-01 | 04 | Complete |
| AGENT-02 | 04 | Complete |
| BUILD-01 | 03 | Complete |
| BUILD-02 | 05 | Pending |
| BUILD-03 | 05 | Pending |
