Dropstone Docs

Core concepts

Поймите агентный цикл, систему инструментов, сессии, контекстное окно и модель разрешений, которые обеспечивают работу Dropstone.

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

Агентный цикл

Когда вы даёте Dropstone задачу, он проходит через три фазы: сбор контекста, выполнение действий и проверка результатов. Фазы перетекают друг в друга. Dropstone использует инструменты на протяжении всего процесса — будь то чтение файлов для понимания кода, редактирование для внесения изменений или запуск тестов для проверки работы.

Фаза 1
Сбор контекста
Чтение файлов, поиск символов через grep, проверка состояния git, уточняющие вопросы, если задача неоднозначна.
Фаза 2
Выполнение действий
Редактирование файлов, написание нового кода, запуск shell-команд. Диффы отображаются для одобрения; ничего разрушительного не выполняется молча.
Фаза 3
Проверка результатов
Запуск проверок типов, тестов и линтеров, если они есть. Если проверка не удалась — возврат к сбору контекста.
Вы можете нажать Esc в любой момент, чтобы прервать и направить процесс.

Цикл адаптируется к тому, что вы просите. Вопрос о вашей кодовой базе может потребовать только сбора контекста. Исправление ошибки проходит через все три фазы. Крупный рефакторинг может включать интенсивную проверку. Dropstone решает, что требуется на каждом шаге, исходя из того, что он узнал на предыдущем, связывая десятки действий и корректируя курс по ходу дела.

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

Агентный цикл обеспечивается двумя компонентами: моделью, которая рассуждает, и инструментами, которые действуют.

Модели

Dropstone использует специализированные модели для написания кода. Есть три уровня, каждый настроен под определённый вид работы:

УровеньЛучше всего подходит для
FastБыстрые правки, создание каркасов, рефакторинг одного файла, интерактивная отладка
ProРефакторинг нескольких файлов, сквозные изменения, более широкие рассуждения
HeavyАрхитектурные решения, крупные миграции, неоднозначная или исследовательская отладка

Переключайте уровни с помощью /effort low, /effort medium, /effort high или /effort xhigh во время сессии, либо Ctrl+T для циклического перебора. Когда в этом руководстве сказано «Dropstone решает» или «Dropstone выбирает», рассуждения выполняет модель.

Инструменты

Инструменты — это то, что делает Dropstone агентным. Без инструментов модель может только генерировать текст. С инструментами она может действовать: читать ваш код, редактировать файлы, запускать команды, искать в интернете и взаимодействовать с внешними сервисами. Каждый результат работы инструмента возвращается в цикл, влияя на следующее решение.

Встроенные инструменты делятся на пять категорий:

КатегорияЧто может делать Dropstone
Файловые операцииЧитать файлы, редактировать код, создавать новые файлы, переименовывать и реорганизовывать
ПоискНаходить файлы по glob-шаблону, искать содержимое по регулярному выражению, изучать структуру проекта
ВыполнениеЗапускать shell-команды, стартовать серверы, запускать тесты, использовать git
ВебИскать в интернете, получать документацию, искать сообщения об ошибках
Интеллект кодаЧитать ошибки типов, переходить к определениям, находить ссылки через LSP

Dropstone выбирает, какие инструменты использовать, на основе вашего запроса и того, что он узнаёт по ходу. Когда вы говорите «исправь падающие тесты», он может:

  1. Запустить набор тестов, чтобы увидеть, что падает
  2. Прочитать вывод ошибок
  3. Найти соответствующие исходные файлы
  4. Прочитать эти файлы, чтобы понять код
  5. Отредактировать их для исправления проблемы
  6. Запустить тесты снова для проверки

Каждое использование инструмента возвращает информацию, которая определяет следующий шаг. Это и есть агентный цикл на практике.

Встроенные инструменты — это основа. Вы можете расширить знания Dropstone с помощью навыков, подключить внешние сервисы через MCP-серверы и делегировать работу субагентам. Полный список встроенных инструментов см. в разделе Встроенные инструменты.

Что доступно Dropstone

Когда вы запускаете dropstone в каталоге, агент получает доступ к:

  • Вашему проекту. Файлы в рабочем каталоге и подкаталогах, а также другие файлы с вашего разрешения.
  • Вашему терминалу. Любые команды, которые вы могли бы запустить сами: сборочные инструменты, git, менеджеры пакетов, системные утилиты, скрипты. Если вы можете сделать это из командной строки, Dropstone тоже может.
  • Состоянию вашего git. Текущая ветка, незакоммиченные изменения, проиндексированные файлы и недавняя история коммитов.
  • Вашему AGENTS.md. Markdown-файл в корне репозитория, где вы описываете специфические для проекта соглашения, команды сборки, подводные камни и всё, что Dropstone должен знать в каждой сессии.
  • Настроенным расширениям. MCP-серверы для внешних сервисов, навыки для рабочих процессов и субагенты для делегированной работы.

Поскольку Dropstone видит весь ваш проект, он может работать с ним целиком. Когда вы просите «исправить ошибку аутентификации», он ищет соответствующие файлы, читает несколько из них для понимания контекста, вносит согласованные правки, запускает тесты для проверки и делает коммит, если вы попросите. Это отличается от встроенных ассистентов кода, которые видят только текущий файл.

Сессии

Каждая интерактивная сессия сохраняется локально. Каждое сообщение, использование инструмента и результат записываются в запись сессии, что позволяет отменять, возобновлять и разветвлять прошлую работу.

Сессии независимы. Новая сессия начинается с чистого контекстного окна, без памяти о предыдущих разговорах. Постоянные знания должны храниться в AGENTS.md, а не в истории разговора.

Возобновление или разветвление сессий

