build-and-run-macos-app — команда для Codex: как установить
Команда настраивает скрипт script/build_and_run.sh в macOS-проекте и привязывает кнопку Run в Codex. Пригодится при сборке проектов на Xcode и SwiftPM.
~/.codex/prompts/build-and-run-macos-app.mdЧто делает build-and-run-macos-app
Команда проверяет структуру репозитория и определяет, что используется для сборки: проект Xcode (.xcodeproj), рабочее пространство (.xcworkspace) или пакет SwiftPM. Если проект ещё не отслеживается в git, команда выполнит git init в корне, чтобы активировать интеграции Codex. Вложенный git внутри чужого репозитория она не создаст.
Основная задача — сформировать или обновить script/build_and_run.sh. Скрипт завершает работу запущенного процесса, пересобирает проект и запускает свежую сборку. Простой сценарий запуска не перегружен лишними действиями. Для интерфейсных приложений на SwiftUI или AppKit скрипт собирает полноценный локальный бандл .app и запускает его через /usr/bin/open -n. Для консольных утилит сохраняется прямой запуск бинарника.
Сценарий также обновляет .codex/environments/environment.toml и поддерживает режимы --debug, --logs, --telemetry и --verify. Эти флаги активируются только по явному запросу. В случае ошибки при компиляции или запуске команда выведет сводку с описанием проблемы.
Какие задачи решает
- Привязать кнопку Run в приложении Codex к сборке macOS-проекта
- Автоматизировать перезапуск приложений на Xcode и SwiftPM
- Собрать бандл
.appдля запуска GUI на AppKit или SwiftUI - Добавить флаги отладки и проверки в
script/build_and_run.sh
Примеры запросов агенту
- /build-and-run-macos-app mode:run
- /build-and-run-macos-app project:MyApp.xcodeproj scheme:MyApp mode:debug
- /build-and-run-macos-app product:MyCLI mode:logs
Как установить build-and-run-macos-app
Вручную: положить файлы
~/.codex/prompts/build-and-run-macos-app.mdВызов — /prompts:build-and-run-macos-app. В Codex этот формат помечен устаревшим, замена — скиллы
Вручную: положить файлы
.claude/commands/build-and-run-macos-app.mdВызов — /build-and-run-macos-app. Для всех проектов — ~/.claude/commands/
Вручную: положить файлы
.github/prompts/build-and-run-macos-app.prompt.mdВручную: положить файлы
.gemini/commands/build-and-run-macos-app.tomlGemini хранит команды в TOML: текст запроса — в поле prompt
Вопросы о build-and-run-macos-app
Как установить build-and-run-macos-app в Codex?
Сохраните файл по пути ~/.codex/prompts/build-and-run-macos-app.md. После этого команда станет доступна в окружении Codex.
Что делает команда build-and-run-macos-app?
Она определяет структуру проекта, генерирует файл script/build_and_run.sh и прописывает конфигурацию в .codex/environments/environment.toml. При запуске скрипт останавливает старый процесс, собирает цель и открывает полученное приложение.
Как команда запускает графические приложения на SwiftPM?
Консольные утилиты запускаются напрямую из скомпилированного бинарника. Для графических программ на AppKit или SwiftUI команда создаёт локальный бандл .app и запускает его командой /usr/bin/open -n.
Исходный текст
build-and-run-macos-app.md · MIT
# /build-and-run-macos-app Create or update the project-local macOS `build_and_run.sh` script, wire the Codex app Run button, then use that script as the default build/run entrypoint. ## Arguments - `scheme`: Xcode scheme name (optional) - `workspace`: path to `.xcworkspace` (optional) - `project`: path to `.xcodeproj` (optional) - `product`: SwiftPM executable product name (optional) - `mode`: `run`, `debug`, `logs`, `telemetry`, or `verify` (optional, default: `run`) - `app_name`: process/app name to stop before relaunching (optional) ## Workflow 1. Detect whether the repo uses an Xcode workspace, Xcode project, or SwiftPM package. 2. If the workspace is not inside git yet, run `git init` at the project root so Codex app git-backed features unlock. 3. Create or update `script/build_and_run.sh` so it always stops the current app, builds the macOS target, and launches the fresh result. 4. For SwiftPM, keep raw executable launch only for true CLI tools; for AppKit/SwiftUI GUI apps, create a project-local `.app` bundle and launch it with `/usr/bin/open -n`. 5. Support optional script flags for `--debug`, `--logs`, `--telemetry`, and `--verify`. 6. Follow the canonical bootstrap contract in `../skills/build-run-debug/references/run-button-bootstrap.md` for the exact script shape and `.codex/environments/environment.toml` format. 7. Run the script in the requested mode and summarize any build, script, or launch failure. ## Guardrails - Do not initialize a nested git repo inside an existing parent checkout. - Do not leave stale `Run` actions pointing at old script paths. - Keep the no-flag script path simple: kill, build, run. - Use `--debug`, `--logs`, `--telemetry`, or `--verify` only when the user asks for those modes.
© OpenAI · MIT · openai/plugins