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 업데이트
This commit is contained in:
24
docs/devlog/entries/20260312-002.md
Normal file
24
docs/devlog/entries/20260312-002.md
Normal file
@@ -0,0 +1,24 @@
|
||||
# MCP 역할별 접근 제어 + 아키텍처 재분석
|
||||
|
||||
- **시간**: 2026-03-12 18:30~21:59
|
||||
- **Commit**: (이번 커밋에 포함)
|
||||
- **Vikunja**: 신규 태스크 생성 예정
|
||||
|
||||
## 결정 사항
|
||||
|
||||
### MCP 역할별 접근 제어 (구현 완료)
|
||||
- `ROLE_MCP_ACCESS` dict로 agent만 MCP 도구 접근 허용
|
||||
- `asyncio.Lock`으로 settings.json 쓰기~프로세스 시작 구간 직렬화
|
||||
- 나머지 역할(coder, reviewer 등)은 MCP 제거됨
|
||||
|
||||
### 아키텍처 방향성 (검토중)
|
||||
- **MCP 방식의 문제**: `--approval-mode yolo`에서 에이전트가 쉘/파일 조작 무제한 → 음악/만화 다운 등 예측 불가 동작
|
||||
- **검토 중인 대안**: MCP 대신 Python 도구를 소스코드로 직접 제공 → Gemini CLI가 읽고 이해하여 사용
|
||||
- **핵심 원칙**: "프롬프트는 부탁, 코드는 법률" → 안전장치는 도구 코드 레벨에 구현
|
||||
|
||||
## 미완료
|
||||
- [ ] 아키텍처 최종 결정 (MCP → Python 도구 직접 제공 방식 전환)
|
||||
- [ ] Nyaa 검색 카테고리 `1_2`로 변경
|
||||
- [ ] NAS 기존 폴더 매칭 로직 추가
|
||||
- [ ] discord_bot.py dead code ~572줄 정리
|
||||
- [ ] config.py .env 따옴표 처리
|
||||
Reference in New Issue
Block a user