Files

12 KiB
Raw Permalink Blame History

CC Switch v4.0.17

今回のリリースでは、4.0.16 で生じた 2 つの問題を修正し、トレイのクイックパネルを改善しました。軽量モードで再びトレイパネルのメモリが解放されるようになり、Windows の WebView2 プロセスも正常に終了します。Codex がルーティングに入るときに期限切れの古い ChatGPT ログインが戻され、ログイン画面で止まることもなくなりました。トレイパネルはアプリ間でホバーしても揺れなくなり、拡大率の高い Windows や小さな画面でも最後まで表示されます。利用枠のバーがそろい、リセットまでの残り時間を表示し、残高は緑色で示します。Windows でトレイアイコンを左クリックしたときは、再びメイン画面が開きます。Hermes のプロバイダーキーが組み込みプロバイダーと同じ名前のときは、フォームに警告が出るようになりました。このほか、Windows で終了後もルーティングのポートが使用中のままになる、Codex のリモート圧縮の使用量が 0 として記録される、複数の MCP サーバーを同時に切り替えると一部が消える、URL だけの MCP サーバーが Hermes と OpenCode に空の状態で同期される、TOML 文字列内の曲がった引用符が書き換えられる、データカプセルの WebDAV 同期が失敗する、macOS で入力した API キーの先頭が大文字に変わる、ポータブル版のフォルダーに MSI をインストールしてもポータブル版として扱われる、といった問題を修正しました。4.0 の更新内容の全体は v4.0 リリースノート をご覧ください。


改善

