{"id":960,"date":"2026-04-25T05:48:43","date_gmt":"2026-04-25T12:48:43","guid":{"rendered":"https:\/\/caca.casz.org\/?p=960"},"modified":"2026-04-25T05:48:43","modified_gmt":"2026-04-25T12:48:43","slug":"github-com-alishahryar1-free-claude-code","status":"publish","type":"post","link":"https:\/\/caca.casz.org\/en\/blog\/uncategorized\/github-com-alishahryar1-free-claude-code\/","title":{"rendered":"github.com\/Alishahryar1\/free-claude-code"},"content":{"rendered":"<p><div class=\"ose- ose-uid-8e0001db8f8344fb436b07cf306b8ba2 ose-embedpress-responsive\" style=\"width:600px; height:550px; max-height:550px; max-width:100%; display:inline-block;\" data-embed-type=\"com\"><div class=\"github-embed github-embed-repository github-logo-mark\">    <p>        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\" target=\"_blank\">\t\t\t<strong>\t\t\t\tUse Claude Code, Codex, Pi, and OpenCode and more for free (1.3B+ free tokens) from your terminal, app, IDE, or phone like OpenClaw (voice supported + ToS friendly)\t\t\t<\/strong>\t\t<\/a>\t\t<br>        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\" target=\"_blank\">https:\/\/github.com\/Alishahryar1\/free-claude-code<\/a><br>        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\/network\" target=\"_blank\">8,675<\/a> forks.<br>        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\/stargazers\" target=\"_blank\">54,168<\/a> stars.<br>        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\/issues\" target=\"_blank\">381<\/a> open issues.<br>        <details open>            <summary>Recent commits:<\/summary>            <ul class=\"github_commits\">                                    <li class=\"github_commit\">                        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\/commit\/81fa340ecac5ce1ae8ba4ea60e7a5517224bfaee\" target=\"_blank\">Fix Windows Muse installation with empty PATH entries (#1729)## WhyWindows Muse installation fails when PATH contains an empty entry, suchas a trailing `;` or `;;`. PowerShell rejects the empty string beforeour existing check can handle it. The Muse uninstaller has the same bug.Fixes #1727.## HowAdd `AllowEmptyString` to the path helper&#039;s parameter in both scripts.This lets the existing empty-value check run and preserves other PATHentries and their order. Bump FCC to `6.2.2`.<\/a>, GitHub                    <\/li>                                    <li class=\"github_commit\">                        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\/commit\/defc7425296cb5f2e16a87758ab14cf51fedb7a7\" target=\"_blank\">Show Codex sub-agent Auto-review results in Code sessions (#1728)## WhyCode sessions hide Auto-review results and warnings from Codexsub-agents. A sub-agent&#039;s review can continue after the main reply andfinish while the user is already sending another message.## HowUse Codex&#039;s parent metadata to recognize the session&#039;s sub-agents andsave their reviews and warnings in the transcript. Keep each review inits original position and include pending reviews after refresh evenwhen more than 50 newer entries exist. When the native connection ends,stop showing unfinished reviews as active.Reconnect refreshes unfinished cards from saved history, including oldercards outside the newest page. When Codex reports a pending review againafter connection replacement, send its saved card and original turntogether so connected tabs can display it immediately.Handle a closed pipe during the parent lookup so shutdown completes andthe next message can open a replacement connection.&lt;!-- greptile_comment --&gt;&lt;!-- greptile_summary --&gt;&lt;h2&gt;&lt;ahref=&quot;https:\/\/app.greptile.com\/api\/retrigger?id=61923174&quot;&gt;&lt;picture&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: dark)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/RetriggerDark.svg?v=1&quot;&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: light)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/Retrigger.svg?v=1&quot;&gt;&lt;imgalt=&quot;Retrigger&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/Retrigger.svg?v=1&quot;align=&quot;right&quot;&gt;&lt;\/picture&gt;&lt;\/a&gt;&lt;ahref=&quot;https:\/\/app.greptile.com\/alishahryar1\/-\/pull-requests\/alishahryar1\/free-claude-code\/1728&quot;&gt;&lt;picture&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: dark)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptileDark.svg?v=1&quot;&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: light)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptile.svg?v=1&quot;&gt;&lt;imgalt=&quot;View in Greptile&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptile.svg?v=1&quot;align=&quot;right&quot;&gt;&lt;\/picture&gt;&lt;\/a&gt;Confidence Score: 5\/5&lt;\/h2&gt;Safe to merge.&lt;details&gt;&lt;summary&gt;&lt;h3&gt;Summary&lt;\/h3&gt;&lt;\/summary&gt;- The PR persists and displays Codex sub-agent auto-review results andwarnings in code-session transcripts. Active or requested review cardsare included outside the newest transcript page, and saved review cardsare reannounced when a replacement connection observes them.&lt;\/details&gt;&lt;!-- \/greptile_comment --&gt;<\/a>, GitHub                    <\/li>                                    <li class=\"github_commit\">                        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\/commit\/fef499a4f234f4c16d279b79b9bbd4e81fe495c7\" target=\"_blank\">Add provider and permission-mode controls to Code sessions (#1726)## WhyCode sessions combine provider and model selection and offer no way tochoose Codex&#039;s permission mode. Native Auto-review decisions are alsomissing from the conversation.## HowShow Provider, Model, Effort, Harness, and Mode in the session header.Choosing a provider filters the model list and requires an explicitmodel choice. Mode offers Use config, Ask, Auto-review, and Full access.Save the mode with the session and capture it for each turn. Returningto Use config restores the session&#039;s original native permissionsettings, including after an FCC restart. Save native Auto-reviewactions, decisions, and explanations in their original transcriptpositions and synchronize them across tabs.Add repeatable smoke coverage using installed Codex, plus an explicitlyselected live scenario that verifies the model&#039;s prices are zero.Release as 6.2.0.&lt;!-- greptile_comment --&gt;&lt;!-- greptile_summary --&gt;&lt;h2&gt;&lt;ahref=&quot;https:\/\/app.greptile.com\/api\/retrigger?id=61891089&quot;&gt;&lt;picture&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: dark)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/RetriggerDark.svg?v=1&quot;&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: light)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/Retrigger.svg?v=1&quot;&gt;&lt;imgalt=&quot;Retrigger&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/Retrigger.svg?v=1&quot;align=&quot;right&quot;&gt;&lt;\/picture&gt;&lt;\/a&gt;&lt;ahref=&quot;https:\/\/app.greptile.com\/alishahryar1\/-\/pull-requests\/alishahryar1\/free-claude-code\/1726&quot;&gt;&lt;picture&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: dark)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptileDark.svg?v=1&quot;&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: light)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptile.svg?v=1&quot;&gt;&lt;imgalt=&quot;View in Greptile&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptile.svg?v=1&quot;align=&quot;right&quot;&gt;&lt;\/picture&gt;&lt;\/a&gt;Confidence Score: 5\/5&lt;\/h2&gt;No blocking issues were identified; the reviewed permission-modebehavior is ready to merge.What we checked:- Documented the before-state where no permission fields existed becausemodes were not implemented. &lt;a href=&quot;https:\/\/www.greptile.com\/trex&quot;&gt;&lt;imgalt=&quot;T-Rex&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/trex\/trex_green.svg&quot;height=&quot;16&quot; align=&quot;absmiddle&quot;&gt;&lt;\/a&gt;- Validated the after-state showing three permission modes with theirendpoints: ask maps to on-request\/user\/:workspace, auto_review maps toon-request\/auto_review\/:workspace, and full_access maps tonever\/user\/:danger-full-access. &lt;ahref=&quot;https:\/\/www.greptile.com\/trex&quot;&gt;&lt;img alt=&quot;T-Rex&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/trex\/trex_green.svg&quot;height=&quot;16&quot; align=&quot;absmiddle&quot;&gt;&lt;\/a&gt;- Noted that config restores capture granular policy, user, and customprofile as part of the updated permission setup. &lt;ahref=&quot;https:\/\/www.greptile.com\/trex&quot;&gt;&lt;img alt=&quot;T-Rex&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/trex\/trex_green.svg&quot;height=&quot;16&quot; align=&quot;absmiddle&quot;&gt;&lt;\/a&gt;&lt;details&gt;&lt;summary&gt;&lt;h3&gt;Summary&lt;\/h3&gt;&lt;\/summary&gt;- Adds provider-aware model selection and persisted permission modes forCode sessions.- Preserves captured Codex permission defaults for configuration modeand applies the expected permissions for ask, auto-review, andfull-access modes.- Migrates existing SQLite session data to store session and run modesplus native permission defaults.## Merge safetyNo issues requiring changes were identified. The reviewed permission andpersistence behavior is ready to merge.&lt;\/details&gt;&lt;!-- \/greptile_comment --&gt;<\/a>, GitHub                    <\/li>                                    <li class=\"github_commit\">                        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\/commit\/bdbff1cacd8e09583482b7cb8a5f38d9b0f23b97\" target=\"_blank\">Keep Code session prompts in conversation order (#1720)## WhyAfter a Code session answers a question or approves an action, its cardstays below the conversation. Every later reply and user message appearsabove it. FCC also stores prompts without a transcript position, sorefreshing cannot put them back where they were asked.## HowSave each prompt together with an ordered transcript entry in one SQLitetransaction. Render the card among messages and tools, reusing its formwhen its status changes. Include its saved position in live updates andpaginated snapshots so tabs and refreshes show the same order.Give existing cards a position at the end of their original turn. Whenthat turn cannot be identified, place them at the end of the savedconversation. Preserve existing messages, prompt states and IDs duringthe upgrade.<\/a>, GitHub                    <\/li>                                    <li class=\"github_commit\">                        <a href=\"https:\/\/github.com\/Alishahryar1\/free-claude-code\/commit\/f094ae217f5b8df5544467f0f3849bc5f3c19cb0\" target=\"_blank\">Preserve reasoning history when switching providers (#1717)## WhySwitching an existing Codex conversation from OpenCode to OpenRouter ora connected OpenAI account can fail with `invalid_encrypted_content` oran invalid reasoning-item ID. FCC sends reasoning data that belongs tothe original provider. Conversion can also drop readable reasoning, misssummaries, or attach reasoning to the wrong tool calls.## HowKeep each original reasoning record and its source connection in theharness&#039;s saved history. Restore its native data when returning to thatconnection. For another provider, send the reasoning it accepts andretain other readable reasoning as labeled conversation context.Save accompanying plaintext together with encrypted details. Readsummary fields as summaries, avoid repeating alternate copies of thesame text, and recover visible text from saved replies whose encodedrecord lacks it. Preserve the original native detail sequence andtool-call associations.Apply this across FCC&#039;s Messages and Responses APIs and all threeupstream protocols. For older history, correct only the specificallyrejected reasoning record before a reply becomes visible, within theexisting retry limit.DeepSeek keeps the selected effort and fills missing required reasoningfields with empty strings. Remove its old history-driven thinking-offchecks. Keep tool argument mappings for the entire request so NIMretries and tool repair return the harness&#039;s original argument names.&lt;!-- greptile_comment --&gt;&lt;details open&gt;&lt;summary&gt;&lt;h3&gt;Greptile Summary&lt;\/h3&gt;&lt;\/summary&gt;This update completes cross-provider reasoning-history preservation andretry behavior introduced by the PR.- Retains readable reasoning alongside provider-native continuationdetails while distinguishing summaries from full reasoning.- Restores native reasoning when returning to its source connection andprojects readable context when changing providers.- Preserves request-wide tool argument aliases across compatibilitycorrections, history recovery, and stream reopening.- Adds regression coverage for incomplete saved records, alternatereasoning representations, summary fragments, reasoning-groupboundaries, and NIM retry paths.&lt;\/details&gt;&lt;h3&gt;Confidence Score: 5\/5&lt;\/h3&gt;Safe to merge.There are no outstanding findings requiring changes.&lt;sub&gt;Reviews (2): Last reviewed commit: [&quot;Preserve readable replay andtoolaliase...&quot;](https:\/\/github.com\/alishahryar1\/free-claude-code\/commit\/17323ef94563c34577319c9b9b87201ca8d64d31)| [Re-triggerGreptile](https:\/\/app.greptile.com\/api\/retrigger?id=61443330)&lt;\/sub&gt;**Context used:**- Knowledge Base &mdash; [Vendor provideradapters](https:\/\/app.greptile.com\/alishahryar1\/-\/custom-context\/knowledge-base\/alishahryar1\/free-claude-code\/-\/docs\/provider-adapter-catalog.md)- Knowledge Base &mdash; [Protocol adaptation andstreaming](https:\/\/app.greptile.com\/alishahryar1\/-\/custom-context\/knowledge-base\/alishahryar1\/free-claude-code\/-\/docs\/protocol-adapters.md)&lt;!-- \/greptile_comment --&gt;<\/a>, GitHub                    <\/li>                            <\/ul>        <\/details>    <\/p><\/div><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Use Claude Code, Codex, Pi, and OpenCode and more for free (1.3B+ free tokens) from your terminal, app, IDE, or phone like OpenClaw (voice supported + ToS friendly) https:\/\/github.com\/Alishahryar1\/free-claude-code 8,675 forks. 54,168 stars. 381 open issues. Recent commits: Fix Windows Muse installation with empty PATH entries (#1729)## WhyWindows Muse installation fails when PATH contains an empty entry, suchas a trailing `;` or `;;`. PowerShell rejects the empty string beforeour existing check can handle it. The Muse uninstaller has the same bug.Fixes #1727.## HowAdd `AllowEmptyString` to the path helper&#039;s parameter in both scripts.This lets the existing empty-value check run and preserves other PATHentries and their order. Bump FCC to `6.2.2`., GitHub Show Codex sub-agent Auto-review results in Code sessions (#1728)## WhyCode sessions hide Auto-review results and warnings from Codexsub-agents. A sub-agent&#039;s review can continue after the main reply andfinish while the user is already sending another message.## HowUse Codex&#039;s parent metadata to recognize the session&#039;s sub-agents andsave their reviews and warnings in the transcript. Keep each review inits original position and include pending reviews after refresh evenwhen more than 50 newer entries exist. When the native connection ends,stop showing unfinished reviews as active.Reconnect refreshes unfinished cards from saved history, including oldercards outside the newest page. When Codex reports a pending review againafter connection replacement, send its saved card and original turntogether so connected tabs can display it immediately.Handle a closed pipe during the parent lookup so shutdown completes andthe next message can open a replacement connection.&lt;!&#8211; greptile_comment &#8211;&gt;&lt;!&#8211; greptile_summary &#8211;&gt;&lt;h2&gt;&lt;ahref=&quot;https:\/\/app.greptile.com\/api\/retrigger?id=61923174&quot;&gt;&lt;picture&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: dark)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/RetriggerDark.svg?v=1&quot;&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: light)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/Retrigger.svg?v=1&quot;&gt;&lt;imgalt=&quot;Retrigger&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/Retrigger.svg?v=1&quot;align=&quot;right&quot;&gt;&lt;\/picture&gt;&lt;\/a&gt;&lt;ahref=&quot;https:\/\/app.greptile.com\/alishahryar1\/-\/pull-requests\/alishahryar1\/free-claude-code\/1728&quot;&gt;&lt;picture&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: dark)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptileDark.svg?v=1&quot;&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: light)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptile.svg?v=1&quot;&gt;&lt;imgalt=&quot;View in Greptile&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptile.svg?v=1&quot;align=&quot;right&quot;&gt;&lt;\/picture&gt;&lt;\/a&gt;Confidence Score: 5\/5&lt;\/h2&gt;Safe to merge.&lt;details&gt;&lt;summary&gt;&lt;h3&gt;Summary&lt;\/h3&gt;&lt;\/summary&gt;- The PR persists and displays Codex sub-agent auto-review results andwarnings in code-session transcripts. Active or requested review cardsare included outside the newest transcript page, and saved review cardsare reannounced when a replacement connection observes them.&lt;\/details&gt;&lt;!&#8211; \/greptile_comment &#8211;&gt;, GitHub Add provider and permission-mode controls to Code sessions (#1726)## WhyCode sessions combine provider and model selection and offer no way tochoose Codex&#039;s permission mode. Native Auto-review decisions are alsomissing from the conversation.## HowShow Provider, Model, Effort, Harness, and Mode in the session header.Choosing a provider filters the model list and requires an explicitmodel choice. Mode offers Use config, Ask, Auto-review, and Full access.Save the mode with the session and capture it for each turn. Returningto Use config restores the session&#039;s original native permissionsettings, including after an FCC restart. Save native Auto-reviewactions, decisions, and explanations in their original transcriptpositions and synchronize them across tabs.Add repeatable smoke coverage using installed Codex, plus an explicitlyselected live scenario that verifies the model&#039;s prices are zero.Release as 6.2.0.&lt;!&#8211; greptile_comment &#8211;&gt;&lt;!&#8211; greptile_summary &#8211;&gt;&lt;h2&gt;&lt;ahref=&quot;https:\/\/app.greptile.com\/api\/retrigger?id=61891089&quot;&gt;&lt;picture&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: dark)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/RetriggerDark.svg?v=1&quot;&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: light)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/Retrigger.svg?v=1&quot;&gt;&lt;imgalt=&quot;Retrigger&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/Retrigger.svg?v=1&quot;align=&quot;right&quot;&gt;&lt;\/picture&gt;&lt;\/a&gt;&lt;ahref=&quot;https:\/\/app.greptile.com\/alishahryar1\/-\/pull-requests\/alishahryar1\/free-claude-code\/1726&quot;&gt;&lt;picture&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: dark)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptileDark.svg?v=1&quot;&gt;&lt;sourcemedia=&quot;(prefers-color-scheme: light)&quot;srcset=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptile.svg?v=1&quot;&gt;&lt;imgalt=&quot;View in Greptile&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/badges\/ViewInGreptile.svg?v=1&quot;align=&quot;right&quot;&gt;&lt;\/picture&gt;&lt;\/a&gt;Confidence Score: 5\/5&lt;\/h2&gt;No blocking issues were identified; the reviewed permission-modebehavior is ready to merge.What we checked:- Documented the before-state where no permission fields existed becausemodes were not implemented. &lt;a href=&quot;https:\/\/www.greptile.com\/trex&quot;&gt;&lt;imgalt=&quot;T-Rex&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/trex\/trex_green.svg&quot;height=&quot;16&quot; align=&quot;absmiddle&quot;&gt;&lt;\/a&gt;- Validated the after-state showing three permission modes with theirendpoints: ask maps to on-request\/user\/:workspace, auto_review maps toon-request\/auto_review\/:workspace, and full_access maps tonever\/user\/:danger-full-access. &lt;ahref=&quot;https:\/\/www.greptile.com\/trex&quot;&gt;&lt;img alt=&quot;T-Rex&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/trex\/trex_green.svg&quot;height=&quot;16&quot; align=&quot;absmiddle&quot;&gt;&lt;\/a&gt;- Noted that config restores capture granular policy, user, and customprofile as part of the updated permission setup. &lt;ahref=&quot;https:\/\/www.greptile.com\/trex&quot;&gt;&lt;img alt=&quot;T-Rex&quot;src=&quot;https:\/\/greptile-static-assets.s3.amazonaws.com\/trex\/trex_green.svg&quot;height=&quot;16&quot; align=&quot;absmiddle&quot;&gt;&lt;\/a&gt;&lt;details&gt;&lt;summary&gt;&lt;h3&gt;Summary&lt;\/h3&gt;&lt;\/summary&gt;- Adds provider-aware model selection and persisted permission modes forCode sessions.- Preserves captured Codex permission defaults for configuration modeand applies the expected permissions for ask, auto-review, andfull-access modes.- Migrates existing SQLite session data to store session and run modesplus native permission defaults.## Merge safetyNo issues requiring changes were identified. The reviewed permission andpersistence behavior is ready to merge.&lt;\/details&gt;&lt;!&#8211; \/greptile_comment &#8211;&gt;, GitHub Keep Code session prompts in conversation order (#1720)## WhyAfter a Code session answers a question or approves an action, its cardstays below the conversation. Every later reply and user message appearsabove it. FCC also stores prompts without a transcript position, sorefreshing cannot put them back where they were asked.## HowSave each prompt together with an ordered transcript entry in one SQLitetransaction. Render the card among messages and tools, reusing its formwhen its status changes. Include its saved position in live updates andpaginated snapshots so tabs and refreshes show the same order.Give existing cards a position at the end of their original turn. Whenthat turn cannot be identified, place them at the end of the savedconversation. Preserve existing messages, prompt states and IDs duringthe upgrade., GitHub Preserve reasoning history when switching providers (#1717)## WhySwitching an existing Codex conversation from OpenCode to OpenRouter ora connected OpenAI account can fail with `invalid_encrypted_content` oran invalid reasoning-item ID. FCC sends reasoning data that belongs tothe original provider. Conversion can also drop readable reasoning, misssummaries, or attach reasoning to the wrong tool calls.## HowKeep each original reasoning record and its source connection in theharness&#039;s saved history. Restore its native data when returning to thatconnection. For another provider, send the reasoning it accepts andretain other readable reasoning as labeled conversation context.Save accompanying plaintext together with encrypted details. Readsummary fields as summaries, avoid repeating alternate copies of thesame text, and recover visible text from saved replies whose encodedrecord lacks it. Preserve the original native detail sequence andtool-call associations.Apply this across FCC&#039;s Messages and Responses APIs and all threeupstream protocols. For older history, correct only the specificallyrejected reasoning record before a reply becomes visible, within theexisting retry limit.DeepSeek keeps the selected effort and fills missing required reasoningfields with empty strings. Remove its old history-driven thinking-offchecks. Keep tool argument mappings for the entire request so NIMretries and tool repair return the harness&#039;s original argument names.&lt;!&#8211; greptile_comment &#8211;&gt;&lt;details open&gt;&lt;summary&gt;&lt;h3&gt;Greptile Summary&lt;\/h3&gt;&lt;\/summary&gt;This update completes cross-provider reasoning-history preservation andretry behavior introduced by the PR.- Retains readable reasoning alongside provider-native continuationdetails while distinguishing summaries from full reasoning.- Restores native reasoning when returning to its source connection andprojects readable context when changing providers.- Preserves request-wide tool argument aliases across compatibilitycorrections, history recovery, and stream reopening.- Adds regression coverage for incomplete saved records, alternatereasoning representations, summary fragments, reasoning-groupboundaries, and NIM retry paths.&lt;\/details&gt;&lt;h3&gt;Confidence Score: 5\/5&lt;\/h3&gt;Safe to merge.There are no outstanding findings requiring changes.&lt;sub&gt;Reviews (2): Last reviewed commit: [&quot;Preserve readable replay andtoolaliase&#8230;&quot;](https:\/\/github.com\/alishahryar1\/free-claude-code\/commit\/17323ef94563c34577319c9b9b87201ca8d64d31)| [Re-triggerGreptile](https:\/\/app.greptile.com\/api\/retrigger?id=61443330)&lt;\/sub&gt;**Context used:**- Knowledge Base &mdash; [Vendor provideradapters](https:\/\/app.greptile.com\/alishahryar1\/-\/custom-context\/knowledge-base\/alishahryar1\/free-claude-code\/-\/docs\/provider-adapter-catalog.md)- Knowledge Base &mdash; [Protocol adaptation andstreaming](https:\/\/app.greptile.com\/alishahryar1\/-\/custom-context\/knowledge-base\/alishahryar1\/free-claude-code\/-\/docs\/protocol-adapters.md)&lt;!&#8211; \/greptile_comment &#8211;&gt;, GitHub<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","_ayudawp_aiss_exclude":false,"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-960","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/posts\/960","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/comments?post=960"}],"version-history":[{"count":1,"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/posts\/960\/revisions"}],"predecessor-version":[{"id":961,"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/posts\/960\/revisions\/961"}],"wp:attachment":[{"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/media?parent=960"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/categories?post=960"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/caca.casz.org\/en\/wp-json\/wp\/v2\/tags?post=960"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}