{"id":1375,"date":"2026-07-14T18:00:00","date_gmt":"2026-07-14T17:00:00","guid":{"rendered":"https:\/\/wade.one\/blog\/?p=1375"},"modified":"2026-07-14T18:00:00","modified_gmt":"2026-07-14T17:00:00","slug":"github-models-is-shutting-down-on-july-30","status":"publish","type":"post","link":"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/","title":{"rendered":"GitHub Models Is Shutting Down on July 30"},"content":{"rendered":"<p>GitHub Models is not merely being deprecated at some vague point in the future. It is shutting down on 30 July 2026. If a prototype, workflow, or internal tool still calls its inference API, the useful response is to find that dependency now rather than discover it through a production error at the end of the month.<\/p>\n<p>GitHub&#8217;s <a href=\"https:\/\/github.blog\/changelog\/2026-07-01-github-models-is-being-fully-retired-on-july-30-2026\/\">retirement notice<\/a> says the playground, model catalogue, inference API, and bring-your-own-key endpoints will all go away. There are also planned brownouts on 16 and 23 July, when requests will temporarily fail. GitHub points general model-access workloads towards Microsoft Foundry and GitHub-native development workflows towards Copilot.<\/p>\n<p>The brownouts are a useful forced test if you treat them that way. Search repositories and deployment configuration for the endpoint and credentials, identify the owner of each caller, then make sure failure is visible rather than silently swallowed. A replacement is not complete just because the first request works; model names, limits, authentication, response shapes, cost controls, and data-handling rules all need checking.<\/p>\n<p>This is also a reminder not to build around a convenient preview as if it were permanent infrastructure. Previews are great for proving an idea. Once the idea matters, the provider boundary needs to be explicit enough that a shutdown is a migration, not a rewrite.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>GitHub Models closes on July 30, with brownouts first, so this is a migration deadline rather than a product update to read later.<\/p>\n","protected":false},"author":0,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_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":"","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},"jetpack_post_was_ever_published":false},"categories":[25],"tags":[30,155,198,199],"class_list":["post-1375","post","type-post","status-publish","format-standard","hentry","category-software-engineer","tag-ai","tag-github","tag-github-models","tag-migration"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>GitHub Models Is Shutting Down on July 30 - wade.one<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"GitHub Models Is Shutting Down on July 30 - wade.one\" \/>\n<meta property=\"og:description\" content=\"GitHub Models closes on July 30, with brownouts first, so this is a migration deadline rather than a product update to read later.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/\" \/>\n<meta property=\"og:site_name\" content=\"wade.one\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-14T17:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/wade.one\/blog\/wp-content\/uploads\/2015\/02\/Wade-Logo-cropped.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1518\" \/>\n\t<meta property=\"og:image:height\" content=\"1506\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@wadewomersley\" \/>\n<meta name=\"twitter:site\" content=\"@wadewomersley\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/2026\\\/07\\\/14\\\/github-models-is-shutting-down-on-july-30\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/2026\\\/07\\\/14\\\/github-models-is-shutting-down-on-july-30\\\/\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"GitHub Models Is Shutting Down on July 30\",\"datePublished\":\"2026-07-14T17:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/2026\\\/07\\\/14\\\/github-models-is-shutting-down-on-july-30\\\/\"},\"wordCount\":217,\"publisher\":{\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/#\\\/schema\\\/person\\\/8b4739f8f8bb2cff5d792d4b8779fcc3\"},\"keywords\":[\"ai\",\"github\",\"github-models\",\"migration\"],\"articleSection\":[\"Software Engineer\"],\"inLanguage\":\"en-GB\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/2026\\\/07\\\/14\\\/github-models-is-shutting-down-on-july-30\\\/\",\"url\":\"https:\\\/\\\/wade.one\\\/blog\\\/2026\\\/07\\\/14\\\/github-models-is-shutting-down-on-july-30\\\/\",\"name\":\"GitHub Models Is Shutting Down on July 30 - wade.one\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/#website\"},\"datePublished\":\"2026-07-14T17:00:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/2026\\\/07\\\/14\\\/github-models-is-shutting-down-on-july-30\\\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/wade.one\\\/blog\\\/2026\\\/07\\\/14\\\/github-models-is-shutting-down-on-july-30\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/2026\\\/07\\\/14\\\/github-models-is-shutting-down-on-july-30\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/wade.one\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"GitHub Models Is Shutting Down on July 30\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/wade.one\\\/blog\\\/\",\"name\":\"wade.one\",\"description\":\"wade womersley - york based software engineer\",\"publisher\":{\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/#\\\/schema\\\/person\\\/8b4739f8f8bb2cff5d792d4b8779fcc3\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/wade.one\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/#\\\/schema\\\/person\\\/8b4739f8f8bb2cff5d792d4b8779fcc3\",\"name\":\"Wade Womersley\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/wp-content\\\/uploads\\\/2015\\\/02\\\/200px.png\",\"url\":\"https:\\\/\\\/wade.one\\\/blog\\\/wp-content\\\/uploads\\\/2015\\\/02\\\/200px.png\",\"contentUrl\":\"https:\\\/\\\/wade.one\\\/blog\\\/wp-content\\\/uploads\\\/2015\\\/02\\\/200px.png\",\"width\":202,\"height\":200,\"caption\":\"Wade Womersley\"},\"logo\":{\"@id\":\"https:\\\/\\\/wade.one\\\/blog\\\/wp-content\\\/uploads\\\/2015\\\/02\\\/200px.png\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"GitHub Models Is Shutting Down on July 30 - wade.one","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:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/","og_locale":"en_GB","og_type":"article","og_title":"GitHub Models Is Shutting Down on July 30 - wade.one","og_description":"GitHub Models closes on July 30, with brownouts first, so this is a migration deadline rather than a product update to read later.","og_url":"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/","og_site_name":"wade.one","article_published_time":"2026-07-14T17:00:00+00:00","og_image":[{"width":1518,"height":1506,"url":"https:\/\/wade.one\/blog\/wp-content\/uploads\/2015\/02\/Wade-Logo-cropped.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_creator":"@wadewomersley","twitter_site":"@wadewomersley","twitter_misc":{"Estimated reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/#article","isPartOf":{"@id":"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/"},"author":{"name":"","@id":""},"headline":"GitHub Models Is Shutting Down on July 30","datePublished":"2026-07-14T17:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/"},"wordCount":217,"publisher":{"@id":"https:\/\/wade.one\/blog\/#\/schema\/person\/8b4739f8f8bb2cff5d792d4b8779fcc3"},"keywords":["ai","github","github-models","migration"],"articleSection":["Software Engineer"],"inLanguage":"en-GB"},{"@type":"WebPage","@id":"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/","url":"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/","name":"GitHub Models Is Shutting Down on July 30 - wade.one","isPartOf":{"@id":"https:\/\/wade.one\/blog\/#website"},"datePublished":"2026-07-14T17:00:00+00:00","breadcrumb":{"@id":"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/wade.one\/blog\/2026\/07\/14\/github-models-is-shutting-down-on-july-30\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/wade.one\/blog\/"},{"@type":"ListItem","position":2,"name":"GitHub Models Is Shutting Down on July 30"}]},{"@type":"WebSite","@id":"https:\/\/wade.one\/blog\/#website","url":"https:\/\/wade.one\/blog\/","name":"wade.one","description":"wade womersley - york based software engineer","publisher":{"@id":"https:\/\/wade.one\/blog\/#\/schema\/person\/8b4739f8f8bb2cff5d792d4b8779fcc3"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wade.one\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":["Person","Organization"],"@id":"https:\/\/wade.one\/blog\/#\/schema\/person\/8b4739f8f8bb2cff5d792d4b8779fcc3","name":"Wade Womersley","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/wade.one\/blog\/wp-content\/uploads\/2015\/02\/200px.png","url":"https:\/\/wade.one\/blog\/wp-content\/uploads\/2015\/02\/200px.png","contentUrl":"https:\/\/wade.one\/blog\/wp-content\/uploads\/2015\/02\/200px.png","width":202,"height":200,"caption":"Wade Womersley"},"logo":{"@id":"https:\/\/wade.one\/blog\/wp-content\/uploads\/2015\/02\/200px.png"}}]}},"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":1303,"url":"https:\/\/wade.one\/blog\/2026\/05\/15\/github-agent-hq-makes-ai-coding-a-platform-choice\/","url_meta":{"origin":1375,"position":0},"title":"GitHub Agent HQ Makes AI Coding a Platform Choice","author":"","date":"May 15, 2026","format":false,"excerpt":"GitHub adding Claude and Codex agent choices is a sign that AI coding is becoming a platform layer, not just a model picker.","rel":"","context":"In &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/wade.one\/blog\/category\/ai\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1395,"url":"https:\/\/wade.one\/blog\/2026\/08\/16\/github-copilot-usage-metrics-are-becoming-cost-accounting\/","url_meta":{"origin":1375,"position":1},"title":"GitHub Copilot Usage Metrics Are Becoming Cost Accounting","author":"","date":"August 16, 2026","format":false,"excerpt":"Copilot's expanded app metrics are useful, but teams should measure outcomes and cost rather than celebrate activity alone.","rel":"","context":"In &quot;Software Engineer&quot;","block_context":{"text":"Software Engineer","link":"https:\/\/wade.one\/blog\/category\/software-engineer\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1329,"url":"https:\/\/wade.one\/blog\/2026\/06\/02\/github-copilot-coding-agent-needs-workflow-rules-not-just-access\/","url_meta":{"origin":1375,"position":2},"title":"GitHub Copilot Coding Agent Needs Workflow Rules, Not Just Access","author":"Wade","date":"June 2, 2026","format":false,"excerpt":"GitHub Copilot's coding agent is useful, but I would want explicit workflow rules around permissions, networking, and review before giving it real access.","rel":"","context":"In &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/wade.one\/blog\/category\/ai\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1394,"url":"https:\/\/wade.one\/blog\/2026\/08\/15\/mcp-going-stateless-is-the-boring-fix-it-needed\/","url_meta":{"origin":1375,"position":3},"title":"MCP Going Stateless Is the Boring Fix It Needed","author":"Wade","date":"August 15, 2026","format":false,"excerpt":"MCP's stateless core removes deployment plumbing that should never have been the interesting part of an agent tool.","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/wade.one\/blog\/category\/programming\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1376,"url":"https:\/\/wade.one\/blog\/2026\/07\/15\/codeql-system-prompt-injection-query-is-a-useful-start\/","url_meta":{"origin":1375,"position":4},"title":"CodeQL&#8217;s System Prompt Injection Query Is a Useful Start","author":"","date":"July 15, 2026","format":false,"excerpt":"CodeQL 2.26 can trace untrusted values into JavaScript and TypeScript system prompts, turning one AI security risk into something code review can see.","rel":"","context":"In &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/wade.one\/blog\/category\/ai\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1393,"url":"https:\/\/wade.one\/blog\/2026\/08\/14\/ai-coding-tools-need-the-same-policy-everywhere\/","url_meta":{"origin":1375,"position":5},"title":"AI Coding Tools Need the Same Policy Everywhere","author":"","date":"August 14, 2026","format":false,"excerpt":"Coding-agent governance only works when the same rules follow developers across every client and cloud task.","rel":"","context":"In &quot;Software Engineer&quot;","block_context":{"text":"Software Engineer","link":"https:\/\/wade.one\/blog\/category\/software-engineer\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/wade.one\/blog\/wp-json\/wp\/v2\/posts\/1375","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wade.one\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wade.one\/blog\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/wade.one\/blog\/wp-json\/wp\/v2\/comments?post=1375"}],"version-history":[{"count":1,"href":"https:\/\/wade.one\/blog\/wp-json\/wp\/v2\/posts\/1375\/revisions"}],"predecessor-version":[{"id":1384,"href":"https:\/\/wade.one\/blog\/wp-json\/wp\/v2\/posts\/1375\/revisions\/1384"}],"wp:attachment":[{"href":"https:\/\/wade.one\/blog\/wp-json\/wp\/v2\/media?parent=1375"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wade.one\/blog\/wp-json\/wp\/v2\/categories?post=1375"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wade.one\/blog\/wp-json\/wp\/v2\/tags?post=1375"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}