y83 code / справочник

База данных

Просмотр и правка таблиц прямо в приложении: что за базы есть на телефоне и на серверах, что в них лежит, и можно ли это поправить.

раздел
Подсистемы приложения
пунктов возможностей
30
источник
docs/about/database.md

Возможности

  • Список всех баз: встроенные, базы самого приложения и любые ваши.
  • По каждой базе видно размер, число таблиц и ошибку, если база не открывается.
  • Поиск в списке баз по имени или пути.
  • Добавление своей базы по пути или выбором из файлов на телефоне.
  • Просмотр таблиц и их строк с постраничной подгрузкой — длинная таблица не грузится целиком.
  • Поиск по таблице: сразу по всем колонкам или по одной выбранной.
  • Раскрытие длинного значения в ячейке целиком.
  • Просмотр схемы таблицы: какие колонки, какого типа, и какие SQL-запросы её создают.
  • Правка ячеек прямо в таблице, с переходом между ячейками по стрелкам и Tab.
  • Добавление и удаление строк, с подтверждением удаления.
  • SQL-консоль: выполнить запрос и сразу увидеть результат.
  • История запросов — прошлые команды не приходится набирать заново.
  • Экспорт таблицы в три формата: CSV, JSON и SQL-вставки.

Технические данные

ПараметрЗначение
Формат базSQLite
Готовые базыбаза бэкенда, база opencode, две базы приложения
Свои базыдобавляются по пути, файл при этом не копируется
Загрузка строкпостранично, а не вся таблица сразу
Правкавозможна только в таблицах с ключом
Встроенные базыпо умолчанию только для чтения
Один запрос за разнесколько запросов в одну отправку не проходят
ЭкспортCSV, JSON, SQL-вставки

Какие базы видно

  • База бэкенда — веб-ИИ аккаунты, заготовки промптов, провайдеры.
  • База opencode — сессии агента.
  • Две базы приложения — список агентов и проектов, а также кэш чата.
  • Любая ваша база — добавляется по пути. Файл остаётся на месте, в списке появляется только ссылка на него.

Встроенные базы открываются только для чтения, пока режим не переключён вручную внутри самой базы. Это сделано намеренно: правка базы бэкенда из телефона может сломать приложение.

Как устроена правка

Строку в таблице можно изменить, но не всегда. Нужно, чтобы у строки был ключ — иначе непонятно, какую именно строку обновлять, и правка просто запрещается. Колонки, которые система считает служебными, тоже не меняются.

Если строку изменили, пока вы её правили, экран не ломается: показывается подсказка, и данные обновляются.

Базы приложения на телефоне читаются напрямую, но соединение с ними открыто только на чтение — любое изменение идёт через сервер. Базы на удалённых машинах целиком проходят через него же, поэтому всё работает одинаково и для телефона, и для серверов.

Что агент умеет с базами

  • Посмотреть список баз.
  • Открыть базу и увидеть её метаданные и схему.
  • Получить список таблиц.
  • Выполнить запрос и получить результат.
  • Выполнить команду записи — изменить, вставить или удалить.
  • Добавить базу в список или убрать её оттуда.
  • Открыть экран браузера базы, чтобы вы увидели данные глазами.
  • Прочитать базу как обычный файл — когда нужен не запрос, а содержимое файла целиком.

Отдельного «инструмента базы данных» у агента нет — работа идёт через мост разработчика.

За один раз выполняется только один запрос. Это защита от нечаянной потери данных: нельзя отправить пачку команд и испортить таблицу, не увидев результата. Опасные запросы — удаление таблицы, массовое изменение — помечаются и требуют подтверждения.

Ограничения

  • Правка невозможна в таблицах без ключа и в служебных колонках.
  • Встроенные базы по умолчанию только для чтения.
  • Несколько запросов в одну отправку не выполняются — по одному.
  • Список строк сам по себе не обновляется. Если данные изменились извне, приложение покажет подсказку и обновит таблицу.
  • Удаление базы из списка не удаляет файл с диска.

Источник: docs/about/database.md. Страница собрана из документации проекта при сборке сайта — без пересказа.