Hi-AI
AI development assistant with 36 specialized tools for memory management, code analysis, project planning, and problem-solving through natural language interactions in Korean and English.
README
Hi-AI
<div align="center">
Model Context Protocol 기반 AI 개발 어시스턴트
TypeScript + Python 지원 · 36개 전문 도구 · 지능형 메모리 관리 · 코드 분석 · 추론 프레임워크
<a href="https://glama.ai/mcp/servers/@su-record/hi-ai"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@su-record/hi-ai/badge" alt="Hi-AI MCP server" /> </a>
</div>
목차
개요
Hi-AI는 Model Context Protocol (MCP) 표준을 구현한 AI 개발 어시스턴트입니다. 자연어 기반 키워드 인식을 통해 38개의 전문화된 도구를 제공하며, 개발자가 복잡한 작업을 직관적으로 수행할 수 있도록 돕습니다.
핵심 가치
- 자연어 기반: 한국어/영어 키워드로 도구를 자동으로 실행
- 지능형 메모리: SQLite 기반 컨텍스트 관리 및 압축
- 다중 언어 지원: TypeScript, JavaScript, Python 코드 분석
- 성능 최적화: 프로젝트 캐싱 시스템
- 엔터프라이즈 품질: 100% 테스트 커버리지 및 엄격한 타입 시스템
주요 기능
1. 메모리 관리 시스템
세션 전반에 걸쳐 컨텍스트를 유지하고 관리하는 10개의 도구:
- 지능형 저장: 카테고리별 정보 분류 및 우선순위 관리
- 컨텍스트 압축: 중요도 기반 컨텍스트 압축 시스템
- 세션 복원: 이전 작업 상태를 완벽하게 재현
- SQLite 기반: 동시성 제어, 인덱싱, 트랜잭션 지원
주요 도구:
save_memory- 장기 메모리에 정보 저장recall_memory- 저장된 정보 검색auto_save_context- 컨텍스트 자동 저장restore_session_context- 세션 복원prioritize_memory- 메모리 우선순위 관리
2. 시맨틱 코드 분석
AST 기반 코드 분석 및 탐색 도구:
- 심볼 검색: 프로젝트 전체에서 함수, 클래스, 변수 위치 파악
- 참조 추적: 특정 심볼의 모든 사용처 추적
- 다중 언어: TypeScript, JavaScript, Python 지원
- 프로젝트 캐싱: LRU 캐시를 통한 성능 최적화
주요 도구:
find_symbol- 심볼 정의 검색find_references- 심볼 참조 찾기
3. 코드 품질 분석
포괄적인 코드 메트릭 및 품질 평가:
- 복잡도 분석: Cyclomatic, Cognitive, Halstead 메트릭
- 결합도/응집도: 모듈 구조 건전성 평가
- 품질 점수: A-F 등급 시스템
- 개선 제안: 실행 가능한 리팩토링 방안
주요 도구:
analyze_complexity- 복잡도 메트릭 분석validate_code_quality- 코드 품질 평가check_coupling_cohesion- 결합도/응집도 분석suggest_improvements- 개선 제안apply_quality_rules- 품질 규칙 적용get_coding_guide- 코딩 가이드 조회
4. 프로젝트 계획 도구
체계적인 요구사항 분석 및 로드맵 생성:
- PRD 생성: 제품 요구사항 문서 자동 생성
- 사용자 스토리: 수용 조건 포함 스토리 작성
- MoSCoW 분석: 요구사항 우선순위화
- 로드맵 작성: 단계별 개발 일정 계획
주요 도구:
generate_prd- 제품 요구사항 문서 생성create_user_stories- 사용자 스토리 작성analyze_requirements- 요구사항 분석feature_roadmap- 기능 로드맵 생성
5. 순차적 사고 도구
구조화된 문제 해결 및 의사결정 지원:
- 문제 분해: 복잡한 문제를 단계별로 분해
- 사고 체인: 순차적 추론 과정 생성
- 다양한 관점: 분석적/창의적/체계적/비판적 사고
- 실행 계획: 작업을 실행 가능한 계획으로 변환
주요 도구:
create_thinking_chain- 사고 체인 생성analyze_problem- 문제 분석step_by_step_analysis- 단계별 분석break_down_problem- 문제 분해think_aloud_process- 사고 과정 표현format_as_plan- 계획 형식화
6. 프롬프트 엔지니어링
프롬프트 품질 향상 및 최적화:
- 자동 강화: 모호한 요청을 구체적으로 변환
- 품질 평가: 명확성, 구체성, 맥락성 점수화
- 구조화: 목표, 배경, 요구사항, 품질 기준
주요 도구:
enhance_prompt- 프롬프트 강화analyze_prompt- 프롬프트 품질 분석
7. 브라우저 자동화
웹 기반 디버깅 및 테스팅:
- 콘솔 모니터링: 브라우저 콘솔 로그 캡처
- 네트워크 분석: HTTP 요청/응답 추적
- 크로스 플랫폼: Chrome, Edge, Brave 지원
주요 도구:
monitor_console_logs- 콘솔 로그 모니터링inspect_network_requests- 네트워크 요청 분석
8. UI 프리뷰
코딩 전 UI 레이아웃 시각화:
- ASCII 아트: 6가지 레이아웃 타입 지원
- 반응형 프리뷰: 데스크탑/모바일 뷰
- 사전 승인: 구조 확인 후 코딩 시작
주요 도구:
preview_ui_ascii- ASCII UI 프리뷰
9. 시간 유틸리티
다양한 형식의 시간 조회:
주요 도구:
get_current_time- 현재 시간 조회 (ISO, UTC, 타임존 등)
v1.4.0 업데이트
신규 기능 (2025-01-26)
2개의 고급 도구 추가
apply_reasoning_framework (추론 카테고리)
- 9단계 추론 프레임워크 적용
- 복잡한 문제의 체계적 분석
- 논리적 종속성, 위험 평가, 가설 탐색
- 완전성과 정밀성 보장
enhance_prompt_gemini (프롬프트 카테고리)
- Google Gemini API 프롬프팅 전략 적용
- Few-Shot 예시, 출력 형식 명시화
- 컨텍스트 최적화, 프롬프트 분해
- 에이전트별 맞춤 개선
통합 효과
- 총 도구 수: 34개 → 36개 (+6%)
- 복잡한 문제 해결 능력 대폭 향상
- 프롬프트 품질 최적화
- Vibe 프레임워크와 완벽한 통합
v1.3.0 업데이트
신규 기능
4개의 핵심 라이브러리
MemoryManager (395줄)
- JSON → SQLite 자동 마이그레이션
- 인덱싱 및 트랜잭션 지원
- 배치 작업 성능 최적화
ContextCompressor (408줄)
- 컨텍스트 지능형 압축
- 우선순위 기반 보존 (코드 > 답변 > 질문)
- 엔티티 추출 및 키워드 감지
ProjectCache (160줄)
- LRU 캐싱 시스템
- 5분 TTL, 메모리 제한 관리
- 대형 프로젝트 최적화
PythonParser (289줄)
- Python AST 분석 지원
- 심볼 추출 및 복잡도 계산
- 자동 리소스 정리
Python 언어 지원
- AST 기반 코드 분석
- 심볼 검색 및 참조 추적
- Cyclomatic 복잡도 계산
- TypeScript + Python 하이브리드 프로젝트 지원
테스트 인프라
- 71개 테스트 (100% 통과)
- 100% 코어 라이브러리 커버리지
- Vitest 기반 테스트 프레임워크
- 크리티컬 패스 검증
성능 개선
| 개선 항목 | 설명 |
|---|---|
| 코드 분석 | 프로젝트 캐싱을 통한 분석 속도 향상 |
| 메모리 작업 | SQLite 트랜잭션으로 배치 작업 최적화 (O(n²) → O(n)) |
| 컨텍스트 관리 | 지능형 압축 시스템 도입 |
| 응답 형식 | 간결한 응답 포맷으로 전환 |
코드 품질
- 타입 시스템 중앙화: 170줄 중복 제거
- 메모리 도구 리팩토링: 코드 간소화 (76줄 → 17줄)
- 응답 형식 최적화: 압축된 응답 포맷
- 모듈화: 관심사의 분리 및 재사용성 향상
설치
시스템 요구사항
- Node.js 18.0 이상
- TypeScript 5.0 이상
- MCP 호환 클라이언트 (Claude Desktop, Cursor, Windsurf)
- Python 3.x (Python 코드 분석 시)
설치 방법
NPM 패키지
# 글로벌 설치
npm install -g @su-record/hi-ai
# 로컬 설치
npm install @su-record/hi-ai
Smithery 플랫폼
# 원클릭 설치
https://smithery.ai/server/@su-record/hi-ai
MCP 클라이언트 설정
Claude Desktop 또는 다른 MCP 클라이언트의 설정 파일에 추가:
{
"mcpServers": {
"hi-ai": {
"command": "hi-ai",
"args": [],
"env": {}
}
}
}
도구 카탈로그
전체 도구 목록 (36개)
| 카테고리 | 도구 수 | 도구 목록 |
|---|---|---|
| 메모리 | 10 | save_memory, recall_memory, list_memories, search_memories, delete_memory, update_memory, auto_save_context, restore_session_context, prioritize_memory, start_session |
| 시맨틱 | 2 | find_symbol, find_references |
| 사고 | 6 | create_thinking_chain, analyze_problem, step_by_step_analysis, break_down_problem, think_aloud_process, format_as_plan |
| 추론 🆕 | 1 | apply_reasoning_framework - 9단계 추론 프레임워크 |
| 코드 품질 | 6 | analyze_complexity, validate_code_quality, check_coupling_cohesion, suggest_improvements, apply_quality_rules, get_coding_guide |
| 계획 | 4 | generate_prd, create_user_stories, analyze_requirements, feature_roadmap |
| 프롬프트 | 3 | enhance_prompt, analyze_prompt, enhance_prompt_gemini 🆕 |
| 브라우저 | 2 | monitor_console_logs, inspect_network_requests |
| UI | 1 | preview_ui_ascii |
| 시간 | 1 | get_current_time |
키워드 매핑 예시
메모리 도구
| 도구 | 한국어 | 영어 |
|---|---|---|
| save_memory | 기억해, 저장해 | remember, save this |
| recall_memory | 떠올려, 기억나 | recall, remind me |
| auto_save_context | 커밋, 저장 | commit, checkpoint |
코드 분석 도구
| 도구 | 한국어 | 영어 |
|---|---|---|
| find_symbol | 함수 찾아, 클래스 어디 | find function, where is |
| analyze_complexity | 복잡도, 복잡한지 | complexity, how complex |
| validate_code_quality | 품질, 리뷰 | quality, review |
아키텍처
시스템 구조
graph TB
subgraph "Client Layer"
A[Claude Desktop / Cursor / Windsurf]
end
subgraph "MCP Server"
B[Hi-AI v1.4.0]
end
subgraph "Core Libraries"
C1[MemoryManager]
C2[ContextCompressor]
C3[ProjectCache]
C4[PythonParser]
end
subgraph "Tool Categories"
D1[Memory Tools x10]
D2[Semantic Tools x2]
D3[Thinking Tools x6]
D4[Quality Tools x6]
D5[Planning Tools x4]
D6[Prompt Tools x2]
D7[Browser Tools x2]
D8[UI Tools x1]
D9[Time Tools x1]
end
subgraph "Data Layer"
E1[(SQLite Database)]
E2[Project Files]
end
A <--> B
B --> C1 & C2 & C3 & C4
B --> D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9
C1 --> E1
C3 --> E2
C4 --> E2
D1 --> C1 & C2
D2 --> C3 & C4
D4 --> C4
핵심 컴포넌트
MemoryManager
- 역할: 영구 메모리 저장소 관리
- 기술: SQLite, better-sqlite3
- 기능: CRUD, 검색, 우선순위, 마이그레이션
- 최적화: WAL 모드, 인덱싱, Prepared Statements
ContextCompressor
- 역할: 컨텍스트 압축 관리
- 알고리즘: 우선순위 기반 압축
- 기능: 중요도에 따른 선택적 보존
ProjectCache
- 역할: ts-morph 프로젝트 캐싱
- 전략: LRU 알고리즘
- 기능: 반복 분석 성능 향상
- 제한: 100MB/프로젝트, 200MB 전체
PythonParser
- 역할: Python 코드 AST 분석
- 방법: subprocess 실행
- 기능: 심볼 추출, 복잡도 계산
- 안전: 타임아웃, 자동 정리
데이터 플로우
사용자 입력 (자연어)
↓
키워드 매칭 (도구 선택)
↓
도구 실행
↓
라이브러리 호출 (필요시)
↓
결과 포맷팅 (압축)
↓
MCP 응답 반환
성능
주요 최적화
프로젝트 캐싱
- LRU 캐시를 통한 반복 분석 성능 향상
- 5분 TTL로 최신 상태 유지
- 메모리 제한을 통한 리소스 관리
메모리 작업
- SQLite 트랜잭션으로 배치 작업 최적화
- 시간 복잡도 개선: O(n²) → O(n)
- 인덱싱을 통한 빠른 조회
응답 형식
- 간결한 응답 포맷으로 전환
- 핵심 정보 중심의 출력
v1.2.0 응답 예시:
{
"action": "save_memory",
"key": "test-key",
"value": "test-value",
"category": "general",
"timestamp": "2025-01-16T12:34:56.789Z",
"status": "success",
"metadata": { ... }
}
v1.3.0 응답 예시:
✓ Saved: test-key
Category: general
개발 가이드
환경 설정
# 리포지토리 클론
git clone https://github.com/su-record/hi-ai.git
cd hi-ai
# 의존성 설치
npm install
# 빌드
npm run build
# 개발 모드
npm run dev
테스트
# 전체 테스트 실행
npm test
# Watch 모드
npm run test:watch
# UI 모드
npm run test:ui
# 커버리지 리포트
npm run test:coverage
코드 스타일
- TypeScript: strict 모드
- 타입:
src/types/tool.ts사용 - 테스트: 100% 커버리지 유지
- 커밋: Conventional Commits 형식
새 도구 추가
src/tools/category/디렉토리에 파일 생성ToolDefinition인터페이스 구현src/index.ts에 도구 등록tests/unit/디렉토리에 테스트 작성- README 업데이트
Pull Request
- 기능 브랜치 생성:
feature/tool-name - 테스트 작성 및 통과 확인
- 빌드 성공 확인
- PR 생성 및 리뷰 요청
기여자
<a href="https://github.com/su-record/hi-ai/graphs/contributors"> <img src="https://contrib.rocks/image?repo=su-record/hi-ai" /> </a>
특별 감사
- Smithery - MCP 서버 배포 및 원클릭 설치 플랫폼 제공
라이선스
MIT License - 자유롭게 사용, 수정, 배포 가능
인용
이 프로젝트를 연구나 상업적 용도로 사용하실 경우:
@software{hi-ai2024,
author = {Su},
title = {Hi-AI: Natural Language MCP Server for AI-Assisted Development},
year = {2024},
version = {1.4.0},
url = {https://github.com/su-record/hi-ai}
}
<div align="center">
Star History
<br>
Hi-AI v1.4.0
9단계 추론 프레임워크 · Gemini 프롬프팅 전략 · 36개 전문 도구 · 100% 테스트 커버리지
Made with ❤️ by Su
<br>
🏠 Homepage · 📚 Documentation · 🐛 Issues · 💬 Discussions
</div>
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。