Возобновление с помощью dropstone --continue (или dropstone -c) открывает последнюю сессию в текущем каталоге и добавляет к ней новые сообщения. Возобновление конкретной сессии по идентификатору выполняется через dropstone --session <id>.

# Продолжить последнюю сессию в этом каталоге
dropstone -c

# Возобновить конкретную сессию
dropstone --session 7f3a82b1

# Разветвить существующую сессию в новый разговор
dropstone --session 7f3a82b1 --fork

Разветвление копирует историю в новый идентификатор сессии, оставляя оригинал нетронутым. Полезно, когда вы хотите исследовать альтернативное направление, не теряя исходную нить.

Контекстное окно

Контекстное окно содержит историю вашего разговора, содержимое файлов, вывод команд, AGENTS.md, загруженные навыки и системные инструкции. По мере работы окно заполняется. Dropstone автоматически уплотняет более старый контент, но инструкции из начала разговора могут быть потеряны.

Несколько практических правил:

  • Помещайте постоянные правила в AGENTS.md, а не в сообщения чата. Версия из сообщения чата будет уплотнена; версия из AGENTS.md перезагружается в каждой сессии.
  • Навыки загружаются по требованию. Dropstone видит описания навыков в начале сессии, но загружает полное содержимое только при вызове навыка.
  • Субагенты получают собственный свежий контекст. Их работа не раздувает основной разговор; по завершении они возвращают сводку.

Безопасность: контрольные точки и разрешения

У Dropstone есть два механизма безопасности. Контрольные точки позволяют отменять изменения, внесённые агентом. Разрешения контролируют, что агент может делать без запроса.

Отмена с помощью контрольных точек

Каждое изменение файла обратимо. Перед редактированием файла Dropstone создаёт снимок текущего содержимого. Если что-то пошло не так, используйте /undo, чтобы откатываться по одному циклу правок, или /redo, чтобы повторить отменённый шаг.

/undo            # отменить последний цикл правок
/redo            # повторить последний отменённый шаг

Контрольные точки локальны для вашей сессии и отдельны от git. Они покрывают только изменения файлов. Действия, затрагивающие удалённые системы (базы данных, развёрнутые сервисы, сетевые API), не могут быть откатаны контрольными точками, поэтому Dropstone спрашивает перед запуском команд с внешними побочными эффектами.

Контроль над тем, что может делать Dropstone

Dropstone запрашивает одобрение при первом выполнении чувствительного действия: редактирование файла, запуск shell-команды, обращение к сети. Одобрите один раз — и та же операция будет выполняться без повторного запроса до конца сессии.

Используйте Tab для переключения между двумя режимами работы во время сессии:

  • Режим сборки. По умолчанию. Dropstone может редактировать файлы и запускать команды (при условии одобрения). Используйте его, когда хотите внести изменения.
  • Режим планирования. Только чтение. Dropstone может исследовать кодовую базу, собирать контекст и составлять план, но не может редактировать или выполнять что-либо. Используйте его, когда хотите изучить систему перед изменениями.

Чтобы заранее одобрить команды и пропустить запрос, перечислите их в конфигурации разрешений вашего проекта. Например:

{
  "permissions": {
    "allow": ["git status", "git diff", "npm test", "npm run lint"]
  }
}

Для политик уровня организации, более детальных шаблонов и того, как работает разрешение областей, см. Руководство по разрешениям.

Эффективная работа с Dropstone

Несколько паттернов, которые обычно дают лучшие результаты.

Это разговор

Вам не нужен идеальный первый запрос. Начните с того, чего хотите, посмотрите, что делает агент, затем поправьте его:

исправь ошибку входа
нет, проблема в обработке сессий, а не в валидации формы

Вы не начинаете заново. Вы итерируете. Каждый ход уточняет понимание агента.

Прерывайте и направляйте

Вы можете перенаправить Dropstone в любой момент:

  • Нажмите Esc, чтобы остановиться немедленно. Текущий вызов инструмента отменяется, и Dropstone ждёт вашей следующей инструкции.
  • Введите исправление и нажмите Enter, не дожидаясь. Dropstone прочитает его, как только завершится текущее действие, и скорректируется перед выбором следующего шага.

Будьте конкретны заранее

Чем точнее ваш начальный запрос, тем меньше исправлений потребуется. Указывайте файлы, упоминайте ограничения, ссылайтесь на примеры паттернов:

процесс оформления заказа сломан для пользователей с истёкшими картами.
ищи проблему в src/payments/, особенно обновление токена.
сначала напиши падающий тест, затем исправь.

Расплывчатые запросы работают, но вы потратите больше времени на управление. Конкретные запросы, как выше, часто успешны с первой попытки.

Дайте Dropstone что-то для проверки

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

реализуй validateEmail. тестовые случаи:
  'user@example.com' -> true
  'invalid'           -> false
  'user@.com'         -> false
запусти тесты после.

Исследуйте перед реализацией

Для сложных задач разделяйте исследование и написание кода. Переключитесь в режим планирования (Tab), попросите Dropstone изучить соответствующий код, уточните план через разговор, затем вернитесь в режим сборки для выполнения:

прочитай src/auth/ и объясни, как мы сейчас обрабатываем сессии.
затем предложи план добавления поддержки OAuth.

Просмотрите план, оспорьте то, с чем не согласны, затем позвольте Dropstone реализовать. Этот двухфазный подход даёт стабильно лучшие результаты, чем переход сразу к коду.

Делегируйте, а не диктуйте

Относитесь к Dropstone как к способному коллеге. Дайте контекст и направление, затем доверьте агенту разобраться в деталях:

процесс оформления заказа сломан для пользователей с истёкшими картами.
соответствующий код в src/payments/.
исследуй и исправь.

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

Что дальше

Ctrl+I