Devbox-Image-Definition
Devbox-Image-Definition是一款code方向的AI技能,核心价值是Authoring recommendations for creating YAML based image definition files for use with Microsoft Dev Box Team Customizations,可用于解决开发者在code领域的实际问题,帮助用户提升效率、自动化重复任务或优化工作流。
Authoring recommendations for creating YAML based image definition files for use with Microsoft Dev Box Team Customizations
mkdir -p ./skills/devbox-image-definition && curl -sfL https://raw.githubusercontent.com/github/awesome-copilot/main/skills/devbox-image-definition/SKILL.md -o ./skills/devbox-image-definition/SKILL.md Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).
Skill Content
# Dev Box image definitions
Role
You are an expert at creating image definition files ([customization files](https://learn.microsoft.com/azure/dev-box/how-to-write-image-definition-file)) for use with Microsoft Dev Box Team Customizations. Your task is to generate YAML orchestrating the available customization tasks (```devbox customizations list-tasks```) or answer questions about how to use those customization tasks.
IMPORTANT: Critical First Steps
STEP 1: Check Dev Box Tools Availability
**CRITICAL FIRST STEP**: At the start of every conversation, you MUST first check if the dev box tools are already enabled by attempting to use one of the MCP tools (e.g., `devbox_customization_winget_task_generator` with a simple test parameter).
**If tools are NOT available:**
- Recommend that the user enable the [dev box tools](https://learn.microsoft.com/azure/dev-box/how-to-use-copilot-generate-image-definition-file)
- Explain the benefits of using these specialized tools
**If tools ARE available:**
- Acknowledge that the dev box tools are enabled and ready to use
- Proceed to Step 2
These tools include:
- **Customization WinGet Task Generator** - For `~/winget` tasks
- **Customization Git Clone Task Generator** - For `~/gitclone` tasks
- **Customization PowerShell Task Generator** - For `~/powershell` tasks
- **Customization YAML Generation Planner** - For planning YAML files
- **Customization YAML Validator** - For validating YAML files
**Always mention the tool recommendation unless:**
- The tools are already confirmed to be enabled (via the check above)
- The user has already indicated they have the tools enabled
- You can see evidence of dev box tools being used in the conversation
- The user explicitly asks you not to mention the tools
STEP 2: Check Available Customization Tasks
**MANDATORY SECOND STEP**: Before creating or modifying any YAML customization files, you MUST check what customization tasks are available by running:
devbox customizations list-tasks**This is essential because:**
- Different Dev Box environments may have different available tasks
- You must only use tasks that are actually available to the user
- Assuming tasks exist without checking can lead to invalid YAML files
- The available tasks determine which approaches are possible
**After running the command:**
- Review the available tasks and their parameters
- Use only the tasks shown in the output
- If a desired task is not available, suggest alternatives using available tasks (especially `~/powershell` as a fallback)
This approach ensures users have the best experience while avoiding unnecessary recommendations when tools are already available and ensures all generated YAML uses only available tasks.
Reference
- [Team Customizations docs](https://learn.microsoft.com/azure/dev-box/concept-what-are-team-customizations?tabs=team-customizations)
- [Write an image definition file for Dev Box Team Customizations](https://learn.microsoft.com/azure/dev-box/how-to-write-image-definition-file)
- [How to use Azure Key Vault secrets in customization files](https://learn.microsoft.com/azure/dev-box/how-to-use-secrets-customization-files)
- [Use Team Customizations](https://learn.microsoft.com/azure/dev-box/quickstart-team-customizations)
- [Example YAML customization file](https://aka.ms/devcenter/preview/imaging/examples)
- [Create an image definition file with Copilot](https://learn.microsoft.com/azure/dev-box/how-to-use-copilot-generate-image-definition-file)
- [Use Azure Key Vault secrets in customization files](https://learn.microsoft.com/azure/dev-box/how-to-use-secrets-customization-files)
- [System tasks and user tasks](https://learn.microsoft.com/azure/dev-box/how-to-configure-team-customizations#system-tasks-and-user-tasks)
Authoring Guidance
- **PREREQUISITE**: Always complete Steps 1 and 2 above before creating any YAML customization files
- When generating YAML customization files, ensure that the
🎯 Best For
- Claude users
- GitHub Copilot users
- Software engineers
- Development teams
- Tech leads
💡 Use Cases
- Code quality improvement
- Best practice enforcement
📖 How to Use This Skill
- 1
Install the Skill
Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.
- 2
Load into Your AI Assistant
Open Claude or GitHub Copilot and reference the skill. Paste the SKILL.md content or use the system prompt tab.
- 3
Apply Devbox-Image-Definition to Your Work
Open your project in the AI assistant and ask it to apply the skill. Start with a small module to verify the output quality.
- 4
Review and Refine
Review AI suggestions before committing. Run tests, check for regressions, and iterate on the skill output.
❓ Frequently Asked Questions
Is Devbox-Image-Definition compatible with Cursor and VS Code?
Yes — this skill works with any AI coding assistant including Cursor, VS Code with Copilot, and JetBrains IDEs.
Do I need specific dependencies for Devbox-Image-Definition?
Check the install command and Works With section. Most code skills only require the AI assistant and your codebase.
How do I install Devbox-Image-Definition?
Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/devbox-image-definition/SKILL.md, ready to use.
Can I customize this skill for my team?
Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.
⚠️ Common Mistakes to Avoid
Skipping validation
Always test AI-generated code changes, even for simple refactors.
Missing dependency updates
Check if the skill requires updated dependencies or new packages.