Variet Agent d22493125c feat(nextcloud): Nextcloud 4모듈 + NC핸들러 + AI Foreman v0.1
- tools/nextcloud_client.py: WebDAV/OCS/CalDAV/CardDAV 공통 클라이언트
- tools/nc_files.py: 파일 검색/목록/최근/공유링크
- tools/nc_calendar.py: CalDAV 일정 CRUD + ICS 빌더
- tools/nc_mail.py: IMAP 메일 조회 (PLAIN auth for Mailcow)
- tools/nc_contacts.py: CardDAV 연락처 + EasyOCR 명함 스캔
- handlers/nc_handler.py: 자연어→NC도구 자동 라우팅
- core/foreman.py: 목표 분해 + 상담 세션 + Vikunja 등록
- prompts/foreman.md: Foreman 시스템 프롬프트
- prompts/unified.md: nextcloud 모드 분류 추가
- config.py: .env 따옴표 파싱 버그 수정
- api/discord_bot.py: /goal 커맨드 + Foreman 스레드 라우팅
2026-03-18 17:26:03 +09:00

Variet Agent

AI Agent Team — Gemini CLI 기반 자동화 개발 에이전트 시스템

목표

사용자가 디스코드에서 추상적 명령을 주면, AI Agent Team이 작업을 분석/분해/실행하고, Gitea CI로 PR/빌드/배포까지 수행.

핵심 특징

  • Context Manager: Gemini CLI의 Context Rot 문제 해결 (관련 파일만 선별 주입)
  • 역할별 Headless 호출: gemini -p로 매번 독립 컨텍스트
  • API 추상화: Discord / Web UI 동일 파이프라인
  • Gitea + Vikunja 연동: PR/CI/태스크 자동 관리

구조

api/            # FastAPI 서버 + Discord Bot
core/           # Orchestrator, Context Manager, Pipeline
integrations/   # Gitea, Vikunja, CI
prompts/        # 역할별 프롬프트
sessions/       # 작업 로그
docs/           # 설계 문서

AI Agent Roles

Variet Agent는 세 가지 전문화된 역할을 통해 협업합니다:

  • Planner (prompts/planner.md): 사용자의 추상적 요청을 분석하여 구체적이고 실행 가능한 태스크들로 분해합니다. 수정이 필요한 파일을 식별하고 작업의 우선순위와 리스크를 평가합니다.
  • Coder (prompts/coder.md): Planner가 생성한 태스크와 관련 소스 코드를 바탕으로 실제 변경 사항을 구현합니다. 기존 스타일을 준수하며 완성된 파일 전체를 출력합니다.
  • Reviewer (prompts/reviewer.md): 구현된 코드가 요구사항을 충족하는지, 버그나 엣지 케이스는 없는지 검토합니다. 코드 품질을 평가하고 승인(Pass) 여부와 개선 의견을 제시합니다.

환경

  • Python 3.12+
  • Gemini CLI v0.32+ (AI Ultra)
  • Gitea: git.variet.net
  • Vikunja: plan.variet.net/projects/7

시작

pip install -r requirements.txt
cp .env.example .env   # 토큰 설정
python main.py          # API + Discord Bot 실행
Description
No description provided
Readme 1.3 MiB
Languages
Python 99.9%
Batchfile 0.1%