피드로 돌아가기
From Scratch: How to Integrate Reasonix CLI into the HagiCode System
Dev.toDev.to
Backend

3계층 아키텍처 설계를 통한 Reasonix CLI의 First-class Agent Provider 통합

From Scratch: How to Integrate Reasonix CLI into the HagiCode System

Hagicode2026년 6월 9일16intermediate

Context

ACP 기반 AI 도구인 Reasonix CLI가 Libs 계층에 구현되었으나, 상위 비즈니스 로직 및 UI와 단절된 고립 상태로 존재함. CLI 특유의 런타임 설정 방식과 설치 여부에 따른 가변성으로 인해 기존 Agent Provider 체계로의 단순 통합이 어려운 구조적 한계 직면.

Technical Solution

  • HagiCode.Libs / hagicode-core / web의 3계층 구조 설계를 통한 관심사 분리 및 책임 경계 명확화
  • ICliProvider 인터페이스 기반의 ReasonixProvider 구현으로 ACP Streaming 및 Session Management 추상화
  • ReasonixGrain 및 IExecutorStreamGrain 전용 Grain 도입을 통한 세션 상태 관리 및 실행 흐름 독립성 확보
  • Thin Adapter 패턴 기반의 ReasonixCliProvider 설계를 통해 Libs 계층의 저수준 기능을 Core 계층의 통합 인터페이스로 연결
  • Graceful Degradation 메커니즘 적용을 통해 CLI 미설치 환경에서도 시스템 안정성을 유지하는 예외 처리 구조 설계
  • OpenAPI 타입 재생성 및 Visual Type Mapping을 통한 CLI 파라미터의 동적 설정 UI 및 다국어 지원 체계 구축

1. 외부 CLI 통합 시 단순 Enum 추가가 아닌 인터페이스 기반의 추상화 계층(Adapter)을 설계했는가

2. 도구 미설치 또는 런타임 설정 오류에 대비한 Graceful Degradation 전략이 포함되었는가

3. 도구별 고유 파라미터(Budget, Effort 등)를 범용 인터페이스 내에서 유연하게 처리할 수 있는 매핑 구조를 가졌는가

4. 상태 관리의 독립성을 위해 전용 Grain 또는 State Machine을 도입하여 세션 충돌을 방지했는가

원문 읽기