# CC Switch v3.12.3

> GitHub Copilot リバースプロキシ、macOS コード署名と公証、Reasoning Effort マッピング、Tool Search 環境変数トグル、Skill バックアップ/リストア、OpenCode SQLite バックエンド

**[中文版 →](v3.12.3-zh.md) | [English →](v3.12.3-en.md)**

---

## 概要

CC Switch v3.12.3 は、GitHub Copilot リバースプロキシと Copilot Auth Center を追加し、Copilot トークンを使用した Claude/OpenAI API へのアクセスを実現しました。macOS ビルドに Apple コード署名と公証を導入し、「開発元を確認できません」の警告を解消しました。Reasoning Effort マッピングにより、Claude の thinking budget を OpenAI 互換の reasoning_effort パラメータに自動変換します。Tool Search は従来のバイナリパッチ方式から Claude 2.1.76+ ネイティブの `ENABLE_TOOL_SEARCH` 環境変数トグルに移行し、共通設定エディタから切り替え可能になりました。OpenCode バックエンドを JSON から SQLite に移行し、Skill バックアップ/リストアライフサイクル、プロキシ gzip 圧縮、o シリーズモデル互換性の改善も含まれます。

**リリース日**: 2026-03-24

**更新規模**: 36 commits | 107 files changed | +9,124 / -802 lines

---

## ハイライト

