Awesome Copilot Adventures
Aprenda a investigar, planejar, implementar e verificar com GitHub Copilot — um laboratório reproduzível por vez.
Ferramentas, contas e pré-requisitos · Comece aqui — sua primeira verificação funcional · Escolha sua trilha de aprendizagem · Veja o currículo · Baixe um kit de aprendizagem
[!TIP] É sua primeira vez? Comece com uma pequena vitória. Baixe 01-interface.zip, extraia-o em uma nova pasta de trabalho e siga Comece aqui. Você não precisa de Python, .NET, Docker, uma assinatura de nuvem nem um repositório GitHub para esse primeiro laboratório.
O que você vai aprender
Esta é uma caixa de aprendizagem para desenvolvedores e estudantes técnicos que querem usar um agente sem confundir uma resposta segura com software que funcione. Comece abrindo arquivos e executando um teste local. Avance para funcionalidades, refatoração, personalização, MCP e trabalho governado em vários ambientes.
| Caminho | Estilo | Conteúdo | Início |
|---|---|---|---|
| Hands-on | Exercícios profissionais, sem fantasia | 26 guias; 21 variantes de exercício executáveis | Primeiro laboratório |
| Aventuras | Histórias curtas que apoiam conceitos técnicos | 14 aventuras, laboratórios e rubricas | Portals of Nexus |
Os caminhos se complementam; completar ambos não é obrigatório. A trilha de aprendizagem explica pré-requisitos, pontos de parada e quais tópicos avançados seguir depois.
Obrigatório, opcional ou avançado?
| Categoria | O que significa | Exemplos |
|---|---|---|
| Obrigatório para o laboratório escolhido | Necessário para a evidência declarada desse laboratório | Seu runtime, starter, baseline, alteração revisada e verificação |
| Obrigatório para a prática ao vivo com Copilot | Separado da execução local do código | Acesso autorizado ao Copilot em um cliente compatível; revisão de permissões |
| Opcional | Uma alternativa ou extensão, não um bloqueio para a primeira execução | Um segundo idioma, histórico local do Git, um repositório privado do GitHub, Codespaces |
| Avançado | Faça depois dos pré-requisitos listados | MCP, trabalho paralelo, Spec Kit, SDK, delegação para agente na nuvem e projeto final |
| Somente para mantenedores | Muda a forma como este currículo é publicado | Compilar todo o site, regenerar ZIPs e editar traduções |
A disponibilidade depende da conta, da política da organização, do cliente e do ambiente. Nenhum aprendiz precisa tornar um repositório privado público nem habilitar um serviço pago para concluir um exercício local.
Seu primeiro resultado
-
Instale/selecione Node 24 e abra a pasta extraída
01-interfaceno VS Code. -
Leia
KIT-START.md,greeting.mjsegreeting.test.mjs. -
Na terminal dessa pasta, execute:
node KIT-VERIFY.cjs node --test --test-concurrency=1 greeting.test.mjs -
Espere que o starter sem alterações passe em 2 testes. Uma contagem diferente de testes ou um erro exige investigação, não um transcript de sucesso copiado.
-
Siga a primeira sessão guiada para investigar, planejar e implementar uma alteração no tratamento de espaços em branco; depois demonstre o resultado com testes.
Não é necessário instalar nenhum pacote para este primeiro kit. O guia de download cobre Windows, macOS, Linux e publicação opcional no GitHub.
O ciclo de aprendizagem
Todas as aventuras seguem o mesmo fluxo de trabalho que produz evidências:
---
config:
theme: base
look: classic
themeVariables:
darkMode: false
background: "#ffffff"
primaryColor: "#f5f5f5"
primaryTextColor: "#111111"
primaryBorderColor: "#555555"
secondaryColor: "#e0e0e0"
secondaryTextColor: "#111111"
secondaryBorderColor: "#666666"
tertiaryColor: "#bdbdbd"
tertiaryTextColor: "#111111"
tertiaryBorderColor: "#444444"
lineColor: "#444444"
textColor: "#111111"
mainBkg: "#f5f5f5"
nodeBorder: "#555555"
clusterBkg: "#ffffff"
clusterBorder: "#999999"
edgeLabelBackground: "#ffffff"
actorBkg: "#e0e0e0"
actorBorder: "#555555"
actorTextColor: "#111111"
actorLineColor: "#777777"
signalColor: "#333333"
signalTextColor: "#111111"
labelBoxBkgColor: "#f5f5f5"
labelBoxBorderColor: "#777777"
labelTextColor: "#111111"
loopTextColor: "#111111"
activationBkgColor: "#bdbdbd"
activationBorderColor: "#555555"
noteBkgColor: "#f5f5f5"
noteTextColor: "#111111"
noteBorderColor: "#777777"
attributeBackgroundColorOdd: "#f5f5f5"
attributeBackgroundColorEven: "#e0e0e0"
---
flowchart LR
accTitle: Fluxo de desenvolvimento baseado em evidências
accDescr: A investigação leva ao planejamento, à implementação, à revisão e às evidências; lacunas não resolvidas fazem o trabalho voltar à investigação.
A["Ask<br/>Investigar"] --> P["Plan<br/>Projetar"]
P --> G["Agent<br/>Implementar"]
G --> R["Revisão<br/>Questionar"]
R --> E["Evidência<br/>Comprovar"]
E -. "lacunas encontradas" .-> A
Legenda. Os retângulos são etapas do fluxo de trabalho. As setas contínuas mostram a progressão normal; a seta tracejada retorna lacunas de evidências não resolvidas à investigação.
Explicação. Uma resposta fluente não significa conclusão. O ciclo termina somente quando o resultado revisado atende aos critérios de aceitação e as verificações registradas o sustentam.
- Ask examina fatos, restrições, contexto e incógnitas.
- Plan define escopo, riscos, limites de confiança e validação.
- Agent edita, invoca ferramentas, observa resultados e itera.
- Revisão questiona o resultado a partir de um contexto limpo ou especializado.
- Evidência registra comandos, códigos de saída, diferenças, limitações e decisões.
[!NOTE] Um papel não é um harness. Local e Copilot são harnesses de agentes do VS Code; Cloud é um destino de sessão remoto; Copilot CLI é uma superfície de terminal; e o Copilot SDK incorpora um ambiente de execução de agentes em um aplicativo. A disponibilidade depende da conta, das políticas, do cliente e do ambiente.
Progressão das aventuras
| Nível | Foco | Aventuras |
|---|---|---|
| 00 · Fundamentos | Papéis, harnesses, contexto e evidências | Portals of Nexus · Context Mirrors |
| 01 · Conceitos básicos | Loops delimitados e instruções do repositório | Tempora Loop · Laws of Eldoria |
| 02 · Intermediário | Skills, agentes personalizados e controles | Skills of Algora · Agents of Stellaris · Guardrails of Stonevale |
| 03 · Avançado | MCP, grafos de orquestração e sessões paralelas | MCP Cartographer · Lumoria Graph · Parallel Mythos |
| 04 · Superfícies | Agente na nuvem, Copilot CLI e Copilot SDK | Cloud Citadel · Terminal Gate · Automaton Foundry |
| 99 · Desafio integrador | Entrega agêntica governada de ponta a ponta | Convergence of Three Realms |
Veja o mapa visual do currículo e a matriz atual de status dos recursos.
Progressão Hands-on
Os labs práticos são exercícios profissionais numerados, não aventuras novas. Eles mantêm o formato importado de exercícios e tarefas, com explicações revisadas, arquivos de teste locais, casos negativos e restauração segura.
- 01: contexto, papéis, permissões e uma pequena alteração verificada.
- 02–05: escolha C# ou Python; investigue → adicione um recurso → teste → refatore.
- 06–12: escolha um exercício aplicável de engenharia ou colaboração.
- 15: entenda instruções, prompts, skills e agentes personalizados.
- 13, 14, 17: diferencie trabalho greenfield, brownfield com recursos e modernização.
- 16: crie uma aplicação SDK delimitada; mantenha os testes offline separados da inferência ao vivo.
Leia a auditoria de cada lab e o padrão de diagramas monocromáticos. Todos os diagramas Mermaid usam branco, gelo, cinzas e preto, com rótulos acessíveis, legendas e explicações.
Primitivas de personalização
Use a menor primitiva que forneça o comportamento ausente:
| Necessidade | Primitiva |
|---|---|
| Contexto aplicado automaticamente | Instruções do repositório ou específicas por caminho |
| Tarefa repetível invocada manualmente | Arquivo de prompt |
| Conhecimento reutilizável carregado quando pertinente | Agent Skill |
| Papel com ferramentas selecionadas e transferências opcionais | Agente personalizado |
| Acesso a uma capacidade externa | Servidor de Model Context Protocol |
| Aplicação determinística de regras do ciclo de vida | Hook |
O guia de primitivas de personalização inclui um diagrama de decisão e notas sobre portabilidade.
Materiais e conclusão
Para um exercício individual, use os 35 kits de aprendizagem: 21 variantes Hands-on e 14 laboratórios de aventura. Cada ZIP contém o starter, a lição, ativos visuais locais, licenças, um manifesto de integridade e um guia da primeira execução. O guia distingue uma baseline aprovada de uma falha intencional do starter.
- Posso explicar o cenário e o conceito com minhas próprias palavras.
- Registrei o estado inicial, o runtime escolhido e o comando.
- Revisei o plano e as alterações em vez de aceitar uma resposta cegamente.
- Minhas verificações cobrem o comportamento solicitado e rejeitam um resultado incorreto deliberado.
- Rotulei os recursos não disponíveis/em tempo real e mantive a evidência do que realmente foi executado.
- Reiniciei ou preservei meu trabalho sem afetar outro projeto.
Uma falha inicial do starter é intencional quando a lição assim o diz. Um verificador estrutural local não prova uma execução autenticada na nuvem ou de um modelo. As fronteiras de cobertura e evidência tornam essa distinção explícita.
Site de aprendizagem multilíngue
A pipeline do Astro gera visualizações de leitura em inglês, espanhol e português brasileiro. Os seletores de idioma preservam o documento e sua seção. Se a implantação pública não estiver disponível, os guias do repositório e os kits de aprendizagem incluídos continuam utilizáveis; o status de publicação é separado dos resultados dos testes locais.
O explorador do repositório inclui projetos iniciais, testes, soluções, dados, personalizações, mídia, licenças e material histórico claramente identificado, todos em sua forma original. O código e os exemplos executáveis mantêm o texto original. Os downloads são verificados contra o inventário SHA-256 antes do uso.
A compilação é estática, usa um único worker de renderização de páginas e não requer Ruby, Jekyll, uma API de modelo nem um banco de dados. Consulte o guia de publicação e o sistema de design.
Mapa do repositório
adventures/ Current progressive curriculum and rubrics
labs/ Starter exercises and deterministic verifiers
mslearn-github-copilot/ Numbered professional exercises and their fixtures
assets/lab-kits/ Learner ZIPs, manifests and checksums
solutions/ Reference implementations for legacy challenges
.github/agents/ Reusable custom agents
.github/skills/ Progressively loaded Agent Skills
.github/prompts/ Manually invoked prompt files
.github/instructions/ Path-scoped instructions
.github/hooks/ Preview hook examples and guidance
docs/ Canonical guide content
site/ Astro layouts, components and routes
site-locales/ Reviewed Spanish and Brazilian Portuguese prose
site-generated/ Ignored, reproducible publication input
assets/ Current, legacy, and generated media
legacy/ Preserved version-one curriculum
shared/ Deterministic shared data
Para colaboradores e facilitadores
A rota de checkout completo é separada do início rápido do aprendiz:
gh repo clone workshop-gbb/awesome-copilot-adventures
cd awesome-copilot-adventures
npm ci --ignore-scripts
npm test
Execute apenas a compilação/teste de idioma direcionada para a solução que você alterar. Siga o guia de publicação para regeneração de ZIPs, traduções, builds do site e validação de links renderizados. Os facilitadores devem ensaiar o caminho escolhido em um kit novo e registrar os bloqueios de acesso antes da sessão.
Mídia
Os guias incluem ilustrações SVG originais e diagramas específicos do tema com descrições acessíveis. Os resumos de mídia descrevem imagens e vídeos cinematográficos opcionais, não ativos que se afirmem como produzidos. As capturas históricas da interface são rotuladas como referências, não como evidência de disponibilidade atual.
Contribuições
Leia CONTRIBUTING.md antes de propor uma aventura. As contribuições devem usar fontes oficiais atuais do GitHub ou da Microsoft, incluir evidências determinísticas, identificar comportamentos em Preview e evitar afirmações sem comprovação sobre disponibilidade ou desempenho.
Políticas do projeto
Os pares históricos Ask/Agent permanecem em legacy/adventures-v1 para comparação, não como orientação atual do produto.