Hermes のプロバイダーキーが組み込みプロバイダーと同じ名前のときに警告を表示。Hermes は組み込みプロバイダーと同じ名前のキー(deepseek、openrouter など)を見ると組み込みのほうを使い、そのプロバイダー専用の環境変数の API キーを求めるため、このカードのエンドポイントとキーは使われません。4.0.16 で修正したのは MiniMax の 2 つのプリセットだけでした(#8538)。入力したキーが Hermes の組み込みプロバイダーの ID のときは、入力欄の下に警告が出て cc-switch-<キー> を提案します。すでに追加済みでキーを変更できないカードでは、別のキーで追加し直すよう案内します。kimi などの別名は影響を受けず、警告も出ません。警告が出ても保存はできます。

トレイパネルの利用枠表示。各段階のラベル、バー、リセット時刻が 3 列にそろい、バーの始点と終点が一致し、長さも伸びました。リセット時刻は日付ではなく残り時間で表示します(例:「1日23時間後にリセット」)。従量課金の残高は金額だけを緑色で示し、プロバイダーカードと同じ表示になりました。残高を使い切ったときは引き続き警告色で表示します。

Windows でトレイアイコンを左クリックすると再びメイン画面が開くように(#8572)。右クリックでは設定で選んだトレイの表示(パネルまたはメニュー)が開きます。macOS は変わらず、左右どちらのクリックでも選んだ表示が開きます。

修正

  • 軽量モードでもトレイパネルがメモリを使い続けていた問題(#8612)。4.0.16 からトレイパネルが既定で有効になりました。パネルは独立したウィンドウで、一度開いた後は隠されるだけで閉じられないため、軽量モードに入っても Windows の WebView2 プロセスが終了しませんでした。軽量モードではパネルを閉じるとすぐに解放し、次にトレイアイコンをクリックしたときに開き直します。
  • ルーティングに入った後、Codex が ChatGPT のログイン画面で止まる問題(#8573)。4.0.16 から、サードパーティのルーティングに入るときに auth.json にログインがなければ、最後に退避したログインを戻していました。このログインは何か月も前に退避され、とうに期限切れになっていることがあり、Codex デスクトップ版は更新に失敗し続け、ルーティングに出入りするたびにまた戻されていました。期限切れのログインは戻さず退避したまま残し、公式カードに切り替えたときは従来どおり戻します。
  • トレイパネルがホバー中に揺れる、拡大率の高い Windows で一部が表示されない問題(#8572、#8595、#8549、#8553、#8564)。2 列の高さをメインパネルに合わせ、プロバイダーの多いリストは右の列の中でスクロールするようにしました。アプリ間でホバーしても行がポインターの下に移動せず、アプリが 1 つだけのときに大きな余白が出ることもなくなりました。Windows ではモニターの拡大率に合わせてサイズを換算し、パネルを狭めて画面の作業領域内に収めるため、下部の「メインウィンドウを開く」と「終了」がはみ出すことはありません。拡大率の異なる別のモニターに移った後も、最初に開いたときから正しく表示されます。
  • Windows で CC Switch を終了してもルーティングのポートが使用中のままで、次回の起動時に os error 10048 になる問題(#8552)。CC Switch が起動したターミナルやコマンドラインツールが待ち受けポートを引き継ぎ、CC Switch の終了後もポートを保持していたため、次回の起動では再起動かポートの変更までは直結に戻るしかありませんでした。これらの子プロセスは待ち受けポートを引き継がなくなりました。
  • Codex のリモート圧縮の使用量が 0 として記録される問題(#8479)。Codex 0.153 以降、リモート圧縮の使用量は別の種類のレコードに書かれており、これを読んでいなかったため、該当するリクエストは 0 として扱われていました。現在は正しく集計します。アップグレード前に読み取り済みのレコードはそのままです。
  • 複数の MCP サーバーを同時に切り替えると、一部が設定ファイルに書き込まれない問題(#8580)。同じ設定ファイルへの同時の書き込みが互いに上書きし合い、画面では有効なのに設定ファイルには入っていない状態になっていました。現在は順番に書き込みます。
  • URL だけの MCP サーバーが Hermes と OpenCode に空の状態で同期される問題(#8579)。JSON モードで貼り付けたり、ディープリンクでインポートしたりした、url だけで type のないサーバーはローカルコマンドとして扱われていました。そのため同期後、Hermes には enabled: true だけ、OpenCode にはコマンドが空のエントリが入り、画面には同期成功と表示されていました。現在は Codex と同じく、URL があってコマンドのないサーバーをリモートサーバーとして扱います。
  • TOML 文字列内の曲がった引用符(中国語の引用符を含む)がまっすぐな引用符に書き換えられる問題(#8559)。中国語の入力方式に対応するため、MCP のインポートと Codex の設定エディターでは曲がった引用符をまっすぐな引用符に変換しますが、文字列の中の引用符まで変換していたため、"don’t" が "don't" に変わり、有効な設定が拒否されることもありました。現在は文字列の区切りとして使われた引用符だけを変換し、文字列の中の引用符はそのまま残します。中国語の入力方式で直接引用符を入力しても引き続き使えます。
  • データカプセルの WebDAV 同期のアップロードが 500 で失敗する問題(#8554)。同期のマニフェストを汎用のファイル形式でアップロードするようにしました。内容は変わらないため、新旧のバージョンで互いに読み取れます。S3 同期には影響しません。
  • macOS で入力した API キーの先頭が自動で大文字に変わる問題。 キーを平文で表示しているとき、入力した sk-… がシステムによって Sk-… に変わったまま保存され、認証に失敗することがありました。この入力欄では自動大文字化、自動修正、スペルチェックをオフにしました。貼り付けたキーは影響を受けません。
  • ポータブル版のフォルダーに MSI をインストールしてもポータブル版として扱われ、更新は手動ダウンロードしかできなかった問題(#8529、#3132)。インストール時にフォルダーに残ったポータブル版の目印 portable.ini を削除するようにしたため、インストール後はアプリ内で更新できます。アンインストール時にはこのファイルを削除しません。

アップグレードに関する注意

データベースの構造は変わっていません。 バージョンは 20 のままです。

  • Windows でトレイアイコンを左クリックすると、再びメイン画面が開きます(4.0.16 ではパネル表示のときはパネルが開いていました。メニュー表示では以前からこの動作です)。右クリックでは「設定 → 一般 → トレイの表示」で選んだ表示が開きます。
  • Codex のリモート圧縮の使用量は、アップグレード後に読み取ったレコードから集計します。アップグレード前に読み取り済みのレコードはさかのぼって集計しません。

謝辞

@funkpopo(トレイパネルのスクロールと拡大率への対応)、@Chaoqi31(Codex のリモート圧縮の使用量)、@chonngyi(ポータブル版のフォルダーへの MSI のインストール)の貢献に感謝します。

問題の報告、再現情報や修正のアイデアの提供に協力してくださった @SamPheng、@xinxinxiaoxin、@XinwangTao、@ramonmi、@Jdker22、@Geneslves、@Jinmoli、@nanfenggushi、@fereverlove、@hulkbig、@AngryBigCat、@QC2168 に感謝します。

技術的な詳細は CHANGELOG をご覧ください。