{"id":21012,"date":"2026-03-03T12:40:42","date_gmt":"2026-03-03T20:40:42","guid":{"rendered":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/?p=21012"},"modified":"2026-03-04T12:36:55","modified_gmt":"2026-03-04T20:36:55","slug":"get-started-with-github-copilot-cli-a-free-hands-on-course","status":"publish","type":"post","link":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/blog\/get-started-with-github-copilot-cli-a-free-hands-on-course","title":{"rendered":"Get started with GitHub Copilot CLI: A free, hands-on course"},"content":{"rendered":"<p class=\"code-line\" dir=\"auto\" data-line=\"4\"><a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/copilot-banner.webp\"><img decoding=\"async\" class=\"alignnone size-large wp-image-21015\" src=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/copilot-banner-1024x357.webp\" alt=\"copilot banner image\" width=\"1024\" height=\"357\" srcset=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/copilot-banner-1024x357.webp 1024w, https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/copilot-banner-300x105.webp 300w, https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/copilot-banner-768x268.webp 768w, https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/copilot-banner.webp 1200w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"6\">GitHub Copilot has grown well beyond code completions in your editor. It now lives in your terminal, too.\u00a0<a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/docs.github.com\/copilot\/how-tos\/copilot-cli\" data-href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/docs.github.com\/copilot\/how-tos\/copilot-cli\">GitHub Copilot CLI<\/a>\u00a0lets you review code, generate tests, debug issues, and ask questions about your projects without ever leaving the command line.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"8\">To help developers get up to speed, we put together a free, open source course:\u00a0<strong><a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/github.com\/github\/copilot-cli-for-beginners\" data-href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/github.com\/github\/copilot-cli-for-beginners\">GitHub Copilot CLI for Beginners<\/a><\/strong>. It&#8217;s 8 chapters, hands-on from the start, and designed so you can go from installation to building real workflows in a few hours.\u00a0<strong>Already have a GitHub account?<\/strong>\u00a0GitHub Copilot CLI works with\u00a0<a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/github.com\/features\/copilot\/plans\" data-href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/github.com\/features\/copilot\/plans\">GitHub Copilot Free<\/a>, which is available to all personal GitHub accounts.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"10\">In this post, I&#8217;ll walk through what the course covers and how to get started.<\/p>\n<h2 id=\"what-github-copilot-cli-can-do\" class=\"code-line\" dir=\"auto\" data-line=\"12\">What GitHub Copilot CLI can do<\/h2>\n<p class=\"code-line\" dir=\"auto\" data-line=\"14\">If you haven&#8217;t tried it yet, GitHub Copilot CLI is a conversational AI assistant that runs in your terminal. You point it at files using\u00a0<code>@<\/code>\u00a0references, and it reads your code and responds with analysis, suggestions, or generated code.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"16\">You can use it to:<\/p>\n<ul class=\"code-line\" dir=\"auto\" data-line=\"18\">\n<li class=\"code-line\" dir=\"auto\" data-line=\"18\">Review a file and get feedback on code quality<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"19\">Generate tests based on existing code<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"20\">Debug issues by pointing it at a file and asking what&#8217;s wrong<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"21\">Explain unfamiliar code or confusing logic<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"22\">Generate commit messages, refactor functions, and more<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"23\">Write new app features (front-end, APIs, database interactions, and more)<\/li>\n<\/ul>\n<p class=\"code-line\" dir=\"auto\" data-line=\"25\">It remembers context within a conversation, so follow-up questions build on what came before.<\/p>\n<h2 id=\"what-the-course-covers\" class=\"code-line\" dir=\"auto\" data-line=\"27\">What the course covers<\/h2>\n<p class=\"code-line\" dir=\"auto\" data-line=\"29\">The course is structured as 8 progressive chapters. Each one builds on the last, and you work with the same project throughout: a book collection management app. Instead of jumping between isolated snippets, you keep improving one codebase as you go.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"31\">Here&#8217;s what using GitHub Copilot CLI looks like in practice. Say you want to review a Python file for potential issues. Start up Copilot CLI and ask what you&#8217;d like done:<\/p>\n<pre><code class=\"code-line language-bash\" dir=\"auto\" data-line=\"33\">$ copilot\r\n&gt; Review @samples\/book-app-project\/books.py <span class=\"hljs-keyword\">for<\/span> potential improvements. Focus on error handling and code quality.\r\n<\/code><\/pre>\n<p class=\"code-line\" dir=\"auto\" data-line=\"38\">Copilot reads the file, analyzes the code, and gives you specific feedback right in your terminal.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"40\"><a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/code-review-demo.gif\"><img decoding=\"async\" class=\"alignnone size-full wp-image-21014\" src=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/code-review-demo.gif\" alt=\"code review demo image\" width=\"1000\" height=\"600\" \/><\/a><\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"42\">Here are the chapters covered in the course:<\/p>\n<ol class=\"code-line\" dir=\"auto\" data-line=\"44\">\n<li class=\"code-line\" dir=\"auto\" data-line=\"44\"><strong>Quick Start<\/strong>\u00a0\u2014 Installation and authentication<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"45\"><strong>First Steps<\/strong>\u00a0\u2014 Learn the three interaction modes: interactive, plan, and one-shot (programmatic)<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"46\"><strong>Context and Conversations<\/strong>\u00a0\u2014 Using\u00a0<code>@<\/code>\u00a0references to point Copilot at files and directories, plus session management with\u00a0<code>--continue<\/code>\u00a0and\u00a0<code>--resume<\/code><\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"47\"><strong>Development Workflows<\/strong>\u00a0\u2014 Code review, refactoring, debugging, test generation, and Git integration<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"48\"><strong>Custom Agents<\/strong>\u00a0\u2014 Building specialized AI assistants with\u00a0<code>.agent.md<\/code>\u00a0files (for example, a Python reviewer that always checks for type hints)<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"49\"><strong>Skills<\/strong>\u00a0\u2014 Creating task-specific instructions that auto-trigger based on your prompt<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"50\"><strong>MCP Servers<\/strong>\u00a0\u2014 Connecting Copilot to external services like GitHub repos, file systems, and documentation APIs via the Model Context Protocol<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"51\"><strong>Putting It All Together<\/strong>\u00a0\u2014 Combining agents, skills, and MCP servers into complete development workflows<\/li>\n<\/ol>\n<p class=\"code-line\" dir=\"auto\" data-line=\"53\"><a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/learning-path.webp\"><img decoding=\"async\" class=\"alignnone size-large wp-image-21017\" src=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/learning-path-1024x149.webp\" alt=\"learning path image\" width=\"1024\" height=\"149\" srcset=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/learning-path-1024x149.webp 1024w, https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/learning-path-300x44.webp 300w, https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/learning-path-768x112.webp 768w, https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/learning-path.webp 1200w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"55\">Every command in the course can be copied and run directly. No AI or machine learning background is required.<\/p>\n<h2 id=\"who-this-is-for\" class=\"code-line\" dir=\"auto\" data-line=\"57\">Who this is for<\/h2>\n<p class=\"code-line\" dir=\"auto\" data-line=\"59\">The course is built for:<\/p>\n<ul class=\"code-line\" dir=\"auto\" data-line=\"61\">\n<li class=\"code-line\" dir=\"auto\" data-line=\"61\"><strong>Developers using terminal workflows.<\/strong>\u00a0If you&#8217;re already running builds, checking git status, and SSHing into servers from the command line, Copilot CLI fits right into that flow.<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"62\"><strong>Teams looking to standardize AI-assisted practices.<\/strong>\u00a0Custom agents and skills can be shared across a team through a project&#8217;s\u00a0<code>.github\/agents<\/code>\u00a0and\u00a0<code>.github\/skills<\/code>\u00a0directories.<\/li>\n<li class=\"code-line\" dir=\"auto\" data-line=\"63\"><strong>Students and early-career developers.<\/strong>\u00a0The course explains AI terminology as it comes up, and every chapter includes assignments with clear success criteria.<\/li>\n<\/ul>\n<p class=\"code-line\" dir=\"auto\" data-line=\"65\">You don&#8217;t need prior experience with AI tools. If you can run commands in a terminal, you learn and apply the concepts in this course.<\/p>\n<h2 id=\"how-the-course-teaches\" class=\"code-line\" dir=\"auto\" data-line=\"67\">How the course teaches<\/h2>\n<p class=\"code-line\" dir=\"auto\" data-line=\"69\">Each chapter follows a consistent pattern: a real-world analogy to ground the concept, then the core technical material, then hands-on exercises. For instance, the three interaction modes are compared to ordering food at a restaurant. Plan mode is more like mapping your route to the restaurant before you start driving. Interactive mode is a back-and-forth conversation with a waiter. And one-shot mode (programmatic mode) is like going through the drive-through.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"71\"><a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/ordering-food-analogy.webp\"><img decoding=\"async\" class=\"alignnone size-full wp-image-21018\" src=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/ordering-food-analogy.webp\" alt=\"ordering food analogy image\" width=\"1024\" height=\"525\" srcset=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/ordering-food-analogy.webp 1024w, https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/ordering-food-analogy-300x154.webp 300w, https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/ordering-food-analogy-768x394.webp 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"73\">Later chapters use different comparisons: agents are like hiring specialists, skills work like attachments for a power drill, and MCP servers are compared to browser extensions. The goal is to provide you with a visual and mental model before the technical details land.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"75\">The course also focuses on a question that&#8217;s harder than it looks:\u00a0<em>when should I use which tool?<\/em>\u00a0Knowing the difference between reaching for an agent, a skill, or an MCP server takes practice, and the final chapter walks through that decision-making in a realistic workflow.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"77\"><a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/integration-pattern.webp\"><img decoding=\"async\" class=\"alignnone size-full wp-image-21016\" src=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/integration-pattern.webp\" alt=\"integration pattern image\" width=\"749\" height=\"881\" srcset=\"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/integration-pattern.webp 749w, https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-content\/uploads\/2026\/03\/integration-pattern-255x300.webp 255w\" sizes=\"(max-width: 749px) 100vw, 749px\" \/><\/a><\/p>\n<h2 id=\"get-started\" class=\"code-line\" dir=\"auto\" data-line=\"79\">Get started<\/h2>\n<p class=\"code-line\" dir=\"auto\" data-line=\"81\">The course is free and open source. You can clone the repo, or\u00a0<a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/codespaces.new\/github\/copilot-cli-for-beginners?hide_repo_select=true&amp;ref=main&amp;quickstart=true\" data-href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/codespaces.new\/github\/copilot-cli-for-beginners?hide_repo_select=true&amp;ref=main&amp;quickstart=true\">open it in GitHub Codespaces<\/a>\u00a0for a fully configured environment. Jump right in, get Copilot CLI running, and see if it fits your workflow.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"83\"><strong><a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/github.com\/github\/copilot-cli-for-beginners\" data-href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/github.com\/github\/copilot-cli-for-beginners\">GitHub Copilot CLI for Beginners<\/a><\/strong><\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"85\">For a quick reference, see the\u00a0<a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/docs.github.com\/copilot\/reference\/cli-command-reference\" data-href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/docs.github.com\/copilot\/reference\/cli-command-reference\">CLI command reference<\/a>.<\/p>\n<p class=\"code-line\" dir=\"auto\" data-line=\"87\">Subscribe to\u00a0<a href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/resources.github.com\/newsletter\/\" data-href=\"https:\/\/2.zoppoz.workers.dev:443\/https\/resources.github.com\/newsletter\/\">GitHub Insider<\/a>\u00a0for more developer tips and guides.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Learn GitHub Copilot CLI with this free, 8-chapter hands-on course. Review code, generate tests, debug issues, and build custom agents and skills &#8211; all from your terminal. No AI experience needed. Works with GitHub Copilot Free. Clone the repo or open in Codespaces to get started.<\/p>\n","protected":false},"author":73383,"featured_media":21024,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[159,1],"tags":[184],"class_list":["post-21012","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-github-copilot","category-msfordevs","tag-github-copilot-cli"],"acf":[],"blog_post_summary":"<p>Learn GitHub Copilot CLI with this free, 8-chapter hands-on course. Review code, generate tests, debug issues, and build custom agents and skills &#8211; all from your terminal. No AI experience needed. Works with GitHub Copilot Free. Clone the repo or open in Codespaces to get started.<\/p>\n","_links":{"self":[{"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/posts\/21012","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/users\/73383"}],"replies":[{"embeddable":true,"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/comments?post=21012"}],"version-history":[{"count":0,"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/posts\/21012\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/media\/21024"}],"wp:attachment":[{"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/media?parent=21012"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/categories?post=21012"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/2.zoppoz.workers.dev:443\/https\/devblogs.microsoft.com\/wp-json\/wp\/v2\/tags?post=21012"}],"curies":[{"name":"wp","href":"https:\/\/2.zoppoz.workers.dev:443\/https\/api.w.org\/{rel}","templated":true}]}}