6.0 KiB
6.0 KiB
开发容器最佳实践
devcontainer 开发环境 技能 Agent
devcontainers-best-practices
这是一个 skills.sh 技能包,教导 Agent 和开发者在哪里以及如何查阅开发容器规范、devcontainer.json 参考文档与 Schema、Features、Templates 以及支持 devcontainer 的工具。
本技能涵盖内容
- 规范查阅 — 何时使用 JSON 参考、JSON Schema 和规范。生命周期脚本、
features、forwardPorts、customizations、合并逻辑。 - 参考资源 — 规范 URL(containers.dev、devcontainers.github.io)及仓库结构(spec、features、templates、cli、ci)。
- 工具 — 支持的工具:VS Code、JetBrains、GitHub Codespaces、Dev Container CLI、DevPod、CodeSandbox 等。各工具特有属性与限制。
- Features — devcontainers/features,OCI 引用(
ghcr.io/devcontainers/features/...)、版本控制、选项。 - Templates — devcontainers/templates,何时使用模板、Feature 还是自定义 Dockerfile。
- 最佳实践 — 尽量使用 Features、锁定版本、使用非 root 用户、常用技术栈优先选择官方 Features/Templates。
本技能面向参考与生态系统。关于实现模式(Dockerfile、Docker-in-Docker、环境管理),请参阅配套的 DevContainer Workflow 技能。
安装
npx skills add afonsograca/devcontainers-best-practices
如需从其他 fork 或组织安装,使用 npx skills add <owner>/devcontainers-best-practices 或完整 URL 或路径。
更新
CLI 通过来源(如你的仓库)追踪技能。若已安装后需获取最新改进:
npx skills check # 查看已安装技能是否有更新
npx skills update # 将所有已安装技能更新至最新版本
无需重新执行 npx skills add。重新运行 add 同样会刷新本技能,但 skills update 才是一次性更新所有技能的推荐方式。
仓库结构
本仓库遵循 Agent Skills 规范 和 skills.sh 的发现机制。CLI 会在根目录(若存在 SKILL.md)或 skills/ 目录下查找技能。本技能位于 skills/ 下:
skills/
└── devcontainers-best-practices/
├── SKILL.md
└── references/
├── spec.md
├── schema.md
├── tools.md
├── features.md
└── templates.md
SKILL.md frontmatter 中的 name 与目录名(devcontainers-best-practices)保持一致。详细参考资料存放于 references/,供 Agent 按需加载。
相关链接
- containers.dev — 开发容器规范与文档
- devcontainers/spec — 规范仓库
- devcontainers/features — 官方 Features
- devcontainers/templates — 官方 Templates
- 支持的工具 — 支持 devcontainer 的工具列表
贡献
有意参与贡献?请查阅贡献指南了解如何提供帮助。
本项目遵循贡献者行为准则。参与即表示你同意遵守其条款。
许可证
本项目采用 MIT 许可证 — 详情请见 LICENSE 文件。
致谢
本项目由衷感谢:
- devcontainers 团队和 containers.dev 提供的规范与生态系统。
- devcontainers/features 和 devcontainers/templates 的维护者。
- skills.sh / Vercel Labs skills 生态系统提供的 Agent 技能平台。
- DevContainer Workflow 提供的互补实现指导。
- 所有为本技能做出贡献或使用本技能的人。