{"id":83010,"date":"2025-03-05T10:03:54","date_gmt":"2025-03-05T18:03:54","guid":{"rendered":"https:\/\/github.blog\/?p=83010"},"modified":"2025-04-25T05:55:26","modified_gmt":"2025-04-25T12:55:26","slug":"video-how-to-run-dependency-audits-with-github-copilot","status":"publish","type":"post","link":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/","title":{"rendered":"Video: How to run dependency audits with GitHub Copilot"},"content":{"rendered":"<!DOCTYPE html PUBLIC \"-\/\/W3C\/\/DTD HTML 4.0 Transitional\/\/EN\" \"http:\/\/www.w3.org\/TR\/REC-html40\/loose.dtd\">\n<html><body><p>Every software project faces the inevitable challenge of dependency management. Over time, dependencies become outdated, leading to security vulnerabilities. Others go unused, needlessly bloating build times. For many development teams, addressing these issues means running manual scripts, reviewing output files, and hoping nothing falls through the cracks.<\/p>\n<p>I recently transformed this error-prone manual process into an automated solution using a few tools on GitHub&mdash;GitHub Copilot, GitHub Actions, and Dependabot, to be specific (just in case you&rsquo;re wondering). Here&rsquo;s how you can do the same!<\/p>\n<p>So, let&rsquo;s jump in (and make sure to watch the video above, too!).<\/p>\n<h2 id=\"the-problem-with-manual-dependency-audits\" id=\"the-problem-with-manual-dependency-audits\" ><a class=\"heading-link\" href=\"#the-problem-with-manual-dependency-audits\">The problem with manual dependency audits<span class=\"heading-hash pl-2 text-italic text-bold\" aria-hidden=\"true\"><\/span><\/a><\/h2>\n<p>Most teams start with a simple approach to dependency management. This often includes a Bash script that runs periodically. Here&rsquo;s what our manual script looks like:<\/p>\n<pre><code class=\"language-bash\">#!\/bin\/bash\necho \"Starting manual dependency audit...\"\n\n# List all dependencies\necho \"Installed dependencies:\"\nnpm list --depth=0 &gt; deps.txt\ncat deps.txt\n\n# Check for outdated ones\necho -e \"\\nChecking outdated dependencies...\"\nnpm outdated &gt; outdated.txt\ncat outdated.txt\n\n# Guess at unused ones (very crude)\necho -e \"\\nLooking for potentially unused dependencies...\"\nfor dep in $(npm list --depth=0 | grep '&#9500;&#9472;&#9472;' | cut -d' ' -f2 | cut -d@ -f1); do\n    if ! find . -type f -name \"*.js\" -o -name \"*.tsx\" -o -name \"*.ts\" | xargs grep -l \"$dep\" &gt; \/dev\/null 2&gt;&amp;1; then\n        echo \"$dep might be unused\"\n    fi\ndone\n\necho \"Done! Check deps.txt and outdated.txt manually. Phew that was a lot of work!\"\n<\/code><\/pre>\n<p>This approach has several limitations, including:<\/p>\n<ul>\n<li>It&rsquo;s manual, so someone has to remember to run it (and let&rsquo;s be honest, I often forget to run these in my own codebases).  <\/li>\n<li>The unused dependency check is crude, and often inaccurate.  <\/li>\n<li>Results are scattered across multiple output files.  <\/li>\n<li>It&rsquo;s not integrated with workflows or CI\/CD pipelines.<\/li>\n<\/ul>\n<p>There has to be a better way than this&mdash;right?<\/p>\n<h2 id=\"how-to-simplify-dependency-audits-on-github\" id=\"how-to-simplify-dependency-audits-on-github\" ><a class=\"heading-link\" href=\"#how-to-simplify-dependency-audits-on-github\">How to simplify dependency audits on GitHub<span class=\"heading-hash pl-2 text-italic text-bold\" aria-hidden=\"true\"><\/span><\/a><\/h2>\n<p>Luckily there is, in fact, a better solution than manual Bash script if you&rsquo;re working on GitHub&mdash;and it starts with using a combination of our AI developer tool, GitHub Copilot, our automation and CI\/CD tool, GitHub Actions, and Dependabot, our automated dependency tool.<\/p>\n<p>Here&rsquo;s a step-by-step guide you can use to do this.<\/p>\n<h3 id=\"step-1-use-github-copilot-to-create-the-action\" id=\"step-1-use-github-copilot-to-create-the-action\" ><a class=\"heading-link\" href=\"#step-1-use-github-copilot-to-create-the-action\">Step 1: Use GitHub Copilot to create the action<span class=\"heading-hash pl-2 text-italic text-bold\" aria-hidden=\"true\"><\/span><\/a><\/h3>\n<p><a href=\"https:\/\/github.blog\/news-insights\/product-news\/github-copilot-the-agent-awakens\/\">Agent mode takes GitHub Copilot from suggesting code to owning tasks<\/a>, like transforming our bash script into a GitHub Actions workflow.<\/p>\n<p>Here is our prompt:<\/p>\n<p>&ldquo;Create a GitHub Action for dependency auditing with depcheck and issue posting. And a separate Dependabot workflow for managing outdated dependencies.&rdquo;<\/p>\n<p><img data-recalc-dims=\"1\" decoding=\"async\" loading=\"lazy\" src=\"https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/manual-dependency-auditing.png?resize=1024%2C576\" alt=\"A screenshot of VS Code showing a Bash script for manual dependency auditing. The script named 'manual-audit.sh' is open in the editor, displaying code that lists dependencies, checks for outdated ones, and identifies potentially unused packages. The script outputs results to deps.txt and outdated.txt files. The left panel shows a file explorer with various project files including JavaScript files and configuration files. On the right side, there's a prompt to GitHub Copilot  to 'Create a GitHub Action for dependency auditing with depcheck and issue posting. And a separate Dependabot workflow for managing outdated dependencies.'\" width=\"1024\" height=\"576\" class=\"aligncenter size-full wp-image-83031 width-fit\" srcset=\"https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/manual-dependency-auditing.png?w=1600 1600w, https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/manual-dependency-auditing.png?w=300 300w, https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/manual-dependency-auditing.png?w=768 768w, https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/manual-dependency-auditing.png?w=1024 1024w, https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/manual-dependency-auditing.png?w=1536 1536w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/p>\n<p>Remember our original bash script? With just a prompt, I shared the context (package.json and our manual script) and asked it to create an action that uses the dependency checker tool <a href=\"https:\/\/www.npmjs.com\/package\/depcheck\">depcheck<\/a> for more accurate detection of unused dependencies.<\/p>\n<h3 id=\"step-2-github-copilot-writes-the-github-action\" id=\"step-2-github-copilot-writes-the-github-action\" ><a class=\"heading-link\" href=\"#step-2-github-copilot-writes-the-github-action\">Step 2: GitHub Copilot writes the GitHub Action<span class=\"heading-hash pl-2 text-italic text-bold\" aria-hidden=\"true\"><\/span><\/a><\/h3>\n<p>To implement this GitHub Action, GitHub Copilot creates the new workflow file in <code>.github\/workflows\/dependency-audit.yml<\/code>. Here&rsquo;s the workflow file Copilot helped create:<\/p>\n<pre><code class=\"language-yaml\">name: Dependency Audit\non:\n  schedule:\n    - cron: '0 0 * * 1'  # Run weekly on Mondays\n  workflow_dispatch:  # Allow manual triggering\n\njobs:\n  audit:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions\/checkout@v4\n\n      - name: Set up Node.js\n        uses: actions\/setup-node@v4\n        with:\n          node-version: '18'\n\n      - name: Install dependencies\n        run: npm ci\n\n      - name: Install depcheck\n        run: npm install -g depcheck\n\n      - name: Run depcheck for unused dependencies\n        run: depcheck --json &gt; unused-deps.json\n\n      - name: Run npm audit\n        run: npm audit --json &gt; security-audit.json\n\n      - name: Generate report\n        run: |\n          echo \"# Dependency Audit Report $(date)\" &gt; report.md\n          echo \"## Unused Dependencies\" &gt;&gt; report.md\n          cat unused-deps.json | jq -r '.dependencies[]' &gt;&gt; report.md\n          echo \"## Security Issues\" &gt;&gt; report.md\n          cat security-audit.json | jq '.metadata.vulnerabilities' &gt;&gt; report.md\n\n      - name: Create issue if problems found\n        uses: peter-evans\/create-issue-from-file@v4\n        if: ${{ success() }}\n        with:\n          title: Weekly Dependency Audit\n          content-filepath: .\/report.md\n          labels: maintenance, dependencies\n<\/code><\/pre>\n<h3 id=\"step-3-enable-dependabot\" id=\"step-3-enable-dependabot\" ><a class=\"heading-link\" href=\"#step-3-enable-dependabot\">Step 3: Enable Dependabot<span class=\"heading-hash pl-2 text-italic text-bold\" aria-hidden=\"true\"><\/span><\/a><\/h3>\n<p>While our custom action focuses on finding unused dependencies, we can use Dependabot to automatically create pull requests for outdated packages. Dependabot can be configured either via a simple YAML file <a href=\"https:\/\/docs.github.com\/en\/code-security\/getting-started\/dependabot-quickstart-guide#enabling-dependabot-for-your-repository\">or automatically by turning it on from your repository settings<\/a>. Here&rsquo;s the YAML file that Copilot created:<\/p>\n<pre><code class=\"language-yaml\"># .github\/dependabot.yml\nversion: 2\nupdates:\n  - package-ecosystem: \"npm\"\n    directory: \"\/\"\n    schedule:\n      interval: \"weekly\"\n    open-pull-requests-limit: 10\n<\/code><\/pre>\n<h2 id=\"the-result-a-fully-automated-dependency-audit\" id=\"the-result-a-fully-automated-dependency-audit\" ><a class=\"heading-link\" href=\"#the-result-a-fully-automated-dependency-audit\">The result: a fully automated dependency audit<span class=\"heading-hash pl-2 text-italic text-bold\" aria-hidden=\"true\"><\/span><\/a><\/h2>\n<p>With that, our dependency management is now fully automated. Let&rsquo;s recap how it works:<\/p>\n<ul>\n<li>Our custom action uses depcheck to accurately identify unused dependencies.  <\/li>\n<li>Dependabot creates pull requests for outdated packages, complete with changelogs and risk assessments.  <\/li>\n<li>Security vulnerabilities are detected and reported weekly.  <\/li>\n<li>Everything is documented in GitHub Issues for team visibility.<\/li>\n<\/ul>\n<p>This approach not only saves time but also significantly reduces the security risks and performance issues that stem from poorly managed dependencies.<\/p>\n<p>By combining the AI capabilities of GitHub Copilot with GitHub Actions and Dependabot, we&rsquo;ve turned a tedious manual task into an automated, integrated solution that keeps our codebase lean and secure. And I&rsquo;ll take those time savings to do something more interesting, like unraveling the mystery of those weird goats in the TV show <em>Severance<\/em>. Or who knows, maybe I&rsquo;ll finally figure out what macrodata refinement even means in that show (does anyone have any idea yet? Season two is killing me).<\/p>\n\n<div class=\"post-content-cta\"><p><strong>Try GitHub Copilot free and activate Dependabot<\/strong><br \/>Learn more about <a href=\"https:\/\/gh.io\/dependencieswithcopilot\">GitHub Copilot for Business<\/a> or start your free trial of <a href=\"https:\/\/gh.io\/try-enterprise\">GitHub Enterprise<\/a> today.<\/p>\n<\/div>\n<\/body><\/html>\n","protected":false},"excerpt":{"rendered":"<p>Learn to automate dependency management using GitHub Copilot, GitHub Actions, and Dependabot to eliminate manual checks, improve security, and save time for what really matters.<\/p>\n","protected":false},"author":1825,"featured_media":83253,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_gh_post_show_toc":"yes","_gh_post_is_no_robots":"no","_gh_post_is_featured":"yes","_gh_post_is_excluded":"no","_gh_post_is_unlisted":"no","_gh_post_related_link_1":"","_gh_post_related_link_2":"","_gh_post_related_link_3":"","_gh_post_sq_img":"","_gh_post_sq_img_id":"","_gh_post_cta_title":"","_gh_post_cta_text":"","_gh_post_cta_link":"","_gh_post_cta_button":"Click Here to Learn More","_gh_post_recirc_hide":"no","_gh_post_recirc_col_1":"78957","_gh_post_recirc_col_2":"78959","_gh_post_recirc_col_3":"78961","_gh_post_recirc_col_4":"65316","_featured_video":"https:\/\/youtu.be\/wiDyp5nDMoI","_gh_post_additional_query_params":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"{title}\n\n{excerpt}\n\n{url}","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false,"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[3298,3302],"tags":[769,145,122,2535,1709],"coauthors":[2539],"class_list":["post-83010","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-developer-skills","category-github","tag-ci-cd","tag-dependabot","tag-github-actions","tag-github-copilot","tag-supply-chain-security"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.4 (Yoast SEO v28.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Video: How to run dependency audits with GitHub Copilot - The GitHub Blog<\/title>\n<meta name=\"description\" content=\"Learn to automate dependency management using GitHub Copilot, GitHub Actions, and Dependabot to eliminate manual checks, improve security, and save time.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Video: How to run dependency audits with GitHub Copilot\" \/>\n<meta property=\"og:description\" content=\"Learn to automate dependency management using GitHub Copilot, GitHub Actions, and Dependabot to eliminate manual checks, improve security, and save time.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/\" \/>\n<meta property=\"og:site_name\" content=\"The GitHub Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-03-05T18:03:54+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-04-25T12:55:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/Automate_dependency_audits_with_GitHub_Copilot-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Andrea Griffiths\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@acolombiadev\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andrea Griffiths\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/\"},\"author\":{\"name\":\"Andrea Griffiths\",\"@id\":\"https:\\\/\\\/github.blog\\\/#\\\/schema\\\/person\\\/a1a244472a4104a81587cbe29e5a1ac1\"},\"headline\":\"Video: How to run dependency audits with GitHub Copilot\",\"datePublished\":\"2025-03-05T18:03:54+00:00\",\"dateModified\":\"2025-04-25T12:55:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/\"},\"wordCount\":642,\"image\":{\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/github.blog\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/Automate_dependency_audits_with_GitHub_Copilot-1.png?fit=1280%2C720\",\"keywords\":[\"CI\\\/CD\",\"Dependabot\",\"GitHub Actions\",\"GitHub Copilot\",\"supply chain security\"],\"articleSection\":[\"Developer skills\",\"GitHub\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/\",\"url\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/\",\"name\":\"Video: How to run dependency audits with GitHub Copilot - The GitHub Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/github.blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/github.blog\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/Automate_dependency_audits_with_GitHub_Copilot-1.png?fit=1280%2C720\",\"datePublished\":\"2025-03-05T18:03:54+00:00\",\"dateModified\":\"2025-04-25T12:55:26+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/github.blog\\\/#\\\/schema\\\/person\\\/a1a244472a4104a81587cbe29e5a1ac1\"},\"description\":\"Learn to automate dependency management using GitHub Copilot, GitHub Actions, and Dependabot to eliminate manual checks, improve security, and save time.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/#primaryimage\",\"url\":\"https:\\\/\\\/github.blog\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/Automate_dependency_audits_with_GitHub_Copilot-1.png?fit=1280%2C720\",\"contentUrl\":\"https:\\\/\\\/github.blog\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/Automate_dependency_audits_with_GitHub_Copilot-1.png?fit=1280%2C720\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/video-how-to-run-dependency-audits-with-github-copilot\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/github.blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Developer skills\",\"item\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"GitHub\",\"item\":\"https:\\\/\\\/github.blog\\\/developer-skills\\\/github\\\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Video: How to run dependency audits with GitHub Copilot\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/github.blog\\\/#website\",\"url\":\"https:\\\/\\\/github.blog\\\/\",\"name\":\"The GitHub Blog\",\"description\":\"Updates, ideas, and inspiration from GitHub to help developers build and design software.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/github.blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/github.blog\\\/#\\\/schema\\\/person\\\/a1a244472a4104a81587cbe29e5a1ac1\",\"name\":\"Andrea Griffiths\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/github.blog\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Andrea-Griffiths_avatar_1755783168-96x96.jpeg9bbe944fe21f5e84b359f268822378d2\",\"url\":\"https:\\\/\\\/github.blog\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Andrea-Griffiths_avatar_1755783168-96x96.jpeg\",\"contentUrl\":\"https:\\\/\\\/github.blog\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Andrea-Griffiths_avatar_1755783168-96x96.jpeg\",\"caption\":\"Andrea Griffiths\"},\"description\":\"Andrea is a Senior Developer Advocate at GitHub with over a decade of experience in developer tools. She combines technical depth with a mission to make advanced technologies more accessible. After transitioning from Army service and construction management to software development, she brings a unique perspective to bridging complex engineering concepts with practical implementation. She lives in Florida with her Welsh partner, two sons, and two dogs, where she continues to drive innovation and support open source through GitHub's global initiatives. Find her online @acolombiadev.\",\"sameAs\":[\"https:\\\/\\\/andreagriffiths.dev\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/acolombiadev\\\/\",\"https:\\\/\\\/x.com\\\/acolombiadev\",\"https:\\\/\\\/www.youtube.com\\\/@acolombiadev\"],\"jobTitle\":\"Senior Developer Advocate\",\"worksFor\":\"GitHub\",\"url\":\"https:\\\/\\\/github.blog\\\/author\\\/andreagriffiths11\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Video: How to run dependency audits with GitHub Copilot - The GitHub Blog","description":"Learn to automate dependency management using GitHub Copilot, GitHub Actions, and Dependabot to eliminate manual checks, improve security, and save time.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/","og_locale":"en_US","og_type":"article","og_title":"Video: How to run dependency audits with GitHub Copilot","og_description":"Learn to automate dependency management using GitHub Copilot, GitHub Actions, and Dependabot to eliminate manual checks, improve security, and save time.","og_url":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/","og_site_name":"The GitHub Blog","article_published_time":"2025-03-05T18:03:54+00:00","article_modified_time":"2025-04-25T12:55:26+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/Automate_dependency_audits_with_GitHub_Copilot-1.png","type":"image\/png"}],"author":"Andrea Griffiths","twitter_card":"summary_large_image","twitter_creator":"@acolombiadev","twitter_misc":{"Written by":"Andrea Griffiths","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/#article","isPartOf":{"@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/"},"author":{"name":"Andrea Griffiths","@id":"https:\/\/github.blog\/#\/schema\/person\/a1a244472a4104a81587cbe29e5a1ac1"},"headline":"Video: How to run dependency audits with GitHub Copilot","datePublished":"2025-03-05T18:03:54+00:00","dateModified":"2025-04-25T12:55:26+00:00","mainEntityOfPage":{"@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/"},"wordCount":642,"image":{"@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/#primaryimage"},"thumbnailUrl":"https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/Automate_dependency_audits_with_GitHub_Copilot-1.png?fit=1280%2C720","keywords":["CI\/CD","Dependabot","GitHub Actions","GitHub Copilot","supply chain security"],"articleSection":["Developer skills","GitHub"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/","url":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/","name":"Video: How to run dependency audits with GitHub Copilot - The GitHub Blog","isPartOf":{"@id":"https:\/\/github.blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/#primaryimage"},"image":{"@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/#primaryimage"},"thumbnailUrl":"https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/Automate_dependency_audits_with_GitHub_Copilot-1.png?fit=1280%2C720","datePublished":"2025-03-05T18:03:54+00:00","dateModified":"2025-04-25T12:55:26+00:00","author":{"@id":"https:\/\/github.blog\/#\/schema\/person\/a1a244472a4104a81587cbe29e5a1ac1"},"description":"Learn to automate dependency management using GitHub Copilot, GitHub Actions, and Dependabot to eliminate manual checks, improve security, and save time.","breadcrumb":{"@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/#primaryimage","url":"https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/Automate_dependency_audits_with_GitHub_Copilot-1.png?fit=1280%2C720","contentUrl":"https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/Automate_dependency_audits_with_GitHub_Copilot-1.png?fit=1280%2C720","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/github.blog\/developer-skills\/github\/video-how-to-run-dependency-audits-with-github-copilot\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/github.blog\/"},{"@type":"ListItem","position":2,"name":"Developer skills","item":"https:\/\/github.blog\/developer-skills\/"},{"@type":"ListItem","position":3,"name":"GitHub","item":"https:\/\/github.blog\/developer-skills\/github\/"},{"@type":"ListItem","position":4,"name":"Video: How to run dependency audits with GitHub Copilot"}]},{"@type":"WebSite","@id":"https:\/\/github.blog\/#website","url":"https:\/\/github.blog\/","name":"The GitHub Blog","description":"Updates, ideas, and inspiration from GitHub to help developers build and design software.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/github.blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/github.blog\/#\/schema\/person\/a1a244472a4104a81587cbe29e5a1ac1","name":"Andrea Griffiths","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/github.blog\/wp-content\/uploads\/2025\/08\/Andrea-Griffiths_avatar_1755783168-96x96.jpeg9bbe944fe21f5e84b359f268822378d2","url":"https:\/\/github.blog\/wp-content\/uploads\/2025\/08\/Andrea-Griffiths_avatar_1755783168-96x96.jpeg","contentUrl":"https:\/\/github.blog\/wp-content\/uploads\/2025\/08\/Andrea-Griffiths_avatar_1755783168-96x96.jpeg","caption":"Andrea Griffiths"},"description":"Andrea is a Senior Developer Advocate at GitHub with over a decade of experience in developer tools. She combines technical depth with a mission to make advanced technologies more accessible. After transitioning from Army service and construction management to software development, she brings a unique perspective to bridging complex engineering concepts with practical implementation. She lives in Florida with her Welsh partner, two sons, and two dogs, where she continues to drive innovation and support open source through GitHub's global initiatives. Find her online @acolombiadev.","sameAs":["https:\/\/andreagriffiths.dev\/","https:\/\/www.linkedin.com\/in\/acolombiadev\/","https:\/\/x.com\/acolombiadev","https:\/\/www.youtube.com\/@acolombiadev"],"jobTitle":"Senior Developer Advocate","worksFor":"GitHub","url":"https:\/\/github.blog\/author\/andreagriffiths11\/"}]}},"jetpack_publicize_connections":[],"jetpack_shortlink":"https:\/\/wp.me\/pamS32-lAS","jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/github.blog\/wp-content\/uploads\/2025\/03\/Automate_dependency_audits_with_GitHub_Copilot-1.png?fit=1280%2C720","_links":{"self":[{"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/posts\/83010","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/users\/1825"}],"replies":[{"embeddable":true,"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/comments?post=83010"}],"version-history":[{"count":22,"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/posts\/83010\/revisions"}],"predecessor-version":[{"id":86974,"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/posts\/83010\/revisions\/86974"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/media\/83253"}],"wp:attachment":[{"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/media?parent=83010"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/categories?post=83010"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/tags?post=83010"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/github.blog\/wp-json\/wp\/v2\/coauthors?post=83010"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}