Files
variet-agent/.agent/references/tech-stack.md

60 lines
2.1 KiB
Markdown

# Tech Stack
> AI 에이전트는 구현 전 이 문서를 확인하여 올바른 기술/버전을 사용합니다.
## 언어 & 런타임
| 항목 | 버전 | 비고 |
|------|------|------|
| Python | 3.12+ | `C:\ProgramData\miniforge3\envs\variet-agent\python.exe` |
| Gemini CLI | v0.32+ (AI Ultra) | `gemini --model gemini-3-flash-preview` |
## 프레임워크
| 항목 | 버전 | 용도 |
|------|------|------|
| FastAPI | 최신 | REST API 서버 |
| discord.py | 2.x | Discord Bot |
| uvicorn | 최신 | ASGI 서버 |
| httpx | 최신 | 비동기 HTTP 클라이언트 (tools/) |
## 패키지 관리
- 패키지 매니저: pip (conda env `variet-agent`)
- 의존성 파일: `requirements.txt`
- 가상환경: `C:\ProgramData\miniforge3\envs\variet-agent`
## 개발 도구
| 도구 | 명령어 |
|------|--------|
| 봇 실행 | `run_bot.bat` 또는 `C:\ProgramData\miniforge3\envs\variet-agent\python.exe main.py` |
| 테스트 | `C:\ProgramData\miniforge3\envs\variet-agent\python.exe -m pytest tests/ -v` |
| Vikunja 조회 | `C:\ProgramData\miniforge3\envs\variet-agent\python.exe .agent\workflows\helpers\vikunja_helper.py list todo` |
## 환경 변수 (.env)
| 변수명 | 용도 | 기본값 |
|--------|------|--------|
| DISCORD_BOT_TOKEN | Discord 봇 토큰 | (필수) |
| API_HOST | API 서버 호스트 | 0.0.0.0 |
| API_PORT | API 서버 포트 | 8000 |
| GITEA_URL | Gitea 서버 | https://git.variet.net |
| GITEA_TOKEN | Gitea API 토큰 | (필수) |
| GITEA_REPO | Gitea 저장소 | Variet/variet-agent |
| VIKUNJA_URL | Vikunja 서버 | https://plan.variet.net |
| VIKUNJA_TOKEN | Vikunja API 토큰 | (필수) |
| VIKUNJA_PROJECT_ID | Vikunja 프로젝트 ID | 7 |
| QBIT_URL | qBittorrent URL | http://localhost:8080 |
| NAS_ANIME_PATH | NAS 애니 경로 | \\\\192.168.10.10\NasData\Video\Animation |
## 외부 서비스
| 서비스 | URL | 용도 |
|--------|-----|------|
| Gitea | git.variet.net | Git 저장소, PR, CI |
| Vikunja | plan.variet.net | 태스크 관리 (프로젝트 #7) |
| Anissia | anissia.net | 애니 편성표/자막 |
| Nyaa | nyaa.si | 토렌트 검색 |
| qBittorrent | localhost:8080 | 토렌트 다운로드 |