Templates/Copilot/plasterManifest.xml
|
<?xml version="1.0" encoding="utf-8"?>
<plasterManifest schemaVersion="1.0" xmlns="http://www.microsoft.com/schemas/PowerShell/Plaster/v1"> <metadata> <name>Copilot</name> <id>7e3a1f2d-4b8c-4e9a-b1d6-0f5c3e7a9b2f</id> <version>0.0.1</version> <title>GitHub Copilot Instructions Template</title> <description>Scaffolds GitHub Copilot instruction files under .github/ for any Sampler-based PowerShell module.</description> <author>Gael Colas</author> <tags>Sampler,Template,Copilot,GitHub</tags> </metadata> <parameters> <parameter name="ModuleName" type="text" store="text" prompt="Module name" /> <parameter name="SourceDirectory" type="text" store="text" default="source" prompt="Source folder name (e.g. source or src)" /> <parameter name="HasClasses" type="choice" default="1" prompt="Does the module use PSv5+ Classes with type-accelerator exports?"> <choice label="&Yes" value="true" /> <choice label="&No" value="false" /> </parameter> <parameter name="HasCustomBuildTasks" type="choice" default="1" prompt="Does the module have custom InvokeBuild task files under .build/tasks/?"> <choice label="&Yes" value="true" /> <choice label="&No" value="false" /> </parameter> <parameter name="HasWikiSource" type="choice" default="1" prompt="Does the module publish a GitHub wiki from a WikiSource folder?"> <choice label="&Yes" value="true" /> <choice label="&No" value="false" /> </parameter> </parameters> <content> <!-- COPILOT ROOT INSTRUCTIONS --> <templateFile source='copilot-instructions.md.template' destination='.github/copilot-instructions.md' /> <!-- AI INSTRUCTION AUTHORING (verbatim) --> <file source='instructions/ai-instruction-authoring.instructions.md' destination='.github/instructions/ai-instruction-authoring.instructions.md' /> <!-- PUBLIC FUNCTIONS INSTRUCTIONS (template - uses ModuleName + SourceDirectory) --> <templateFile source='instructions/public-functions.instructions.md.template' destination='.github/instructions/public-functions.instructions.md' /> <!-- PRIVATE FUNCTIONS INSTRUCTIONS (template) --> <templateFile source='instructions/private-functions.instructions.md.template' destination='.github/instructions/private-functions.instructions.md' /> <!-- TEST WRITING INSTRUCTIONS (template - uses ModuleName) --> <templateFile source='instructions/test-writing.instructions.md.template' destination='.github/instructions/test-writing.instructions.md' /> <!-- BUILD TASKS INSTRUCTIONS (verbatim) --> <file source='instructions/build-tasks.instructions.md' destination='.github/instructions/build-tasks.instructions.md' /> <!-- VALIDATE-CHANGES SKILL (template - uses ModuleName + SourceDirectory) --> <templateFile source='skills/validate-changes/SKILL.md.template' destination='.github/skills/validate-changes/SKILL.md' /> <!-- CLASSES INSTRUCTIONS (template - conditional on HasClasses) --> <templateFile source='instructions/classes-and-type-accelerators.instructions.md.template' destination='.github/instructions/classes-and-type-accelerators.instructions.md' condition='$PLASTER_PARAM_HasClasses -eq "true"' /> <!-- EXPORT-CLASS-TYPE-ACCELERATOR SKILL (template - conditional on HasClasses) --> <templateFile source='skills/export-class-type-accelerator/SKILL.md.template' destination='.github/skills/export-class-type-accelerator/SKILL.md' condition='$PLASTER_PARAM_HasClasses -eq "true"' /> <!-- CUSTOM BUILD TASK FILES INSTRUCTIONS (verbatim - conditional on HasCustomBuildTasks) --> <file source='instructions/build-task-files.instructions.md' destination='.github/instructions/build-task-files.instructions.md' condition='$PLASTER_PARAM_HasCustomBuildTasks -eq "true"' /> <!-- WIKI PUBLISHING INSTRUCTIONS (template - conditional on HasWikiSource) --> <templateFile source='instructions/wiki-publishing.instructions.md.template' destination='.github/instructions/wiki-publishing.instructions.md' condition='$PLASTER_PARAM_HasWikiSource -eq "true"' /> </content> </plasterManifest> |