deploy-landed
О программе
Этот навык проверяет, что развертывание полностью завершено, контролируя текущую ревизию, окружение и функциональность, а не просто полагаясь на код завершения команды развертывания. Он используется после любого деплоя, выкатывания или перезапуска, чтобы подтвердить, что обновление активно, а также обнаруживает ручной дрейф серверов перед пулом. Это проверка с минимальными затратами, использующая Read, Bash и Grep для ролей devops и поддержки.
Быстрая установка
Claude Code
Рекомендуетсяnpx skills add avelikiy/great_cto -a claude-code/plugin add https://github.com/avelikiy/great_ctogit clone https://github.com/avelikiy/great_cto.git ~/.claude/skills/deploy-landedСкопируйте и вставьте эту команду в Claude Code для установки этого навыка
Документация
deploy-landed — a deploy is done when the running thing is the thing you meant
A deploy command's exit code says the command finished. It does not say the new code is serving, that its configuration arrived, or that the product works. Every trap below produced a green exit and a broken or stale product on a real project:
| Trap | What happened |
|---|---|
git pull failed, the build went on | The build succeeded from the old code and reported success |
nohup … & | Exit 0 twice for a process that died at once |
docker exec into a container | It does not inherit the entrypoint's env: two "config is missing" readings were false |
sed -i / docker cp on a bind-mounted file | Replaced the inode; the container kept reading the old file |
| A fix applied only on the server | Lost on the next deploy — it was never in git |
| wrangler / Pages | functions/ not deployed, _headers ignored, five deploys to notice |
| Prod behind SSO | Answers 401/302 to every path, including ones that do not exist — proves nothing about a route |
/health green | For six hours while the engine made no trades |
Before: is the server what git says it is?
Before pulling or building on a host someone can reach by hand:
git -C /srv/app status --porcelain # anything here is a patch that is not in git
git -C /srv/app log -1 --format=%H # what the host thinks it runs
Anything uncommitted on the host is either committed first or reported as drift — never overwritten silently, and never left as the only copy of a fix.
After: four checks, each with its evidence
- Revision. What is serving equals the commit you meant.
- Cloud Run / k8s: the live revision's image tag or digest, then
git merge-base --is-ancestor <commit> <image-tag-sha>. - Pages / Workers / Vercel: the deployment id and its commit.
- A plain host: the running process's start time is after the deploy, and the file
it serves has the new content (
grepfor a string the change introduced). - A
/versionendpoint, when the app has one, beats all of the above.
- Cloud Run / k8s: the live revision's image tag or digest, then
- Configuration. The variables and secrets the new code reads are present in the
running process — count them against the list the code expects. In a container,
read them from PID 1 (
cat /proc/1/environ | tr '\0' '\n'), not fromdocker exec env. After--set-secrets/--set-env-vars, check that the ones you did not name are still there: those flags replace the whole set. - Function. One request that does the product's job and returns something you can compare to a known value — an order created, a row written, a trade placed on paper. A health endpoint proves the process is up, nothing more.
- Startup errors. Logs for the new revision since it started, at WARNING and above. Zero lines is a finding only if you saw the logs flowing at all.
Report
End the deploy report with this block. A check you could not run is NOT CHECKED with
the reason — never omitted, never PASS.
DEPLOY-LANDED <service> @ <commit>
revision : PASS — serving <revision/deployment id> built from <sha>
config : PASS — 14/14 expected vars present in PID 1
function : PASS — POST /orders → 201, row id 8812 visible in DB
startup : PASS — 0 WARNING+ lines since 12:04:10
A FAIL in any line means the deploy is not done, whatever the command printed.
GitHub репозиторий
Часто задаваемые вопросы
Что такое Skill deploy-landed?
deploy-landed — это Claude Skill от avelikiy. Skills объединяют инструкции и ресурсы, которые Claude загружает по мере необходимости, чтобы выполнять задачи, связанные с deploy-landed, без дополнительных запросов.
Как установить deploy-landed?
Используйте команды установки на этой странице: добавьте deploy-landed в Claude Code как плагин или клонируйте репозиторий в каталог skills, затем перезапустите Claude, чтобы загрузить Skill.
К какой категории относится deploy-landed?
deploy-landed относится к категории Дизайн.
Можно ли использовать deploy-landed бесплатно?
Да. deploy-landed размещён на AIMCP и доступен для бесплатной установки.
Похожие навыки
Используйте навык executing-plans, когда у вас есть полный план реализации для выполнения контролируемыми партиями с контрольными точками проверки. Он загружает и критически анализирует план, затем выполняет задачи небольшими партиями (по умолчанию 3 задачи), сообщая о прогрессе между каждой партией для проверки архитектором. Это обеспечивает систематическую реализацию со встроенными контрольными точками проверки качества.
Этот навык запускает суб-агента для ревью кода, который анализирует изменения в коде на соответствие требованиям перед дальнейшими действиями. Его следует использовать после завершения задач, реализации крупных функций или перед слиянием с основной веткой. Ревью помогает выявить проблемы на ранней стадии, сравнивая текущую реализацию с исходным планом.
Этот навык предоставляет разработчикам подробное руководство по подключению серверов MCP к Claude Code с использованием транспортов HTTP, stdio или SSE. Он охватывает установку, конфигурацию, аутентификацию и безопасность для интеграции внешних сервисов, таких как GitHub, Notion и пользовательские API. Используйте его при настройке интеграций MCP, конфигурации внешних инструментов или работе с Model Context Protocol от Claude.
Этот навык помогает разработчикам выбирать между веб-интерфейсом Claude Code и CLI на основе анализа задачи, а также обеспечивает бесшовное перемещение сессий между этими средами. Он оптимизирует рабочий процесс, управляя состоянием и контекстом сессии при переключении между веб-интерфейсом, CLI или мобильным приложением. Используйте его для сложных проектов, требующих различных инструментов на разных этапах работы.
