Files
AX-Copilot/docs/SEMINAR.md

13 KiB

AX Copilot 기술 세미나

사내 AI 생산성 플랫폼 — 아키텍처와 핵심 기술

발표 대상: 사내 개발팀 / AI 연구팀 버전: v1.6.1 기준 (2026년 3월) 발표자: AX연구소 AI팀


1. AX Copilot 이란?

"Alt+Space 한 번으로 모든 업무 도구에 접근하는 사내 전용 AI 플랫폼"

세 가지 제품으로 구성

제품명 역할 주요 기능
AX Commander 글로벌 런처 명령 검색, 도구 실행, 자동화
AX Agent AI 대화 엔진 Chat / Cowork / Code 3탭
AX Copilot 통합 플랫폼 위 두 제품 + 설정·보안 통합

왜 데스크탑 앱인가? — 2026년 AI 도구의 방향

"브라우저 안의 AI"에서 "내 PC에서 직접 움직이는 AI"로 전환 중

2024~2025년 AI 서비스들은 웹 채팅(ChatGPT, Claude.ai)이 주류였지만, 2026년 현재 주요 AI 코딩 서비스가 모두 데스크탑 앱/터미널 네이티브로 전환했습니다:

서비스 형태 로컬 파일 접근
Claude Code 터미널 CLI (사용자 PC에서 직접 실행) 파일 읽기/쓰기/실행
Cursor 데스크탑 IDE (Electron 기반) 프로젝트 전체 분석
Windsurf 데스크탑 IDE (VS Code 포크) 48시간 자동 인덱싱
GitHub Copilot VS Code 확장 → 독립 에이전트 로컬 Git 연동
Raycast 데스크탑 런처 (macOS 네이티브) 앱·파일·클립보드 통합

공통 패턴: AI가 실제로 유용하려면 사용자의 실제 파일을 읽고, 수정하고, 실행해야 합니다. 웹 브라우저에서는 이것이 불가능하므로, 모든 서비스가 데스크탑/터미널로 내려왔습니다.

AX Copilot은 이 흐름의 정중앙에 위치합니다:

  • 🖥️ 데스크탑 네이티브 — WPF 앱이 OS 레벨에서 파일·프로세스·클립보드에 직접 접근
  • ⌨️ 글로벌 런처 — Alt+Space 한 번으로 어떤 앱 위에서든 즉시 호출
  • 🤖 에이전트 도구 52개 — 파일 읽기/쓰기, 코드 실행, Git, 문서 생성을 AI가 직접 수행

핵심 설계 원칙

  • 🏢 사내 전용 — 외부 서버 의존 없음, 텔레메트리 없음
  • 💾 로컬 우선 — 모든 데이터는 %APPDATA%\AxCopilot\에 저장
  • 🔒 보안 — AES-256 설정 암호화, 역공학 방지
  • 📦 인스톨러 150MB 이하 — .NET 8 런타임 내장 단일 배포

2. 전체 아키텍처

┌─────────────────────────────────────────────┐
│              App.xaml.cs (진입점)            │
│  서비스 초기화 · 트레이 아이콘 · 전역 훅 관리  │
└────────┬──────────────┬──────────────────────┘
         │              │
┌────────▼───────┐  ┌───▼──────────────────────┐
│  AX Commander  │  │       AX Agent           │
│  (런처 WPF)    │  │  (Chat / Cowork / Code)  │
└────────┬───────┘  └───┬──────────────────────┘
         │              │
┌────────▼──────────────▼──────────────────────┐
│              공통 서비스 계층                  │
│  SettingsService · LogService · IndexService  │
│  CryptoService · McpClientService · LLMRouter │
└──────────────────────────────────────────────┘

기술 스택

계층 기술
UI WPF (.NET 8), WinForms (트레이)
언어 C# 12, XAML
데이터 JSON 직렬화 (System.Text.Json)
검색 TF-IDF + SQLite (코드), 퍼지 엔진 (런처)
AI Ollama·vLLM (사내), Gemini·Claude (외부 옵션)
프로토콜 MCP (Model Context Protocol)

3. AX Commander — 런처 기술

입력 → 결과 처리 파이프라인

사용자 입력
    │
    ▼
