feat: 이드 도구 확장 — 캘린더/메일/문서 연동 (read-only + 캘린더 생성 확인)

- tools/calendar_tool.py: CalDAV search/today/create_draft/create_confirmed
- tools/email_tool.py: IMAP search/read (전송 비활성화)
- tools/document_tool.py: Document Server search/read (read-only)
- tools/registry.py: 도구 디스패처 + WRITE_OPS 안전장치 + 에러 표준화
- 분류기: "tools" 액션 추가, 도구 목록/파라미터 스키마/규칙 명시
- Worker: tools 분기 + tool timeout 10초 + payload 2000자 제한
- conversation: pending_draft (TTL 5분) + create 확인 플로우
- 현재 시간을 분류기에 전달 (날짜 질문 대응)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Hyungi Ahn
2026-04-06 13:39:15 +09:00
parent 40c5d3cf21
commit 6e24da56a4
12 changed files with 647 additions and 15 deletions

View File

@@ -59,6 +59,15 @@ services:
- PIPELINE_ENABLED=${PIPELINE_ENABLED:-true}
- MAX_CONCURRENT_JOBS=${MAX_CONCURRENT_JOBS:-3}
- DB_PATH=/app/data/nanoclaude.db
- CALDAV_URL=${CALDAV_URL:-}
- CALDAV_USER=${CALDAV_USER:-}
- CALDAV_PASS=${CALDAV_PASS:-}
- MAILPLUS_HOST=${MAILPLUS_HOST:-}
- MAILPLUS_PORT=${MAILPLUS_PORT:-993}
- MAILPLUS_USER=${MAILPLUS_USER:-}
- MAILPLUS_PASS=${MAILPLUS_PASS:-}
- DOCUMENT_API_URL=${DOCUMENT_API_URL:-}
- DOCUMENT_API_TOKEN=${DOCUMENT_API_TOKEN:-}
- SYNOLOGY_INCOMING_URL=${SYNOLOGY_INCOMING_URL:-}
- SYNOLOGY_OUTGOING_TOKEN=${SYNOLOGY_OUTGOING_TOKEN:-}
- API_KEY=${NANOCLAUDE_API_KEY:-}