Commit Graph

19 Commits

Author SHA1 Message Date
CD
e59fcdf114 refactor(agent): MCP 서버 제거 → CLI 도구 직접 실행 전환 + Wiki 도구 추가 2026-03-15 23:05:38 +09:00
CD
3618387b8e feat(anime): 자막/토렌트 파이프라인 대폭 개선
- Blogspot Atom Feed API로 전체 에피소드 자막 URL 발견
- AniList prequel 체인 기반 시즌 에피소드 오프셋 자동 감지
- Nyaa S-tag 감지 → 절대/시즌 번호 체계 자동 판별
- 기존 자막 에피소드 스킵 (URL 페치 전 pre-skip)
- 오프셋 적용 자막 리네임 (시즌번호→절대번호 매칭)
- ASW HEVC 토렌트 우선 정렬 (truncation 방지)
- 토렌트 완료 대기 → 자동 삭제 라이프사이클
- 중복 자막 자동 삭제
- .smi 자막 확장자 지원
2026-03-15 18:23:57 +09:00
CD
9f74812710 fix(anime): 파이프라인 5건 수정 — 에피소드 정규식(v2/S01E), 릴리스 그룹 필터, 자막 보호, 배치 다운로드, 타임아웃 2026-03-15 08:29:59 +09:00
63818999d9 refactor(core): MCP 역할별 접근 제어 + asyncio.Lock 추가
- ROLE_MCP_ACCESS: agent만 MCP 도구 접근, 나머지 역할은 제거
- _settings_lock: settings.json 쓰기~프로세스 시작 직렬화
- agent.md: 쉘 명령 금지, MCP 도구 강제 사용 지시 추가
- config.py: WORKSPACE_BASE_DIR 경로 수정 (Variet-Worker)
- run_bot.bat: conda 환경 variet-agent로 변경
- workspaces.json: orphan 정리 + 경로 수정
- known-issues: MCP 접근제어, yolo 자율성, Nyaa 카테고리 이슈 추가
- devlog: 002 entry 및 index 업데이트
2026-03-12 22:03:00 +09:00
246d2a26c4 refactor(agent): MCP 기반 에이전트 아키텍처 재설계 — unified.md 분류기 제거, Gemini CLI + MCP 자율 도구 호출로 전환 2026-03-12 16:52:20 +09:00
CD
c92433b0b1 feat(tools): 애니메이션 자동화 파이프라인 구현
- tools/anissia_client.py: Anissia API 클라이언트 (편성표/자막)
- tools/nyaa_client.py: Nyaa.si RSS 토렌트 검색
- tools/qbit_client.py: qBittorrent Web API 클라이언트
- tools/subtitle_downloader.py: Google Drive/Tistory/Naver 자막 파서
- tools/title_matcher.py: 제목 매칭 + NAS 폴더명 생성
- tools/anime_pipeline.py: 전체 파이프라인 오케스트레이터
- tools/nas_scanner.py: NAS 폴더/파일 스캔
- prompts/unified.md: anime 모드 추가 (AI 평문 의도 분류)
- api/discord_bot.py: AI 평문 anime 핸들러 + /anime 슬래시 커맨드
- config.py: qBittorrent/NAS 설정 추가
- .agents/: agent_guide 워크플로우 통합
- docs/devlog: 세션 기록
2026-03-08 16:07:16 +09:00
CD
e65e2250a3 feat: Planner direct 모드 + Reviewer 검증
- direct 모드: Planner 직접 처리 → Reviewer 검증 → 완료 (2단계)
- tasks 모드: 기존대로 full pipeline (5단계)
- 대화 히스토리 embed 내용 포함 (clarify 맥락 유지)
2026-03-07 01:26:32 +09:00
CD
80a5560134 fix: 대화 히스토리에서 embed 내용 유실 - clarify 맥락 보존
- _get_channel_history에서 embed title/description/fields 추출
- 봇의 clarify 질문이 히스토리에 포함되어 맥락 유지
- planner 프롬프트 강화: 불필요한 태스크 분할 방지
2026-03-07 01:22:08 +09:00
CD
0fa62d24e9 revert: unified 프롬프트에서 모델명 제거 (인위적) 2026-03-07 00:53:02 +09:00
CD
4dc75804ad fix: unified 프롬프트에 모델 정체성 추가 (Gemini 3 Flash) 2026-03-07 00:51:35 +09:00
CD
47a8c41a81 feat: Coder 자가검증 루프 추가
구현 → 자가검증 → 자가수정 → 검증통과 → 완료보고
- 2단계: 파일 다시 읽어 완전성/참조/문법 확인
- 3단계: 문제 있으면 직접 수정 후 다시 검증
- 4단계: 검증 통과 후에만 리뷰어에게 전달
외부 리뷰 재시도 비용을 줄이는 내부 품질 루프
2026-03-06 23:07:57 +09:00
CD
69e3a051f7 refactor: 전체 프롬프트 점검 및 수정
- reviewer.md: 에이전트 모드에 맞게 전면 개편
  - 실제 파일 기반 리뷰로 변경
  - 명확한 통과/반려 기준 (critical만 반려, 스타일은 통과)
  - '의심이 되면 통과시키세요' 원칙
