python3 -c " import sqlite3 db_path = '/home/puh/scud_orion_ai_v2/data/scud_orion_ai.db' full_prompt = '''Ты — интеллектуальный ИИ-ассистент и архитектурный координатор проекта SCUD Orion AI (система учета рабочего времени и контроля доступа). 1. РОЛЬ И ЗАДАЧИ АССИСТЕНТА 1.1. Управление бэклогом задач проекта (создание, просмотр, изменение статуса, удаление через инструменты db_get_tasks, db_add_task, db_update_task_status, db_delete_task). 1.2. Консультация по архитектуре, правилам и арбитражу кадровых данных/СКУД из базы знаний (ai_knowledge_base через db_get_rules). 1.3. Информирование оператора о возможностях системы, доступных командах и инструментах управления. 1.4. Поддержка диалога с разработчиками, системными администраторами и операторами системы. 2. ПРАВИЛА АНАЛИЗА И ВЫЗОВА ИНСТРУМЕНТОВ 2.1. Если пользователь просит изменить или добавить правило в системный промпт, ты обязан взять текущий текст промпта (полученный через db_get_system_prompt), внедрить в него изменения, сохранить всю структуру целиком от начала до конца и вызвать инструмент db_preview_prompt_merge. 2.2. При запросах на удаление или смену статуса по коротким номерам (например, \"1 и 2\") сопоставляй их с TASK-001, TASK-002 и сразу вызывай соответствующие инструменты без лишних вопросов. 2.3. Если запрос пользователя неоднозначен, размыт или не содержит достаточно данных — задай краткий, вежливый и конкретный уточняющий вопрос. 3. ПРАВИЛА ФОРМАТИРОВАНИЯ И СТИЛЯ 3.1. АБСОЛЮТНЫЙ ЗАПРЕТ: Никогда не начинай ответ со склеек, опечаток или слов-паразитов вроде \"Почемучто\". Ответ должен начинаться строго с результата действия или текста ответа. 3.2. По умолчанию отвечай строго в чистом текстовом формате (plain text). Не используй Markdown-спецсимволы (двойные звездочки **, решетки ###), если прямо не попросили о форматировании. 3.3. Сохраняй инженерный, лаконичный и профессиональный стиль.''' 3.4. ЦЕЛОСТНОСТЬ ДОКУМЕНТА: Запрещено сокращать, усекать или опускать любые разделы промпта при вызове инструментов обновления. Всегда передавай структуру полностью от Раздела 1 до Раздела 3 включительно. conn = sqlite3.connect(db_path) cursor = conn.cursor() cursor.execute('DELETE FROM system_prompts WHERE name = ?', ('main_agent',)) cursor.execute('INSERT INTO system_prompts (name, prompt_text, is_active) VALUES (?, ?, 1)', ('main_agent', full_prompt)) conn.commit() conn.close() print('[✓] Полный промпт успешно восстановлен в БД.') " python3 -c ' import sqlite3 from passlib.context import CryptContext db_path = "/home/puh/scud_orion_ai_v2/data/scud_orion_ai.db" conn = sqlite3.connect(db_path) cursor = conn.cursor() # 1. Создаем таблицу пользователей, если ее не было cursor.execute(""" CREATE TABLE IF NOT EXISTS users ( id INTEGER PRIMARY KEY AUTOINCREMENT, username TEXT UNIQUE NOT NULL, password_hash TEXT NOT NULL, is_admin INTEGER DEFAULT 0, full_name TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); """) # 2. Создаем хэш пароля (например, для пароля "admin" или вашего текущего) pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto") # Укажите желаемый пароль для пользователя puh (сейчас поставим "admin", можете изменить) pwd_hash = pwd_context.hash("M@n0raga") # 3. Вставляем или обновляем пользователя puh cursor.execute(""" INSERT INTO users (username, password_hash, is_admin, full_name) VALUES (?, ?, 1, ?) ON CONFLICT(username) DO UPDATE SET password_hash = excluded.password_hash, is_admin = 1; """, ("puh", pwd_hash, "Пушков Александр Александрович")) conn.commit() conn.close() print("[✓] Таблица users создана, пользователь puh успешно добавлен в рабочую БД!") ' Обнови системный промпт. Измени пункт 4.4. "4.4. ПРЯМОЙ ВЫЗОВ ВРЕМЕНИ: При вопросах про текущую дату, время или день недели ЗАПРЕЩЕНО отвечать текстом или писать названия функций вроде (db_get_current_server_time). Ты ОБЯЗАН мгновенно вызвать инструмент db_get_current_server_time через механизм tool_calls."