Инструмент текстового редактора
Claude может использовать инструмент текстового редактора, определенный Anthropic, для просмотра и изменения текстовых файлов, помогая вам отлаживать, исправлять и улучшать ваш код или другие текстовые документы. Это позволяет Claude напрямую взаимодействовать с вашими файлами, оказывая практическую помощь, а не просто предлагая изменения.
Перед использованием инструмента текстового редактора
Используйте совместимую модель
Инструмент текстового редактора Anthropic доступен для нескольких моделей Claude:
- Claude 4 Opus и Sonnet:
text_editor_20250429
- Claude Sonnet 3.7:
text_editor_20250124
- Claude Sonnet 3.5:
text_editor_20241022
Более новый text_editor_20250429
для моделей Claude 4 не включает команду undo_edit
. Если вам требуется эта функциональность, вам нужно использовать Claude 3.7 или Sonnet 3.5 с их соответствующими версиями инструментов.
Оцените соответствие вашему случаю использования
Некоторые примеры, когда следует использовать инструмент текстового редактора:
- Отладка кода: Попросите Claude идентифицировать и исправить ошибки в вашем коде, от синтаксических ошибок до проблем с логикой.
- Рефакторинг кода: Позвольте Claude улучшить структуру вашего кода, читаемость и производительность с помощью целенаправленных правок.
- Создание документации: Попросите Claude добавить строки документации, комментарии или файлы README к вашей кодовой базе.
- Создание тестов: Попросите Claude создать модульные тесты для вашего кода на основе его понимания реализации.
Использование инструмента текстового редактора
Предоставьте инструмент текстового редактора (названный str_replace_based_edit_tool
) Claude, используя Messages API:
Предоставьте инструмент текстового редактора (названный str_replace_based_edit_tool
) Claude, используя Messages API:
Предоставьте инструмент текстового редактора (названный str_replace_editor
) Claude, используя Messages API:
Предоставьте инструмент текстового редактора (названный str_replace_editor
) Claude, используя Messages API:
Инструмент текстового редактора можно использовать следующим образом:
Предоставьте Claude инструмент текстового редактора и запрос пользователя
- Включите инструмент текстового редактора в ваш API-запрос
- Предоставьте запрос пользователя, который может требовать изучения или изменения файлов, например, “Можешь исправить синтаксическую ошибку в моем коде?”
Claude использует инструмент для изучения файлов или каталогов
- Claude оценивает, что ему нужно посмотреть, и использует команду
view
для изучения содержимого файла или списка содержимого каталога - Ответ API будет содержать блок содержимого
tool_use
с командойview
Выполните команду просмотра и верните результаты
- Извлеките путь к файлу или каталогу из запроса на использование инструмента Claude
- Прочитайте содержимое файла или перечислите содержимое каталога и верните их Claude
- Верните результаты Claude, продолжив разговор с новым сообщением
user
, содержащим блок содержимогоtool_result
Claude использует инструмент для изменения файлов
- После изучения файла или каталога Claude может использовать команду, такую как
str_replace
, для внесения изменений илиinsert
для добавления текста на определенном номере строки. - Если Claude использует команду
str_replace
, Claude создает правильно отформатированный запрос на использование инструмента со старым текстом и новым текстом для его замены
Выполните редактирование и верните результаты
- Извлеките путь к файлу, старый текст и новый текст из запроса на использование инструмента Claude
- Выполните замену текста в файле
- Верните результаты Claude
Claude предоставляет свой анализ и объяснение
- После изучения и возможного редактирования файлов Claude предоставляет полное объяснение того, что он обнаружил и какие изменения внес
Команды инструмента текстового редактора
Инструмент текстового редактора поддерживает несколько команд для просмотра и изменения файлов:
view
Команда view
позволяет Claude изучать содержимое файла или перечислять содержимое каталога. Она может прочитать весь файл или определенный диапазон строк.
Параметры:
command
: Должно быть “view”path
: Путь к файлу или каталогу для просмотраview_range
(опционально): Массив из двух целых чисел, указывающих начальный и конечный номера строк для просмотра. Номера строк начинаются с 1, а -1 для конечной строки означает чтение до конца файла. Этот параметр применяется только при просмотре файлов, а не каталогов.
str_replace
Команда str_replace
позволяет Claude заменить определенную строку в файле на новую строку. Это используется для внесения точных правок.
Параметры:
command
: Должно быть “str_replace”path
: Путь к файлу для измененияold_str
: Текст для замены (должен точно совпадать, включая пробелы и отступы)new_str
: Новый текст для вставки вместо старого текста
create
Команда create
позволяет Claude создать новый файл с указанным содержимым.
Параметры:
command
: Должно быть “create”path
: Путь, где должен быть создан новый файлfile_text
: Содержимое для записи в новый файл
insert
Команда insert
позволяет Claude вставлять текст в определенное место в файле.
Параметры:
command
: Должно быть “insert”path
: Путь к файлу для измененияinsert_line
: Номер строки, после которой нужно вставить текст (0 для начала файла)new_str
: Текст для вставки
undo_edit
Команда undo_edit
позволяет Claude отменить последнее изменение, внесенное в файл.
Эта команда доступна только в Claude Sonnet 3.7 и Claude Sonnet 3.5. Она не поддерживается в моделях Claude 4, использующих text_editor_20250429
.
Параметры:
command
: Должно быть “undo_edit”path
: Путь к файлу, последнее изменение которого должно быть отменено
Пример: Исправление синтаксической ошибки с помощью инструмента текстового редактора
Этот пример демонстрирует, как Claude 4 использует инструмент текстового редактора для исправления синтаксической ошибки в файле Python.
Сначала ваше приложение предоставляет Claude инструмент текстового редактора и запрос на исправление синтаксической ошибки:
Claude будет использовать инструмент текстового редактора сначала для просмотра файла:
Ваше приложение должно затем прочитать файл и вернуть его содержимое Claude:
Номера строк
В приведенном выше примере результат инструмента view
включает содержимое файла с номерами строк, добавленными к каждой строке (например, “1: def is_prime(n):”). Номера строк не обязательны, но они необходимы для успешного использования параметра view_range
для изучения определенных разделов файлов и параметра insert_line
для добавления содержимого в точные места.
Claude определит синтаксическую ошибку и использует команду str_replace
для ее исправления:
Ваше приложение должно затем внести правку и вернуть результат:
Наконец, Claude предоставит полное объяснение исправления:
Этот пример демонстрирует, как Claude 4 использует инструмент текстового редактора для исправления синтаксической ошибки в файле Python.
Сначала ваше приложение предоставляет Claude инструмент текстового редактора и запрос на исправление синтаксической ошибки:
Claude будет использовать инструмент текстового редактора сначала для просмотра файла:
Ваше приложение должно затем прочитать файл и вернуть его содержимое Claude:
Номера строк
В приведенном выше примере результат инструмента view
включает содержимое файла с номерами строк, добавленными к каждой строке (например, “1: def is_prime(n):”). Номера строк не обязательны, но они необходимы для успешного использования параметра view_range
для изучения определенных разделов файлов и параметра insert_line
для добавления содержимого в точные места.
Claude определит синтаксическую ошибку и использует команду str_replace
для ее исправления:
Ваше приложение должно затем внести правку и вернуть результат:
Наконец, Claude предоставит полное объяснение исправления:
Этот пример демонстрирует, как Claude Sonnet 3.7 использует инструмент текстового редактора для исправления синтаксической ошибки в файле Python.
Сначала ваше приложение предоставляет Claude инструмент текстового редактора и запрос на исправление синтаксической ошибки:
Примеры для Claude Sonnet 3.7 следуют тому же формату, что и примеры для Claude 4 выше, используя те же вызовы инструментов и ответы, но с типом инструмента text_editor_20250124
и именем str_replace_editor
.
Реализация инструмента текстового редактора
Инструмент текстового редактора реализован как инструмент без схемы. При использовании этого инструмента вам не нужно предоставлять схему ввода, как с другими инструментами; схема встроена в модель Claude и не может быть изменена.
Тип инструмента зависит от версии модели:
- Claude 4:
type: "text_editor_20250429"
- Claude Sonnet 3.7:
type: "text_editor_20250124"
- Claude Sonnet 3.5:
type: "text_editor_20241022"
Инициализируйте вашу реализацию редактора
Создайте вспомогательные функции для обработки файловых операций, таких как чтение, запись и изменение файлов. Рассмотрите возможность реализации функциональности резервного копирования для восстановления после ошибок.
Обработка вызовов инструмента редактора
Создайте функцию, которая обрабатывает вызовы инструментов от Claude на основе типа команды:
Реализуйте меры безопасности
Добавьте проверки валидации и безопасности:
- Проверяйте пути к файлам, чтобы предотвратить обход каталогов
- Создавайте резервные копии перед внесением изменений
- Корректно обрабатывайте ошибки
- Реализуйте проверки разрешений
Обработка ответов Claude
Извлекайте и обрабатывайте вызовы инструментов из ответов Claude:
При реализации инструмента текстового редактора имейте в виду:
- Безопасность: Инструмент имеет доступ к вашей локальной файловой системе, поэтому реализуйте надлежащие меры безопасности.
- Резервное копирование: Всегда создавайте резервные копии перед разрешением редактирования важных файлов.
- Валидация: Проверяйте все входные данные, чтобы предотвратить непреднамеренные изменения.
- Уникальное соответствие: Убедитесь, что замены соответствуют точно одному месту, чтобы избежать непреднамеренных правок.
Обработка ошибок
При использовании инструмента текстового редактора могут возникать различные ошибки. Вот рекомендации по их обработке:
Следуйте лучшим практикам реализации
Ценообразование и использование токенов
Инструмент текстового редактора использует ту же структуру ценообразования, что и другие инструменты, используемые с Claude. Он следует стандартному ценообразованию входных и выходных токенов на основе используемой вами модели Claude.
В дополнение к базовым токенам, для инструмента текстового редактора требуются следующие дополнительные входные токены:
Инструмент | Дополнительные входные токены |
---|---|
text_editor_20250429 (Claude 4) | 700 токенов |
text_editor_20250124 (Claude Sonnet 3.7) | 700 токенов |
text_editor_20241022 (Claude Sonnet 3.5) | 700 токенов |
Для более подробной информации о ценообразовании инструментов см. Ценообразование использования инструментов.
Интеграция инструмента текстового редактора с использованием компьютера
Инструмент текстового редактора может использоваться вместе с инструментом использования компьютера и другими инструментами, определенными Anthropic. При комбинировании этих инструментов вам нужно:
- Включить соответствующий заголовок бета-версии (если используется с инструментом использования компьютера)
- Сопоставить версию инструмента с используемой моделью
- Учитывать дополнительное использование токенов для всех инструментов, включенных в ваш запрос
Для получения дополнительной информации об использовании инструмента текстового редактора в контексте использования компьютера см. Использование компьютера.
Журнал изменений
Дата | Версия | Изменения |
---|---|---|
29 апреля 2025 | text_editor_20250429 | Выпуск инструмента текстового редактора для Claude 4. Эта версия удаляет команду undo_edit , но сохраняет все остальные возможности. Название инструмента было обновлено, чтобы отразить его архитектуру, основанную на str_replace. |
13 марта 2025 | text_editor_20250124 | Введение автономной документации по инструменту текстового редактора. Эта версия оптимизирована для Claude Sonnet 3.7, но имеет идентичные возможности с предыдущей версией. |
22 октября 2024 | text_editor_20241022 | Первоначальный выпуск инструмента текстового редактора с Claude Sonnet 3.5. Предоставляет возможности для просмотра, создания и редактирования файлов с помощью команд view , create , str_replace , insert и undo_edit . |
Следующие шаги
Вот несколько идей о том, как использовать инструмент текстового редактора более удобными и мощными способами:
- Интегрируйте с вашим рабочим процессом разработки: Встройте инструмент текстового редактора в ваши инструменты разработки или IDE
- Создайте систему проверки кода: Попросите Claude проверить ваш код и внести улучшения
- Создайте помощника по отладке: Создайте систему, где Claude может помочь вам диагностировать и исправлять проблемы в вашем коде
- Реализуйте конвертацию форматов файлов: Позвольте Claude помочь вам конвертировать файлы из одного формата в другой
- Автоматизируйте документацию: Настройте рабочие процессы для автоматического документирования вашего кода с помощью Claude
Когда вы создаете приложения с инструментом текстового редактора, мы с нетерпением ждем, как вы будете использовать возможности Claude для улучшения вашего рабочего процесса разработки и продуктивности.
Обзор использования инструментов
Узнайте, как реализовать рабочие процессы инструментов для использования с Claude.
Токен-эффективное использование инструментов
Уменьшите задержку и затраты при использовании инструментов с Claude Sonnet 3.7.
Инструменты, определенные Anthropic
Узнайте, как использовать другие инструменты, определенные Anthropic, такие как инструменты компьютера и bash.