LazyDB CLI
Терминальный клиент баз данных на Rust с MCP и JSON CLI: агент читает схему и запускает запросы с правами профиля.
- 67 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- Агент выполняет запросы к реальным базам; запись закрыта политикой `deny`, но права роли в базе остаются главной защитой.
Установка
- Работает в
Ручная установка
brew install yelog/tap/lazydbПервый вариант из раздела Quickstart. Для macOS и Linux есть скрипт установки, для Windows PowerShell-скрипт.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Агент выполняет запросы к реальным базам; запись закрыта политикой `deny`, но права роли в базе остаются главной защитой.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
LazyDB — клавиатурный клиент баз данных для терминала, написанный на Rust. Он открывает схемы, данные таблиц, ключи Redis и Valkey, документы MongoDB, SQL-консоли с автодополнением и панель мониторинга. Поддержаны PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, ClickHouse, Snowflake, BigQuery, SQLite, DuckDB, Elasticsearch и другие. Для агентов есть две точки входа: локальный MCP-сервер по stdio и JSON CLI `lazydb agent`. Команда `lazydb mcp setup` подключает сервер к Claude Code, Codex или OpenCode. Агент видит профили подключений текущего проекта и общие профили, ищет объекты схемы, описывает таблицы и выполняет запросы. Запись в базу по умолчанию запрещена.
Для кого. Разработчикам, которые отлаживают данные в нескольких базах и хотят дать Claude Code или Codex доступ на чтение к схеме проекта без отдельного MCP на каждую СУБД.
Подходит, если
- Агент пишет миграцию и сначала смотрит реальную схему таблиц.
- В проекте живут PostgreSQL, Redis и MongoDB, и нужен один клиент для всех.
- Надо быстро выполнить `SELECT` из терминала и отдать результат агенту в JSON.
- Запись в базу разрешают только на dev и staging, а прод закрыт.
Не подходит, если
- Нужен веб-интерфейс с мышью для аналитиков без терминала.
- Агенту разрешено менять рабочие данные без ревью.
- База недоступна с машины разработчика и нет туннеля.
Пример запроса к агенту
Покажи таблицы проекта, найди поле `email` и выполни `SELECT * FROM users LIMIT 20` на профиле orders-dev.Ограничения
Проект в бете: возможности зависят от СУБД, список лежит в `docs/database-capabilities.md`. Для Oracle нужен Oracle Instant Client, для DuckDB отдельная среда выполнения C API. Агенты видят и общие профили, поэтому лишние подключения лучше хранить в профилях других проектов. Запись защищена флагом `--write-policy`, но настоящим барьером остаются права роли в самой базе: для чтения заводите роль только на чтение.
Как отключить. Удалите запись `lazydb` из конфигурации MCP клиента (например `.codex/config.toml` или `opencode.json`) и перезапустите агента. Сам клиент удаляет инструкция из `docs/installation.md`.
Частые вопросы
Может ли агент менять данные?
Нет, пока включена политика по умолчанию. `--write-policy deny` отклоняет `execute_change` и `execute_file` даже после подтверждения в клиенте. Режим `non-production` открывает запись на dev и staging, режим `all` нужен для прод-записи.
Какие профили видит агент?
Профили текущего Git-проекта и общие профили. Профили, привязанные только к другому проекту, скрыты и недоступны ни по имени, ни по UUID.
Как хранится пароль?
Пароль сохраняется в локальном зашифрованном хранилище LazyDB. Его передают через переменную окружения опцией `--password-env`, а в команду и URL не вписывают.
Работает ли без MCP?
Да, команды `lazydb agent connections`, `schema-search`, `describe` и `query` печатают JSON и подходят для скриптов и агентов без поддержки MCP.
Какие базы поддерживает клиент?
PostgreSQL, CockroachDB, MySQL, MariaDB, TiDB, Oracle, SQL Server, ClickHouse, Snowflake, BigQuery, SQLite, DuckDB, Redis, Valkey, MongoDB, Elasticsearch и OpenSearch. Возможности зависят от СУБД и описаны в `docs/database-capabilities.md`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыОдин MCP-сервер для SQLite, SQL Server, PostgreSQL и MySQL: агент читает и меняет данные, правит схему и выгружает CSV и JSON
Легкое рабочее место для баз данных с MCP-сервером: агент читает схему, выполняет запросы и разбирает данные в PostgreSQL, MySQL и других
CLI для десятков баз данных с режимом для агентов: JSON на выходе, режим только для чтения, лимиты и брокер, скрывающий пароли
Консольная утилита linq2db с MCP-сервером: агент смотрит схему любой из поддерживаемых баз и запускает один SELECT за раз.
Десктопное рабочее место для SQL с встроенным MCP-сервером: агент читает схему и выполняет запросы в том же клиенте, где работаете вы
Один бинарник MCP-сервера для MySQL, MariaDB, PostgreSQL и SQLite: запросы только на чтение по умолчанию и маскировка ПДн
Коротко о README
LazyDB работает как терминальный клиент для разработчиков. Сверх этого он отдает агентам схему и запросы через MCP и JSON CLI, а запись выключена до явного разрешения.