- **GitHub Copilot リバースプロキシ**: Copilot トークンを使用して Claude/OpenAI API にアクセスするリバースプロキシを追加。Copilot Auth Center でトークンの取得と管理が可能（[⚠️ リスクに関する注意事項](#️-リスクに関する注意事項)）
- **macOS コード署名と公証**: macOS ビルドが Apple のコード署名と公証に対応し、初回起動時の警告なしでインストール可能に。DMG インストーラーを新たに提供
- **Reasoning Effort マッピング**: プロキシ層での自動マッピング — 明示的な `output_config.effort` を優先し、`budget_tokens` 閾値（<4000→low, 4000–16000→medium, ≥16000→high）にフォールバック。o シリーズおよび GPT-5+ モデルに対応
- **Tool Search 環境変数トグル**: バイナリパッチ方式を廃止し、Claude 2.1.76+ ネイティブの `ENABLE_TOOL_SEARCH` 環境変数による切り替えに移行。共通設定エディタから設定可能
- **Skill バックアップ/リストアライフサイクル**: アンインストール前に Skill ファイルを自動バックアップ。バックアップリスト、リストア、削除の管理機能を追加
- **OpenCode SQLite バックエンド**: OpenCode に SQLite セッションストレージを追加（既存の JSON バックエンドと併存）。ID 競合時は SQLite を優先するデュアルバックエンドスキャン
- **Codex 1M コンテキストウィンドウトグル**: 設定エディタでワンクリックで `model_context_window = 1000000` を設定可能。`model_auto_compact_token_limit` も自動設定
- **自動アップグレード無効化トグル**: Claude 共通設定エディタに `DISABLE_AUTOUPDATER` 環境変数のチェックボックスを追加し、Claude Code の自動アップグレードを防止
- **プロキシ Gzip 圧縮**: 非ストリーミングプロキシリクエストが gzip 圧縮を自動ネゴシエーションし、帯域幅消費を削減
- **o シリーズモデル互換性**: Chat Completions プロキシが o1/o3/o4-mini モデルに `max_completion_tokens` を正しく使用。Responses API は正しい `max_output_tokens` フィールドを維持
- **Skills インポートの刷新**: ファイルシステムベースの暗黙的なアプリ推論を明示的な `ImportSkillSelection` に置き換え、複数アプリの誤った有効化を防止
- **Ghostty ターミナルサポート**: Ghostty ターミナルでの Claude セッション復元を修正

---

## 新機能

### GitHub Copilot リバースプロキシ

GitHub Copilot トークンを使用して Claude API および OpenAI API にアクセスするリバースプロキシ機能を追加しました。

- Copilot のアクセストークンを利用し、Claude Code や Codex などのクライアントからプロキシ経由で API リクエストを転送
- Copilot 固有のリクエストフィンガープリントとヘッダー処理に対応
- プロバイダープリセットに Copilot 用テンプレートを追加

### Copilot Auth Center

Copilot トークンの取得と管理を行う認証センターを追加しました。

- GitHub デバイスフローによるトークン取得をサポート
- トークンの有効期限管理と自動リフレッシュ
- フロントエンドから直接トークンステータスの確認と再認証が可能

### Reasoning Effort マッピング

OpenAI o シリーズおよび GPT-5+ モデル向けのプロキシ層自動マッピング機能を追加しました。

- 二段階の解決ロジック：明示的な `output_config.effort` を優先し、thinking `budget_tokens` 閾値（<4000→low, 4000–16000→medium, ≥16000→high）にフォールバック
- Chat Completions と Responses API の両パスをカバー、17 個のユニットテスト付き

### Tool Search 環境変数トグル

Claude CLI Tool Search の有効化/無効化を環境変数で制御する設定を追加しました。

- Claude 2.1.76+ で導入されたネイティブの `ENABLE_TOOL_SEARCH` 環境変数を使用
- 共通設定（Common Config）エディタから直接トグル可能
- 従来のバイナリパッチ方式は不要になり、CLI アップデート時の再適用も不要

### Skill アンインストール時の自動バックアップ

アンインストール前に Skill ファイルを自動バックアップし、意図しないデータ損失を防止します。

- バックアップは `~/.cc-switch/skill-backups/` に保存され、すべての skill ファイルと元のメタデータを含む `meta.json` が含まれます
- 古いバックアップは自動的にプルーニングされ、最大 20 個を保持
- バックアップパスはフロントエンドに返され、成功トーストに表示

### Skill バックアップのリストアと削除

アンインストール時に作成された Skill バックアップの管理コマンドを追加しました。

- すべての利用可能な skill バックアップをメタデータ付きで一覧表示
- リストアはファイルを SSOT にコピーし、DB レコードを保存し、現在のアプリに同期。失敗時は自動ロールバック
- 削除は確認ダイアログの後にバックアップディレクトリを削除
- ConfirmDialog にネストされたダイアログスタッキングをサポートする設定可能な zIndex プロパティを追加

### OpenCode SQLite バックエンド

OpenCode に SQLite セッションストレージサポートを追加しました（既存の JSON バックエンドと併存）。

- デュアルバックエンドスキャン、ID 競合時は SQLite を優先
- アトミックなセッション削除とパス検証
- JSON バックエンドは後方互換性のため引き続き機能

### Codex 1M コンテキストウィンドウトグル

設定エディタに Codex 1M コンテキストウィンドウのワンクリックトグルを追加しました。

- チェックボックスで `config.toml` に `model_context_window = 1000000` を設定
- 有効化時に `model_auto_compact_token_limit = 900000` を自動設定
- 無効化時は両フィールドをクリーンに削除

### 自動アップグレード無効化トグル

Claude 共通設定エディタに自動アップグレードを無効化するチェックボックスを追加しました。

- 有効化時に `DISABLE_AUTOUPDATER=1` 環境変数を設定し、Claude Code の自動アップグレードを防止
- Teammates モード、Tool Search、高強度思考トグルと同じ行に表示

### macOS コード署名と公証

macOS ビルドに Apple のコード署名と公証を導入しました。

- Apple Developer ID による署名と Apple 公証サービスによる公証を実施
- 初回起動時の「開発元を確認できません」警告が不要に
- DMG インストーラーを新たに提供し、ドラッグ＆ドロップでのインストールに対応
- CI/CD パイプラインに署名・公証ステップを統合

---

## 変更

### Skills キャッシュ戦略の最適化

Skills のキャッシュ戦略を最適化し、パフォーマンスと信頼性を向上しました。

- キャッシュの有効期限管理とインバリデーション戦略を改善
- 不要なキャッシュ再構築を削減し、起動時間を短縮

### Claude 4.6 コンテキストウィンドウ更新

Claude 4.6 モデルのコンテキストウィンドウサイズを更新しました。

- Claude 4.6 の最新コンテキストウィンドウサイズをプリセットに反映

### MiniMax M2.7 アップグレード

MiniMax モデルプリセットを M2.7 にアップグレードしました。

- MiniMax プロバイダープリセットのモデル ID とパラメータを M2.7 に更新

### Xiaomi MiMo アップグレード

Xiaomi MiMo モデルプリセットをアップグレードしました。

- MiMo プロバイダープリセットのモデル ID とパラメータを最新版に更新

### AddProviderDialog の簡素化

- 冗長な OAuth タブを削除し、ダイアログを 3 タブから 2 タブ（アプリ固有 + ユニバーサル）に簡素化

### プロバイダーフォームの高度なオプション折りたたみ

- Claude プロバイダーフォームのモデルマッピング、API フォーマットなどの高度なフィールドが未入力時にデフォルトで折りたたまれるように変更
- プリセットが値を入力すると自動展開。手動クリア時は自動折りたたみしない

### プロキシ Gzip 圧縮

非ストリーミングプロキシリクエストが gzip 圧縮をサポートし、帯域幅消費を削減しました。

- 非ストリーミングリクエストは reqwest が gzip を自動ネゴシエーションし、レスポンスを透過的に解凍
- ストリーミングリクエストは中断された SSE ストリームの解凍エラーを避けるため、保守的に `Accept-Encoding: identity` を維持

### o1/o3 モデル互換性

プロキシ転送が OpenAI o シリーズモデルのトークンパラメータを正しく処理するようになりました。

- Chat Completions パスが o1/o3/o4-mini モデルに `max_tokens` の代わりに `max_completion_tokens` を使用 (#1451、@Hemilt0n に感謝)
- Responses API パスが正しい `max_output_tokens` フィールドを維持し、`max_completion_tokens` の誤った注入を防止

### OpenCode モデルバリアント

- OpenCode のモデルバリアントを options 内部ではなくプリセットのトップレベルに配置し、発見しやすさを向上 (#1317)

### Skills インポートフロー

Skills インポートフローが正確性とクリーンアップのためにリワークされました。

- ファイルシステムベースの暗黙的なアプリ推論を明示的な `ImportSkillSelection` に置き換え、同じ skill ディレクトリが複数アプリパスに存在する場合の複数アプリ誤有効化を防止
- `sync_to_app` に調整ロジックを追加し、無効化/孤立したシンボリックリンクを削除
- MCP `sync_all_enabled` がライブ設定から無効化されたサーバーを削除するように改善
- スキーママイグレーションがレガシーアプリマッピングのスナップショットを保持し、損失のある再構築を回避

---

## バグ修正

### WebDAV パスワードの消失

- 無関係な設定保存時に WebDAV パスワードがサイレントにクリアされる問題を修正

### ツールメッセージのパース

- プロキシのツールメッセージパース処理の不具合を修正し、特定のツール呼び出しパターンでのエラーを解消

### ダークモードの表示

- ダークモードでの一部 UI コンポーネントの表示不具合を修正

### Copilot リクエストフィンガープリント

- Copilot リバースプロキシのリクエストフィンガープリント生成の不具合を修正し、認証エラーを解消

### プロバイダーフォームの二重送信

- プロバイダー追加/編集フォームでの高速連続クリックによる重複送信を防止 (#1352、@Hexi1997 に感謝)

### Ghostty ターミナルセッション復元

- Ghostty ターミナルでの Claude セッション復元の失敗を修正 (#1506、@canyonsehun に感謝)

### Skill ZIP インポート拡張子

- ZIP インポートダイアログが `.skill` ファイル拡張子をサポートするように修正 (#1240, #1455、@yovinchen に感謝)

### Skill ZIP インストール対象アプリ

- ZIP 方式でインストールされた skill が常に Claude をデフォルトにするのではなく、現在アクティブなアプリを使用するように修正

### OpenClaw アクティブカードのハイライト

- OpenClaw の現在アクティブなプロバイダーカードがハイライト表示されない問題を修正 (#1419、@funnytime75 に感謝)

### TOC 付きレスポンシブレイアウト

- TOC タイトルが存在する場合のレスポンシブデザインを改善 (#1491、@West-Pavilion に感謝)

### Skills インポートダイアログの白い画面

- ImportSkillsDialog に不足していた TooltipProvider を追加し、ダイアログを開く際のランタイムクラッシュを防止

### パネル下部の空白エリア

- すべてのコンテンツパネルのハードコードされた `h-[calc(100vh-8rem)]` を `flex-1 min-h-0` に置き換え、異なるプラットフォーム間のオフセット値の不一致による下部のギャップを解消

---

## ドキュメント

### 料金モデル ID の正規化

- 中英日三言語のユーザーマニュアルにモデル ID 正規化ルール（プレフィックス除去、サフィックストリミング、`@`→`-` 置換）の説明セクションを追加 (#1591、@makoMakoGo に感謝)

### macOS 署名済みメッセージの更新

- README、README_ZH、インストールガイド（EN/ZH/JA）、FAQ ページ（EN/ZH/JA）からすべての `xattr` 回避策と「開発元を確認できません」警告を削除し、「Apple のコード署名と公証済み」メッセージに置換

---

## ⚠️ リスクに関する注意事項

**GitHub Copilot リバースプロキシに関する免責事項**

本リリースで追加された Copilot リバースプロキシ機能は、リバースエンジニアリングによる非公式 API を通じて GitHub Copilot サービスにアクセスします。この機能を有効にする前に、以下のリスクをご確認ください：

1. **利用規約違反の可能性**：この機能は [GitHub 利用規約](https://docs.github.com/en/site-policy/acceptable-use-policies/github-acceptable-use-policies)および[追加製品の利用条件](https://docs.github.com/en/site-policy/github-terms/github-terms-for-additional-products-and-features)に違反する可能性があります。これらの規約では、過度な自動一括操作、サービスの無断複製、自動化手段によるサーバーへの過度な負荷が禁止されています。
2. **アカウントリスク**：類似ツールの利用者が GitHub から「スクリプト化されたインタラクション、または意図的に異常もしくは過度な使用」を指摘する警告メールを受け取った事例が報告されています。警告後も使用を継続した場合、Copilot へのアクセスが一時的または永久的に停止される可能性があります。
3. **将来の利用保証なし**：GitHub は検出メカニズムをいつでも更新する可能性があり、現在利用可能な使用パターンが将来的にフラグ付けされる可能性があります。

この機能を有効にすることで、ユーザーは**すべてのリスクを自己責任で負う**ものとします。CC Switch は、この機能の使用に起因するアカウント制限、警告、またはサービス停止について一切の責任を負いません。

---

## ダウンロードとインストール

[Releases](https://github.com/farion1231/cc-switch/releases/latest) から適切なバージョンをダウンロードしてください。

### システム要件

| システム | 最小バージョン                   | アーキテクチャ                      |
| -------- | -------------------------------- | ----------------------------------- |
| Windows  | Windows 10 以降                  | x64                                 |
| macOS    | macOS 12 (Monterey) 以降         | Intel (x64) / Apple Silicon (arm64) |
| Linux    | 下表参照                         | x64                                 |

### Windows

| ファイル                                   | 説明                                                 |
| ------------------------------------------ | ---------------------------------------------------- |
| `CC-Switch-v3.12.3-Windows.msi`            | **推奨** - MSI インストーラー、自動更新対応          |
| `CC-Switch-v3.12.3-Windows-Portable.zip`   | ポータブル版、解凍して実行、レジストリ書き込みなし   |

### macOS

| ファイル                           | 説明                                                              |
| ---------------------------------- | ----------------------------------------------------------------- |
| `CC-Switch-v3.12.3-macOS.dmg`     | **推奨** - DMG インストーラー、ドラッグ＆ドロップでインストール   |
| `CC-Switch-v3.12.3-macOS.zip`     | 解凍して Applications にドラッグ、Universal Binary                |
| `CC-Switch-v3.12.3-macOS.tar.gz`  | Homebrew インストールと自動更新用                                 |

> macOS 版は Apple のコード署名と公証済みで、そのままインストールしてご利用いただけます。

### Homebrew (macOS)

```bash
brew tap farion1231/ccswitch
brew install --cask cc-switch
```

更新：

```bash
brew upgrade --cask cc-switch
```

### Linux

| ディストリビューション                  | 推奨形式    | インストール方法                                                       |
| --------------------------------------- | ----------- | ---------------------------------------------------------------------- |
| Ubuntu / Debian / Linux Mint / Pop!\_OS | `.deb`      | `sudo dpkg -i CC-Switch-*.deb` または `sudo apt install ./CC-Switch-*.deb` |
| Fedora / RHEL / CentOS / Rocky Linux    | `.rpm`      | `sudo rpm -i CC-Switch-*.rpm` または `sudo dnf install ./CC-Switch-*.rpm`  |
| openSUSE                                | `.rpm`      | `sudo zypper install ./CC-Switch-*.rpm`                                |
| Arch Linux / Manjaro                    | `.AppImage` | 実行権限を追加して直接実行、または AUR を使用                          |
| その他のディストリビューション / 不明   | `.AppImage` | `chmod +x CC-Switch-*.AppImage && ./CC-Switch-*.AppImage`              |
