[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-github-copilot-cli-1-0-49-hooks-memory-fixes-en":3,"article-related-github-copilot-cli-1-0-49-hooks-memory-fixes-en":30,"series-tools-4dac4f55-5550-4ab8-af66-c2ebd166c270":81},{"id":4,"slug":5,"title":6,"content":7,"summary":8,"source":9,"source_url":10,"author":11,"image_url":12,"cover_image":12,"category":13,"language":14,"translated_content":11,"related_article_id":15,"keywords":16,"key_takeaways":22,"views":26,"created_at":27,"published_at":28,"topic_cluster_id":29},"4dac4f55-5550-4ab8-af66-c2ebd166c270","github-copilot-cli-1-0-49-hooks-memory-fixes-en","GitHub Copilot CLI 1.0.49 fixes hooks and memory","\u003Cp data-speakable=\"summary\">\u003Ca href=\"\u002Ftag\u002Fgithub-copilot\">GitHub Copilot\u003C\u002Fa> CLI 1.0.49 adds hook context handling, memory commands, and several terminal fixes.\u003C\u002Fp>\u003Cp>\u003Ca href=\"\u002Ftag\u002Fgithub\">GitHub\u003C\u002Fa> shipped \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fcopilot-cli\u002Freleases\u002Ftag\u002Fv1.0.49\" target=\"_blank\" rel=\"noopener\">Copilot CLI 1.0.49\u003C\u002Fa> on 2026-05-18, and the release note is packed with small but meaningful changes. The headline fix is simple: \u003Ccode>postToolUse\u003C\u002Fcode> hook \u003Ccode>additionalContext\u003C\u002Fcode> now reaches the model as a system message instead of disappearing.\u003C\u002Fp>\u003Cp>This release also arrives with a long list of \u003Ca href=\"\u002Ftag\u002Fagent\">agent\u003C\u002Fa>, terminal, and MCP updates, plus support for Alpine Linux through musl libc. In other words, this is the kind of version that matters to people who actually use the CLI every day, not just people skimming changelogs.\u003C\u002Fp>\u003Ctable>\u003Cthead>\u003Ctr>\u003Cth>Item\u003C\u002Fth>\u003Cth>Detail\u003C\u002Fth>\u003Cth>Date or size\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd>Latest stable tag\u003C\u002Ftd>\u003Ctd>v1.0.49\u003C\u002Ftd>\u003Ctd>2026-05-18\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Next release tag\u003C\u002Ftd>\u003Ctd>v1.0.51\u003C\u002Ftd>\u003Ctd>2026-05-20\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Windows installer\u003C\u002Ftd>\u003Ctd>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fcopilot-cli\u002Freleases\u002Fdownload\u002Fv1.0.49\u002Fcopilot-x64.msi\" target=\"_blank\" rel=\"noopener\">copilot-x64.msi\u003C\u002Fa>\u003C\u002Ftd>\u003Ctd>65 MB\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Linux x64 tarball\u003C\u002Ftd>\u003Ctd>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fcopilot-cli\u002Freleases\u002Fdownload\u002Fv1.0.49\u002Fcopilot-linux-x64.tar.gz\" target=\"_blank\" rel=\"noopener\">copilot-linux-x64.tar.gz\u003C\u002Fa>\u003C\u002Ftd>\u003Ctd>76.4 MB\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Linux musl x64 tarball\u003C\u002Ftd>\u003Ctd>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fcopilot-cli\u002Freleases\u002Fdownload\u002Fv1.0.49\u002Fcopilot-linuxmusl-x64.tar.gz\" target=\"_blank\" rel=\"noopener\">copilot-linuxmusl-x64.tar.gz\u003C\u002Fa>\u003C\u002Ftd>\u003Ctd>73.7 MB\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003Ch2>The real fix is about context, not syntax\u003C\u002Fh2>\u003Cp>The most important line in the release notes is the one about \u003Ccode>postToolUse\u003C\u002Fcode> hooks. Before 1.0.49, \u003Ccode>additionalContext\u003C\u002Fcode> could be collected and then dropped on the floor. Now it is injected as a system message, which means the model can actually see it and react to it.\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1779355564584-gb9e.png\" alt=\"GitHub Copilot CLI 1.0.49 fixes hooks and memory\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>That matters because hook data is only useful if it survives the trip from tool execution to model input. For teams wiring \u003Ca href=\"\u002Ftag\u002Fcopilot\">Copilot\u003C\u002Fa> CLI into custom workflows, this turns hooks from a logging side channel into something closer to an input pipeline.\u003C\u002Fp>\u003Cp>There is also a subtle but important pattern here: GitHub is tightening the glue between the CLI, the agent, and the surrounding tool ecosystem. The release adds support for \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fcopilot-cli\" target=\"_blank\" rel=\"noopener\">Copilot CLI\u003C\u002Fa> in more environments, while also making the tool behavior easier to reason about when hooks, sessions, and MCP servers all overlap.\u003C\u002Fp>\u003Cul>\u003Cli>\u003Ccode>postToolUse\u003C\u002Fcode> hook context is no longer discarded\u003C\u002Fli>\u003Cli>Repo hooks in \u003Ccode>.github\u002Fhooks\u002F\u003C\u002Fcode> now load in prompt mode when the folder is trusted\u003C\u002Fli>\u003Cli>File diffs are reported correctly to ACP clients for all edit tool types\u003C\u002Fli>\u003Cli>Document attachment paths are included in context, including Windows copy-as-path inputs\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>Memory, sessions, and agent commands are getting more practical\u003C\u002Fh2>\u003Cp>Version 1.0.49 adds a cluster of commands that make the CLI feel less like a thin wrapper and more like a real working assistant. The new \u003Ccode>\u002Fmemory on|off|show\u003C\u002Fcode> command gives users direct control over persistent memory, while \u003Ccode>\u002Fsession id\u003C\u002Fcode> exposes the current session ID and can copy it to the clipboard.\u003C\u002Fp>\u003Cp>GitHub also added \u003Ccode>\u002Fchronicle search\u003C\u002Fcode> for searching session content by keyword or topic, plus \u003Ccode>\u002Fexit\u003C\u002Fcode> with a print option so you can dump the session before quitting. And then there is \u003Ccode>\u002Frubber-duck\u003C\u002Fcode>, which asks an independent critique agent to review the current work. That one is easy to mock until you are staring at a weird prompt chain at 11 p.m.\u003C\u002Fp>\u003Cblockquote>“The rubber duck debugging method is a great way to solve problems.” — \u003Ca href=\"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FDebugging#Rubber_duck_debugging\" target=\"_blank\" rel=\"noopener\">Andrew Hunt and David Thomas\u003C\u002Fa>\u003C\u002Fblockquote>\u003Cp>The command set also shows where GitHub thinks the CLI is headed. It is not enough for the agent to generate output. It needs memory, traceability, and ways to inspect its own work without forcing users to leave the terminal.\u003C\u002Fp>\u003Cp>That focus shows up in the smaller fixes too. The prompt now collapses to a single line when empty and grows naturally as you type. Mouse clicks land correctly even when the input contains wide characters such as CJK text or emoji. These are the kinds of details that separate a demo from a tool people trust.\u003C\u002Fp>\u003Cul>\u003Cli>\u003Ccode>\u002Fmemory\u003C\u002Fcode> now supports persistent on, off, and status checks\u003C\u002Fli>\u003Cli>\u003Ccode>\u002Fchronicle search\u003C\u002Fcode> adds session-wide search\u003C\u002Fli>\u003Cli>\u003Ccode>\u002Fsession id\u003C\u002Fcode> makes session tracking easier for support and debugging\u003C\u002Fli>\u003Cli>\u003Ccode>\u002Frubber-duck\u003C\u002Fcode> adds an independent critique workflow\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>MCP and OAuth changes matter for real deployments\u003C\u002Fh2>\u003Cp>A lot of the release note is about MCP server behavior, and that is a good sign. GitHub Copilot CLI is increasingly useful only when it can talk cleanly to external tools, and that means authentication, startup speed, and metadata handling all need to behave.\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1779355567569-glpk.png\" alt=\"GitHub Copilot CLI 1.0.49 fixes hooks and memory\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>In 1.0.49, static OAuth clients now persist registration for \u003Ca href=\"\u002Ftag\u002Ftoken\">token\u003C\u002Fa> refreshes, and MCP servers with no \u003Ccode>args\u003C\u002Fcode> field are treated as an empty list instead of breaking. The release also adds \u003Ccode>auth.redirectPort\u003C\u002Fcode> so teams can pin the OAuth callback to a fixed port, which is the sort of detail you appreciate the moment you try running this behind a stricter local setup.\u003C\u002Fp>\u003Cp>GitHub’s own \u003Ca href=\"https:\u002F\u002Fgithub.blog\u002Fchangelog\u002F\" target=\"_blank\" rel=\"noopener\">Changelog\u003C\u002Fa> has been full of Copilot-related updates, but this release is especially focused on the plumbing. The CLI now shows \u003Ccode>stdio\u003C\u002Fcode> for MCP servers instead of the vague “local” label, and servers using OAuth stay connected when auth happened in a separate session.\u003C\u002Fp>\u003Cp>There is also a practical platform win: Alpine Linux support via musl libc. That broadens the number of environments where the CLI can run without container workarounds or distro-specific hacks.\u003C\u002Fp>\u003Cul>\u003Cli>Static OAuth clients now keep token refresh registration\u003C\u002Fli>\u003Cli>\u003Ccode>auth.redirectPort\u003C\u002Fcode> can pin OAuth callbacks to a fixed port\u003C\u002Fli>\u003Cli>Empty MCP \u003Ccode>args\u003C\u002Fcode> lists are accepted\u003C\u002Fli>\u003Cli>Alpine Linux support is now included\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>The terminal polish is the part users will notice first\u003C\u002Fh2>\u003Cp>Some of the changes are invisible until they save you from a bad session. The progress bar now renders correctly in tmux, box-drawing characters behave on Windows terminals that are not using UTF-8, and the loading indicator matches the active mode, whether that is plan, autopilot, or shell.\u003C\u002Fp>\u003Cp>GitHub also fixed a bunch of interaction details that make the CLI feel less brittle. Pressing Enter on a highlighted subcommand completion now inserts the selection instead of sending the partial command. The editor launched with Ctrl+G no longer steals keystrokes or forces a double press. The input area grows with terminal height instead of stopping at three lines.\u003C\u002Fp>\u003Cp>For people who care about cost, token accounting got a tune-up too. The release notes say input token usage now includes cached tokens, and the formatting has been updated to make that clearer. That is a small change on paper, but it matters when you are trying to understand why a session cost more than expected.\u003C\u002Fp>\u003Cp>If you compare 1.0.49 with the pre-releases that followed on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fcopilot-cli\u002Freleases\u002Ftag\u002Fv1.0.51-3\" target=\"_blank\" rel=\"noopener\">1.0.51-3\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fcopilot-cli\u002Freleases\u002Ftag\u002Fv1.0.51-2\" target=\"_blank\" rel=\"noopener\">1.0.51-2\u003C\u002Fa>, and \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fcopilot-cli\u002Freleases\u002Ftag\u002Fv1.0.51\" target=\"_blank\" rel=\"noopener\">1.0.51\u003C\u002Fa>, the direction is clear: GitHub is iterating quickly on agent controls, session visibility, and tool integration.\u003C\u002Fp>\u003Cul>\u003Cli>tmux progress bars now render properly\u003C\u002Fli>\u003Cli>Windows terminals handle box characters better\u003C\u002Fli>\u003Cli>Highlighted completions insert correctly on Enter\u003C\u002Fli>\u003Cli>Terminal input grows with available height\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>What this release says about Copilot CLI’s direction\u003C\u002Fh2>\u003Cp>Copilot CLI 1.0.49 is not a flashy release, and that is exactly why it matters. It fixes the places where an agentic terminal tool can quietly fail: context passing, session state, OAuth refresh, and the little terminal behaviors that make people lose trust fast.\u003C\u002Fp>\u003Cp>GitHub is clearly treating the CLI as a serious control surface for Copilot workflows, not a side project. If you are already using hooks or MCP servers, this is a version worth testing early. If you are not, the new commands and session tools give you a good reason to start.\u003C\u002Fp>\u003Cp>The next question is whether GitHub keeps tightening the feedback loop between hooks, memory, and external tools without turning the CLI into something too complex to predict. Based on this release, that is the direction it is moving, and the users who feel it first will be the ones running the tool in real terminals, on real repos, every day.\u003C\u002Fp>","GitHub Copilot CLI 1.0.49 adds hook context, memory commands, Alpine support, and fixes for cursor, diffs, and terminal input.","github.com","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fcopilot-cli\u002Freleases",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1779355564584-gb9e.png","tools","en","c09e5d35-68f8-42eb-b482-5a988036bf51",[17,18,19,20,21],"GitHub Copilot CLI","release notes","MCP","terminal","hooks",[23,24,25],"1.0.49 fixes a hook bug where additionalContext was being dropped instead of reaching the model.","The release adds memory, session, chronicle, and rubber-duck commands for more control inside the CLI.","MCP, OAuth, Alpine Linux, and terminal rendering all get practical fixes that improve day-to-day use.",2,"2026-05-21T09:25:34.886502+00:00","2026-05-21T09:25:34.84+00:00","a7343b93-37cc-4634-a2bc-707f6275bdb6",{"tags":31,"relatedLang":40,"relatedPosts":44},[32,33,35,36,38],{"name":21,"slug":21},{"name":18,"slug":34},"release-notes",{"name":20,"slug":20},{"name":19,"slug":37},"mcp",{"name":17,"slug":39},"github-copilot-cli",{"id":15,"slug":41,"title":42,"language":43},"github-copilot-cli-1-0-49-hooks-memory-fixes-zh","GitHub Copilot CLI 1.0.49 修正 hooks 與記憶","zh",[45,51,57,63,69,75],{"id":46,"slug":47,"title":48,"cover_image":49,"image_url":49,"created_at":50,"category":13},"1e0d71a2-19ae-44f4-970b-d27f77ad5a8a","nvidia-lg-ai-collaboration-playbook-en","Nvidia and LG turn AI plans into a playbook","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781056992194-i3tx.png","2026-06-10T02:02:46.922181+00:00",{"id":52,"slug":53,"title":54,"cover_image":55,"image_url":55,"created_at":56,"category":13},"9db77f6f-0d31-4686-86d9-16eb9615633d","ollama-best-free-ai-path-2026-en","Ollama is the best free AI path in 2026 for real work","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781056075632-qzpq.png","2026-06-10T01:47:25.10989+00:00",{"id":58,"slug":59,"title":60,"cover_image":61,"image_url":61,"created_at":62,"category":13},"c12c0470-eb29-4e44-872d-c133a84a1bc8","awesome-production-ml-turns-chaos-into-stack-en","This MLOps list turns chaos into a stack","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781055237524-86fa.png","2026-06-10T01:33:15.495884+00:00",{"id":64,"slug":65,"title":66,"cover_image":67,"image_url":67,"created_at":68,"category":13},"58924f21-83f4-405d-8d9a-4af334e9d030","bentoml-turns-model-serving-into-python-apis-en","BentoML turns model serving into Python APIs","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781054304942-bxxs.png","2026-06-10T01:17:56.721066+00:00",{"id":70,"slug":71,"title":72,"cover_image":73,"image_url":73,"created_at":74,"category":13},"aa96e422-2b01-4480-b4ce-a646be8e0993","magenta-realtime-2-score-inside-daw-en","Magenta RealTime 2 lets you score in the DAW","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781046208039-ksdz.png","2026-06-09T23:02:56.428086+00:00",{"id":76,"slug":77,"title":78,"cover_image":79,"image_url":79,"created_at":80,"category":13},"c79bca38-50b2-4d80-9a48-7f4d1afd051a","open-source-ai-tools-beat-claude-paid-tiers-en","Open-source AI tools beat Claude’s paid tiers on value","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781045269190-a1ow.png","2026-06-09T22:47:20.7972+00:00",[82,87,92,97,102,107,112,117,122,127],{"id":83,"slug":84,"title":85,"created_at":86},"8008f1a9-7a00-4bad-88c9-3eedc9c6b4b1","surepath-ai-mcp-policy-controls-en","SurePath AI's New MCP Policy Controls Enhance AI Security","2026-03-26T01:26:52.222015+00:00",{"id":88,"slug":89,"title":90,"created_at":91},"27e39a8f-b65d-4f7b-a875-859e2b210156","mcp-standard-ai-tools-2026-en","MCP Standard in 2026: Integrating AI Tools","2026-03-26T01:27:43.127519+00:00",{"id":93,"slug":94,"title":95,"created_at":96},"165f9a19-c92d-46ba-b3f0-7125f662921d","rag-2026-transforming-enterprise-ai-en","How RAG in 2026 is Transforming Enterprise AI","2026-03-26T01:28:11.485236+00:00",{"id":98,"slug":99,"title":100,"created_at":101},"6a2a8e6e-b956-49d8-be12-cc47bdc132b2","mastering-ai-prompts-2026-guide-en","Mastering AI Prompts: A 2026 Guide for Developers","2026-03-26T01:29:07.835148+00:00",{"id":103,"slug":104,"title":105,"created_at":106},"3ab2c67e-4664-4c67-a013-687a2f605814","garry-tan-open-sources-claude-code-toolkit-en","Garry Tan Open-Sources a Claude Code Toolkit","2026-03-26T08:26:20.245934+00:00",{"id":108,"slug":109,"title":110,"created_at":111},"66a7cbf8-7e76-41d4-9bbf-eaca9761bf69","github-ai-projects-to-watch-in-2026-en","20 GitHub AI Projects to Watch in 2026","2026-03-26T08:28:09.752027+00:00",{"id":113,"slug":114,"title":115,"created_at":116},"9f332fda-eace-448a-a292-2283951eee71","practical-github-guide-learning-ml-2026-en","A Practical GitHub Guide to Learning ML in 2026","2026-03-27T01:16:50.125678+00:00",{"id":118,"slug":119,"title":120,"created_at":121},"1b1f637d-0f4d-42bd-974b-07b53829144d","aiml-2026-student-ai-ml-lab-repo-review-en","AIML-2026 Is a Bare-Bones Student Lab Repo","2026-03-27T01:21:51.661231+00:00",{"id":123,"slug":124,"title":125,"created_at":126},"6d1bf3f6-e191-4d30-b55b-8a0722fa6afe","ai-trending-github-repos-and-research-feeds-en","AI Trending Tracks Repos and Research Feeds","2026-03-27T01:31:35.709532+00:00",{"id":128,"slug":129,"title":130,"created_at":131},"010539a1-4c3a-4bd3-937a-26616422ee0d","awesome-ai-for-science-research-tools-map-en","Awesome AI for Science Is Becoming a Real Research Map","2026-03-27T01:46:50.89513+00:00"]