Настройка среды песочницы (Docker/Podman)
В настоящее время проект не поддерживает использование функции BUILD_SANDBOX после установки через пакет npm
- Для сборки пользовательской песочницы необходимо получить доступ к скриптам сборки (scripts/build_sandbox.js) в репозитории исходного кода.
- Эти скрипты сборки не включены в пакеты, выпускаемые через npm.
- Код содержит жестко заданные проверки путей, которые явно отклоняют запросы на сборку из сред, отличных от среды исходного кода.
Если вам нужны дополнительные инструменты внутри контейнера (например, git, python, rg), создайте собственный Dockerfile. Конкретные действия следующие:
1. Сначала клонируйте проект qwen code, https://github.com/QwenLM/qwen-code.git
2. Убедитесь, что вы выполняете следующую операцию в каталоге репозитория исходного кода
# 1. Сначала установите зависимости проекта
npm install
# 2. Соберите проект Qwen Code
npm run build3. Проверьте, что директория dist была сгенерирована
ls -la packages/cli/dist/
4. Создайте глобальную ссылку в директории пакета CLI
cd packages/cli npm link
5. Проверка ссылки (теперь она должна указывать на исходный код)
which qwen
Ожидаемый вывод: /xxx/xxx/.nvm/versions/node/v24.11.1/bin/qwen
Или аналогичные пути, но это должна быть символическая ссылка
6. Для получения подробной информации о символической ссылке можно посмотреть конкретный путь к исходному коду
ls -la (which qwen))/../lib/node_modules/@qwen-code/qwen-code
Должно показать, что это символическая ссылка, указывающая на вашу директорию с исходным кодом
7. Протестируйте версию qwen
qwen -v
npm link перезапишет глобальный qwen. Чтобы избежать невозможности различить одинаковые номера версий, вы можете сначала удалить глобальный CLI
#### 3. Создайте свой файл Dockerfile для песочницы в корневом каталоге вашего проекта
- Путь: `.qwen/sandbox.Dockerfile`
- Официальный адрес зеркального образа: https://github.com/QwenLM/qwen-code/pkgs/container/qwen-code
```bash
# На основе официального образа песочницы Qwen (рекомендуется явно указывать версию)
FROM ghcr.io/qwenlm/qwen-code:sha-570ec43
# Добавьте свои дополнительные инструменты здесь
RUN apt-get update && apt-get install -y \
git \
python3 \
ripgrep4. Создайте первый образ песочницы в корневом каталоге вашего проекта
GEMINI_SANDBOX=docker BUILD_SANDBOX=1 qwen -s
# Убедитесь, что версия инструмента песочницы, которую вы запустили, соответствует версии вашего пользовательского образа. Если они совпадают, запуск будет успешнымЭто создает образ, специфичный для проекта, на основе стандартного образа песочницы.
Удалить npm link
- Если вы хотите восстановить официальный CLI qwen, удалите npm link
# Метод 1: Отвязать глобально
npm unlink -g @qwen-code/qwen-code
# Метод 2: Удалить в директории packages/cli
cd packages/cli
npm unlink
# Проверка снята
which qwen
# Должно отобразиться "qwen not found"
# Переустановите глобальную версию при необходимости
npm install -g @qwen-code/qwen-code
# Восстановление проверки
which qwen
qwen --versionLast updated on