# Windows 사전 준비와 현장 연결

## 오늘 인터넷이 있을 때

1. PowerShell에서 `ssh -V`를 확인합니다. Windows OpenSSH Client만 필요하며 SSH Server는 필요 없습니다.
2. 제공한 `opencode-windows-x64-baseline.zip`을 풀고 실제 사용할 PC에서 `opencode --version`을 실행합니다.
3. 제공한 `opencode.json`, `OFFLINE_AGENT.ko.md`를 참고해 로컬 모델 전용 설정을 준비합니다. 기존 개인 설정을 덮어쓰지 않습니다.
4. 실제 Windows 코드 폴더에서 OpenCode를 한번 실행합니다. 실행 파일만 복사하면 최초 초기화나 provider 의존성이 부족할 수 있습니다.
5. 사용하는 Web 개발 도구의 오프라인 자료도 준비합니다. 예: JDK, npm package cache, Maven/Gradle cache, 필요한 installer와 VSIX.
6. VSCode Remote-SSH를 사용할 경우 오늘 같은 PC/같은 VSCode version으로 한번 연결해 Server와 확장을 확보합니다. 현장 전에는 version 자동 변경을 피합니다.
7. 개인 SSH key를 사용합니다. private key는 해당 PC에만 두고 AI 서버에는 public key만 등록합니다.

이 준비에서 오늘의 AI/Web IP를 고정할 필요는 없습니다. 내일 IP가 바뀌어도 설치 파일과 개인 SSH key는 그대로 사용할 수 있습니다.

## 내일 정해질 값

| 구분 | 확인할 값 |
| --- | --- |
| AI 서버 | 내부 IPv4, SSH port, SSH host fingerprint |
| Web 서버 | 내부 IPv4, HTTPS origin, 승인된 CA public certificate와 SHA256 fingerprint |
| 서비스 | AI control/WSS port, Redis port와 허용 Web IP |

현재 외부 접속용 NAT port를 현장 내부 SSH port라고 가정하지 않습니다. 비밀번호/token을 이 표나 전달 문서에 쓰지 않습니다.

## LLM 사용 순서

1. AI 담당자가 Contextra를 정상 정지한 뒤 si 계정에서 `ct-llm serve`를 실행합니다.
2. Windows에서 SSH host fingerprint를 별도 전달값과 대조하고 최초 연결합니다. 확인을 생략하는 SSH 옵션은 사용하지 않습니다.
3. `Open-LlmTunnel.ps1`에 **현장 실제 IP와 SSH port**를 넣습니다. PowerShell 실행 정책을 강제로 전역 변경하지 않습니다.
4. 터널 창을 유지하고 `http://127.0.0.1:18081`을 엽니다. API 주소는 `http://127.0.0.1:18081/v1`입니다.
5. API key는 AI 담당자가 별도 안전한 경로로 전달합니다. 소스 파일, Git, 채팅, 공유 문서에 넣지 않습니다.
6. 코드 작업은 Windows의 해당 작업본에서 Windows OpenCode로 실행합니다. Remote-SSH 창의 터미널은 Linux 작업이라는 차이에 주의합니다.

모델 alias는 `icerti-qwen`입니다. 모델은 AI 서버에 한 번만 적재하며 초기 동시 처리1개이므로 두 사람이 동시에 질문하면 기다릴 수 있습니다.
외부 인터넷 대신 내부망 AI 서버로 질문/선택한 코드가 전송됩니다. 개인 대화와 작업 기록은 각 PC에 분리합니다.

## 관측 화면

AI 담당자가 `ct observe start`를 실행한 경우 SSH tunnel로 localhost33000을 연결하면 Grafana를 볼 수 있습니다.
관측 도구의 자동 실행은 Off입니다. 외부망/내부망 전체에 Grafana port를 직접 공개하지 않습니다.

## 현장 작업을 나중에 전달할 때

바꾼 이유, 실제 변경 파일, 실행한 검증과 결과, 남은 오류를 함께 남깁니다. OpenCode export와 Git diff를 검토한 뒤 전달합니다.
토큰/비밀번호/private key, 원본 영상, 전체 DB는 작업 기록에 넣지 않습니다.
AI 소스의 기록은 `ct work begin`, `ct work note`, `ct work end`를 사용하며 검토 후 export합니다.

## 아직 현장 확인이 필요한 것

Windows 실제 첫 실행과 SSH/API 접속은 해당 PC에서 확인해야 합니다. Linux에서의 오프라인 실행 성공이 Windows 검증을 대신하지 않습니다.
