refactor
This commit is contained in:
+11
-51
@@ -3,6 +3,13 @@ from typing import Any
|
||||
|
||||
from app.db.models import PomodoroSession
|
||||
from app.pomodoro.cycle import PHASE_LONG_BREAK, PHASE_SHORT_BREAK, PHASE_WORK
|
||||
from app.tools.fitness import TOOL_NAMES as FITNESS_TOOL_NAMES
|
||||
from app.tools.homelab import TOOL_NAMES as HOMELAB_TOOL_NAMES
|
||||
from app.tools.memory import TOOL_NAMES as MEMORY_TOOL_NAMES
|
||||
from app.tools.pomodoro import TOOL_NAMES as POMODORO_TOOL_NAMES
|
||||
from app.tools.projects import TOOL_NAMES as PROJECT_TOOL_NAMES
|
||||
from app.tools.reminders import TOOL_NAMES as REMINDER_TOOL_NAMES
|
||||
from app.tools.shopping import TOOL_NAMES as SHOPPING_TOOL_NAMES
|
||||
|
||||
PHASE_LABELS = {
|
||||
PHASE_WORK: "Работа",
|
||||
@@ -48,57 +55,6 @@ def format_phase_completed_notice(
|
||||
return "\n".join(lines)
|
||||
|
||||
|
||||
POMODORO_TOOL_NAMES = frozenset({
|
||||
"get_pomodoro_status",
|
||||
"start_pomodoro",
|
||||
"start_short_break",
|
||||
"start_long_break",
|
||||
"stop_pomodoro",
|
||||
"skip_pomodoro_phase",
|
||||
"reset_pomodoro_cycle",
|
||||
"get_pomodoro_history",
|
||||
})
|
||||
|
||||
MEMORY_TOOL_NAMES = frozenset({
|
||||
"remember_fact",
|
||||
"recall_memories",
|
||||
"forget_memory",
|
||||
"update_profile",
|
||||
"update_session_summary",
|
||||
})
|
||||
|
||||
FITNESS_TOOL_NAMES = frozenset({
|
||||
"get_fitness_summary",
|
||||
"get_fitness_history",
|
||||
"set_fitness_profile",
|
||||
"calc_fitness_targets",
|
||||
"calc_body_composition",
|
||||
"log_meal",
|
||||
"log_water",
|
||||
"log_weight",
|
||||
"log_workout",
|
||||
"lookup_food",
|
||||
"lookup_exercise",
|
||||
"set_fitness_reminder",
|
||||
})
|
||||
|
||||
# Не засорять чат служебными ответами
|
||||
REMINDER_TOOL_NAMES = frozenset({
|
||||
"list_reminders",
|
||||
"create_reminder",
|
||||
"update_reminder",
|
||||
"delete_reminder",
|
||||
"complete_reminder",
|
||||
})
|
||||
|
||||
SHOPPING_TOOL_NAMES = frozenset({
|
||||
"list_shopping_lists",
|
||||
"create_shopping_list",
|
||||
"add_shopping_items",
|
||||
"check_shopping_item",
|
||||
"remove_shopping_item",
|
||||
"delete_shopping_list",
|
||||
})
|
||||
|
||||
TOOLS_SKIP_CHAT_NOTICE = frozenset({
|
||||
"get_pomodoro_status",
|
||||
@@ -156,6 +112,10 @@ def format_tool_notice(tool_name: str, raw_result: str) -> str | None:
|
||||
prefix = "🛒"
|
||||
elif tool_name in REMINDER_TOOL_NAMES:
|
||||
prefix = "📅"
|
||||
elif tool_name in PROJECT_TOOL_NAMES:
|
||||
prefix = "📋"
|
||||
elif tool_name in HOMELAB_TOOL_NAMES:
|
||||
prefix = "🏠"
|
||||
else:
|
||||
prefix = "📋"
|
||||
return f"{prefix} {data['error']}"
|
||||
|
||||
Reference in New Issue
Block a user