This repository hosts a curated set of Dev Container Features under src/ with matching smoke tests in test/. Each feature packages tooling or services that can be layered into a dev container image.
src/<feature>/— feature manifest (devcontainer-feature.json), installation script, and supporting assets.test/<feature>/— autogenerated checks plus optional scenario scripts that mirror each feature..github/workflows/— CI pipelines for linting, testing, and publishing features.
- Install the Dev Containers CLI if you have not already:
npm install -g @devcontainers/cli
- Run targeted tests while iterating on a feature:
devcontainer features test --skip-scenarios -f <feature> -i debian:latest .
- Execute the feature scenarios when you change scripts, tests, or shared helpers:
devcontainer features test -f <feature> --skip-autogenerated .
- Run the global scenarios only when a change affects shared behavior:
devcontainer features test --global-scenarios-only .
Regenerate documentation after modifying anything under src/ (including new features):
devcontainer features generate-docs -p src -n itsmechlark/features --github-owner itsmechlark --github-repo featuresReview the resulting src/<feature>/README.md files and commit them alongside your changes.
- Set new feature versions to
0.0.0; release automation manages subsequent bumps. - Add new features to
.release-please-manifest.jsonandrelease-please-config.json. - Keep
CHANGELOG.mdfiles untouched—release automation updates them. - Ensure shell scripts remain executable and follow the existing helper conventions.
Refer to Agents.md for the full contributor checklist and detailed automation guidance.