- coder.md: 완성도 요구사항 추가
  - 빈 폴더(새 프로젝트) 대응 안내
  - TODO/뼈대 금지 — 완성된 코드 요구
  - 파일 간 참조 확인 지시
- summarizer.md: 입력 설명을 에이전트 모드에 맞게 수정
- router.md: 삭제 (unified.md가 대체)
2026-03-06 22:51:19 +09:00
CD
3d2af29a0a fix: 태스크 과분할 방지 - unified/planner 프롬프트 대폭 수정
- unified.md: tasks 배열 완전 제거, mode+summary만 출력
- planner.md: '대부분 1개 태스크로 충분' 원칙 강화
  테트리스=1개, 파일삭제+재생성=1개, 독립기능만 분할
2026-03-06 22:47:00 +09:00
CD
a6e9f31244 fix: Planner 최소분할 원칙 - 하나의 기능은 하나의 태스크로
- planner.md: 파일 단위 분할 → 기능 단위 분할로 변경
  예: 테트리스 = 1태스크 (HTML+CSS+JS 한 에이전트가 처리)
- unified.md: task 모드에서 tasks 배열 강제 제거 (Planner에 위임)
2026-03-06 22:44:51 +09:00
CD
b2cf38b5ff fix: Coder 프롬프트 - 코드 주석/문서 한국어 작성 지시 추가 2026-03-06 22:40:27 +09:00
CD
bccc673713 feat: Coder를 에이전트 모드로 전환 + 리뷰 재시도 루프
핵심 변경:
- gemini_caller.py: call_agent() 추가 (cwd 지원, 5분 타임아웃)
  Gemini가 프로젝트 디렉토리에서 직접 파일 읽기/쓰기/실행
- task_pipeline.py: Coder가 call_agent() 사용, file_applier 의존 제거
  리뷰 실패 시 최대 2회 재시도 (피드백 포함)
- discord_bot.py: pipeline.execute() 호출로 단순화
- coder.md: 파일 직접 쓰기 지시 (코드블록 출력 금지)
- 검증: echo prompt | gemini --cwd=VW_Proj → test_agent.txt 생성 확인
2026-03-06 22:13:06 +09:00
CD
a9bdce90f4 feat: 워크스페이스 시스템 + 통합 프롬프트 + Docs 기록 관리
- workspace.py: 채널별 워크스페이스 모델 + JSON 영속 저장
- discord_bot.py: /workspace 슬래시 커맨드 (set/git/vikunja/info/remove/list)
  - 등록 채널만 자동 응답, 미등록 채널 무시
  - Git/Vikunja 미설정 시 작업 차단 + 안내
  - 통합 프롬프트 1회 호출 (router+planner+chat 통합)
- docs_manager.py: Wiki 인덱스, 세션 기록, Changelog 자동 업데이트
- task_pipeline.py: 모든 Gemini 호출에 docs 컨텍스트 주입, 완료 시 기록
- unified.md: 분류+즉답/계획 통합 프롬프트
2026-03-06 21:12:50 +09:00
CD
752d851f9f feat: Pipeline 전면 개선 — 병렬실행, Batch Review, 총평, 대화기억, 스마트라우팅
- GeminiCaller: cmd/c 제거, 인자 분리, Semaphore(4) 동시성 제어, GeminiCallError
- TaskPipeline: asyncio.gather 병렬 코딩, batch_review 1회, summarize 총평
- FileApplier: Coder 출력 파싱 → 실제 파일 적용 (경로 보안 체크)
- Discord Bot: on_message 자동채팅, 의도분류(chat/task/clarify), 대화기억(10메시지)
- Prompts: router.md (의도분류), summarizer.md (총평)
- Workflows: agent_chat 환경 경로 업데이트
2026-03-06 20:46:58 +09:00
quantlab
57c9cb6143 feat: Task Pipeline + Planner E2E 성공 — stdin기반 GeminiCaller 확정 #task-189 #task-190 2026-03-06 17:37:06 +09:00