CommandResolver (프리픽스 라우터)
    │
    ├── 프리픽스 매칭 ──► 44개 핸들러 실행
    │     = 계산기    ; 스니펫    # 클립보드
    │     @ URL 별칭  ~ 폴더     $ 클립보드 변환
    │     ! 워크스페이스   / 시스템 명령
    │     color·date·emoji·port·json·encode …
    │
    └── 프리픽스 없음 ──► FuzzyEngine
                          (한국어 초성 + 퍼지 매칭)

FuzzyEngine 핵심 알고리즘

입력: "설정"
  → 초성 추출: "ㅅㅈ"
  → LCS(최장 공통 부분 수열) 기반 점수 계산
  → 사용 빈도 가중치 적용 (UsageRankingService)
  → 정렬 후 결과 반환

주요 핸들러 카탈로그 (44종)

카테고리 핸들러 기능
개발 도구 json, encode, port, color JSON 검증, 인코딩, 포트 조회, 색상 변환
파일/시스템 recent, rename, scaffold, svc 최근 파일, 일괄 이름변경, 프로젝트 생성
생산성 note, snippet, date, stats 메모, 스니펫, 날짜 계산, 텍스트 분석
UI/화면 cap, snap, pick 화면 캡처, 창 배치, 색상 추출
워크스페이스 !, workspace 22개 레이아웃, 프로파일 저장/복원

4. AX Agent — AI 대화 엔진

에이전트 루프 (AgentLoopService)

사용자 메시지
      │
      ▼
┌─────────────────────────────┐
│      에이전트 루프 (반복)    │
│                             │
│  1. LLM API 호출            │
│  2. 응답 파싱               │
│  3. 도구 호출 감지          │
│  4. 도구 실행               │◄──── 52개 도구
│  5. 결과 → 컨텍스트 추가    │
│  6. 목표 달성? → 종료       │
└─────────────────────────────┘
      │
      ▼
최종 응답 스트리밍 출력 (SSE)

3개 대화 탭의 특성

목적 시스템 프롬프트 주요 도구
Chat 일반 AI 대화 범용 어시스턴트 기본 도구
Cowork 업무 자동화 20개 프리셋 특화 문서·데이터 도구
Code 개발 지원 코딩 에이전트 LSP·Git·빌드 도구

컨텍스트 관리

  • 토큰 추정: TokenEstimator — CJK 문자 가중치 적용, 실시간 비용 표시
  • 대화 압축: 컨텍스트 초과 시 ContextCondenser로 요약 → 재압축
  • 대화 분기: ParentId 기반 트리 구조, 우클릭 "여기서 분기"

5. 도구 생태계 — 52개 에이전트 도구

도구 카테고리

파일·코드 (18개)          문서·데이터 (12개)
  file_read/write           document_read/write
  directory_list            pptx_create
  search_files              xlsx_analyze
  file_watch                data_pivot
  lsp_goto_definition       template_render
  lsp_find_references       text_summarize
  search_codebase (TF-IDF)  image_analyze

개발 (12개)               시스템·프로세스 (10개)
  git_status/diff/commit    process_run
  build_run                 environment_read
  test_generate/run         clipboard_read/write
  code_review               screen_capture
  spawn_agent               notification_show

스킬 시스템 (29개 내장 슬래시 명령)

/daily-standup   /email-draft    /code-review
/translate       /security-audit /prd-generator
/weekly-report   /refactor       /gen-test
/changelog       /sql-report     /perf-audit …
  • *.skill.md 마크다운 파일로 정의 (YAML 프론트매터)
  • %APPDATA%\AxCopilot\skills\ 외부 폴더로 재빌드 없이 추가
  • Python/Node.js 런타임 감지 → 고급 스킬 자동 활성화

6. 코드 인텔리전스 기술

LSP (Language Server Protocol) 연동

