Skip to content

Commit 49b642e

Browse files
committed
docs: explain HTTP server's dual role and hidden features
1 parent fb41b27 commit 49b642e

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

CLONE_MANUAL_DETAILED.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1484,6 +1484,28 @@ export async function startGatewayServer(port = 18789, opts: GatewayServerOption
14841484
14851485
안내 데스크(`server.ts`)와 사령부(`server.impl.ts`)가 준비되었습니다. 하지만 아직 이 서버는 **벙어리**입니다. 외부에서 말을 걸 수도, 대답할 수도 없습니다. 이제 **"입(Mouth)"** 을 달아줄 차례입니다.
14861486
1487+
> [!NOTE]
1488+
> **🤔 "입(Mouth)"의 진짜 역할은?**
1489+
>
1490+
> **단순한 출력기가 아닙니다!** HTTP 서버는 **양방향 통신 장치**입니다:
1491+
>
1492+
> 1. **입력 기능 (Request Listener)**:
1493+
> - 외부에서 들어오는 모든 HTTP 요청(`GET`, `POST`, `PUT`, `DELETE`)을 **듣고(Listen)** 받아들입니다.
1494+
> - 예: 웹훅(Slack, GitHub), API 호출(`/v1/chat/completions`), 브라우저 접속(`/ui`)
1495+
>
1496+
> 2. **출력 기능 (Response Sender)**:
1497+
> - 요청을 처리한 후 **응답(Response)**을 돌려보냅니다.
1498+
> - 예: JSON 데이터, HTML 페이지, 상태 코드(200 OK, 404 Not Found)
1499+
>
1500+
> 3. **숨겨진 핵심 기능들**:
1501+
> - **라우팅(Routing)**: 요청 경로(`/health`, `/v1/hooks/agent`)에 따라 적절한 핸들러로 분배합니다.
1502+
> - **인증(Authentication)**: 토큰 검증으로 허가된 요청만 처리합니다.
1503+
> - **정적 파일 서빙**: 관리자 UI의 HTML/CSS/JS 파일을 제공합니다.
1504+
> - **WebSocket 업그레이드**: HTTP 연결을 실시간 WebSocket으로 전환시킵니다.
1505+
> - **에러 처리**: 잘못된 요청에 대해 적절한 에러 메시지를 반환합니다.
1506+
>
1507+
> **비유**: 입은 단순히 "말하는" 기관이 아니라, **듣고(귀), 맛보고(센서), 씹고(처리), 말하는(출력)** 복합 기관입니다!
1508+
14871509
> [!NOTE]
14881510
> **🛠️ VS Code 실전 조립 절차**
14891511
> 1. **파일 생성**: `src/gateway/server-http.ts` 파일을 생성합니다.

0 commit comments

Comments
 (0)