К основному содержанию
скилл CX Codex

devcontainer — скилл для Claude Code: что делает и как установить

Диагностирует сбои в devcontainer.json, ускоряет запуск контейнеров и помогает настроить одинаковое окружение для локальной VS Code и GitHub Codespaces.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add jwynia/agent-skills --skill devcontainer -a claude-code
Открыть на GitHub

Что делает devcontainer

Скилл находит ошибки в конфигурациях сред разработки на Docker. Он проверяет синтаксис devcontainer.json, следит за корректным выбором между image, build.dockerfile и dockerComposeFile, а также помогает разнести многосервисную архитектуру по сервисам через Compose.

В состав входят готовые шаблоны для одиночных и составных сред, а также вспомогательные скрипты на TypeScript. Скрипт analyze-devcontainer.ts выявляет узкие места при загрузке, validate-dockerfile.ts проверяет порядок слоёв кэширования, а scan-image.ts сканирует образы на уязвимости через Trivy.

Для запуска скриптов диагностики в системе требуется Deno, а для самого окружения необходим Docker Desktop или совместимый рантайм контейнеров. Без установленного в системе Trivy сканирование образов завершится ошибкой.

Какие задачи решает

  • ускорить запуск devcontainer с перегруженным postCreateCommand
  • устранить расхождения в поведении контейнера между VS Code и Codespaces
  • проверить порядок инструкций и кэширование слоёв в Dockerfile
  • настроить multi-service окружение с базой данных через Docker Compose

Примеры запросов агенту

  • Проверь наш devcontainer.json и найди причину медленного старта контейнера
  • Запусти validate-dockerfile.ts и оптимизируй кэш слоёв для сборки зависимостей
  • Помоги настроить связку сервисов через docker-compose для локальной разработки

Как установить devcontainer

1Через Skills CLI (Vercel)

npx skills add jwynia/agent-skills --skill devcontainer -a claude-code

2Вручную: положить файлы

~/.claude/skills/devcontainer/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/devcontainer/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о devcontainer

Как установить devcontainer в Claude Code?

Выполните в терминале команду npx skills add jwynia/agent-skills --skill devcontainer -a claude-code. Агент загрузит скилл и подключит его инструкции к текущей рабочей среде.

Что делает скилл devcontainer?

Он анализирует конфигурации сред разработки Docker, выявляет ошибки в devcontainer.json и Dockerfile, а также даёт рекомендации по ускорению запуска контейнеров до целевых двух минут.

Что требуется для работы встроенных скриптов?

Для выполнения вспомогательных скриптов нужен установленный Deno с флагом --allow-read. Для скрипта scan-image.ts также потребуется утилита Trivy.

Исходный текст

SKILL.md · MIT
---
name: devcontainer
description: "Diagnose devcontainer configuration problems and guide development environment setup. This skill should be used when the user asks to 'set up devcontainer', 'fix container startup', 'configure VS Code dev container', 'Codespaces setup', or has Docker development environment issues. Keywords: devcontainer, docker, VS Code, Codespaces, container, development environment, Dockerfile."
license: MIT
compatibility: Requires Docker Desktop or compatible container runtime. Works with VS Code and GitHub Codespaces.
metadata:
  author: jwynia
  version: "1.0"
  type: diagnostic
  mode: diagnostic+generative
  domain: development
---

# Devcontainer Diagnostic

Diagnose devcontainer and Docker development environment problems. Help create reproducible, fast-starting development environments that work consistently across VS Code, GitHub Codespaces, and team members.

## When to Use This Skill

Use this skill when:
- Setting up a new devcontainer
- Container startup is too slow
- Configuration errors or conflicts
- Different behavior in VS Code vs Codespaces
- Multi-service development environment needed

Do NOT use this skill when:
- Writing application code
- Deploying to production
- Configuring CI/CD pipelines

## Core Principle

**Development containers should provide instant productivity. Every configuration choice affects startup time, reproducibility, and team onboarding. Make these trade-offs explicit.**

## Diagnostic States

### DV0: No Devcontainer Strategy

**Symptoms:** Manual setup, "check the README", works on one machine fails on others

**Interventions:**
- Start with pre-built devcontainer base image
- Use `assets/devcontainer-simple.md` template

### DV1: Slow Container Startup

**Symptoms:** 5+ minute startup, heavy postCreateCommand, avoiding rebuilds

**Key Questions:**
- How long does startup actually take?
- What's in postCreateCommand?
- Are you using prebuilds?

