프로젝트 소개
AIForge는 제공자 중립 런타임 커널을 기반으로 한 네이티브 C++23 터미널 AI 클라이언트입니다. venice-cpp를 통한 Venice 스트리밍 상호작용, 원샷/파이프 기반 AI 워크플로우, 지속적 재개 가능 채팅 세션을 지원하며, TermForge 기반 인터랙티브 채팅 인터페이스로 강력한 터미널 렌더링을 제공합니다.
주요 기능:
- 제공자 중립 커널: AI 제공자와 분리된 핵심 로직으로 내구성 있는 재생 실행 및 프로젝션 구현
- 지속 세션: SQLite 기반 세션 상태/이벤트/대화 기록 영구 저장 및 재개 기능
- 재생 작업 계획: 구조화된 `ask_user` 도구 사용, 계획 수정, 작업 그래프, 충돌 분석 기반 정확한 수정 결정 및 저장소 백로그 추적
- 파일 기반 페르소나: XDG config의 `.md`/`.txt` 파일에서 로드되는 시스템 지침, 콘텐츠 해싱 및 원자적 업데이트로 안전 관리
- 모델 탐색 및 선택: 기능/가격/컨텍스트 크기 정보 제공, CLI 또는 `/model` 명령어로 필터링 및 선택
- 일시적 캐릭터 선택: 핵심 구성 변경 없이 런타임에서 제공자별 캐릭터 선택
- 로컬 오디오 지원(Linux): ALSA(RtAudio) 기반 캡처/재생, AI 모델 노출 없이 안전 처리
- 이미지 처리: RasterForge 기반 PNG/JPEG/WebP 생성/조회/내보내기, 콘텐츠 주소 지정 저장 및 검증
- 제한 실행: 정책 기반 프로세스 실행, 입출력 크기 제한, 기능 제한을 통한 안전성 강화
- 사용량 통제: 세션별 토큰 사용량/비용 추적, 구성 가능한 지출 한도 적용
- 슬래시 명령 시스템: 통합 확장 가능 명령어 레지스트리, 도움말/자동 완성/가용성 검사 지원
- 정적 분석: clang-format 20/clang-tidy 20 기반 코드 포매팅 및 정적 분석 정책 적용
CMake(3.28+)로 GCC 13+/Clang 17+ 빌드 환경에서 TermForge, venice-cpp, RasterForge에 의존하며, SQLite로 세션 저장소 관리. 테스트 및 린팅이 빌드 시스템에 통합되어 있습니다.
보안, 결정성, 감사 가능성을 중시하는 아키텍처로 ADRs(Architecture Decision Records) 및 설계 문서로 결정 관리. UTF-8 검증, 콘텐츠 주소 지정 아티팩트, 안전하지 않은 입력/심볼릭 링크 엄격 차단 등이 주요 제약 조건입니다.
CLI 헤드리스 모드와 인터랙티브 TUI 모드 모두 지원. 터미널에서 인수 없이 실행 시 채팅 작업 공간 자동 열림. diff 리뷰, 코드 분석, 자동화를 위한 stdin 파이프라인 기능 제공.
BSD 3-clause 라이선스 적용.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.