This document describes how to verify the Copilot CLI Quick Start skill works correctly.
Since this is a conversational AI skill (not traditional code), testing is done through conversation playbooks โ scripted interactions that verify expected behavior.
-
Register the skill in a Copilot CLI session:
/skills add ./ -
Run each playbook below and verify the expected behavior.
-
Check the QA checklist at the bottom before submitting a PR.
| Step | You Say | Expected Behavior |
|---|---|---|
| 1 | start tutorial |
Skill asks: Developer or Non-Developer? |
| 2 | Select "๐งโ๐ป Developer" | Skill creates lesson_progress table, starts Lesson 1 |
| 3 | (complete Lesson 1 exercise) | Skill marks L1 done, offers Lesson 2 |
| 4 | next lesson |
Skill starts Lesson 2 (not L1 again) |
| 5 | lesson 5 |
Skill jumps to Lesson 5 (dev track: /plan) |
| Step | You Say | Expected Behavior |
|---|---|---|
| 1 | teach me |
Skill asks: Developer or Non-Developer? |
| 2 | Select "๐จ Non-Developer" | Skill starts shared Lesson 1 |
| 3 | (complete shared lessons) | After L3, skill continues to ND Lesson 4 (writing/editing) |
| 4 | next |
Skill progresses through ND track, not dev track |
| Step | You Say | Expected Behavior |
|---|---|---|
| 1 | what does /compact do? |
Skill fetches docs, answers clearly, suggests trying it |
| 2 | how do I switch models? |
Skill explains /model command with examples |
| 3 | what's MCP? |
Skill answers accurately (not fabricated) |
| Step | You Say | Expected Behavior |
|---|---|---|
| 1 | /plan |
Short, direct answer without full emoji greeting |
| 2 | keyboard shortcut for clear screen |
Concise: ctrl+l |
| Step | You Say | Expected Behavior |
|---|---|---|
| 1 | start tutorial โ complete 2 lessons |
Progress tracked |
| 2 | reset tutorial |
Skill clears progress, confirms reset |
| 3 | start tutorial |
Starts from Lesson 1 again |
| Step | You Say | Expected Behavior |
|---|---|---|
| 1 | asdfghjkl |
Skill asks to clarify: tutorial or question? |
| 2 | (empty/blank input) | Skill handles gracefully, suggests options |
| 3 | lesson 99 |
Skill says lesson doesn't exist, shows available lessons |
| 4 | switch to developer track |
Skill allows mid-session track change |
Before submitting a PR, verify:
- ๐ Tutorial mode starts correctly for both tracks
- ๐ Lesson progress is tracked (SQL table created/updated)
- โ Q&A mode answers accurately (fetches docs, doesn't fabricate)
- ๐ "Reset tutorial" works correctly
- ๐ Graduation message shows after completing all lessons
- ๐ CLI glossary terms are explained when used (non-dev track)
-
โ ๏ธ Error cases are handled gracefully (unclear input, bad lesson number) - ๐ค Tone is friendly, encouraging, and uses emojis throughout
- ๐ฃ No assumed CLI knowledge in non-developer track
Verify catalog metadata:
# Check YAML syntax
python3 -c "import yaml; yaml.safe_load(open('skills/copilot-cli-quickstart/catalog.yml'))" && echo "โ
YAML valid"
# Check required fields
python3 -c "
import yaml
d = yaml.safe_load(open('skills/copilot-cli-quickstart/catalog.yml'))
required = ['schema_version','id','name','description','emoji','codename','category']
missing = [f for f in required if f not in d]
print('โ
All required fields present' if not missing else f'โ Missing: {missing}')
"| Feature | Playbook | Status |
|---|---|---|
| Developer tutorial flow | 1 | ๐งช |
| Non-developer tutorial flow | 2 | ๐งช |
| Q&A with docs | 3 | ๐งช |
| Concise Q&A | 4 | ๐งช |
| Reset & resume | 5 | ๐งช |
| Edge cases | 6 | ๐งช |
| Track switching | 6.4 | ๐งช |
| Graduation ceremony | 1 (full run) | ๐งช |