에이전트                  LSP 서버
   │                        │
   ├─ lsp_goto_definition ──► OmniSharp (C#)
   ├─ lsp_find_references ──► typescript-language-server
   └─ lsp_symbols        ──► pyright (Python)

효과: 텍스트 검색이 아닌 의미 기반 코드 탐색 → 수정 정확도 대폭 향상

시맨틱 코드 검색 (TF-IDF 엔진)

1. 프로젝트 파일 인덱싱
      └── 바이그램 토크나이저 + 스톱워드 제거
      └── SQLite 영속 저장 (증분 업데이트)

2. 질의 시 관련 파일 자동 검색
      └── TF-IDF 점수 계산 → 상위 N개 반환
      └── 에이전트가 자동으로 관련 코드 읽기

MCP (Model Context Protocol) 클라이언트

  • stdio + JSON-RPC 2.0 표준 구현
  • 외부 MCP 서버의 도구를 에이전트 도구로 자동 래핑
  • 사내 전용 MCP 서버만 연결 허용

7. 보안 & 사내 환경 설계

다층 보안 구조

레이어 1: 설정 암호화
  └── settings.json → AES-256-GCM → settings.dat
  └── PC별 DPAPI 키 조합 (이식 불가)

레이어 2: 역공학 방지 (AntiTamper)
  └── 디버거 감지, 리버싱 도구 프로세스 감지
  └── 사내 IP 대역 예외 처리 (개발 환경)

레이어 3: 보안 감사 로그
  └── AuditLogService — 모든 도구 호출 JSON 영속화
  └── 개발자 모드에서 감사 로그 폴더 열기

레이어 4: 실행 범위 제한
  └── 외부 HTTP 호출 금지 (LLM API 제외)
  └── 원격 코드 실행 금지
  └── 텔레메트리 완전 차단

모델 라우팅 전략

질문 유형 분류
    │
    ├── 코딩/기술 → 코드 특화 모델 (사내 vLLM)
    ├── 번역/요약 → 경량 모델 (Ollama)
    └── 복잡 분석 → 대형 모델 (Gemini Pro / Claude)

폴백 처리: 모델 오류 시 FallbackModels 순차 시도

8. Phase별 개발 현황

완료된 주요 Phase

Phase 버전 핵심 성과
2.5~7 v1.1~1.2 에이전트 루프, 21개 도구, 마크다운 렌더러
8 v1.5.0 MCP 클라이언트, 모델 폴백, 대화 분기, 토큰 관리
9 v1.5.0 LSP 연동, 병렬 에이전트, 코드 시맨틱 검색, 이벤트 트리거
10~11 v1.5.0 Auto Router, 에이전트 메모리, 스킬 시스템, AI 코드 리뷰
15 v1.6.0 멀티패스 문서 생성, 42→52개 도구, 29개 내장 스킬
16 v1.7.0 플랜 모드, 병렬 도구 실행, 프로젝트 규칙 시스템

현재 규모 (v1.6.1)

에이전트 도구:  52개
내장 스킬:      29개
코워크 프리셋:  20개
지원 LLM:       4종 (Ollama · vLLM · Gemini · Claude)
런처 핸들러:    44개
지원 테마:      10종

9. 차기 개발 방향 (v1.8~2.0)

경쟁 서비스 대비 로드맵

기능 경쟁 서비스 AX Copilot 계획
자기 성찰 루프 Claude Code Reflexion v1.8 자기 성찰 서비스
영속 작업 기억 Windsurf Memory v1.8 Working Memory
멀티파일 Diff Cursor diff view v1.8 통합 Diff UI
HTTP+SSE MCP Claude Code 원격 v1.8 MCP HTTP 전송
에이전트 팀 GitHub Copilot Workspace v2.0 다중 에이전트
플러그인 갤러리 Raycast Store v2.0 로컬 레지스트리

사내 환경 특화 원칙 유지

  • 외부 서버 의존 없음 → 온프레미스 LLM 우선
  • 인스톨러 150MB 이하 유지
  • 플러그인 로컬 zip 설치만 허용
  • 모든 데이터 로컬 저장

10. 정리 및 Q&A

AX Copilot의 기술적 차별점

1. 완전 오프라인 동작 가능 (사내 Ollama/vLLM)
2. 52개 에이전트 도구 + 29개 슬래시 스킬
3. LSP 기반 실제 코드 이해 (텍스트 검색 수준 초월)
4. MCP 표준으로 사내 서버 자유 연결
5. AES-256 + DPAPI 이중 암호화 설정 보안
6. 전역 핫키 Alt+Space — 어떤 앱에서도 즉시 호출

향후 기여 방법

  • 스킬 추가: *.skill.md 파일 작성 → %APPDATA%\AxCopilot\skills\ 배치
  • MCP 서버: 사내 도구를 MCP 서버로 노출 → AX Copilot에서 자동 사용
  • 플러그인: IActionHandler 인터페이스 구현 → DLL 배치

발표 자료 작성: AX연구소 AI팀 | 문의: 내부 메신저