**Interventions:**
- Move npm install/pip install to Dockerfile (cached)
- Use mcr.microsoft.com/devcontainers/* base images
- Configure prebuilds for team repos
- Run `scripts/analyze-devcontainer.ts`

### DV2: Configuration Problems

**Symptoms:** JSON errors, VS Code won't connect, features conflicting

**Checklist:**
- [ ] devcontainer.json passes JSON validation
- [ ] Using only ONE of: image, build.dockerfile, dockerComposeFile
- [ ] Features are compatible and ordered correctly
- [ ] Extensions use correct publisher.extension-name format

### DV3: Environment Parity Issues

**Symptoms:** Works in VS Code, fails in Codespaces (or vice versa)

**Common Issues:**
| Issue | Local VS Code | Codespaces |
|-------|---------------|------------|
| Docker socket | Usually available | Docker-in-Docker needed |
| Secrets | .env files work | Use Codespaces secrets |
| File watching | Native | May need polling |

### DV4: Multi-Service Complexity

**Symptoms:** Need database/cache/queue, services can't communicate

**Interventions:**
- Use Docker Compose integration
- Named volumes for persistence
- Health checks for service readiness
- Use `assets/devcontainer-compose.md` template

### DV5: Dockerfile Issues

**Symptoms:** Build failures, huge images, no caching

**Best Practices:**
```dockerfile
FROM mcr.microsoft.com/devcontainers/base:ubuntu

# Dependencies first (cached)
RUN apt-get update && apt-get install -y \
    build-essential && rm -rf /var/lib/apt/lists/*

# Copy deps then install (cached if deps unchanged)
COPY package*.json ./
RUN npm install

# Code last (changes frequently)
COPY . .
```

### DV6: Devcontainer Validated

**Indicators:**
- Startup under 2 minutes
- Works in VS Code and Codespaces
- New developers productive in 30 minutes

## Available Scripts

| Script | Purpose | Usage |
|--------|---------|-------|
| `analyze-devcontainer.ts` | Find issues and optimizations | `deno run --allow-read scripts/analyze-devcontainer.ts` |
| `validate-dockerfile.ts` | Check Dockerfile best practices | `deno run --allow-read scripts/validate-dockerfile.ts` |
| `scan-image.ts` | Vulnerability scanning (wraps Trivy) | `deno run --allow-run scripts/scan-image.ts [image]` |

## Anti-Patterns

### The Kitchen Sink
Installing every tool "just in case" - 10+ minute startups.
**Fix:** Start minimal. Add only when needed.

### The postCreateCommand Overload
Everything in postCreateCommand - runs every time.
**Fix:** Move stable operations to Dockerfile.

### The Snowflake Container
Manual changes inside running containers.
**Fix:** ALL changes go in config files.

## Templates

- `assets/devcontainer-simple.md` - Basic single-container setup
- `assets/devcontainer-dockerfile.md` - Custom Dockerfile approach
- `assets/devcontainer-compose.md` - Multi-service setup

## Related Skills

- **system-design** - Multi-service architecture informs Compose config
- **pwa-development** - Consistent environment for PWA toolchain

© jwynia · MIT · jwynia/agent-skills

Похожие скиллы

Все скиллы по теме «DevOps и инфраструктура» →
wizard Matt Pocock Скилл создаёт интерактивный bash-скрипт для ручных шагов: настройки сервисов, секретов CI и разовых миграций. 553 369установок hyperframes-cli heygen-com Управляет проектами HyperFrames через терминал: собирает таймлайн, проверяет контраст кадров, запускает предпросмотр и рендерит видео локально или в облаке. CX Codex +1 1 300 000установок setup-pre-commit Matt Pocock Скилл настраивает pre-commit для JavaScript-репозитория: Husky запускает форматирование, проверку типов и тесты перед коммитом. 489 289установок using-git-worktrees Jesse Vincent Готовит изолированное рабочее дерево перед доработкой или выполнением плана. Проверяет текущий репозиторий, выбирает нативные средства платформы либо Git. CX Codex 217 153установок finishing-a-development-branch Jesse Vincent Скилл проверяет тесты и помогает выбрать, как завершить работу в ветке: слить её, открыть Pull Request или оставить как есть. CX Codex 214 439установок orca-cli stablyai Скилл даёт агенту доступ к worktree, терминалам, артефактам и встроенному браузеру Orca через CLI. Пригодится, когда работа идёт в окружении Orca. CX Codex +1 354 000установок

Из того же набора113

agile-coordinator Раздаёт задачи из бэклога воркерам, следит за прогрессом, сводит ветки и проверяет сборку. Нужен, когда готовых задач много и делать их вручную долго. CX Codex +1 335установок npm-package Скилл ведёт агента через создание npm-библиотеки на Bun: скаффолдинг, строгий TypeScript, тесты, сборка и публикация. CX Codex +1 331установок blind-spot-detective Разбирает черновик нон-фикшна и показывает, чего в нём не хватает: слепые зоны подхода и пробелы, которые можно закрыть. CX Codex +1 327установок non-fiction-revision Разбирает рукопись нон-фикшн по уровням и подсказывает, что править. Пригодится, когда тезис размыт, аргументы провисают или читатели путаются. CX Codex +1 326установок gitea-coordinator Раздаёт готовые задачи из бэклога Gitea воркер-агентам, следит за прогрессом и сам сводит пул-реквесты в main. Нужен, когда задач много и хочется прогнать их пачкой. CX Codex +1 316установок web-search-brave Скилл ищет в интернете через Brave Search API: свежесть, страна, язык, дополнительные сниппеты. Нужен ключ BRAVE_API_KEY и Deno. CX Codex +1 312установок github-agile Диагностирует проблемы agile-процесса на GitHub и подсказывает, как вести feature-ветки, issues и пул-реквесты. CX Codex +1 311установок npx-cli Помогает создать, настроить и выпустить в npm консольную утилиту, запускаемую через npx. Скилл опирается на Bun при разработке, но собирает бинарник под Node.js. CX Codex +1 304установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой