feat: DEVONthink 제거 + 모닝 브리핑 추가
- DEVONthink 의존성 제거 → kb_writer 전환 (news_digest, inbox_processor, mail pipeline) - devonthink_bridge.py, plist 삭제 - morning_briefing.py 신규 (매일 07:30, 일정·메일·보고·뉴스 → Synology Chat) - intent_service.py 분류기 프롬프트 개선 + 키워드 fallback - migrate-v5.sql (news_digest_log kb_path 컬럼) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -16,7 +16,7 @@ logger = logging.getLogger("inbox_processor")
|
||||
|
||||
GPU_OLLAMA_URL = os.getenv("GPU_OLLAMA_URL", "http://192.168.1.186:11434")
|
||||
CALDAV_BRIDGE_URL = os.getenv("CALDAV_BRIDGE_URL", "http://127.0.0.1:8092")
|
||||
DEVONTHINK_BRIDGE_URL = os.getenv("DEVONTHINK_BRIDGE_URL", "http://127.0.0.1:8093")
|
||||
KB_WRITER_URL = os.getenv("KB_WRITER_URL", "http://127.0.0.1:8095")
|
||||
|
||||
|
||||
def run_applescript(script: str, timeout: int = 15) -> str:
|
||||
@@ -166,23 +166,26 @@ def route_calendar(cls: dict, task_id: str) -> None:
|
||||
|
||||
|
||||
def route_note(cls: dict, task_id: str) -> None:
|
||||
"""DEVONthink 브릿지로 메모 저장."""
|
||||
"""kb_writer로 메모 저장."""
|
||||
content = cls.get("content") or cls.get("title", "")
|
||||
title = cls.get("title", "OmniFocus 메모")
|
||||
|
||||
try:
|
||||
resp = httpx.post(
|
||||
f"{DEVONTHINK_BRIDGE_URL}/save",
|
||||
f"{KB_WRITER_URL}/save",
|
||||
json={
|
||||
"title": title,
|
||||
"content": content,
|
||||
"type": "markdown",
|
||||
"type": "note",
|
||||
"tags": ["omnifocus", "inbox"],
|
||||
"username": "inbox-processor",
|
||||
"source": "omnifocus",
|
||||
"topic": "omnifocus",
|
||||
},
|
||||
timeout=10,
|
||||
)
|
||||
if resp.json().get("success"):
|
||||
logger.info(f"Note saved to DEVONthink: {title}")
|
||||
logger.info(f"Note saved to KB: {title}")
|
||||
mark_processed(task_id)
|
||||
complete_task(task_id)
|
||||
except Exception as e:
|
||||
|
||||
Reference in New Issue
Block a user