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 |
토렌트 다운로드 |