cargo-edit CLI
Дополнительные команды Cargo обновляют требования зависимостей и версии пакетов, позволяя агенту сначала показать план изменений.
- 3 472 ★ репозитория
- Последний коммит
- Apache-2.0
Расширенный доступ
Почему такой уровень
- Команды изменяют манифесты и могут обновить разрешенные зависимости; неудачное обновление способно нарушить сборку и поведение проекта.
Установка
В терминале, через SkillFoxx CLI
npx skillfoxx add cli/cargo-editОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Команды изменяют манифесты и могут обновить разрешенные зависимости; неудачное обновление способно нарушить сборку и поведение проекта.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
cargo-edit добавляет команды для изменения манифеста Rust-проекта. Агент может обновить требования зависимостей через `cargo upgrade` или изменить версию пакета через `cargo set-version`. До записи пользователь может просмотреть предлагаемые изменения в режиме `--dry-run`. Текущая поставка сосредоточена на этих двух командах. Добавление и удаление зависимостей уже вошло в сам Cargo. Пользователь выбирает пакеты, исключения и правила совместимости, затем проверяет манифест и тестирует проект после обновления.
Для кого. Разработчикам Rust-библиотек, которые регулярно обновляют ограничения зависимостей и готовят версии пакетов к выпуску.
Подходит, если
- План обновления касается требований версий в Cargo.toml и должен показать изменения манифеста.
- Агент готовит повышение версии пакета и должен показать diff до записи.
- Из общего обновления следует исключить несколько закрепленных зависимостей.
- В рабочем пространстве надо согласованно изменить версии выбранных пакетов.
Не подходит, если
- Нужно только обычное добавление зависимости современным Cargo.
- Вы ожидаете, что новая версия зависимости автоматически совместима с кодом проекта.
- Манифесты нельзя изменить и проверить тестами после обновления.
Пример запроса к агенту
Покажи `cargo upgrade --dry-run` для выбранной зависимости и объясни изменение `Cargo.toml`, не записывая его.Ограничения
Для установки нужны актуальные Rust и Cargo; на Ubuntu источник также указывает пакеты `libssl-dev` и `pkg-config`. Команда `cargo upgrade` меняет требования в манифесте, поэтому ее результат отличается от обновления только `Cargo.lock`. Несовместимые и закрепленные версии управляются отдельными параметрами: проверьте их до массового изменения. Измененный манифест не подтверждает успешную сборку и поведение программы; после просмотра патча выполните проверки проекта.
Как отключить. Прекратите запуск дополнительных команд и удалите пакет cargo-edit при необходимости. Примененные изменения Cargo.toml и lock-файла отменяются отдельно через Git или резервную копию.
Частые вопросы
Чем обновление требований отличается от `cargo update`?
`cargo upgrade` меняет требования в `Cargo.toml`, обычный `cargo update` обновляет разрешенные версии в `Cargo.lock`.
Есть ли предварительный просмотр?
Да. У обеих команд есть `--dry-run`.
Нужно ли ставить пакет ради `cargo add`?
Нет. Начиная с Cargo 1.62 эта команда встроена в Cargo.
Как исключить пакет из обновления?
Используйте `--exclude` с его именем.
Можно ли менять версии рабочего пространства?
Да. У `cargo set-version` есть `--workspace` и выбор конкретных пакетов.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыRenovate CLI собирает обновления пакетов разных экосистем в запросы на слияние по расписанию и правилам команды.
Три скилла и конфиг clippy: агент пишет, проверяет и переносит код на идиоматичный Rust, а правила проходят в CI
MCP-сервер по документации Rust: агент ищет элементы крейтов, читает исходники и разбирает дерево зависимостей.
uutils coreutils, файловые CLI на Rust, можно установить рядом с системными командами и сравнить поведение своих скриптов.
CLI собирает Rust-код в WebAssembly и готовит JavaScript-пакет, чтобы агент подключил проверенный модуль к веб-проекту.
Менеджер версий выбирает среды выполнения по настройкам проекта, чтобы агент запускал инструменты в согласованном окружении.
Коротко о README
В настройках обновления отдельно учитываются совместимые, несовместимые и закрепленные зависимости. Команда версии поддерживает автоматическое повышение выбранной части номера.