{
  "issues": [
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1051",
      "id": 3945017973,
      "node_id": "I_kwDOPYG9FM7rJDJ1",
      "number": 1051,
      "title": "使用NV的api会404",
      "user": {
        "login": "SimpsonLim",
        "id": 56953969,
        "node_id": "MDQ6VXNlcjU2OTUzOTY5",
        "avatar_url": "https://avatars.githubusercontent.com/u/56953969?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SimpsonLim",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-15T21:58:55Z",
      "updated_at": "2026-02-15T21:58:55Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "[2026-02-16][04:34:30][INFO][cc_switch_lib::proxy::forwarder] [Claude] >>> 请求 URL: https://integrate.api.nvidia.com/v1/chat/completions?beta=true (model=moonshotai/kimi-k2.5)  \n\n日志显示请求 URL 变成了 .../v1/chat/completions?beta=true。在 CC Switch v3.10.3 的更新说明中，作者为了适配 Claude 的最新特性，特意将 ?beta=true 扩展到了 /v1/chat/completions 端点。\n\n问题在于： NVIDIA 的服务器非常“死板”，它只认标准的 OpenAI 路径。一旦发现 URL 后面拖着 ?beta=true 这个“尾巴”，它就找不到对应的服务，直接甩给你一个 404。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1051/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1050",
      "id": 3944333815,
      "node_id": "I_kwDOPYG9FM7rGcH3",
      "number": 1050,
      "title": "everything deleted??",
      "user": {
        "login": "detroittommy879",
        "id": 45469533,
        "node_id": "MDQ6VXNlcjQ1NDY5NTMz",
        "avatar_url": "https://avatars.githubusercontent.com/u/45469533?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/detroittommy879",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-15T15:41:13Z",
      "updated_at": "2026-02-15T15:41:13Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "I had a feeling I shouldn't have updated it, but i did, and now it just wiped out all of my settings which took me months to get perfected. No warning or anything, just gone.",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1050/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1049",
      "id": 3944255675,
      "node_id": "I_kwDOPYG9FM7rGJC7",
      "number": 1049,
      "title": "CC Switch配置模型后，终端Claude显示Auth conflict:Both a token (ANTHROPIC_AUTH_TOKEN) and an API key (/login managed   key) are set. This may lead to unexpected behavior.",
      "user": {
        "login": "peakxy",
        "id": 110726416,
        "node_id": "U_kgDOBpmNEA",
        "avatar_url": "https://avatars.githubusercontent.com/u/110726416?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/peakxy",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-15T15:00:37Z",
      "updated_at": "2026-02-15T15:00:37Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"800\" height=\"632\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/6bf05329-52fb-4e9a-9bb5-f31a7ad4b025\" />\n\n<img width=\"937\" height=\"561\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/26974d80-8981-451e-a164-2e56e98fbd8c\" />\n\n也根据之前提的issue设置了 \"hasCompletedOnboarding:\": true，没有起到什么作用",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1049/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1046",
      "id": 3944082721,
      "node_id": "I_kwDOPYG9FM7rFe0h",
      "number": 1046,
      "title": "[Bug] cc-switch 配置不生效于原生版 Claude Code (v2.1.42+)",
      "user": {
        "login": "Jovan1666",
        "id": 230676679,
        "node_id": "U_kgDODb_Yxw",
        "avatar_url": "https://avatars.githubusercontent.com/u/230676679?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Jovan1666",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-15T13:24:05Z",
      "updated_at": "2026-02-15T13:24:05Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## 问题描述\ncc-switch 配置的 provider（如 MiniMax）在原生版 Claude Code（v2.1.42+）中无法生效，运行 `claude` 命令后出现 401 认证错误。\n## 环境信息\n- **操作系统：** Windows 11\n- **Claude Code 版本：** v2.1.42 (原生安装版，通过 `irm https://claude.ai/install.ps1 | iex` 安装)\n- **cc-switch 版本：** 最新版\n- **Provider：** MiniMax-M2.5\n## 复现步骤\n1. 使用 cc-switch 配置 MiniMax provider（API Key、Base URL 等）\n2. 在 cc-switch 中启用该 provider\n3. 在命令行运行 `claude`\n4. 出现错误：`API Error: 401 {\"type\":\"error\",\"error\":{\"type\":\"authentication_error\",\"message\":\"login fail: Please carry the API secret key in the 'Authorization' field of the request header\"}}`\n## 根本原因分析\n通过查看源码发现：\n**cc-switch 当前行为：**\n- 将配置写入 `~/.claude/settings.json` 文件\n- 这是为旧版 npm 安装的 Claude Code 设计的\n**原生版 Claude Code (v2.1.42+) 行为：**\n- **不读取** `~/.claude/settings.json` 文件\n- **只读取** 系统环境变量 (`ANTHROPIC_AUTH_TOKEN`, `ANTHROPIC_BASE_URL`, `ANTHROPIC_MODEL` 等)\n因此，cc-switch 配置的 API Key 和 endpoint 对原生版 Claude Code 完全不可见。\n## 建议解决方案\n为原生版 Claude Code 支持添加写入 Windows 系统环境变量的功能：\n1. **Windows 平台：** 使用 Windows Registry API 写入 `HKEY_CURRENT_USER\\Environment`\n2. **macOS/Linux 平台：** 写入 shell 配置文件（如 `~/.bashrc`, `~/.zshrc`）\n或者提供一个新的\"应用配置\"按钮，明确将当前 provider 的配置导出为系统环境变量。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1046/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1042",
      "id": 3941635952,
      "node_id": "I_kwDOPYG9FM7q8Jdw",
      "number": 1042,
      "title": "fix: MCP import ignores external config changes",
      "user": {
        "login": "zeenanqaq",
        "id": 32336474,
        "node_id": "MDQ6VXNlcjMyMzM2NDc0",
        "avatar_url": "https://avatars.githubusercontent.com/u/32336474?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/zeenanqaq",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-14T15:39:03Z",
      "updated_at": "2026-02-14T16:20:34Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## Problem\n\n  When an external app (e.g., Claude) modifies an existing MCP server's config (like `url` or `args`), re-importing in CC-Switch ignores these changes.\n\n  Example:\n  1. Import MCP server `filesystem` from Claude\n  2. In `~/.claude.json`, change `args` from `/home/user/docs` to `/tmp/test`\n  3. Re-import from Claude in CC-Switch\n  4. CC-Switch still shows the old `args` value\n\n  ## Expected Behavior\n\n  Re-import should merge the server config.\n\n  ## Cause\n\n  In `src-tauri/src/services/mcp.rs`, the import functions only update the app flag without merging the server config:\n\n  ```rust\n  let to_save = if let Some(existing_server) = existing.get(&server.id) {\n      let mut merged = existing_server.clone();\n      merged.apps.claude = true;\n      merged\n  } else {\n      new_count += 1;\n      server.clone()\n  };\n```\n\n  ## Quick fix suggestion\n\n  Add `merged.server = server.server.clone();`  in all 4 import functions:\n  - `import_from_claude`\n  - `import_from_codex`\n  - `import_from_gemini`\n  - `import_from_opencode`\n\n  ```rust\n  let to_save = if let Some(existing_server) = existing.get(&server.id) {\n      let mut merged = existing_server.clone();\n      merged.apps.claude = true;\n      merged.server = server.server.clone();\n      merged\n  } else {\n      new_count += 1;\n      server.clone()\n  };\n```\n\n---\nP.S. A specific sense: A parameter of an MCP is modified via claude code or other. For example, if previously access was anonymous via URL, and now a token is appended to the URL, the updated configuration cannot be synchronized to the cc-switch.",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1042/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1041",
      "id": 3941246837,
      "node_id": "I_kwDOPYG9FM7q6qd1",
      "number": 1041,
      "title": "我们公司是用 BEDROCK 的方式，没有 API 端点。但是保存一直提示报错，让我填写 api 端点。我也不知道在哪啊。",
      "user": {
        "login": "AllenEazo",
        "id": 260691180,
        "node_id": "U_kgDOD4nU7A",
        "avatar_url": "https://avatars.githubusercontent.com/u/260691180?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/AllenEazo",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2026-02-14T11:57:57Z",
      "updated_at": "2026-02-15T14:27:54Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"712\" height=\"434\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/b85a4759-e7c4-469a-872e-4badf0820a9d\" />\n\n我们公司是用 BEDROCK 的方式，没有 API 端点。但是保存一直提示报错，让我填写 api 端点。我也不知道在哪啊。报错如下：\n\n\n<img width=\"2008\" height=\"256\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/caea0ca5-fd2d-4602-9062-01a89635d73c\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1041/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1039",
      "id": 3940759479,
      "node_id": "I_kwDOPYG9FM7q4ze3",
      "number": 1039,
      "title": "[Feature Request]: Improve Logging & Custom Time-Based Statistics",
      "user": {
        "login": "orgliny",
        "id": 25147436,
        "node_id": "MDQ6VXNlcjI1MTQ3NDM2",
        "avatar_url": "https://avatars.githubusercontent.com/u/25147436?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/orgliny",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-14T08:11:14Z",
      "updated_at": "2026-02-14T08:11:14Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "While using cc-switch in production, we noticed some limitations in logging and statistics that affect debugging and observability.\n\n---\n\n### 1️⃣ Include Request & Response Body in Logs\n\n**Current issue:**  \nRequest logs do not include full request/response bodies, making it difficult to debug payload issues or compare provider behavior.\n\n**Suggestion:**\n\n- Add `request_body` and `response_body` to logs\n- Include latency and token usage (if available)\n- Provide a config option to enable/disable body logging\n\n---\n\n### 2️⃣ Support Custom Time Range for Provider & Model Stats\n\n**Current issue:**  \nProvider Stats and Model Stats support preset time filters, but do not allow custom time range selection.\n\n**Suggestion:**\n\n- Add custom start & end date/time selection\n- Keep existing quick presets (24h, 7d, 30d, etc.)\n\nThis would enable:\n\n- Flexible historical analysis\n- Precise cost breakdown\n- Better performance comparison across specific periods\n\n---\n\n### 3️⃣ Add Model Filter in Usage Trend View\n\n**Current issue:**  \nThe Usage Trend view does not support filtering by specific model(s), making it difficult to analyze individual model performance.\n\n**Suggestion:**\n\n- Add model-level filtering in Trend charts\n- Support multi-select if possible\n- Combine with time range filters\n\nThis would allow:\n\n- Per-model usage trend analysis  \n- Performance comparison between models  \n- More granular operational insights  \n\n---\n\nThese improvements would make cc-switch more production-ready for multi-provider LLM deployments.\nHappy to provide further clarification if needed.",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1039/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1037",
      "id": 3940213258,
      "node_id": "I_kwDOPYG9FM7q2uIK",
      "number": 1037,
      "title": "建议提供远程服务器的一件配置",
      "user": {
        "login": "Keimoshi",
        "id": 30651235,
        "node_id": "MDQ6VXNlcjMwNjUxMjM1",
        "avatar_url": "https://avatars.githubusercontent.com/u/30651235?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Keimoshi",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-14T03:29:04Z",
      "updated_at": "2026-02-14T03:29:04Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "希望可以针对远程服务器上的大模型进行一件配置，",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1037/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1036",
      "id": 3940196821,
      "node_id": "I_kwDOPYG9FM7q2qHV",
      "number": 1036,
      "title": "CODEX因为CC-SWITCH的设置，导致API错误",
      "user": {
        "login": "Ceasoul",
        "id": 134074412,
        "node_id": "U_kgDOB_3QLA",
        "avatar_url": "https://avatars.githubusercontent.com/u/134074412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Ceasoul",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-02-14T03:21:24Z",
      "updated_at": "2026-02-14T07:34:47Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "CODEX因为CC-SWITCH的设置，导致API错误，且无法删除CC-Switch的配置（一直显示使用中，无法停止）。。怎么办呢？\n\n<img width=\"2047\" height=\"651\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/d3673db5-6367-4fc4-93e1-59adfba56653\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1036/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1034",
      "id": 3939960423,
      "node_id": "I_kwDOPYG9FM7q1wZn",
      "number": 1034,
      "title": "计费模型怎么乱七八糟的",
      "user": {
        "login": "ifu25",
        "id": 5575008,
        "node_id": "MDQ6VXNlcjU1NzUwMDg=",
        "avatar_url": "https://avatars.githubusercontent.com/u/5575008?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ifu25",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-14T01:05:35Z",
      "updated_at": "2026-02-14T01:36:13Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "用的 deepseek 结果计费模型显示 kimi，反之也不对，一会对一会不对。\n\n如图：\n\n<img width=\"3155\" height=\"1581\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/ac201312-e20c-46b9-8b7a-568f47175b51\" />\n\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1034/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1028",
      "id": 3935959674,
      "node_id": "I_kwDOPYG9FM7qmfp6",
      "number": 1028,
      "title": "cc-switch的mcp配置问题",
      "user": {
        "login": "Pjhhhhh",
        "id": 68389808,
        "node_id": "MDQ6VXNlcjY4Mzg5ODA4",
        "avatar_url": "https://avatars.githubusercontent.com/u/68389808?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Pjhhhhh",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-13T08:20:59Z",
      "updated_at": "2026-02-13T08:20:59Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "cc-switch 在执行新增 MCP 插件 JSON 操作时，采取了直接覆盖 Codex（config.toml）与 Claude Code（.claude.json）配置文件的处理方式，未支持基于本地既有配置的读取与增量修改，目前需在“编辑供应商”界面勾选“写入通用配置”选项，并通过“编辑通用配置”模块进行 MCP JSON 的参数设定。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1028/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1022",
      "id": 3932906655,
      "node_id": "I_kwDOPYG9FM7qa2Sf",
      "number": 1022,
      "title": "vllm局域网部署的qwen3  vscode claude 插件 交互时 max_tokens defaults to 32000 参数该在哪里设置",
      "user": {
        "login": "dan031213",
        "id": 8621470,
        "node_id": "MDQ6VXNlcjg2MjE0NzA=",
        "avatar_url": "https://avatars.githubusercontent.com/u/8621470?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/dan031213",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 3,
      "created_at": "2026-02-12T16:58:40Z",
      "updated_at": "2026-02-14T23:19:21Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "插件交互提示：API Error: 400 {\"error\":{\"code\":400,\"message\":\"'max_tokens' or 'max_completion_tokens' is too large: 32000. This model's maximum context length is 32768 tokens and your request has 17459 input tokens (32000 > 32768 - 17459). (parameter=max_tokens, value=32000)\",\"param\":\"max_tokens\",\"type\":\"BadRequestError\"}}\u0000\n\n\nvllm模型 这个提示\nERROR 02-13 00:36:01 [serving.py:323] vllm.exceptions.VLLMValidationError: 'max_tokens' or 'max_completion_tokens' is too large: 32000. This model's maximum context length is 32768 tokens and your request has 17459 input tokens (32000 > 32768 - 17459). (parameter=max_tokens, value=32000)\n\u0000\n\nenv里全部都加上了\n\"CLAUDE_CODE_MAX_OUTPUT_TOKENS\": 16384,\n    \"ANTHROPIC_MAX_COMPLETION_TOKENS\": 16384,\n    \"max_tokens\": 16384\u0000\n\n\n还是提示\nAPI Error: 400 {\"error\":{\"code\":400,\"message\":\"'max_tokens' or 'max_completion_tokens' is too large: 32000. \u0000\n\n\n请问这个max_token到底应该在哪里设置 ",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1022/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1014",
      "id": 3930076296,
      "node_id": "I_kwDOPYG9FM7qQDSI",
      "number": 1014,
      "title": "文档站上线 GitHub Pages",
      "user": {
        "login": "awxiaoxian2020",
        "id": 69554233,
        "node_id": "MDQ6VXNlcjY5NTU0MjMz",
        "avatar_url": "https://avatars.githubusercontent.com/u/69554233?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/awxiaoxian2020",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-12T06:19:26Z",
      "updated_at": "2026-02-12T06:19:26Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "现有的文档似乎是只能通过源文件来阅读，非常不方便。建议使用 VitePress 或者其他静态站点生成工具来生成文档站点用于查阅，我可以提供帮助。但是不知道社区是否愿意部署。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1014/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1008",
      "id": 3929494645,
      "node_id": "I_kwDOPYG9FM7qN1R1",
      "number": 1008,
      "title": "aicodemirror这种垃圾平台为什么标星推荐？做推荐不查下口碑吗？还是收费推荐的？",
      "user": {
        "login": "jarvis657",
        "id": 2919226,
        "node_id": "MDQ6VXNlcjI5MTkyMjY=",
        "avatar_url": "https://avatars.githubusercontent.com/u/2919226?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/jarvis657",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 3,
      "created_at": "2026-02-12T02:09:25Z",
      "updated_at": "2026-02-14T07:42:28Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1826\" height=\"548\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/559d27c8-2ea1-4952-8da0-e3f38a5f47ec\" />\n\n前期群里吐槽立马就踢人，后期被爆假claude 。为什么标星推荐？开始收费做广告了么？",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1008/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1006",
      "id": 3929403152,
      "node_id": "I_kwDOPYG9FM7qNe8Q",
      "number": 1006,
      "title": "【需求建议】增加多api的管理和测试",
      "user": {
        "login": "Logan66666",
        "id": 68234426,
        "node_id": "MDQ6VXNlcjY4MjM0NDI2",
        "avatar_url": "https://avatars.githubusercontent.com/u/68234426?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Logan66666",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-12T01:30:37Z",
      "updated_at": "2026-02-12T01:30:37Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "目前一个链接只能配一个api key，管理不便。希望大佬能增加一下",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1006/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1003",
      "id": 3926556309,
      "node_id": "I_kwDOPYG9FM7qCn6V",
      "number": 1003,
      "title": "无法启动cc-switch",
      "user": {
        "login": "swordfate3",
        "id": 56497251,
        "node_id": "MDQ6VXNlcjU2NDk3MjUx",
        "avatar_url": "https://avatars.githubusercontent.com/u/56497251?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/swordfate3",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-11T13:24:52Z",
      "updated_at": "2026-02-14T02:14:14Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "wsl下的ubntun突然无法启动cc-switch，cc-switch --version也没有输出",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1003/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1000",
      "id": 3924367292,
      "node_id": "I_kwDOPYG9FM7p6Re8",
      "number": 1000,
      "title": "[BUG] codex 无法识别从 cc-switch 中通过“从 ZIP 安装”导入的skills",
      "user": {
        "login": "bling-yshs",
        "id": 41812674,
        "node_id": "MDQ6VXNlcjQxODEyNjc0",
        "avatar_url": "https://avatars.githubusercontent.com/u/41812674?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/bling-yshs",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-02-11T02:10:17Z",
      "updated_at": "2026-02-14T06:38:52Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "![Image](https://github.com/user-attachments/assets/dab88d44-6c62-4758-b8d0-6c4edf8d0de7)\n\n![Image](https://github.com/user-attachments/assets/222b5a58-3649-4532-a0f5-ab6ca5780d8e)\n\n实测是因为随机生成的名称 `.tmps6M6cJ` 包含 \".\" 导致无法识别，建议读取 zip 的文件名作为 skills 文件夹名称，或者删除 \".\"",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/1000/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/998",
      "id": 3920204654,
      "node_id": "I_kwDOPYG9FM7pqZNu",
      "number": 998,
      "title": "安装完cc-switch后mac会莫名重启",
      "user": {
        "login": "Galaxy20260129",
        "id": 257934173,
        "node_id": "U_kgDOD1_DXQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/257934173?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Galaxy20260129",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-10T08:46:25Z",
      "updated_at": "2026-02-12T01:13:10Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "安装完cc-switch，打开使用一段时间后，macbook会莫名奇妙的重新启动\nmacbook 系统版本为 macos Monterey 12.7.6",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/998/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/997",
      "id": 3919991467,
      "node_id": "I_kwDOPYG9FM7pplKr",
      "number": 997,
      "title": "设置->高级->配置文件目录->配置目录覆盖(高级)条目 缺少上边距，逼死强迫症",
      "user": {
        "login": "v5tech",
        "id": 887836,
        "node_id": "MDQ6VXNlcjg4NzgzNg==",
        "avatar_url": "https://avatars.githubusercontent.com/u/887836?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/v5tech",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-10T07:56:15Z",
      "updated_at": "2026-02-10T07:57:54Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1000\" height=\"650\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/10cf9dbc-5860-4d81-b2f1-7ba19d10838b\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/997/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/996",
      "id": 3919978025,
      "node_id": "I_kwDOPYG9FM7pph4p",
      "number": 996,
      "title": "OpenAI 模型参数替换",
      "user": {
        "login": "LiShengYang-yiyi",
        "id": 46582804,
        "node_id": "MDQ6VXNlcjQ2NTgyODA0",
        "avatar_url": "https://avatars.githubusercontent.com/u/46582804?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/LiShengYang-yiyi",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-10T07:52:56Z",
      "updated_at": "2026-02-10T07:52:56Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "目标就是 在对应的cli配置里面只配一次 以后不管AI怎么升级版本改模型名字都不需要改具体AI的那边配置\n只需要改cc switch这边的配置\n\n目前如果是claude 是可以的  我在cli那边模型名字随便写什么都行  在这边会被强制转换为填的模型名字\n\n希望 openai 也可以这样,   不用管那边请求的模型是什么 根据当前启动的配置强制改为填的名字\n这样以后不管怎么更新都不要改CLI那边的配置",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/996/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/994",
      "id": 3919738062,
      "node_id": "I_kwDOPYG9FM7ponTO",
      "number": 994,
      "title": "Ubuntu 24.04.3 LTS ，添加或修改任意配置时卡住。",
      "user": {
        "login": "versev999",
        "id": 218430935,
        "node_id": "U_kgDODQT91w",
        "avatar_url": "https://avatars.githubusercontent.com/u/218430935?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/versev999",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-10T06:40:48Z",
      "updated_at": "2026-02-10T06:40:48Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "在Ubuntu 24.04.3 LTS ，添加或修改任意配置时软件会卡住。但是似乎只是显示界面卡住了，在卡住的界面（编辑配置API的界面），多点击几次后会触发主界面中按钮的一些效果。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/994/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/993",
      "id": 3919569439,
      "node_id": "I_kwDOPYG9FM7pn-If",
      "number": 993,
      "title": "直接把skills放到.cc-switch下面，无法识别",
      "user": {
        "login": "anjun",
        "id": 5170495,
        "node_id": "MDQ6VXNlcjUxNzA0OTU=",
        "avatar_url": "https://avatars.githubusercontent.com/u/5170495?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/anjun",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-10T05:47:22Z",
      "updated_at": "2026-02-14T02:20:29Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "放到claude或者codex文件夹就可以~ ",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/993/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/991",
      "id": 3919482907,
      "node_id": "I_kwDOPYG9FM7pnpAb",
      "number": 991,
      "title": "Claude Rectifier 导致 Claude API thinking / signature 校验失败（HTTP 400）",
      "user": {
        "login": "SaromChars",
        "id": 18196773,
        "node_id": "MDQ6VXNlcjE4MTk2Nzcz",
        "avatar_url": "https://avatars.githubusercontent.com/u/18196773?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SaromChars",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-10T05:09:49Z",
      "updated_at": "2026-02-13T02:58:38Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## Bug: Claude Rectifier 导致 Claude API thinking / signature 校验失败（HTTP 400）\n\n### Checklist\n- [x] 已使用最新版本的 cc-switch\n- [x] 已搜索现有 issues，未发现重复问题\n- [x] 问题可稳定复现\n\n---\n\n### 问题描述（Describe the bug）\n\n在使用 **cc-switch 配置 Claude Provider** 时，开启（或被隐式开启）thinking / extended thinking 后，\nClaude API 返回 HTTP 400 错误。\n\n错误信息主要包括：\n\n- `Invalid signature in thinking block`\n- `thinking: Input tag 'adaptive' found using 'type' does not match expected tags: 'enabled', 'disabled'`\n\n从行为上看，问题与 **Claude Rectifier（thinking signature fixer，#595）** 有明显关联：\ncc-switch 在发送请求时对 `thinking` block 或 `signature` 字段进行了修改或注入，\n导致生成的请求体不符合 Claude API 的 schema 要求。\n\n---\n\n### 复现步骤（Steps to Reproduce）\n\n1. 使用 cc-switch 配置 Claude Provider（官方或第三方网关均可复现）\n2. 选择 Claude 模型, 配置Thinking模型\n3. 发送请求（thinking / extended thinking 显式或隐式开启）\n4. Claude API 返回 HTTP 400 错误\n---\n\n### 临时处理\n1.  调整配置: 删除Thinking模型配置\n2. 新开Claude Code会话\n3. 手动关闭当前会话的Thinking Mode: false\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/991/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/985",
      "id": 3916108218,
      "node_id": "I_kwDOPYG9FM7paxG6",
      "number": 985,
      "title": "建议添加CLAUDE_CODE_SUBAGENT_MODEL",
      "user": {
        "login": "xenlsa",
        "id": 68172964,
        "node_id": "MDQ6VXNlcjY4MTcyOTY0",
        "avatar_url": "https://avatars.githubusercontent.com/u/68172964?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/xenlsa",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-09T12:20:41Z",
      "updated_at": "2026-02-12T05:35:07Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1462\" height=\"802\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/83b0f78f-9fb9-4f04-bc96-8077f72153b3\" />\nhttps://code.claude.com/docs/zh-CN/model-config",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/985/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/984",
      "id": 3915595088,
      "node_id": "I_kwDOPYG9FM7pYz1Q",
      "number": 984,
      "title": "● There's an issue with the selected model  (claude-sonnet-4-5-20250929). It may not exist or you may not",
      "user": {
        "login": "linyushan2333",
        "id": 50049830,
        "node_id": "MDQ6VXNlcjUwMDQ5ODMw",
        "avatar_url": "https://avatars.githubusercontent.com/u/50049830?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/linyushan2333",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 3,
      "created_at": "2026-02-09T10:19:08Z",
      "updated_at": "2026-02-14T15:53:14Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "不管接入哪家的api，都报这个错误",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/984/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/981",
      "id": 3914806290,
      "node_id": "I_kwDOPYG9FM7pVzQS",
      "number": 981,
      "title": "skill 更新功能",
      "user": {
        "login": "SummerSec",
        "id": 47944478,
        "node_id": "MDQ6VXNlcjQ3OTQ0NDc4",
        "avatar_url": "https://avatars.githubusercontent.com/u/47944478?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SummerSec",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-09T07:00:45Z",
      "updated_at": "2026-02-09T07:00:45Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"2718\" height=\"608\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/bc86e864-3a22-4a9a-94f7-82c043da36c6\" />\n比例官方的skill会迭代更新，需要一个功能同步skill的更新内容。目前是没有的",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/981/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/974",
      "id": 3913983037,
      "node_id": "I_kwDOPYG9FM7pSqQ9",
      "number": 974,
      "title": "用量查询 extractor 可选字段与 UI 实际支持不一致",
      "user": {
        "login": "FrankieeW",
        "id": 104312338,
        "node_id": "U_kgDOBjeuEg",
        "avatar_url": "https://avatars.githubusercontent.com/u/104312338?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/FrankieeW",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-09T01:10:57Z",
      "updated_at": "2026-02-09T01:10:57Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## extractor 可选字段与 UI 实际支持不一致\n\n### 问题描述\n\n文档中写明 extractor 的返回字段 **全部为可选**，包括：\n\n* isValid\n* invalidMessage\n* remaining\n* unit\n* planName\n* total\n* used\n* extra\n\n但在实际使用中，UI 似乎只识别并展示：\n\n* `used`\n* `remaining`\n* `unit`\n\n其它字段（如 `planName`、`total`、`extra`）即使返回，也不会在界面中体现。\n\n---\n\n### 实际影响\n\n为了向用户展示例如“多久后重置”这样的信息，只能把数据**拼接进 `unit` 字段**，例如：\n\n```\nunit: `times(~2h30m)`\n```\n\n这是一种 workaround，而不是协议层面推荐的做法。\n\n---\n\n### 示例（真实使用场景）\n\n```js\nreturn {\n  isValid: total > 0,\n  planName: plan.model_name,\n  total,\n  used,\n  remaining,\n  unit: `times(~${h}h${m}m)`,\n  extra: `reset in ${h}h${m}m `\n};\n```\n<details>\n<summary>点击展开代码</summary>\n\n```js\n({\n  request: {\n    url: \"{{baseUrl}}/v1/api/openplatform/coding_plan/remains\",\n    method: \"GET\",\n    headers: {\n      Authorization: \"Bearer {{apiKey}}\",\n      \"Content-Type\": \"application/json\",\n    },\n  },\n\n  extractor: function (response) {\n    if (typeof response === \"string\") {\n      response = JSON.parse(response);\n    }\n\n    if (\n      !response ||\n      response.base_resp?.status_code !== 0 ||\n      !response.model_remains?.length\n    ) {\n      return {\n        isValid: false,\n        invalidMessage: response?.base_resp?.status_msg ?? \"No plan\",\n      };\n    }\n\n    const plan =\n      response.model_remains.find((m) => m.model_name === \"MiniMax-M2\") ??\n      response.model_remains[0];\n\n    const total = plan.current_interval_total_count ?? 0;\n    const used = plan.current_interval_usage_count ?? 0;\n    const remaining = Math.max(total - used, 0);\n\n    const seconds = Math.floor((plan.remains_time ?? 0) / 1000);\n    const h = Math.floor(seconds / 3600);\n    const m = Math.floor((seconds % 3600) / 60);\n\n    return {\n      isValid: total > 0,\n      planName: plan.model_name,\n      total,\n      used,\n      remaining,\n      unit: `times(~${h}h${m}m)`,\n      // extra\n    };\n  }\n});\n```\n\n</details>\n其中：\n\n* `planName`\n* `total`\n* `extra`\n\n在 UI 中不会显示，\n最终只有 `used / remaining / unit` 可见。\n\n---\n\n### 期望\n\n如果当前 UI 只支持部分字段，建议：\n\n* 在文档中明确说明\n  或\n* 后续补充对这些字段的展示支持\n\n以减少理解成本。\n\n---\n\n感谢维护。\n\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/974/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/973",
      "id": 3913815728,
      "node_id": "I_kwDOPYG9FM7pSBaw",
      "number": 973,
      "title": "支持下 Claude Team",
      "user": {
        "login": "Jinmoli",
        "id": 49105556,
        "node_id": "MDQ6VXNlcjQ5MTA1NTU2",
        "avatar_url": "https://avatars.githubusercontent.com/u/49105556?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Jinmoli",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-08T23:41:47Z",
      "updated_at": "2026-02-08T23:41:47Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "支持下 Claude Team\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/973/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/967",
      "id": 3911693067,
      "node_id": "I_kwDOPYG9FM7pJ7ML",
      "number": 967,
      "title": "希望将 https://skills.sh 添加到技能搜索管理里面",
      "user": {
        "login": "Caisin",
        "id": 25792786,
        "node_id": "MDQ6VXNlcjI1NzkyNzg2",
        "avatar_url": "https://avatars.githubusercontent.com/u/25792786?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Caisin",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-08T01:11:06Z",
      "updated_at": "2026-02-08T08:49:48Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "希望将 https://skills.sh 添加到技能搜索管理里面",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/967/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/964",
      "id": 3910630748,
      "node_id": "I_kwDOPYG9FM7pF31c",
      "number": 964,
      "title": "Feature Request, 需要将每一个配置的供应商单独存放一份 json 在 ~/.cc-switch/claude/ 下面",
      "user": {
        "login": "alingse",
        "id": 11423310,
        "node_id": "MDQ6VXNlcjExNDIzMzEw",
        "avatar_url": "https://avatars.githubusercontent.com/u/11423310?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/alingse",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-02-07T16:08:35Z",
      "updated_at": "2026-02-14T07:45:17Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "好处\n1. 全局配置依然可以放到 sqlite 里面，只不过同步一份供应商配置到 ~/.cc-switch/claude/ 下面\n2. 用户可以 claude --settings ~/.cc-switch/claude/xxx.json  在任意目录启动一个单独隔离的 claude\n4. 这样可以解决UI 上面的 >_ 并不好用的问题。（目录固定）\n\n\n\n\nrelated https://github.com/farion1231/cc-switch/issues/406",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/964/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/961",
      "id": 3910567484,
      "node_id": "I_kwDOPYG9FM7pFoY8",
      "number": 961,
      "title": "为故障转移状态下增加供应商并发限制的设置",
      "user": {
        "login": "nbmisen",
        "id": 34706879,
        "node_id": "MDQ6VXNlcjM0NzA2ODc5",
        "avatar_url": "https://avatars.githubusercontent.com/u/34706879?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/nbmisen",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-02-07T15:36:31Z",
      "updated_at": "2026-02-08T07:27:46Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "用的中转并发为3个，其中一个给小龙虾，另外两个就不够用了，容易超并发数限制\n如果增加了并发限制可以自动转移到其他，就不会碰到类似问题，谢谢",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/961/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/959",
      "id": 3910100316,
      "node_id": "I_kwDOPYG9FM7pD2Vc",
      "number": 959,
      "title": "[Feature Request]同一份配置覆盖多个路径",
      "user": {
        "login": "myteapot",
        "id": 108955324,
        "node_id": "U_kgDOBn6GvA",
        "avatar_url": "https://avatars.githubusercontent.com/u/108955324?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/myteapot",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-07T11:54:11Z",
      "updated_at": "2026-02-07T12:56:22Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1417\" height=\"838\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/7eb14aa7-0dd8-4671-82be-102b4fecf8e3\" />\n\n> 如图所示，同一份配置只能覆盖单个目录。\n- 当有多个WSL发行版/同时使用Windows Codex和WSL Codex时，需手动同步配置文件\n- 是否可能增加可增加的配置目录子项，以同时覆盖多个目录？",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/959/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/950",
      "id": 3909194928,
      "node_id": "I_kwDOPYG9FM7pAZSw",
      "number": 950,
      "title": "encoding issue in WSL",
      "user": {
        "login": "rfxlamia",
        "id": 222023708,
        "node_id": "U_kgDODTvQHA",
        "avatar_url": "https://avatars.githubusercontent.com/u/222023708?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/rfxlamia",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-07T02:57:17Z",
      "updated_at": "2026-02-07T02:57:17Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "![Image](https://github.com/user-attachments/assets/90c8b2d3-c5b6-4339-911e-3b6bf4ffdad8)\n\ni found that there is encode issue when showing text in WSL. everything square",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/950/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/947",
      "id": 3907123688,
      "node_id": "I_kwDOPYG9FM7o4fno",
      "number": 947,
      "title": "claude code显示已经安装skills，但switch skills管理这里不显示",
      "user": {
        "login": "LILambert",
        "id": 203078142,
        "node_id": "U_kgDODBq5_g",
        "avatar_url": "https://avatars.githubusercontent.com/u/203078142?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/LILambert",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-02-06T14:49:26Z",
      "updated_at": "2026-02-07T03:20:22Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"611\" height=\"418\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/e83a53d3-32ea-4deb-a2d6-208816c0243c\" />\n\n<img width=\"983\" height=\"640\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/c2db35f0-8afb-4f1e-b6dd-1a2165cf0136\" />\n\n已经restart了终端和cc switch 两次，但是仍不显示\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/947/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/940",
      "id": 3905258993,
      "node_id": "I_kwDOPYG9FM7oxYXx",
      "number": 940,
      "title": "添加mcp服务后，cc 无法修改opencode配置文件",
      "user": {
        "login": "Halecoder",
        "id": 75030331,
        "node_id": "MDQ6VXNlcjc1MDMwMzMx",
        "avatar_url": "https://avatars.githubusercontent.com/u/75030331?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Halecoder",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-06T06:57:27Z",
      "updated_at": "2026-02-06T07:06:23Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1710\" height=\"663\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/255b1b0e-e7c5-4d5c-a645-10fcfefc9599\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/940/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/939",
      "id": 3904989542,
      "node_id": "I_kwDOPYG9FM7owWlm",
      "number": 939,
      "title": "Claude Official 修改 .claude.json 时 tmp 文件因目录锁创建失败",
      "user": {
        "login": "Rivendell",
        "id": 1936469,
        "node_id": "MDQ6VXNlcjE5MzY0Njk=",
        "avatar_url": "https://avatars.githubusercontent.com/u/1936469?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Rivendell",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-06T05:34:38Z",
      "updated_at": "2026-02-06T05:35:33Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "Claude Official 模式下，修改设置时，目测改动保存 .claude.json 时会创建一个 tmp 文件。该 tmp 文件直接保存在 macOS 的用户主目录下时，会由于主目录锁定而失败，建议换一个位置。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/939/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/937",
      "id": 3904629946,
      "node_id": "I_kwDOPYG9FM7ou-y6",
      "number": 937,
      "title": "添加 Qwen Code 的支持",
      "user": {
        "login": "yiliang114",
        "id": 11473889,
        "node_id": "MDQ6VXNlcjExNDczODg5",
        "avatar_url": "https://avatars.githubusercontent.com/u/11473889?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yiliang114",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-06T03:14:36Z",
      "updated_at": "2026-02-06T03:14:36Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "老师好！👋\n\n我是 CC Switch 的早期用户，从农场主的群和 L 站开始关注并使用至今，很高兴看到项目越来越完善。\n\n目前我是 [Qwen-Code](https://github.com/QwenLM/qwen-code) 的 core contributor，希望能为 CC Switch 添加对 qwen-code cli 的支持。\n\n如果方便的话，我想提交一个相关的 PR，不知道是否合适？\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/937/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/936",
      "id": 3904510870,
      "node_id": "I_kwDOPYG9FM7ouhuW",
      "number": 936,
      "title": "闪退问题",
      "user": {
        "login": "Longneckedrabbit",
        "id": 190176364,
        "node_id": "U_kgDOC1XcbA",
        "avatar_url": "https://avatars.githubusercontent.com/u/190176364?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Longneckedrabbit",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 7,
      "created_at": "2026-02-06T02:28:45Z",
      "updated_at": "2026-02-14T06:54:00Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "开启本地代理和故障转移后打开命令行工具会闪退，使用的过程中也会闪退",
      "closed_by": {
        "login": "yovinchen",
        "id": 76760071,
        "node_id": "MDQ6VXNlcjc2NzYwMDcx",
        "avatar_url": "https://avatars.githubusercontent.com/u/76760071?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yovinchen",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/936/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": "reopened",
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/935",
      "id": 3904306406,
      "node_id": "I_kwDOPYG9FM7otvzm",
      "number": 935,
      "title": "mcp管理问题",
      "user": {
        "login": "junit",
        "id": 563086,
        "node_id": "MDQ6VXNlcjU2MzA4Ng==",
        "avatar_url": "https://avatars.githubusercontent.com/u/563086?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/junit",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-06T01:14:47Z",
      "updated_at": "2026-02-06T01:14:47Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "**问题描述：**\n\n在 MCP 管理中，我在不同 CLI 终端（例如 Codex、Claude）下对同一个服务（如 `serena`）的配置存在差异：\n\n* **Codex 终端配置**\n\n```toml\n[mcp_servers.serena]\ncommand = \"uvx\"\nargs = [\"--from\", \"git+https://github.com/oraios/serena\", \"serena\", \"start-mcp-server\", \"--context\", \"codex\"]\n```\n\n* **Claude 终端配置**\n\n```json\n\"serena\": {\n  \"command\": \"uvx\",\n  \"args\": [\n    \"--from\",\n    \"git+https://github.com/oraios/serena\",\n    \"serena\",\n    \"start-mcp-server\",\n    \"--context=claude-code\",\n    \"--project-from-cwd\"\n  ],\n  \"env\": {},\n  \"type\": \"stdio\"\n}\n```\n\n不同 CLI 下的配置不一致，导致启动同一服务时配置可能被覆盖或者冲突。\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/935/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/934",
      "id": 3902328468,
      "node_id": "I_kwDOPYG9FM7omM6U",
      "number": 934,
      "title": "没有BEDROCK支持",
      "user": {
        "login": "imlinhan",
        "id": 2524532,
        "node_id": "MDQ6VXNlcjI1MjQ1MzI=",
        "avatar_url": "https://avatars.githubusercontent.com/u/2524532?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/imlinhan",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-05T16:02:30Z",
      "updated_at": "2026-02-05T16:02:30Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "AWS_BEARER_TOKEN_BEDROCK\nANTHROPIC_BEDROCK_BASE_URL\nCLAUDE_CODE_USE_BEDROCK\n\n这几个环境变量不支持，只能靠手写，能否帮忙加上呀～～～\n\n<img width=\"279\" height=\"210\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/af6f9c35-0367-473c-9d9d-bbc041fb0ad9\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/934/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/933",
      "id": 3902057749,
      "node_id": "I_kwDOPYG9FM7olK0V",
      "number": 933,
      "title": "[Feature request] support claude code in xcode 26.3",
      "user": {
        "login": "undirectlookable",
        "id": 3860109,
        "node_id": "MDQ6VXNlcjM4NjAxMDk=",
        "avatar_url": "https://avatars.githubusercontent.com/u/3860109?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/undirectlookable",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-05T15:05:35Z",
      "updated_at": "2026-02-05T15:05:35Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "Reference docs: https://developer.apple.com/documentation/xcode/setting-up-coding-intelligence\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/933/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/931",
      "id": 3901329250,
      "node_id": "I_kwDOPYG9FM7oiY9i",
      "number": 931,
      "title": "Gemini 模式下，无法配置智谱的渠道",
      "user": {
        "login": "Luoxin",
        "id": 33619903,
        "node_id": "MDQ6VXNlcjMzNjE5OTAz",
        "avatar_url": "https://avatars.githubusercontent.com/u/33619903?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Luoxin",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-05T12:27:09Z",
      "updated_at": "2026-02-07T19:07:32Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"374\" height=\"116\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/914839d5-2972-411c-9048-8b99a8a27d51\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/931/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/926",
      "id": 3900177031,
      "node_id": "I_kwDOPYG9FM7od_qH",
      "number": 926,
      "title": "有一些 openai 兼容的 provider，要求请求的时候，传递一些 header，当前能设置吗？",
      "user": {
        "login": "leizhiyuan",
        "id": 2684384,
        "node_id": "MDQ6VXNlcjI2ODQzODQ=",
        "avatar_url": "https://avatars.githubusercontent.com/u/2684384?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/leizhiyuan",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-05T07:48:20Z",
      "updated_at": "2026-02-05T07:48:20Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "有一些 openai 兼容的 provider，要求请求的时候，传递一些 header，当前能设置吗？\n\n尝试在 json 里面配置，似乎不会传递下去。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/926/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/915",
      "id": 3895190799,
      "node_id": "I_kwDOPYG9FM7oK-UP",
      "number": 915,
      "title": "envrionment viriable doesn't work",
      "user": {
        "login": "DeepLearnerYe",
        "id": 103989113,
        "node_id": "U_kgDOBjK_eQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/103989113?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/DeepLearnerYe",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 5,
      "created_at": "2026-02-04T07:55:27Z",
      "updated_at": "2026-02-05T19:47:57Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "The attribution in setting.json, \"env\", is not working. I have to manually set the environment viriable to make it work.",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/915/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/913",
      "id": 3895093430,
      "node_id": "I_kwDOPYG9FM7oKmi2",
      "number": 913,
      "title": "如何配置供应商类型",
      "user": {
        "login": "hitsmaxft",
        "id": 352727,
        "node_id": "MDQ6VXNlcjM1MjcyNw==",
        "avatar_url": "https://avatars.githubusercontent.com/u/352727?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/hitsmaxft",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-04T07:25:10Z",
      "updated_at": "2026-02-04T07:25:10Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "我的供应商禁止同时传入 Authorization 和 x-auth-api header , 从auth.js 中看应该将供应商类型配置成 claude_auth, 但是 UI 上没有找到这个入口\n\n请问应该如何实现这个功能",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/913/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/911",
      "id": 3895018249,
      "node_id": "I_kwDOPYG9FM7oKUMJ",
      "number": 911,
      "title": "增加github copilot接口",
      "user": {
        "login": "Mason-mengze",
        "id": 49751985,
        "node_id": "MDQ6VXNlcjQ5NzUxOTg1",
        "avatar_url": "https://avatars.githubusercontent.com/u/49751985?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Mason-mengze",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-04T07:01:39Z",
      "updated_at": "2026-02-04T07:01:39Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "可以增加github copilot接口吗",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/911/reactions",
        "total_count": 6,
        "+1": 6,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/909",
      "id": 3893841157,
      "node_id": "I_kwDOPYG9FM7oF00F",
      "number": 909,
      "title": "支持将opencode serve作为模型供应商么",
      "user": {
        "login": "Zuckonit",
        "id": 988858,
        "node_id": "MDQ6VXNlcjk4ODg1OA==",
        "avatar_url": "https://avatars.githubusercontent.com/u/988858?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Zuckonit",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-04T00:12:51Z",
      "updated_at": "2026-02-04T00:12:51Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": null,
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/909/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/900",
      "id": 3890118151,
      "node_id": "I_kwDOPYG9FM7n3n4H",
      "number": 900,
      "title": "[feature request] 求支持openclaw",
      "user": {
        "login": "xckevin",
        "id": 5159879,
        "node_id": "MDQ6VXNlcjUxNTk4Nzk=",
        "avatar_url": "https://avatars.githubusercontent.com/u/5159879?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/xckevin",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 3,
      "created_at": "2026-02-03T09:11:10Z",
      "updated_at": "2026-02-10T09:17:23Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "cc switch实在太好用，一处地方可以管理多个app配置。希望可以支持openclaw",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/900/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/899",
      "id": 3889988360,
      "node_id": "I_kwDOPYG9FM7n3IMI",
      "number": 899,
      "title": "Support cross-model prompt sharing (Codex ↔ Gemini)",
      "user": {
        "login": "otto-apoc",
        "id": 177596291,
        "node_id": "U_kgDOCpXngw",
        "avatar_url": "https://avatars.githubusercontent.com/u/177596291?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/otto-apoc",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-03T08:43:21Z",
      "updated_at": "2026-02-03T08:43:21Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "Background\n\nCurrently, CC Switch requires prompt configurations to be set separately for each model.\nFor example, if I configure a prompt for Codex, I have to configure the same prompt again for Gemini.\n\nThis leads to:\n\nDuplicate maintenance\n\nInconsistent prompt versions across models\n\nInefficient workflow for multi-model projects\n\nFeature Request\n\nI would like CC Switch to support cross-model prompt sharing.\n\nExample:\n\ncodex_prompt.json → automatically available for gemini_prompt.json\n\n\nPrompts configured for one model should be optionally shared with other selected models.\n\nUsers can choose whether to override prompts per model or inherit from shared configuration.\n\nBenefits\n\nCentralized prompt management\n\nReduced maintenance cost\n\nBetter consistency across models\n\nEasier team collaboration\n\nExpected Behavior\n\nConfigure prompt once (e.g., for Codex)\n\nOther models (e.g., Gemini) can automatically use it unless explicitly overridden\n\nCLI / UI should reflect inherited prompts\n\nUse Case\n\nI maintain multiple agents and models.\nCurrently, configuring the same prompt for each model is repetitive and error-prone.\nCross-model sharing would save time and avoid inconsistencies.\n\nAdditional Context\n\nI’m happy to test this feature or provide examples of current prompt JSON structures if needed.",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/899/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/896",
      "id": 3888697258,
      "node_id": "I_kwDOPYG9FM7nyM-q",
      "number": 896,
      "title": "win系统 wsl 中配置opencode 报错",
      "user": {
        "login": "dafa233",
        "id": 175503664,
        "node_id": "U_kgDOCnX5MA",
        "avatar_url": "https://avatars.githubusercontent.com/u/175503664?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/dafa233",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-03T02:40:57Z",
      "updated_at": "2026-02-03T02:40:57Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "我用终端时可以打开的，但是cc 配置有问题，不知道是不是配不目录不对，我试了好几个目录都不行。\n\n\n<img width=\"900\" height=\"536\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/48af6be9-9014-4c93-bc0a-f4db3045b05d\" />\n\n<img width=\"900\" height=\"536\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/d42f63a3-4069-46c1-9b39-c169e8fea33e\" />\n\n<img width=\"900\" height=\"536\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/ef340afd-c6ac-4ec7-8ab1-5a96b4b417de\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/896/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/895",
      "id": 3888543372,
      "node_id": "I_kwDOPYG9FM7nxnaM",
      "number": 895,
      "title": "opencode添加英伟达供应商失败",
      "user": {
        "login": "PolarPeak",
        "id": 44831329,
        "node_id": "MDQ6VXNlcjQ0ODMxMzI5",
        "avatar_url": "https://avatars.githubusercontent.com/u/44831329?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/PolarPeak",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-02-03T01:58:17Z",
      "updated_at": "2026-02-12T07:58:15Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1274\" height=\"741\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/05a6c42c-5443-4901-bef2-153d46c7b748\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/895/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/888",
      "id": 3886557011,
      "node_id": "I_kwDOPYG9FM7nqCdT",
      "number": 888,
      "title": "无法接管 VSCODE CC 插件",
      "user": {
        "login": "INtEReSTiNg1234",
        "id": 31385226,
        "node_id": "MDQ6VXNlcjMxMzg1MjI2",
        "avatar_url": "https://avatars.githubusercontent.com/u/31385226?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/INtEReSTiNg1234",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2026-02-02T15:28:09Z",
      "updated_at": "2026-02-05T11:20:12Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"831\" height=\"232\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/a320e72e-c470-436f-b580-1472dfbfe587\" />\n\n<img width=\"1031\" height=\"291\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/28c4d378-2a1f-47ac-97d3-6cdf8c19456b\" />\n功能都开了，环境变量没有写进去，重启也不管用，终端能正常走代理。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/888/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/883",
      "id": 3884777296,
      "node_id": "I_kwDOPYG9FM7njP9Q",
      "number": 883,
      "title": "英伟达模型配置问题https://integrate.api.nvidia.com/v1",
      "user": {
        "login": "yk-0524",
        "id": 223439932,
        "node_id": "U_kgDODVFsPA",
        "avatar_url": "https://avatars.githubusercontent.com/u/223439932?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yk-0524",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 22,
      "created_at": "2026-02-02T09:00:30Z",
      "updated_at": "2026-02-14T09:27:43Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "不知道大家配置的英伟达模型有没有问题，上一个版本的时候还是正常的，更新了最新版之后反而无法使用，两种API格式都尝试了还是失败。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/883/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/881",
      "id": 3884516179,
      "node_id": "I_kwDOPYG9FM7niQNT",
      "number": 881,
      "title": "[bug] 一些情况下后台统计不准确",
      "user": {
        "login": "zhu-jl18",
        "id": 48956204,
        "node_id": "MDQ6VXNlcjQ4OTU2MjA0",
        "avatar_url": "https://avatars.githubusercontent.com/u/48956204?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/zhu-jl18",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-02-02T07:57:13Z",
      "updated_at": "2026-02-03T05:29:33Z",
      "closed_at": null,
      "author_association": "CONTRIBUTOR",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "现象如图，开启本地代理功能,所有请求都正常，但是ccs后台\n1 . 没有像以前一样显示正确模型名字 \n2. 没有正确统计输入输出token\n\n<img width=\"1497\" height=\"563\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/7cf823f5-74bf-4298-8631-6aa17b01fe6f\" />\n\n\nkimi coding plan 后台\n\n<img width=\"1388\" height=\"550\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/31d8acd2-b873-441a-92fe-d20f60f15fda\" />\n\n\n供应商配置如下\n\n<img width=\"1472\" height=\"729\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/9e9156bf-cd43-4856-8cd5-1912cbb20405\" />\n\n正常情况下，以另一个供应商为例子\n\n<img width=\"1495\" height=\"220\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/8129d6e9-ebc3-46b5-86b8-b37e8c9915a0\" />\n\n平台： windows11， 3.10.3\n\n\n-----\n\n\n我不确定是 ccs还是 kimi的问题，我可以提供kimi 的 apikey供测试\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/881/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/880",
      "id": 3884381418,
      "node_id": "I_kwDOPYG9FM7nhvTq",
      "number": 880,
      "title": "对于用量统计相关的一些问题",
      "user": {
        "login": "luojiaxiong521-prog",
        "id": 224304992,
        "node_id": "U_kgDODV6fYA",
        "avatar_url": "https://avatars.githubusercontent.com/u/224304992?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/luojiaxiong521-prog",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-02T07:17:25Z",
      "updated_at": "2026-02-12T08:01:15Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "使用该项目的时候对于deepseek的用量统计总是配置不好，测试总是返回失败。 \n建议能否针对特定的api平台提供其特定模板。",
      "closed_by": {
        "login": "yovinchen",
        "id": 76760071,
        "node_id": "MDQ6VXNlcjc2NzYwMDcx",
        "avatar_url": "https://avatars.githubusercontent.com/u/76760071?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yovinchen",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/880/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": "reopened",
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/879",
      "id": 3884040006,
      "node_id": "I_kwDOPYG9FM7ngb9G",
      "number": 879,
      "title": "Windows 11 Claude 自定义配置 OpenCode Zen 的免费模型，报错。",
      "user": {
        "login": "larchsis",
        "id": 6904573,
        "node_id": "MDQ6VXNlcjY5MDQ1NzM=",
        "avatar_url": "https://avatars.githubusercontent.com/u/6904573?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/larchsis",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-02-02T05:16:35Z",
      "updated_at": "2026-02-02T12:35:33Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "### 2种格式报错一样\n401 {\"type\":\"error\",\"error\":{\"type\":\"authentication_error\",\"message\":\"login fail: Please carry the API secret key in th\n      'Authorization' field of the request header\"},\"request_id\":\"05cf631a07ab24649fed2413bf54bed6\"}\n\n### 报错的配置详情\n#### Anthropic Messages (原生)\n- 请求地址：https://opencode.ai/zen\n- 所有模型统一用：minimax-m2.1-free\n- 不开代理\n#### OpenAI Chat Completions (需开启代理)\n- 请求地址：https://opencode.ai/zen\n- 所有模型统一用：kimi-k2.5-free\n- 开代理\n#### 公共配置\n- 写入通用配置\n- 跳过登录\n- 无全局代理\n- 环境变量未配置代理\n\n### OpenCode Zen文档中的配置描述\nMiniMax M2.1 Free    minimax-m2.1-free    https://opencode.ai/zen/v1/messages    @ai-sdk/anthropic\nKimi K2.5 Free    kimi-k2.5-free    https://opencode.ai/zen/v1/chat/completions    @ai-sdk/openai-compatible\n\n# 在Cherry Studio客户端里上述2种格式的配置都能正确使用",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/879/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/878",
      "id": 3883890019,
      "node_id": "I_kwDOPYG9FM7nf3Vj",
      "number": 878,
      "title": "后续是否可以支持command的同步管理呢，就像skill的一样",
      "user": {
        "login": "Ruineo-Z",
        "id": 180616858,
        "node_id": "U_kgDOCsP-mg",
        "avatar_url": "https://avatars.githubusercontent.com/u/180616858?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Ruineo-Z",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-02T04:21:29Z",
      "updated_at": "2026-02-02T04:21:29Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": null,
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/878/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/877",
      "id": 3883833349,
      "node_id": "I_kwDOPYG9FM7nfpgF",
      "number": 877,
      "title": "CC Switch越来越强大了，提一些功能建议",
      "user": {
        "login": "1411124232",
        "id": 173348180,
        "node_id": "U_kgDOClUVVA",
        "avatar_url": "https://avatars.githubusercontent.com/u/173348180?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/1411124232",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-02T04:00:55Z",
      "updated_at": "2026-02-02T04:00:55Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "1.使用统计\n - 在请求日志里面重置旁边有个**小圆圈刷新按钮**，点击无反应，实际上的刷新只有切换到其他页面再回来才可以实现；\n - 希望新增一个重置，删除、清空 AI 模型的使用情况和成本统计，目前暂无次功能；\n - 在模型统计页面希望模型列显示的配置好的显示名称，例如sonnet有很多总写法，到统计页目前展示的是很多总写法的显示，而没有统计显示模型；\n<img width=\"999\" height=\"387\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/d9bc430b-bb0c-4438-a83b-2ef0c1c7299d\" />\n\n<img width=\"955\" height=\"290\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/724bf7cd-a875-475d-9727-5d8e6cb760e0\" />\n\n2.页面显示\n - 希望可以增加通知功能-在故障转移功能开启时，转移到其他供应商时可以提示通知转移到哪个供应商了；也可以在主页面顶部添加一个当前使用的供应商名称；\n - 能否在每个供应商添加一个调用次数的统计，跟那个用量查询显示类似，可以清晰看到当前供应商的调用次数\n - 在添加新供应商时，设置头像能否支持自主上传图片作为头像，个性化\n \n3.使用情况\n - 目前新增的API格式OpenAl Chat Completions 我开启代理也无法进行使用",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/877/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/876",
      "id": 3883661844,
      "node_id": "I_kwDOPYG9FM7ne_oU",
      "number": 876,
      "title": "希望添加支持外部导入opencode配置",
      "user": {
        "login": "yunsheng111",
        "id": 177606525,
        "node_id": "U_kgDOCpYPfQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/177606525?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yunsheng111",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-02T02:54:59Z",
      "updated_at": "2026-02-02T02:54:59Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "希望添加支持外部导入opencode配置",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/876/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/875",
      "id": 3883528692,
      "node_id": "I_kwDOPYG9FM7nefH0",
      "number": 875,
      "title": "opencode配置管理功能意见",
      "user": {
        "login": "Pililink",
        "id": 29655914,
        "node_id": "MDQ6VXNlcjI5NjU1OTE0",
        "avatar_url": "https://avatars.githubusercontent.com/u/29655914?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Pililink",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-02T01:47:43Z",
      "updated_at": "2026-02-02T02:52:31Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "现有的opencode配置管理很不好用，例如\n- 供应商模型获取后编辑需要的模型\n- oh my opencode 多配置管理和切换\n- opencode 插件配置\n- 主模型配置\n\n能否建议去参考一下隔壁项目：https://github.com/coulsontl/ai-toolbox",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/875/reactions",
        "total_count": 3,
        "+1": 3,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/873",
      "id": 3882384723,
      "node_id": "I_kwDOPYG9FM7naH1T",
      "number": 873,
      "title": "macos 系统，检测不到 codex/gemini/opencode",
      "user": {
        "login": "brookqin",
        "id": 405636,
        "node_id": "MDQ6VXNlcjQwNTYzNg==",
        "avatar_url": "https://avatars.githubusercontent.com/u/405636?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/brookqin",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-02-01T16:30:00Z",
      "updated_at": "2026-02-01T16:30:00Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1201\" height=\"328\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/5f76bf3a-d2b1-4349-b385-d2ce0c5f5f19\" />\n\n如图上个版本也检测不到。\n\nnode 是通过 brew 安装的，codex/gemini/opencode 通过 npm i -g 安装，claude 是原生安装。\n\n```bash\nsh -c \"codex --version\"\ncodex-cli 0.93.0\n```",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/873/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/872",
      "id": 3882258595,
      "node_id": "I_kwDOPYG9FM7nZpCj",
      "number": 872,
      "title": "[Bug] Windows 11 升级到 v3.10.3 后所有配置无法显示（降级到 v3.10.2 恢复正常）",
      "user": {
        "login": "OldManKHan",
        "id": 22323446,
        "node_id": "MDQ6VXNlcjIyMzIzNDQ2",
        "avatar_url": "https://avatars.githubusercontent.com/u/22323446?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/OldManKHan",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-01T15:36:36Z",
      "updated_at": "2026-02-01T16:03:10Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "### 环境信息\n- 操作系统：Windows 11\n- cc-switch 版本：从 v3.10.2 升级到 v3.10.3\n- 安装方式：设置-更新到v3.10.3\n- 配置存储路径：默认（%USERPROFILE%\\.cc-switch） \n\n### 问题描述\n在 v3.10.2 版本下，所有配置（Providers、Skills）正常显示和使用。\n\n升级到 v3.10.3 后，启动程序：\n- 界面上所有配置列表为空，看起来像配置全部丢失\n- 没有提示任何错误消息\n- 但实际数据并未丢失：重新覆盖安装 v3.10.2 后，所有配置立即恢复正常显示\n\n### 重现步骤\n1. 在 v3.10.2 版本正常使用，确认有多个 Provider/Prompt/Skill 等配置\n2. 直接在线检查更新，并升级安装\n3. 启动 cc-switch\n4. 观察：所有配置列表为空\n5. 单独下载v3.10.2版本覆盖安装\n6. 启动后配置恢复正常",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/872/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/871",
      "id": 3882035552,
      "node_id": "I_kwDOPYG9FM7nYylg",
      "number": 871,
      "title": "windows环境，添加opencode配置，导致opencode无法打开（3.10.2、3.10.3）",
      "user": {
        "login": "haotian2546",
        "id": 13749495,
        "node_id": "MDQ6VXNlcjEzNzQ5NDk1",
        "avatar_url": "https://avatars.githubusercontent.com/u/13749495?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/haotian2546",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-02-01T13:28:11Z",
      "updated_at": "2026-02-01T16:03:42Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1010\" height=\"334\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/52a3b003-5e0d-4edb-a452-4ef82ce351c8\" />\n\n<img width=\"705\" height=\"350\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/ae5da2f3-02a6-4794-9d95-e8804c328438\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/871/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/865",
      "id": 3881058346,
      "node_id": "I_kwDOPYG9FM7nVEAq",
      "number": 865,
      "title": "更新v3.10.3版本之后本地环境检查全部未安装",
      "user": {
        "login": "IGNiT3-R",
        "id": 111123994,
        "node_id": "U_kgDOBp-eGg",
        "avatar_url": "https://avatars.githubusercontent.com/u/111123994?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/IGNiT3-R",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 3,
      "created_at": "2026-02-01T03:43:20Z",
      "updated_at": "2026-02-01T11:11:53Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "更新v3.10.3版本之后，本地环境检查全部未安装或不可执行，因为更新界面和本地环境检查是在一个页面嘛，所以更新之前我看还能正常显示版本号，更新之后就这样了\n\n<img width=\"1117\" height=\"781\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/91821d56-49c1-4292-bcea-95e8e5399527\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/865/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/856",
      "id": 3879498889,
      "node_id": "I_kwDOPYG9FM7nPHSJ",
      "number": 856,
      "title": "UI优化体验的部分建议",
      "user": {
        "login": "miracloon",
        "id": 93526366,
        "node_id": "U_kgDOBZMZXg",
        "avatar_url": "https://avatars.githubusercontent.com/u/93526366?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/miracloon",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-31T16:20:54Z",
      "updated_at": "2026-01-31T16:22:21Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "您好！我在近期使用过程中，随着我添加的工具数量增多（mcp，skill，提示词），目前的 UI 在定位效率上稍显吃力。为了进一步提升用户体验，我冒昧提出以下几点优化建议：\n\n痛点描述： 目前界面条目占位较大，信息密度较低。当工具较多时，缺乏搜索和排序功能导致翻找成本较高。\n\n建议方案：\n\n- 引入视图切换/紧凑模式： 允许用户调整显示比例或切换为“卡片视图”，增加单屏信息密度。\n- 增加搜索框： 支持通过关键词快速定位特定工具。\n- 增加排序功能： 例如支持按名称、添加时间或自定义进行排序。\n\n非常感谢您的开发！",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/856/reactions",
        "total_count": 2,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 2
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/853",
      "id": 3879097449,
      "node_id": "I_kwDOPYG9FM7nNlRp",
      "number": 853,
      "title": "MCP 服务器管理-设置mcp可以在多平台公用后-提示报错",
      "user": {
        "login": "naiman-debug",
        "id": 248705050,
        "node_id": "U_kgDODtLwGg",
        "avatar_url": "https://avatars.githubusercontent.com/u/248705050?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/naiman-debug",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-31T12:30:34Z",
      "updated_at": "2026-01-31T12:30:57Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1266\" height=\"939\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/c446df20-f255-4e4e-90fe-c97ecc84953b\" />\n<img width=\"1689\" height=\"789\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/cb3f6909-b0c9-4a05-8a5f-231af885ce75\" />\n<img width=\"1320\" height=\"348\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/53626513-eb1a-4c75-ba5f-183b6ea5d6c5\" />\n\n把Claude已有的能力，同步打开到Codex平台，启动codex后报错。\n\n已经切换设置Skill 同步方式，无论软连接或文件复制，都无效，提示依旧。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/853/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/852",
      "id": 3879074477,
      "node_id": "I_kwDOPYG9FM7nNfqt",
      "number": 852,
      "title": "切换报错与config.json的文件内容为空（已配置写入通用文件）",
      "user": {
        "login": "naiman-debug",
        "id": 248705050,
        "node_id": "U_kgDODtLwGg",
        "avatar_url": "https://avatars.githubusercontent.com/u/248705050?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/naiman-debug",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2026-01-31T12:13:33Z",
      "updated_at": "2026-02-01T11:30:33Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "ClaudeCode安装后就一直使用GLM，为了方便切换回Claude模型，使用了cc-switch。\n\n第一次切换回Claude模型之后，进入CC之后报错,内容为\n\n【API Error: 400 {\"error\":{\"message\":\"配置错误: Claude Provider 缺少 base_url 配置\",\"type\":\"proxy_error\"}}】，\n\n我查看发现C:\\Users\\Administrator\\.claude\\config.json的文件内容为空，cc-switch里面所设置的写入通用配置文件的功能无效，写入功能是打开状态，\n\n切换回GLM后，config.json的内容就是简单的一行，写入通用配置功能也是打开状态。\n{\n  \"primaryApiKey\": \"any\"\n}\n。\n\n我上网查找资料，看到说需要关闭本地代理，但关闭后无效。\n\n查看cc-switch.log，内容中有失败提示如下：\n\n[2026-01-31][19:29:10][INFO][cc_switch_lib::services::provider] 代理接管模式：热切换 claude 的目标供应商为 de4c18ac-db29-4f91-8e39-69652b1870a6\n[2026-01-31][19:29:10][INFO][cc_switch_lib::database::dao::proxy] 已备份 claude Live 配置\n[2026-01-31][19:29:10][INFO][cc_switch_lib::services::proxy] 已更新 claude Live 备份（热切换）\n[2026-01-31][19:29:38][WARN][cc_switch_lib::proxy::forwarder] [claude] [FWD-001] Provider Claude Official 失败，切换下一个 (1/1)\n[2026-01-31][19:29:38][WARN][cc_switch_lib::proxy::forwarder] [claude] [FWD-002] 所有 Provider 均失败\n[2026-01-31][19:29:38][WARN][cc_switch_lib::proxy::forwarder] [claude] [FWD-001] Provider Claude Official 失败，切换下一个 (1/1)\n[2026-01-31][19:29:38][WARN][cc_switch_lib::proxy::forwarder] [claude] [FWD-002] 所有 Provider 均失败\n[2026-01-31][19:29:38][WARN][cc_switch_lib::proxy::forwarder] [claude] [FWD-001] Provider Claude Official 失败，切换下一个 (1/1)\n[2026-01-31][19:29:38][WARN][cc_switch_lib::proxy::forwarder] [claude] [FWD-002] 所有 Provider 均失败\n[2026-01-31][19:29:38][WARN][cc_switch_lib::proxy::forwarder] [claude] [FWD-001] Provider Claude Official 失败，切换下一个 (1/1)\n[2026-01-31][19:29:38][WARN][cc_switch_lib::proxy::forwarder] [claude] [FWD-002] 所有 Provider 均失败\n[2026-01-31][19:29:44][WARN][tao::platform_impl::platform::event_loop::runner] NewEvents emitted without explicit RedrawEventsCleared\n[2026-01-31][19:29:44][WARN][tao::platform_impl::platform::event_loop::runner] RedrawEventsCleared emitted without explicit MainEventsCleared\n\n不知道是不是于此有关。\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/852/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/848",
      "id": 3878674422,
      "node_id": "I_kwDOPYG9FM7nL9_2",
      "number": 848,
      "title": "【功能建议】：日志自动清理+日志支持一键导出",
      "user": {
        "login": "1lck",
        "id": 159525154,
        "node_id": "U_kgDOCYIpIg",
        "avatar_url": "https://avatars.githubusercontent.com/u/159525154?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/1lck",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-31T07:29:07Z",
      "updated_at": "2026-01-31T07:29:07Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "你好  我注意到代码里面的proxy_request_logs 表会无限增长，长期使用会导致数据库膨胀，可以选择自定义配置过期时间（默认30天），并且可以添加上csv依赖，支持日志导出功能，方便后续排查记录\n\n如果这个功能建议您觉得可以采纳的话，我可以给出我的解决方案并提交PR贡献",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/848/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/846",
      "id": 3878195468,
      "node_id": "I_kwDOPYG9FM7nKJEM",
      "number": 846,
      "title": "配置完模型映射之后，CC仍会时不时请求不存在的claude模型",
      "user": {
        "login": "black-zero358",
        "id": 53086059,
        "node_id": "MDQ6VXNlcjUzMDg2MDU5",
        "avatar_url": "https://avatars.githubusercontent.com/u/53086059?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/black-zero358",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 6,
      "created_at": "2026-01-31T02:54:04Z",
      "updated_at": "2026-02-12T16:09:28Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "CC-Switch版本：3.10.2\nCC版本：2.1.6\n\n![Image](https://github.com/user-attachments/assets/8122ba0a-eb02-4dd9-ae52-009bd9d55e5f)\n\n![Image](https://github.com/user-attachments/assets/ea72a3da-221e-4878-9da1-f5fb560b7b34)",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/846/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/845",
      "id": 3877449727,
      "node_id": "I_kwDOPYG9FM7nHS__",
      "number": 845,
      "title": "打开后就闪退",
      "user": {
        "login": "ttmouse",
        "id": 8982044,
        "node_id": "MDQ6VXNlcjg5ODIwNDQ=",
        "avatar_url": "https://avatars.githubusercontent.com/u/8982044?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ttmouse",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 3,
      "created_at": "2026-01-30T21:30:11Z",
      "updated_at": "2026-01-31T13:32:36Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "之前是正常 的 ，最近闪退\n\n卸载重新安装也同样的问题。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/845/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/843",
      "id": 3874823752,
      "node_id": "I_kwDOPYG9FM7m9R5I",
      "number": 843,
      "title": "一个不太成熟的想法",
      "user": {
        "login": "evahkz",
        "id": 51936249,
        "node_id": "MDQ6VXNlcjUxOTM2MjQ5",
        "avatar_url": "https://avatars.githubusercontent.com/u/51936249?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/evahkz",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-30T09:26:13Z",
      "updated_at": "2026-01-30T16:09:51Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "大佬们我有一个不太成熟的想法，现在的**clawdbot** 本质上就是一个加了webhooks的工具它其实没有什么特别的功能，并且在配置多模型和多环境的情况下还不如当前我们的这个软件，是否可以考虑给cc switch 也添加一个能配置webhooks的选项，毕竟我们的这个软件已经实现了本地代理监听流量，在添加一个监听返回信息的功能应该不是太大的难度，这样我们广大使用cc switch 的用户就不需要去考虑那个什么龙虾了，直接配置dingding 和 飞书 企业微信这种带webhooks 机器人的这种聊天软件就可以了，这样我们即可以通过聊天就把任务给解决了，同时使用的还是原生的cli 这种强大的工具，至于像学习这样噱头完全可以让用户去配置**everything-claude-code**里面的学习技能和工作流",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/843/reactions",
        "total_count": 3,
        "+1": 1,
        "-1": 0,
        "laugh": 2,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/837",
      "id": 3873519186,
      "node_id": "I_kwDOPYG9FM7m4TZS",
      "number": 837,
      "title": "rocky9系统安装失败",
      "user": {
        "login": "Lutz7",
        "id": 26216175,
        "node_id": "MDQ6VXNlcjI2MjE2MTc1",
        "avatar_url": "https://avatars.githubusercontent.com/u/26216175?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Lutz7",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-30T02:29:57Z",
      "updated_at": "2026-01-30T02:29:57Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "在rocky9系统上通过rpm包安装，安装提示缺少libwebkit2gtk-4.1.so.0，rocky9官方源中也找不到这个库，是否现在不支持rocky9安装。\n\n<img width=\"892\" height=\"103\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/5a11feaa-5b81-43fc-8831-ebf8cc647554\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/837/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/832",
      "id": 3870550775,
      "node_id": "I_kwDOPYG9FM7ms-r3",
      "number": 832,
      "title": "如何设置终端启动的目录",
      "user": {
        "login": "flowerwOw0316",
        "id": 50901029,
        "node_id": "MDQ6VXNlcjUwOTAxMDI5",
        "avatar_url": "https://avatars.githubusercontent.com/u/50901029?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/flowerwOw0316",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-29T13:00:46Z",
      "updated_at": "2026-01-29T23:28:57Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "不同供应商的临时切换的时候，怎么做到在指定目录打开终端呢，现在点cc-switch里面的终端打开，windows11 在C:\\Windows\\System32在这里",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/832/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/831",
      "id": 3870543754,
      "node_id": "I_kwDOPYG9FM7ms8-K",
      "number": 831,
      "title": "codex的startup_timeout_sec参数无法手动设置",
      "user": {
        "login": "kagangtuya-star",
        "id": 73411104,
        "node_id": "MDQ6VXNlcjczNDExMTA0",
        "avatar_url": "https://avatars.githubusercontent.com/u/73411104?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/kagangtuya-star",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-29T12:59:29Z",
      "updated_at": "2026-01-30T04:06:02Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "https://github.com/farion1231/cc-switch/issues/139\n这个问题似乎没有解决\n\nCC Switch v3.10.2\n\n编辑中输入 startup_timeout_sec = 60 保存后不生效\n\n![Image](https://github.com/user-attachments/assets/8c4a791d-8c88-48eb-a75f-275d1dda0d4e)",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/831/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/827",
      "id": 3869019034,
      "node_id": "I_kwDOPYG9FM7mnIua",
      "number": 827,
      "title": "Windows11，25H2，cc-switch突然闪退",
      "user": {
        "login": "Adoretheall007",
        "id": 154971368,
        "node_id": "U_kgDOCTys6A",
        "avatar_url": "https://avatars.githubusercontent.com/u/154971368?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Adoretheall007",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-29T06:10:56Z",
      "updated_at": "2026-01-29T07:52:57Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "================================================================================\n\n================================================================================\n[CRASH REPORT] 2026-01-29 14:06:21.938\n================================================================================\n\n----------------------------------------\nSystem Information\n----------------------------------------\nOS: windows (windows)\nArch: x86_64\nApp Version: 3.10.2\nWorking Dir: D:\\CC Switch\nThread: main (ID: ThreadId(1))\n\n----------------------------------------\nError Details\n----------------------------------------\nMessage: assertion failed: flush_paint_messages(None, &subclass_input.event_loop_runner)\n\nLocation: File: C:\\Users\\runneradmin\\.cargo\\registry\\src\\index.crates.io-1949cf8c6b5b557f\\tao-0.34.3\\src\\platform_impl\\windows\\event_loop.rs\n         Line: 2377\n         Column: 11\n\n----------------------------------------\nStack Trace (Backtrace)\n----------------------------------------\n   0: <unknown>\n   1: <unknown>\n   2: <unknown>\n   3: <unknown>\n   4: <unknown>\n   5: <unknown>\n   6: <unknown>\n   7: <unknown>\n   8: <unknown>\n   9: <unknown>\n  10: <unknown>\n  11: DefSubclassProc\n  12: GetWindowSubclass\n  13: CallWindowProcW\n  14: SendMessageW\n  15: GetWindowDpiAwarenessContext\n  16: KiUserCallbackDispatcher\n  17: NtUserDispatchMessage\n  18: IsWindowUnicode\n  19: <unknown>\n  20: CallWindowProcW\n  21: CallWindowProcW\n  22: DefSubclassProc\n  23: DefSubclassProc\n  24: DefSubclassProc\n  25: GetWindowSubclass\n  26: CallWindowProcW\n  27: SendMessageW\n  28: User32InitializeImmEntryTable\n  29: KiUserCallbackDispatcher\n  30: NtUserPeekMessage\n  31: PeekMessageW\n  32: PeekMessageW\n  33: <unknown>\n  34: <unknown>\n  35: <unknown>\n  36: <unknown>\n  37: DefSubclassProc\n  38: GetWindowSubclass\n  39: CallWindowProcW\n  40: SendMessageW\n  41: GetWindowDpiAwarenessContext\n  42: KiUserCallbackDispatcher\n  43: NtUserDispatchMessage\n  44: IsWindowUnicode\n  45: <unknown>\n  46: <unknown>\n  47: <unknown>\n  48: <unknown>\n  49: <unknown>\n  50: <unknown>\n  51: <unknown>\n  52: <unknown>\n  53: <unknown>\n  54: <unknown>\n  55: <unknown>\n  56: BaseThreadInitThunk\n  57: RtlUserThreadStart\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/827/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/826",
      "id": 3868937751,
      "node_id": "I_kwDOPYG9FM7mm04X",
      "number": 826,
      "title": "webview2 GPU进程GPU占用突然会过大",
      "user": {
        "login": "2120231286",
        "id": 206401833,
        "node_id": "U_kgDODE1xKQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/206401833?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/2120231286",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-29T05:39:02Z",
      "updated_at": "2026-01-31T17:32:10Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"803\" height=\"429\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/4af1d80d-d736-485b-a3aa-0b70462c5c93\" />\n有时候这个GPU进程直接到90%，我连鼠标都动不了。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/826/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/820",
      "id": 3865966249,
      "node_id": "I_kwDOPYG9FM7mbfap",
      "number": 820,
      "title": "给Claude 配置 minimax M2.1 模型   报错 401 login fail: Please carry the API  secret key in the 'Authorization' field of the request header",
      "user": {
        "login": "xuanfeng2013",
        "id": 3378238,
        "node_id": "MDQ6VXNlcjMzNzgyMzg=",
        "avatar_url": "https://avatars.githubusercontent.com/u/3378238?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/xuanfeng2013",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 11,
      "created_at": "2026-01-28T15:20:45Z",
      "updated_at": "2026-02-12T08:09:13Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": null,
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/820/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/815",
      "id": 3864733248,
      "node_id": "I_kwDOPYG9FM7mWyZA",
      "number": 815,
      "title": "【功能支持】自动故障转移 希望增加通知（可选）",
      "user": {
        "login": "karasHou",
        "id": 27048083,
        "node_id": "MDQ6VXNlcjI3MDQ4MDgz",
        "avatar_url": "https://avatars.githubusercontent.com/u/27048083?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/karasHou",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-28T10:31:25Z",
      "updated_at": "2026-01-28T15:12:16Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "自动故障转移很好用！\n希望支持自动故障转移时，可选（开关）发送通知，方便知晓发生了熔断以及切换到了哪个供应商",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/815/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/799",
      "id": 3859426350,
      "node_id": "I_kwDOPYG9FM7mCiwu",
      "number": 799,
      "title": "关于绑定IP 127.0.0.1问题",
      "user": {
        "login": "guojinpeng",
        "id": 13548139,
        "node_id": "MDQ6VXNlcjEzNTQ4MTM5",
        "avatar_url": "https://avatars.githubusercontent.com/u/13548139?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/guojinpeng",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-27T08:28:41Z",
      "updated_at": "2026-02-10T13:26:26Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "在windows下WSL子系统中想使用宿主机的CCS时发现开启防火墙访问宿主机IP也连不上CCS，绑定的ip是127.0.0.1\n\n希望是绑定主机的0.0.0.0的15721端口能允许子系统或者其他机器使用，可以加个设置是否允许外部机器访问做个安全性拦截",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/799/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/791",
      "id": 3855835252,
      "node_id": "I_kwDOPYG9FM7l02B0",
      "number": 791,
      "title": "新功能需求：增加claude plugins管理",
      "user": {
        "login": "wqh17101",
        "id": 26429138,
        "node_id": "MDQ6VXNlcjI2NDI5MTM4",
        "avatar_url": "https://avatars.githubusercontent.com/u/26429138?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/wqh17101",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 5,
      "created_at": "2026-01-26T12:46:31Z",
      "updated_at": "2026-02-02T17:10:51Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": null,
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/791/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/782",
      "id": 3853983458,
      "node_id": "I_kwDOPYG9FM7ltx7i",
      "number": 782,
      "title": "cc switch异常清理everything claude code插件里的agent、skill等配置",
      "user": {
        "login": "SolitudeOracle",
        "id": 188097006,
        "node_id": "U_kgDOCzYh7g",
        "avatar_url": "https://avatars.githubusercontent.com/u/188097006?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SolitudeOracle",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 5,
      "created_at": "2026-01-25T22:56:25Z",
      "updated_at": "2026-02-11T16:36:23Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "everything claude code插件提供了一些预设的agent、skill、mcp、command。\n\n复现步骤：\n1. 启动cc switch，启动claude code\n2. 用户范围安装everything claude code\n3. 重启电脑\n4. 启动cc switch\n5. 启动claude code查看skill、mcp、agent等，发现消失。\n\n另外：\n\n重启后不启动cc switch，everything claude code的配置是没有消失的。\n\n在消失后，是没法在plugin里重新安装的，只能去.claude里的plugin手动删除相关文件，再重新安装。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/782/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/779",
      "id": 3852841882,
      "node_id": "I_kwDOPYG9FM7lpbOa",
      "number": 779,
      "title": "【功能建议】希望增加一份claude配置字段为通用配置白名单，操作时自动同步管理，其他字段可以让用户自己设置通用配置",
      "user": {
        "login": "kang829x",
        "id": 164372853,
        "node_id": "U_kgDOCcwhdQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/164372853?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/kang829x",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-25T08:18:28Z",
      "updated_at": "2026-01-26T16:35:45Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "看过#388的讨论，需求差不多\nhttps://github.com/farion1231/cc-switch/issues/366\n\n能理解不同供应商自定义字段不好维护的情况\n\n不过能不能折中一下\n例如claude官方的配置字段可以维护一份白名单（这个基本是固定的）\n每次操作时，自动保留和同步这些字段为通用配置\n其他除了api配置以外的，视为用户自定义字段，这个可以让用户自己配置，最好覆盖时给一个提醒\n\n特别是现在api中转不稳定的情况下，频繁切换、增加、修改API设置是非常高频的行为\n本质上用cc-swtich就是为了方便切换和设置api\n如果因为这个原因，用户得每次自己备份配置，那用起来很麻烦\n主要是有些设置可能是随手加的，不可能每加一次，用户就增加通用配置\n\n希望能够在这点上考虑下优化",
      "closed_by": {
        "login": "yovinchen",
        "id": 76760071,
        "node_id": "MDQ6VXNlcjc2NzYwMDcx",
        "avatar_url": "https://avatars.githubusercontent.com/u/76760071?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yovinchen",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/779/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": "reopened",
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/777",
      "id": 3852541465,
      "node_id": "I_kwDOPYG9FM7loR4Z",
      "number": 777,
      "title": "MCP可以隔离吗？",
      "user": {
        "login": "flowerwOw0316",
        "id": 50901029,
        "node_id": "MDQ6VXNlcjUwOTAxMDI5",
        "avatar_url": "https://avatars.githubusercontent.com/u/50901029?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/flowerwOw0316",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2026-01-25T04:17:07Z",
      "updated_at": "2026-02-01T01:22:21Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "比如我提供商1是GLM， 提供商2是minimax，他们每个提供商各自都有一些，比如说网络搜索啊，或者是图像识别的MCP。切换到供应商1的时候，就切换成对应的。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/777/reactions",
        "total_count": 1,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 1
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/775",
      "id": 3852431968,
      "node_id": "I_kwDOPYG9FM7ln3Jg",
      "number": 775,
      "title": "本地环境检查无法获取到安装情况",
      "user": {
        "login": "V-arc",
        "id": 53041402,
        "node_id": "MDQ6VXNlcjUzMDQxNDAy",
        "avatar_url": "https://avatars.githubusercontent.com/u/53041402?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/V-arc",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 7,
      "created_at": "2026-01-25T02:30:36Z",
      "updated_at": "2026-01-27T03:41:52Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "本地存在 ClaudeCode 和 Codex 环境，但在 CCS 中提示：not installed or not executable\n\nCCS 版本：v3.10.2\nClaudeCode 版本：2.1.19\nCodex 版本：0.89.0\n\n<img width=\"1411\" height=\"904\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/1bf903c8-c55a-4e6f-8286-6b13a5b6478a\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/775/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/768",
      "id": 3851048227,
      "node_id": "I_kwDOPYG9FM7lilUj",
      "number": 768,
      "title": "app后台运行的时候，有时候会崩溃，日志如下",
      "user": {
        "login": "wmszhe",
        "id": 13552154,
        "node_id": "MDQ6VXNlcjEzNTUyMTU0",
        "avatar_url": "https://avatars.githubusercontent.com/u/13552154?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/wmszhe",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 3,
      "created_at": "2026-01-24T12:25:02Z",
      "updated_at": "2026-02-01T14:02:56Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "app后台运行的时候，有时候会崩溃，日志如下\n\n[crash.log](https://github.com/user-attachments/files/24836968/crash.log)",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/768/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/765",
      "id": 3850352230,
      "node_id": "I_kwDOPYG9FM7lf7Zm",
      "number": 765,
      "title": "windows端 启用程序白屏",
      "user": {
        "login": "cfj521",
        "id": 91362577,
        "node_id": "MDQ6VXNlcjkxMzYyNTc3",
        "avatar_url": "https://avatars.githubusercontent.com/u/91362577?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/cfj521",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 7,
      "created_at": "2026-01-24T06:09:20Z",
      "updated_at": "2026-02-06T10:33:06Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "发帖日期：2026/1/24\n\n故障情况：启动程序后窗口内全白，无内容，无法正常关闭\n\n系统环境：Windows 11专业工作站版，版本号24H2，操作系统版本26100.7623\n\nv3.9.1，即便是更新到了最新的3.10.1也是一样\n\n无有效的日志，自从无法正常启动后便不再有新的日志产生，日期内容一直停留在1/21\n\n删除了 c:\\user\\xx\\.cc-switcher 目录 也是一样",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/765/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/764",
      "id": 3850323536,
      "node_id": "I_kwDOPYG9FM7lf0ZQ",
      "number": 764,
      "title": "[Feature Request] Support for RHEL/Rocky Linux 8.x (GLIBC 2.28)",
      "user": {
        "login": "Molaison",
        "id": 83850708,
        "node_id": "MDQ6VXNlcjgzODUwNzA4",
        "avatar_url": "https://avatars.githubusercontent.com/u/83850708?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Molaison",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-24T05:59:55Z",
      "updated_at": "2026-02-12T01:14:17Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## Problem Description\n\nThe current Linux AppImage requires GLIBC 2.35+, which is not available on enterprise Linux distributions such as:\n- **Rocky Linux 8.x** (GLIBC 2.28)\n- **RHEL 8.x** (GLIBC 2.28)\n- **CentOS 8.x** (GLIBC 2.28)\n- **AlmaLinux 8.x** (GLIBC 2.28)\n\nWhen attempting to run `CC-Switch-v3.10.1-Linux.AppImage` on Rocky Linux 8.10, the following error occurs:\n\n```\ncc-switch: /lib64/libm.so.6: version 'GLIBC_2.29' not found (required by cc-switch)\ncc-switch: /lib64/libm.so.6: version 'GLIBC_2.35' not found (required by cc-switch)\ncc-switch: /lib64/libc.so.6: version 'GLIBC_2.29' not found (required by cc-switch)\n... (many more GLIBC version errors)\n```\n\n## Environment\n\n- **OS**: Rocky Linux 8.10 (Green Obsidian)\n- **Kernel**: 4.18.0-553.51.1.el8_10.x86_64\n- **GLIBC Version**: 2.28\n- **cc-switch Version**: v3.10.1\n\n## Proposed Solutions\n\n1. **Build on older base system**: Build the AppImage on Ubuntu 20.04 or similar older base with GLIBC 2.31, which would be compatible with more systems.\n\n2. **Provide multiple AppImage variants**:\n   - `CC-Switch-*-Linux-glibc2.28.AppImage` (for RHEL 8.x family)\n   - `CC-Switch-*-Linux.AppImage` (current, for newer systems)\n\n3. **Static linking**: Consider statically linking more dependencies to reduce GLIBC version requirements.\n\n4. **RPM package**: Provide `.rpm` packages for RHEL-family distributions in addition to `.deb`.\n\n## Impact\n\nRHEL 8.x and its derivatives are widely used in enterprise environments, academic institutions, and research centers. Supporting these systems would significantly expand cc-switch's user base.\n\n## Additional Context\n\n- Rocky Linux 8.x is supported until May 2029\n- Many users in enterprise/academic environments cannot easily upgrade their OS\n- The configuration files from Windows version work fine; only the binary has compatibility issues",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/764/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/759",
      "id": 3848774496,
      "node_id": "I_kwDOPYG9FM7lZ6Ng",
      "number": 759,
      "title": "增加token使用量返回",
      "user": {
        "login": "Haihangyuan",
        "id": 208932267,
        "node_id": "U_kgDODHQNqw",
        "avatar_url": "https://avatars.githubusercontent.com/u/208932267?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Haihangyuan",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-23T19:04:35Z",
      "updated_at": "2026-02-03T09:20:18Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "\n  # Feature Request: Add /api/oauth/usage endpoint support\n\n  ## Summary\n  Please add support for the `/api/oauth/usage` endpoint to enable token usage tracking with tools like ccline.\n\n  ## Use Case\n  Many Claude Code users want to track their token usage in real-time using status bar tools like ccline. Currently, cc-switch only proxies the main API endpoints (like `/v1/messages`),\n  but does not implement the `/api/oauth/usage` endpoint that returns usage statistics.\n\n  ## Expected Behavior\n  When ccline or similar tools request `GET http://127.0.0.1:5000/api/oauth/usage`, cc-switch should:\n  1. Forward the request to the upstream provider\n  2. Return the usage data in the same format as the official Anthropic API\n  3. Include headers like `X-Api-Key` for authentication\n\n  ## API Response Format\n  The endpoint should return JSON like:\n  ```json\n  {\n    \"data\": [\n      {\n        \"type\": \"usage\",\n        \"id\": \"usage_123\",\n        \"attributes\": {\n          \"input_tokens\": 12345,\n          \"output_tokens\": 6789,\n          \"total_tokens\": 19134\n        }\n      }\n    ]\n  }\n\n  Workaround\n\n  Currently, users need to disable the usage segment in ccline and only use context_window which shows static limits instead of actual usage.\n\n  References\n\n  - ccline (status line tool)\n  - Anthropic API docs\n\n  Thank you for considering this feature!",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/759/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/756",
      "id": 3846642360,
      "node_id": "I_kwDOPYG9FM7lRxq4",
      "number": 756,
      "title": "新增CLAUDE.md版本管理功能",
      "user": {
        "login": "wssaidong",
        "id": 4186618,
        "node_id": "MDQ6VXNlcjQxODY2MTg=",
        "avatar_url": "https://avatars.githubusercontent.com/u/4186618?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/wssaidong",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-23T09:32:04Z",
      "updated_at": "2026-01-23T09:32:04Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "可以进行CLAUDE.md版本管理和调优",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/756/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/747",
      "id": 3845773812,
      "node_id": "I_kwDOPYG9FM7lOdn0",
      "number": 747,
      "title": "【功能建议】优化 GitHub 仓库管理流程及 Skills 状态控制",
      "user": {
        "login": "chenchunlai",
        "id": 35135934,
        "node_id": "MDQ6VXNlcjM1MTM1OTM0",
        "avatar_url": "https://avatars.githubusercontent.com/u/35135934?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/chenchunlai",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-23T04:30:00Z",
      "updated_at": "2026-01-26T02:06:39Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "**问题描述：**\n目前 cc-switch 仓库管理skills功能时，筛选与启停有些不太方便，希望可以增加以下功能：\n\n**建议功能点：**\n1. **批量导入仓库**：支持通过粘贴多个 URL 或文件导入的方式，一次性添加多个 GitHub 仓库。\n2. **精细化 Skills 安装流**：在安装过程中增加“筛选-选择”环节。用户可以先筛选特定仓库，再从该仓库的列表里勾选需要的具体 Skills 进行安装。\n3. **手动更新机制**：增加“检查更新”按钮。当远程仓库有代码变动时，用户可以手动触发同步，更新已安装的 Skills。\n4. **仓库状态开关（Enable/Disable）**：为仓库增加“启用/禁用”开关。当关闭某个仓库时，该仓库下属的所有 Skills 自动进入禁用状态，无需逐个删除或关闭。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/747/reactions",
        "total_count": 2,
        "+1": 2,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/738",
      "id": 3845425640,
      "node_id": "I_kwDOPYG9FM7lNIno",
      "number": 738,
      "title": "希望仓库的skill 可以一次性添加，管理，不是像现在这样子一个一个搜索添加，还有增加仓库的更新功能",
      "user": {
        "login": "xhl592576605",
        "id": 43491624,
        "node_id": "MDQ6VXNlcjQzNDkxNjI0",
        "avatar_url": "https://avatars.githubusercontent.com/u/43491624?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/xhl592576605",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-23T01:31:48Z",
      "updated_at": "2026-01-23T01:31:48Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": null,
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/738/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/735",
      "id": 3843165588,
      "node_id": "I_kwDOPYG9FM7lEg2U",
      "number": 735,
      "title": "功能: 希望新增官方账号剩余额度统计功能",
      "user": {
        "login": "ZiqiXiao",
        "id": 99584387,
        "node_id": "U_kgDOBe-Jgw",
        "avatar_url": "https://avatars.githubusercontent.com/u/99584387?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ZiqiXiao",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-22T14:21:11Z",
      "updated_at": "2026-01-23T00:22:12Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "如果使用官方账号授权登录，可以展示小时和周额度剩余，具体展示方式可以参考claude relay service  对于个人有claude账户的用户会友好一些。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/735/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/733",
      "id": 3842217516,
      "node_id": "I_kwDOPYG9FM7lA5Ys",
      "number": 733,
      "title": "3.10.0无法使用反代thinking模式",
      "user": {
        "login": "ndlxp2008",
        "id": 20065096,
        "node_id": "MDQ6VXNlcjIwMDY1MDk2",
        "avatar_url": "https://avatars.githubusercontent.com/u/20065096?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ndlxp2008",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-22T10:15:43Z",
      "updated_at": "2026-01-23T03:18:52Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "手动升级v3.9.1->3.10.0\n\n1.win11配置不变，但是使用cc时，通过cpa连接，日志出现无法使用thing模型\napply.go:125\nthinking: model does not support thinking, stripping config | provider=iflow model=deepseek-v3.2-reasoner\n\n\n回退到v3.9.1正常",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/733/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/728",
      "id": 3841740810,
      "node_id": "I_kwDOPYG9FM7k_FAK",
      "number": 728,
      "title": "为什么ccs 挂在后台一段时间就退出了",
      "user": {
        "login": "yunhanhai",
        "id": 98143685,
        "node_id": "U_kgDOBdmNxQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/98143685?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yunhanhai",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 8,
      "created_at": "2026-01-22T08:04:20Z",
      "updated_at": "2026-02-04T09:23:15Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "为什么ccs 挂在后台一段时间就退出了，或者缩小在桌面一段时间就退出了，不知道为什么？也有可能是过段时间点叉，就掉了，一般点×会缩小的",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/728/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/721",
      "id": 3838443241,
      "node_id": "I_kwDOPYG9FM7kyf7p",
      "number": 721,
      "title": "win中配置目录为 WSL 使用报错",
      "user": {
        "login": "urzz",
        "id": 11271721,
        "node_id": "MDQ6VXNlcjExMjcxNzIx",
        "avatar_url": "https://avatars.githubusercontent.com/u/11271721?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/urzz",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2026-01-21T14:08:58Z",
      "updated_at": "2026-02-01T12:06:47Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "```\n[2026-01-21][22:07:18][ERROR][cc_switch_lib] Failed to init database: 数据库错误: database is locked\n```\n\nwindows，使用 portable 版本，设置了 cc-switch 的目录到 wsl 中后，打开就会一直卡住报这个错",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/721/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/715",
      "id": 3837023353,
      "node_id": "I_kwDOPYG9FM7ktFR5",
      "number": 715,
      "title": "希望可以添加一个管理claude code子代理",
      "user": {
        "login": "RuoJi6",
        "id": 79234113,
        "node_id": "MDQ6VXNlcjc5MjM0MTEz",
        "avatar_url": "https://avatars.githubusercontent.com/u/79234113?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/RuoJi6",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-21T07:51:44Z",
      "updated_at": "2026-01-21T07:51:44Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "希望可以添加一个管理claude code子代理功能",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/715/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/714",
      "id": 3836957788,
      "node_id": "I_kwDOPYG9FM7ks1Rc",
      "number": 714,
      "title": "希望能增加同一个供应商 多个分组的设置",
      "user": {
        "login": "c834292137",
        "id": 35482303,
        "node_id": "MDQ6VXNlcjM1NDgyMzAz",
        "avatar_url": "https://avatars.githubusercontent.com/u/35482303?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/c834292137",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-21T07:29:19Z",
      "updated_at": "2026-01-21T07:29:19Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "现在很多中转站都有很多个分组 每个分组的倍率不一样 每个分组又要不同的key 然后很多时候分组不能用也要切换 现在只能同一个中转站配置很多个 用不同的key才能做到  希望能加个功能 一个供应商可以支持添加多个key（每个key可以定义分组名称）然后可以切换 这样就只需要配置一个供应商",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/714/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/707",
      "id": 3832806996,
      "node_id": "I_kwDOPYG9FM7kc_5U",
      "number": 707,
      "title": "遇到一个api报错，我不确定是否和本项目有关，大佬可以帮我看看吗",
      "user": {
        "login": "unkown985",
        "id": 145701379,
        "node_id": "U_kgDOCK86Aw",
        "avatar_url": "https://avatars.githubusercontent.com/u/145701379?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/unkown985",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 5,
      "created_at": "2026-01-20T09:17:34Z",
      "updated_at": "2026-01-29T07:02:37Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "API Error: 400 {\"error\":{\"message\":\"InvokeModelWithResponseStream:\n    operation error Bedrock Runtime: InvokeModelWithResponseStream, https\n    response error StatusCode: 400, RequestID:\n    8c7afb8f-54cc-4113-a387-fb70fd143d90, ValidationException: invalid beta\n    flag (request id: 20260120091405936400036lX3Hi6Cd) (request id:\n    20260120091405788795523mq0EsMY8) (request_id: chatcmpl-a6cb215097004593a\n    ac189e247089f4e)\",\"type\":\"invalid_request_error\"}}\n问题根源：\n  ccswitch 在转发请求时，可能把 Anthropic 原生 API 的某些 beta 参数也发送给了 Bedrock，但 Bedrock 不支持这些参数，导致报错。\n上面是ai分析的",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/707/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/705",
      "id": 3832612327,
      "node_id": "I_kwDOPYG9FM7kcQXn",
      "number": 705,
      "title": "[Suggestion] Submit to official homebrew-cask repository",
      "user": {
        "login": "cxhello",
        "id": 49056040,
        "node_id": "MDQ6VXNlcjQ5MDU2MDQw",
        "avatar_url": "https://avatars.githubusercontent.com/u/49056040?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/cxhello",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-20T08:21:29Z",
      "updated_at": "2026-01-21T13:29:42Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "Hi! As a CC Switch user, following up on #703 (Homebrew tap automation), I'd like to suggest an alternative approach.\n\n## CC Switch Qualifies for Official Homebrew\n\nYour project has impressive metrics:\n- ⭐ **12,423 stars** (requirement: 75)\n- 🍴 **796 forks** (requirement: 30)\n- 👀 **32 watchers** (requirement: 30)\n\nThis far exceeds the [official homebrew-cask acceptance criteria](https://docs.brew.sh/Acceptable-Casks).\n\n## Benefits of Official Repository\n\n| Aspect | Self-hosted Tap | Official homebrew-cask |\n|--------|-----------------|------------------------|\n| Installation | `brew tap xxx && brew install` | `brew install --cask cc-switch` |\n| Version updates | Manual or custom CI | **BrewTestBot auto-detects & creates PR** |\n| Maintenance burden | You maintain everything | Community + Bot help maintain |\n| Visibility | Limited | Higher (official listing) |\n\n### How Official Auto-Update Works\n\nOnce submitted with `livecheck` configured:\n\n```ruby\nlivecheck do\n  url :url\n  strategy :github_latest\nend\n```\n\nHomebrew's **BrewTestBot** will:\n1. Periodically check your GitHub releases\n2. Auto-create PR when new version detected\n3. Maintainers review and merge\n\nAfter the initial setup, version updates are handled automatically - no manual work required.\n\n## Possible Approach (Just a Suggestion)\n\n1. Submit CC Switch to `homebrew/homebrew-cask`\n2. After merged, you could deprecate `homebrew-ccswitch` tap (or keep as backup)\n3. Reduces long-term maintenance overhead\n\nOf course, this is entirely your call - just sharing an option that might save you time!\n\n## Happy to Help\n\nIf you're open to this, I'd be glad to:\n- Submit the PR to official homebrew-cask on your behalf\n- Or assist with the submission process\n\nJust let me know your preference!\n\n## Community Feedback Welcome 💬\n\nCC Switch has a large user base, and this change would affect how everyone installs and updates the app. \n\n**I'd love to hear from the community:**\n- Do you prefer the official `homebrew-cask` or the current self-hosted tap?\n- Any concerns about migrating to the official repository?\n\nFeel free to share your thoughts! 👇\n\n---\n\nReference: [How to add a cask](https://docs.brew.sh/How-To-Open-a-Homebrew-Pull-Request)",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/705/reactions",
        "total_count": 1,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 1,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/703",
      "id": 3832472598,
      "node_id": "I_kwDOPYG9FM7kbuQW",
      "number": 703,
      "title": "[Feature Request] Automate Homebrew cask update on new releases",
      "user": {
        "login": "cxhello",
        "id": 49056040,
        "node_id": "MDQ6VXNlcjQ5MDU2MDQw",
        "avatar_url": "https://avatars.githubusercontent.com/u/49056040?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/cxhello",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-20T07:40:30Z",
      "updated_at": "2026-01-21T13:29:40Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "Hi! Thanks for the great tool 🙌\n\nI noticed that the Homebrew tap (farion1231/ccswitch) is currently updated manually. \nFor example, v3.9.1 was released on Jan 9, but the tap still shows v3.9.0.\n\nThis can cause confusion for users who install via Homebrew and expect to get \nthe latest version.\n\n## Proposal\n\nAdd an automated step in the release workflow to update the Homebrew cask \nwhen a new version is published.\n\nA simple solution would be using the `macauley/action-homebrew-bump-cask` action:\n\n```yaml\n# In .github/workflows/release.yml\nupdate-homebrew:\n  needs: [build, update-latest-json]\n  runs-on: macos-latest\n  steps:\n    - name: Update Homebrew Cask\n      uses: macauley/action-homebrew-bump-cask@v1\n      with:\n        token: ${{ secrets.HOMEBREW_TAP_TOKEN }}\n        tap: farion1231/ccswitch\n        cask: cc-switch\n```\n\nThis requires a Personal Access Token with `repo` scope stored in the secrets.\n\n## How It Works\n\n1. When a new version is released, the Action automatically creates a PR to `homebrew-ccswitch`\n2. The PR includes updated version number and SHA256 hash (calculated automatically)\n3. You just need to review and merge the PR\n\nThis saves the manual work of downloading the release, calculating SHA256, and updating the cask file.\n\n## Happy to Help\n\nI'd be glad to submit a PR for this if you're open to it. \nJust let me know if you have any preferences on the implementation.",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/703/reactions",
        "total_count": 1,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 1,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/700",
      "id": 3832191983,
      "node_id": "I_kwDOPYG9FM7kapvv",
      "number": 700,
      "title": "cc-swtich的mcp配置对于codex 来说有问题",
      "user": {
        "login": "Adoretheall007",
        "id": 154971368,
        "node_id": "U_kgDOCTys6A",
        "avatar_url": "https://avatars.githubusercontent.com/u/154971368?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Adoretheall007",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-20T06:03:28Z",
      "updated_at": "2026-01-20T06:22:42Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "mcp配置好后，等下次重新启动cc-switch的时候，将不会把mcp配置顺带写入配置文件当中（即时已经开启）。需要在mcp管理中重新开关一次按钮才会写入codex 的配置文件。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/700/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/698",
      "id": 3830516686,
      "node_id": "I_kwDOPYG9FM7kUQvO",
      "number": 698,
      "title": "添加为远程服务器修改的功能",
      "user": {
        "login": "MedAIerHHL",
        "id": 102724737,
        "node_id": "U_kgDOBh90gQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/102724737?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/MedAIerHHL",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-19T16:50:05Z",
      "updated_at": "2026-01-28T07:59:38Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "有时候我们需要在远程服务器上进行cc，能否添加在本地修改远程服务器的这些内容，同时直接把本地直接作用到远程。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/698/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/690",
      "id": 3828339692,
      "node_id": "I_kwDOPYG9FM7kL9Ps",
      "number": 690,
      "title": "安装后跑不起来",
      "user": {
        "login": "eecopilot",
        "id": 127478918,
        "node_id": "U_kgDOB5kshg",
        "avatar_url": "https://avatars.githubusercontent.com/u/127478918?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/eecopilot",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2026-01-19T07:13:42Z",
      "updated_at": "2026-01-21T08:59:06Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "```\n~$ cc-switch \n\n[CC-Switch] Crash log saved to: /home/xx/.cc-switch/crash.log\n\n================================================================================\n[CRASH REPORT] 2026-01-19 15:09:27.581\n================================================================================\n\n----------------------------------------\nSystem Information\n----------------------------------------\nOS: linux (unix)\nArch: x86_64\nApp Version: 3.9.1\nWorking Dir: /home\nThread: main (ID: ThreadId(1))\n\n----------------------------------------\nError Details\n----------------------------------------\nMessage: Failed to initialize gtk backend!: BoolError { message: \"Failed to initialize GTK\", filename: \"/home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gtk-0.18.2/src/rt.rs\", function: \"gtk::rt::init\", line: 141 }\n\nLocation: File: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tao-0.34.3/src/platform_impl/linux/event_loop.rs\n         Line: 218\n         Column: 53\n\n----------------------------------------\nStack Trace (Backtrace)\n----------------------------------------\n   0: <unknown>\n   1: <unknown>\n   2: <unknown>\n   3: <unknown>\n   4: <unknown>\n   5: <unknown>\n   6: <unknown>\n   7: <unknown>\n   8: <unknown>\n   9: <unknown>\n  10: <unknown>\n  11: <unknown>\n  12: <unknown>\n  13: <unknown>\n  14: <unknown>\n  15: <unknown>\n  16: <unknown>\n  17: __libc_start_main\n  18: <unknown>\n\n\n================================================================================\n\n\nthread 'main' (15399) panicked at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tao-0.34.3/src/platform_impl/linux/event_loop.rs:218:53:\nFailed to initialize gtk backend!: BoolError { message: \"Failed to initialize GTK\", filename: \"/home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gtk-0.18.2/src/rt.rs\", function: \"gtk::rt::init\", line: 141 }\nstack backtrace:\nnote: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n\nxx@server:~$ lsb_release -a\nNo LSB modules are available.\nDistributor ID:\tUbuntu\nDescription:\tUbuntu 24.04.3 LTS\nRelease:\t24.04\nCodename:\tnoble\n\n```",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/690/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/688",
      "id": 3827870462,
      "node_id": "I_kwDOPYG9FM7kKKr-",
      "number": 688,
      "title": "proxy 设置非127地址会开启失败 wsl",
      "user": {
        "login": "en-o",
        "id": 45027672,
        "node_id": "MDQ6VXNlcjQ1MDI3Njcy",
        "avatar_url": "https://avatars.githubusercontent.com/u/45027672?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/en-o",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-19T03:49:26Z",
      "updated_at": "2026-01-19T03:49:26Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "我在wsl 里配置启用的 cc switch (有gui)，配置代理出来127之外根本无法使用，我的代理是开在windows的，所以必须写ip，\n我直接构建在配置文件中是可以的\n\n<img width=\"551\" height=\"58\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/9ff90144-c2cd-4b7e-8cb5-60963f6fa9fd\" />\n\n\nxx@tann:~$ ping  192.168.1.71\nPING 192.168.1.71 (192.168.1.71) 56(84) bytes of data.\n64 bytes from 192.168.1.71: icmp_seq=1 ttl=127 time=0.502 ms\n64 bytes from 192.168.1.71: icmp_seq=2 ttl=127 time=0.967 ms\n^C\n--- 192.168.1.71 ping statistics ---\n2 packets transmitted, 2 received, 0% packet loss, time 999ms\nrtt min/avg/max/mdev = 0.502/0.734/0.967/0.232 ms\n\n\n<img width=\"1082\" height=\"611\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/f174862b-8630-4c2f-bb15-70a5822f2286\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/688/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/685",
      "id": 3827559860,
      "node_id": "I_kwDOPYG9FM7kI-20",
      "number": 685,
      "title": "[Bug] 手动修改的 MCP 配置文件被 cc-switch 覆盖",
      "user": {
        "login": "Ekko7778",
        "id": 36813498,
        "node_id": "MDQ6VXNlcjM2ODEzNDk4",
        "avatar_url": "https://avatars.githubusercontent.com/u/36813498?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Ekko7778",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2026-01-19T00:31:44Z",
      "updated_at": "2026-02-04T05:45:50Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## [Bug] 手动修改的 MCP 配置文件被 cc-switch 覆盖\n\n我在使用 cc-switch 管理 MCP 服务器时发现一个问题：如果我在本地手动修改了 MCP 配置文件（`~/.claude.json`、`~/.codex/config.toml` 或 `~/.gemini/settings.json`），每次重新打开 cc-switch 或执行任何 MCP 操作时，我的修改都会被覆盖，配置恢复到 cc-switch 数据库中的旧版本。\n\n## 复现步骤\n\n1. 在 cc-switch 中添加一个 MCP 服务器\n2. 关闭 cc-switch\n3. 手动编辑 `~/.claude/json`，添加或修改 MCP 配置\n4. 重新打开 cc-switch\n5. 点击查看 MCP 管理页面\n\n**结果**: 步骤 3 的手动修改丢失，文件被覆盖成旧配置\n\n## 期望行为\n\n- 检测到本地配置文件被外部修改时，给用户提示选择\n- 或者：启动时比较数据库和本地文件的修改时间，自动导入新配置\n\n## 影响\n\n- 无法在 cc-switch 外部自由编辑 MCP 配置\n- 调试配置时很麻烦，每次修改都会被覆盖\n\n## 环境\n\n- cc-switch v3.9.1\n- Windows 11",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/685/reactions",
        "total_count": 2,
        "+1": 2,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/675",
      "id": 3826158488,
      "node_id": "I_kwDOPYG9FM7kDouY",
      "number": 675,
      "title": "可以添加滚动条开关吗？",
      "user": {
        "login": "BlackCatCmx",
        "id": 146694822,
        "node_id": "U_kgDOCL5ipg",
        "avatar_url": "https://avatars.githubusercontent.com/u/146694822?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/BlackCatCmx",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-18T01:40:34Z",
      "updated_at": "2026-01-19T12:36:46Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "win在设置里没找到，当供应商多的时候滚动条更快，滚轮太痛苦了",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/675/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/669",
      "id": 3824382479,
      "node_id": "I_kwDOPYG9FM7j83IP",
      "number": 669,
      "title": "Windows11自己退出进程问题",
      "user": {
        "login": "48038411",
        "id": 44643400,
        "node_id": "MDQ6VXNlcjQ0NjQzNDAw",
        "avatar_url": "https://avatars.githubusercontent.com/u/44643400?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/48038411",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 8,
      "created_at": "2026-01-17T04:46:58Z",
      "updated_at": "2026-01-22T18:51:53Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "Windows11 25H2专业版，26200.7309，正常运行会自己闪退，跑了三个cc终端",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/669/reactions",
        "total_count": 2,
        "+1": 2,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/668",
      "id": 3824269363,
      "node_id": "I_kwDOPYG9FM7j8bgz",
      "number": 668,
      "title": "plugin里的插件无法被识别",
      "user": {
        "login": "ImViper",
        "id": 60597225,
        "node_id": "MDQ6VXNlcjYwNTk3MjI1",
        "avatar_url": "https://avatars.githubusercontent.com/u/60597225?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ImViper",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-17T02:38:21Z",
      "updated_at": "2026-01-17T02:38:21Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "plugin里的插件无法被识别和管理\n<img width=\"308\" height=\"497\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/4fddf0a7-768f-430f-bc28-9089c5e556ac\" />\n\n<img width=\"863\" height=\"576\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/f7685485-8104-4407-be35-6dc97fac3393\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/668/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/662",
      "id": 3820037138,
      "node_id": "I_kwDOPYG9FM7jsSQS",
      "number": 662,
      "title": "window打开显示空白",
      "user": {
        "login": "Charlie-C-810",
        "id": 54610249,
        "node_id": "MDQ6VXNlcjU0NjEwMjQ5",
        "avatar_url": "https://avatars.githubusercontent.com/u/54610249?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Charlie-C-810",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-16T02:43:35Z",
      "updated_at": "2026-01-30T08:56:49Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "window打开显示空白\n\n<img width=\"847\" height=\"604\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/f0dd934f-9294-417d-ae1f-879a82129bbe\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/662/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/661",
      "id": 3819924263,
      "node_id": "I_kwDOPYG9FM7jr2sn",
      "number": 661,
      "title": "win版本 25H2 (OS 内部版本 26200.7462) 如果当前没有codex cli在运行，cc-switch会自己退出程序，无法做到后台常驻。",
      "user": {
        "login": "Adoretheall007",
        "id": 154971368,
        "node_id": "U_kgDOCTys6A",
        "avatar_url": "https://avatars.githubusercontent.com/u/154971368?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Adoretheall007",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2026-01-16T01:54:03Z",
      "updated_at": "2026-01-27T09:01:06Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": null,
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/661/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/640",
      "id": 3808578473,
      "node_id": "I_kwDOPYG9FM7jAkup",
      "number": 640,
      "title": "请求支持winget安装",
      "user": {
        "login": "NakanoSanku",
        "id": 96334375,
        "node_id": "U_kgDOBb3yJw",
        "avatar_url": "https://avatars.githubusercontent.com/u/96334375?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/NakanoSanku",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-13T12:13:36Z",
      "updated_at": "2026-01-13T12:13:36Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "RT，喜欢用Winget安装软件，发现CC-Switch居然没有",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/640/reactions",
        "total_count": 1,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 1
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/639",
      "id": 3808114920,
      "node_id": "I_kwDOPYG9FM7i-zjo",
      "number": 639,
      "title": "mcp、skill、prompt 管理里面能否加一个搜索框",
      "user": {
        "login": "FANTASYSSL",
        "id": 28664364,
        "node_id": "MDQ6VXNlcjI4NjY0MzY0",
        "avatar_url": "https://avatars.githubusercontent.com/u/28664364?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/FANTASYSSL",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-13T10:04:45Z",
      "updated_at": "2026-01-14T07:41:56Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "每次mcp管理，或者skill管理，如果安装的特别多，找起来很麻烦，能否加个搜索框进行搜索，不然搞多了很难找，或者加上标签来分类",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/639/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/635",
      "id": 3807747887,
      "node_id": "I_kwDOPYG9FM7i9Z8v",
      "number": 635,
      "title": "安装的skills显示错误",
      "user": {
        "login": "jingshenbusi6530",
        "id": 19492294,
        "node_id": "MDQ6VXNlcjE5NDkyMjk0",
        "avatar_url": "https://avatars.githubusercontent.com/u/19492294?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/jingshenbusi6530",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-13T08:30:52Z",
      "updated_at": "2026-01-13T08:31:32Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1387\" height=\"661\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/4da991b7-cb16-484f-944d-3df510cea1a1\" />\n我实际安装的是红框中的skill-creator，但是\"已安装\"的标记在awesome-claude-skills上",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/635/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/633",
      "id": 3807320783,
      "node_id": "I_kwDOPYG9FM7i7xrP",
      "number": 633,
      "title": "Bug: 覆盖安装后软件内版本号显示不正确",
      "user": {
        "login": "mookechee",
        "id": 76271502,
        "node_id": "MDQ6VXNlcjc2MjcxNTAy",
        "avatar_url": "https://avatars.githubusercontent.com/u/76271502?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/mookechee",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-13T06:20:31Z",
      "updated_at": "2026-01-13T08:08:25Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## 问题描述\n\n覆盖安装新版本后，软件内检测显示的版本号仍为旧版本。\n\n## 复现步骤\n\n1. 已安装版本 3.9.0\n2. 下载 3.9.1 版本进行覆盖安装\n3. 安装程序显示版本号为 3.9.1\n4. 打开软件，查看版本信息\n\n## 期望行为\n\n软件内显示版本号为 3.9.1\n\n## 实际行为\n\n软件内显示版本号仍为 3.9.0\n\n## 临时解决方案\n\n卸载后重新安装可恢复正常。\n\n## 环境信息\n\n- 操作系统: Ubuntu 24.04.3 LTS\n- 内核版本: 6.14.0-37-generic\n- 架构: x86_64\n- 旧版本: 3.9.0\n- 新版本: 3.9.1\n- 安装方式: 覆盖安装",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/633/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/622",
      "id": 3804604554,
      "node_id": "I_kwDOPYG9FM7ixaiK",
      "number": 622,
      "title": "[bug] cc-switch changed rustdesk tray icon",
      "user": {
        "login": "mora1n",
        "id": 55047233,
        "node_id": "MDQ6VXNlcjU1MDQ3MjMz",
        "avatar_url": "https://avatars.githubusercontent.com/u/55047233?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/mora1n",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 3,
      "created_at": "2026-01-12T14:37:45Z",
      "updated_at": "2026-01-13T07:53:52Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "os: debian13\nde: gnome48\nversion: 3.9.1\n\n<img width=\"183\" height=\"249\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/6c41d48d-05e5-4846-a13b-d11e29f0e515\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/622/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/621",
      "id": 3804473219,
      "node_id": "I_kwDOPYG9FM7iw6eD",
      "number": 621,
      "title": "Gemini 配置环境变量在Google Official模式下不生效",
      "user": {
        "login": "AdySnowflake",
        "id": 163967164,
        "node_id": "U_kgDOCcXwvA",
        "avatar_url": "https://avatars.githubusercontent.com/u/163967164?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/AdySnowflake",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-12T14:05:08Z",
      "updated_at": "2026-02-01T14:06:56Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "注意到readme中：\n\n> Gemini\n> \n> Live 配置：\\~/.gemini/.env（API Key）+ \\~/.gemini/settings.json（保存认证模式）\n> API key 字段：.env 文件中的 GEMINI_API_KEY 或 GOOGLE_GEMINI_API_KEY\n> 环境变量：支持 GOOGLE_GEMINI_BASE_URL、GEMINI_MODEL 等自定义变量\n> MCP 服务器：~/.gemini/settings.json → mcpServers\n> 托盘快速切换：每次切换供应商都会重写 ~/.gemini/.env，无需重启 Gemini CLI 即可生效\n\n是否意味着在Official模式下，配置.env不可用？\n\n<img width=\"1350\" height=\"900\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/518d1945-ffe2-4d97-897b-8427269d8427\" />\n我自己实测结果是：如果在界面中设置了环境变量，实际并不会生效。\n\n但有时候也需要在official模式下设置如`GOOGLE_CLOUD_PROJECT`等环境变量，不知道用本软件应该怎么操作？\n\n<img width=\"1658\" height=\"108\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/42ae53c2-5a3a-47af-b51f-43cf704f9397\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/621/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/615",
      "id": 3803333683,
      "node_id": "I_kwDOPYG9FM7iskQz",
      "number": 615,
      "title": "MCP管理",
      "user": {
        "login": "nameIsNoPublic",
        "id": 67778595,
        "node_id": "MDQ6VXNlcjY3Nzc4NTk1",
        "avatar_url": "https://avatars.githubusercontent.com/u/67778595?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/nameIsNoPublic",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-12T08:53:52Z",
      "updated_at": "2026-01-12T08:53:52Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"900\" height=\"162\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/db32be25-e61c-4e4e-9446-d9822a58921e\" />\n期望增加一个搜索功能",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/615/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/605",
      "id": 3802954268,
      "node_id": "I_kwDOPYG9FM7irHoc",
      "number": 605,
      "title": "用量查询extra字段没用",
      "user": {
        "login": "GoldenTangerine",
        "id": 66678011,
        "node_id": "MDQ6VXNlcjY2Njc4MDEx",
        "avatar_url": "https://avatars.githubusercontent.com/u/66678011?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/GoldenTangerine",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-12T06:31:28Z",
      "updated_at": "2026-01-12T06:53:20Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "({\n  request: {\n    url: \"{{baseUrl}}/apiStats/api/user-stats\",\n    method: \"POST\",\n    headers: {\n      \"Content-Type\": \"application/json\",\n      Referer: \"{{baseUrl}}/admin-next/api-stats?apiId={{apiKey}}\",\n      \"User-Agent\": \"cc-switch/1.0\",\n    },\n    body: JSON.stringify({\n      apiId: \"{{apiKey}}\",\n    }),\n  },\n\n  extractor: function (response) {\n    const limits = response?.data?.limits || {};\n    const total = typeof limits.rateLimitCost === \"number\" ? limits.rateLimitCost : undefined;\n    const used = typeof limits.currentWindowCost === \"number\" ? limits.currentWindowCost : undefined;\n    const remaining =\n      typeof total === \"number\" && typeof used === \"number\"\n        ? Math.max(0, total - used)\n        : undefined;\n    // 距离下次刷新（秒）\n    let secs =\n      typeof limits.windowRemainingSeconds === \"number\"\n        ? limits.windowRemainingSeconds\n        : undefined;\n\n    if (typeof secs !== \"number\" && typeof limits.windowEndTime === \"number\") {\n      secs = Math.max(0, Math.floor((limits.windowEndTime - Date.now()) / 1000));\n    }\n\n    let refreshText;\n    if (typeof secs === \"number\") {\n      const days = Math.floor(secs / 86400);\n      const hours = Math.floor((secs % 86400) / 3600);\n      const mins = Math.floor((secs % 3600) / 60);\n      refreshText = `${days}天${hours}小时${mins}分钟`;\n    }\n\n    return {\n      isValid: true,\n      total,\n      used,\n      remaining,\n      unit: \"USD\",\n      extra: refreshText ? `距离下次刷新：${refreshText}` : undefined,\n    };\n  },\n})\n这样配置后，extra字段是不会显示内容的",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/605/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/601",
      "id": 3802540200,
      "node_id": "I_kwDOPYG9FM7ipiio",
      "number": 601,
      "title": "codex cli的mcp配置失效",
      "user": {
        "login": "Adoretheall007",
        "id": 154971368,
        "node_id": "U_kgDOCTys6A",
        "avatar_url": "https://avatars.githubusercontent.com/u/154971368?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Adoretheall007",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-12T02:27:29Z",
      "updated_at": "2026-02-11T06:30:56Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "重新点击图片当中的本地托管按钮，会导致mcp配置不载入codex的配置文件，需要手动去mcp管理中，进行一次开关操作才行。\n\n<img width=\"177\" height=\"81\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/ac3f1292-3bc9-4091-bfd4-fae9995a6774\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/601/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/599",
      "id": 3802466529,
      "node_id": "I_kwDOPYG9FM7ipQjh",
      "number": 599,
      "title": "[feature request] 希望通用配置中支持配置带注释的json，方便随时启用或停用配置，添加说明等",
      "user": {
        "login": "hasonx",
        "id": 98155096,
        "node_id": "U_kgDOBdm6WA",
        "avatar_url": "https://avatars.githubusercontent.com/u/98155096?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/hasonx",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-12T01:41:25Z",
      "updated_at": "2026-01-12T04:02:54Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1294\" height=\"494\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/efc40d3c-539b-4201-aa92-cf65e6c63511\" />\n类似以下这种\n\n<img width=\"1384\" height=\"570\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/6753a94c-5343-4e40-a858-1c5f5fc0033f\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/599/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/593",
      "id": 3801019057,
      "node_id": "I_kwDOPYG9FM7ijvKx",
      "number": 593,
      "title": "[feature request]希望能够引进tweakcn主题管理来提升程序的美化程度",
      "user": {
        "login": "ssword",
        "id": 686327,
        "node_id": "MDQ6VXNlcjY4NjMyNw==",
        "avatar_url": "https://avatars.githubusercontent.com/u/686327?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ssword",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560424,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgqA",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/good%20first%20issue",
          "name": "good first issue",
          "color": "7057ff",
          "default": true,
          "description": "Good for newcomers"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-11T09:34:33Z",
      "updated_at": "2026-01-12T01:29:16Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "首先感谢作者大佬提供了如此方便的工具帮我们管理编程工具的使用环境。\n但是我相信工具的界面还有一些可以改进的空间。\n我看见作者使用了shadcn来帮忙管理界面样式，shadcn本身是非常好看的组件库，如果再加上[TweakCN](https://tweakcn.com/)，可以产生出多变且漂亮的组件程序。比如说下面这样 Bubble Gum 模式，只需要重载shadcn的 index.css 和 tailwind.config.ts 就可以变换。\n\n<img width=\"1327\" height=\"773\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/c78e2a00-cd43-4488-ab62-e2cc92fe9847\" />\n\n但实际上，cc-switch 各个组件可能都存在本地设定的样式，把shadcn的样式都遮盖了。比如说程序首页的 CC Switch这个title：\n\n```javascript\n<a\n  href=\"https://github.com/farion1231/cc-switch\"\n  target=\"_blank\"\n  rel=\"noreferrer\"\n  className={cn(\n    \"text-xl font-semibold transition-colors\",\n    isProxyRunning && isCurrentAppTakeoverActive\n      ? \"text-emerald-500 hover:text-emerald-600 dark:text-emerald-400 dark:hover:text-emerald-300\"\n      : \"text-blue-500 hover:text-blue-600 dark:text-blue-400 dark:hover:text-blue-300\",\n  )}\n>\n  CC Switch\n</a>\n```\n所以建议把所有的组件检查一遍，替换为符合shadcn规范的组件，然后就可以拥有Tweakcn这样无限的变换空间。\n\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/593/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/570",
      "id": 3797287814,
      "node_id": "I_kwDOPYG9FM7iVgOG",
      "number": 570,
      "title": "建议还增加一个MCP市场",
      "user": {
        "login": "kenuoseclab",
        "id": 26113646,
        "node_id": "MDQ6VXNlcjI2MTEzNjQ2",
        "avatar_url": "https://avatars.githubusercontent.com/u/26113646?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/kenuoseclab",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-09T15:07:19Z",
      "updated_at": "2026-01-12T09:16:29Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "建议还增加一个MCP市场，目前痛点还需要全网去寻找各种MCP，然后添加的时候还需要去考虑使用UVX 或者NPX或者stdio等等参数细节",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/570/reactions",
        "total_count": 2,
        "+1": 2,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/563",
      "id": 3795612502,
      "node_id": "I_kwDOPYG9FM7iPHNW",
      "number": 563,
      "title": "本地代理功能配置问题",
      "user": {
        "login": "iRubbish",
        "id": 32736415,
        "node_id": "MDQ6VXNlcjMyNzM2NDE1",
        "avatar_url": "https://avatars.githubusercontent.com/u/32736415?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/iRubbish",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2026-01-09T06:05:52Z",
      "updated_at": "2026-01-11T06:15:43Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "切换到本地代理模式后，配置修改不生效不管我是通过通用配置还是修改单独的配置 setting.json 都未修改。不清楚 3.9 版本配置文件在本地代理模式下除了手动编辑 json 配置文件外 能否通过 cc switch 来修改配置，如果不能软件下修改希望后续能支持。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/563/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/555",
      "id": 3793376992,
      "node_id": "I_kwDOPYG9FM7iGlbg",
      "number": 555,
      "title": "Add support for Claude via cloud providers (e.g. Azure Foundry)",
      "user": {
        "login": "acomarcho",
        "id": 29671825,
        "node_id": "MDQ6VXNlcjI5NjcxODI1",
        "avatar_url": "https://avatars.githubusercontent.com/u/29671825?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/acomarcho",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-08T15:36:11Z",
      "updated_at": "2026-02-12T10:42:42Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "This is an example of what a Claude Code configuration would look like using Azure Foundry\n\n```\n  \"env\": {\n    \"ANTHROPIC_DEFAULT_HAIKU_MODEL\": \"claude-haiku-4-5\",\n    \"ANTHROPIC_DEFAULT_OPUS_MODEL\": \"claude-opus-4-5\",\n    \"ANTHROPIC_DEFAULT_SONNET_MODEL\": \"claude-sonnet-4-5\",\n    \"ANTHROPIC_FOUNDRY_API_KEY\": \"foundry-api-key\",\n    \"ANTHROPIC_FOUNDRY_RESOURCE\": \"foundry-resource-name\",\n    \"ANTHROPIC_MODEL\": \"claude-sonnet-4-5\",\n    \"CLAUDE_CODE_USE_FOUNDRY\": \"1\"\n  }\n```",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/555/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/541",
      "id": 3787263920,
      "node_id": "I_kwDOPYG9FM7hvQ-w",
      "number": 541,
      "title": "自定义模版不支持POST请求体",
      "user": {
        "login": "nanqmg",
        "id": 226632161,
        "node_id": "U_kgDODYIh4Q",
        "avatar_url": "https://avatars.githubusercontent.com/u/226632161?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/nanqmg",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2026-01-07T04:00:07Z",
      "updated_at": "2026-01-07T04:00:07Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1976\" height=\"1282\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/95c0a2e5-d8ba-46fc-829c-336547b46bce\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/541/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/531",
      "id": 3781996157,
      "node_id": "I_kwDOPYG9FM7hbK59",
      "number": 531,
      "title": "应用图标建议",
      "user": {
        "login": "mingzaily",
        "id": 44798713,
        "node_id": "MDQ6VXNlcjQ0Nzk4NzEz",
        "avatar_url": "https://avatars.githubusercontent.com/u/44798713?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/mingzaily",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 5,
      "created_at": "2026-01-05T15:56:01Z",
      "updated_at": "2026-01-19T09:45:48Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "在感觉mac dock栏下，只有cc-switch的图标是拟物风，就用了png格式的，感觉很奇怪，大部分都是矩形圆角，不知道能不能统一\n\n<img width=\"1438\" height=\"76\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/b24687de-02f9-4290-8727-a5e19cd9246b\" />\n\n🤣",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/531/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/516",
      "id": 3778098033,
      "node_id": "I_kwDOPYG9FM7hMTNx",
      "number": 516,
      "title": "环境变量冲突 检测有逻辑问题",
      "user": {
        "login": "okerivy",
        "id": 4578474,
        "node_id": "MDQ6VXNlcjQ1Nzg0NzQ=",
        "avatar_url": "https://avatars.githubusercontent.com/u/4578474?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/okerivy",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-03T14:12:02Z",
      "updated_at": "2026-01-04T04:20:50Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "### 现象 \n**每次启动 都会弹窗提示 有检测到系统环境变量冲突 发现2个环境变量可能会覆盖您的配置**\n\n<img width=\"954\" height=\"137\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/4df10529-fbbe-4966-a11c-0d7bc932524d\" />\n\n## 环境变量冲突检测逻辑问题反馈\n\n### 问题描述\n\n软件运行时检测到 3 个环境变量冲突，但这些变量实际上是自己写的本地 shell 函数内部的局部变量，不应该被标记为冲突：\n\n- `local v_gemini_old=xxx` (来源: `~/.zshrc:264`)\n- `local v_gemini_remote=xxx` (来源: `~/.zshrc:275`)\n\n### 问题原因\n\n`src-tauri/src/services/env_checker.rs` 中的 `check_shell_configs` 函数匹配逻辑过于宽松（第 97-122 行）：\n\n\n```rust\n// 只要行包含 = 且变量名包含关键词就会被匹配\nif trimmed.starts_with(\"export \")\n    || (!trimmed.starts_with('#') && trimmed.contains('='))\n{\n    // ...\n    if keywords.iter().any(|k| var_name.to_uppercase().contains(k)) {\n        // 标记为冲突\n    }\n}\n```\n当前使用 contains 模糊匹配，导致任何变量名中包含 GEMINI、ANTHROPIC、OPENAI 的变量都会被误报为冲突。\n\n## 建议修复，因为误判\n\n因为我的`.zshrc` 中包含 自己定义的其他变量，例如 `local v_gemini_remote` 其实只是 本地 func 的内部变量而已\n\n---\n\n## 下面是AI的分析建议，不太懂内部代码，所以仅供参考\n\n应该改为精确匹配官方环境变量名，而不是模糊包含关键词：\n\n```rust\nfn get_keywords_for_app(app: &str) -> Vec<&str> {\n    match app.to_lowercase().as_str() {\n        \"claude\" => vec![\"ANTHROPIC_API_KEY\"],\n        \"codex\" => vec![\"OPENAI_API_KEY\"],\n        \"gemini\" => vec![\"GEMINI_API_KEY\", \"GOOGLE_API_KEY\"],\n        _ => vec![],\n    }\n}\n```\n\n然后用精确匹配或前缀匹配代替 contains：\n\n```rust\n// 精确匹配\nif keywords.iter().any(|k| var_name.to_uppercase() == *k)\n\n// 或前缀匹配\nif keywords.iter().any(|k| var_name.to_uppercase().starts_with(k))\n```",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/516/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/512",
      "id": 3776289516,
      "node_id": "I_kwDOPYG9FM7hFZrs",
      "number": 512,
      "title": "添加S3协议对象存储备份支持",
      "user": {
        "login": "adiljaanE",
        "id": 237610527,
        "node_id": "U_kgDODimmHw",
        "avatar_url": "https://avatars.githubusercontent.com/u/237610527?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/adiljaanE",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2026-01-02T12:38:54Z",
      "updated_at": "2026-01-07T11:41:54Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## 功能请求\n\n希望能够添加对S3协议对象存储的备份支持。\n\n### 背景\n目前cc-switch支持本地备份，但对于生产环境和多服务器部署场景，使用S3协议的对象存储（如AWS S3、MinIO、阿里云OSS等）进行备份会更加可靠和便捷。\n\n### 建议的功能\n1. 支持配置S3兼容的对象存储端点\n2. 2. 支持配置访问密钥（Access Key/Secret Key）\n3. 3. 支持自定义bucket和路径\n4. 4. 支持备份文件自动上传到S3\n5. 5. 支持从S3恢复备份\n### 配置示例\n```yaml\nbackup:\n  type: s3\n  endpoint: https://s3.amazonaws.com\n  region: us-east-1\n  bucket: cc-switch-backups\n  access_key: YOUR_ACCESS_KEY\n  secret_key: YOUR_SECRET_KEY\n  path: /backups\n```\n\n### 使用场景\n- 多服务器环境下的集中备份管理\n- - 利用对象存储的高可用性和持久性\n- - - 方便的备份文件管理和版本控制\n- - - - 降低本地存储压力\n感谢考虑这个功能请求！",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/512/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/489",
      "id": 3765475459,
      "node_id": "I_kwDOPYG9FM7gcJiD",
      "number": 489,
      "title": "cc-switch shows \"API Error: undefined is not an object (evaluating '_.text.trim')\"",
      "user": {
        "login": "rick-yao",
        "id": 59443488,
        "node_id": "MDQ6VXNlcjU5NDQzNDg4",
        "avatar_url": "https://avatars.githubusercontent.com/u/59443488?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/rick-yao",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 6,
      "created_at": "2025-12-28T08:54:44Z",
      "updated_at": "2026-01-13T02:33:36Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "It seems when I enter something about code, api response show error.\n<img width=\"1787\" height=\"1008\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/d8f93b59-e78b-4034-8965-0565c169ebe8\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/489/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/476",
      "id": 3762521219,
      "node_id": "I_kwDOPYG9FM7gQ4SD",
      "number": 476,
      "title": "windows的cc-switch检查更新失败",
      "user": {
        "login": "JunhuaLiu1",
        "id": 102940597,
        "node_id": "U_kgDOBiK_tQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/102940597?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/JunhuaLiu1",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2025-12-26T01:36:02Z",
      "updated_at": "2025-12-27T14:27:23Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "首先我先说明我确实是最新的版本，在检查更新的过程中不应该是报错，检查更新失败，望改善\n\n<img width=\"1245\" height=\"841\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/a1b0b12f-d613-4cd6-97c9-83e60b228291\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/476/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/457",
      "id": 3759048985,
      "node_id": "I_kwDOPYG9FM7gDokZ",
      "number": 457,
      "title": "codex 配置，添加新配置，只添加 apikey 和url 然后使用 codex 会一直提示 Reconnecting...",
      "user": {
        "login": "ferocknew",
        "id": 2178683,
        "node_id": "MDQ6VXNlcjIxNzg2ODM=",
        "avatar_url": "https://avatars.githubusercontent.com/u/2178683?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ferocknew",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2025-12-24T02:58:51Z",
      "updated_at": "2026-01-26T08:27:43Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "如题\n\n然后无法使用",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/457/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/429",
      "id": 3750991002,
      "node_id": "I_kwDOPYG9FM7fk5Sa",
      "number": 429,
      "title": "codex 使用 Azure OpenAI 时需要手动设置密钥环境变量",
      "user": {
        "login": "TinsFox",
        "id": 33956589,
        "node_id": "MDQ6VXNlcjMzOTU2NTg5",
        "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/TinsFox",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2025-12-21T10:16:30Z",
      "updated_at": "2025-12-29T23:53:07Z",
      "closed_at": null,
      "author_association": "CONTRIBUTOR",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## 问题描述\n在使用 OpenAI Codex CLI 与 Azure OpenAI 集成时，每次打开新终端时手动运行 `export AZURE_OPENAI_API_KEY=\"<your-api-key>\"`\n\n\n\n<img width=\"814\" height=\"433\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/61d1c384-c6a3-4594-a94d-c468feea9f09\" />\n\nrefs:\n\nhttps://learn.microsoft.com/en-us/azure/ai-foundry/openai/how-to/codex?view=foundry&tabs=npm\n\n## 问题的可能原因\n\ncodex 在非官方的时候，不读取 auth.json\n\n## 可能的解决方案\n\n在使用 Azure OpenAI 的时候，多做一步自动写入环境变量",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/429/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/421",
      "id": 3746825116,
      "node_id": "I_kwDOPYG9FM7fVAOc",
      "number": 421,
      "title": "希望新增MCP配置mac/win兼容",
      "user": {
        "login": "lonelyman0108",
        "id": 43877343,
        "node_id": "MDQ6VXNlcjQzODc3MzQz",
        "avatar_url": "https://avatars.githubusercontent.com/u/43877343?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/lonelyman0108",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2025-12-19T09:43:52Z",
      "updated_at": "2025-12-19T09:43:52Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "在mac/linux中，mcp的配置是相互兼容的\n```json\n{\n  \"args\": [\n    \"-y\",\n    \"@modelcontextprotocol/server-memory\"\n  ],\n  \"command\": \"npx\",\n  \"type\": \"stdio\"\n}\n```\n但是在win中，mcp的配置有点特殊，需要改成cmd\n```json\n{\n  \"args\": [\n    \"/c\",\n    \"npx\",\n    \"-y\",\n    \"@modelcontextprotocol/server-memory\"\n  ],\n  \"command\": \"cmd\",\n  \"type\": \"stdio\"\n}\n```\n\n这样就不能做到mac/win共用配置，这个可以兼容下吗",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/421/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/417",
      "id": 3746274734,
      "node_id": "I_kwDOPYG9FM7fS52u",
      "number": 417,
      "title": "Claude Code 配置目录 能不能配置多个",
      "user": {
        "login": "SilenceShine",
        "id": 126382592,
        "node_id": "U_kgDOB4hyAA",
        "avatar_url": "https://avatars.githubusercontent.com/u/126382592?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SilenceShine",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2025-12-19T06:33:30Z",
      "updated_at": "2025-12-21T07:53:13Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "wsl和本地一起修改\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/417/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/414",
      "id": 3745700180,
      "node_id": "I_kwDOPYG9FM7fQtlU",
      "number": 414,
      "title": "windows24H下，3.8.x-3.9-x版本打开都黑屏，几秒后闪退，降级到3.7.x 版本恢复正常",
      "user": {
        "login": "pengpoom",
        "id": 128778335,
        "node_id": "U_kgDOB60AXw",
        "avatar_url": "https://avatars.githubusercontent.com/u/128778335?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/pengpoom",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 2,
      "created_at": "2025-12-19T02:09:38Z",
      "updated_at": "2025-12-27T14:16:42Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "windows24H下，3.8.x-3.9-x版本打开都黑屏，几秒后闪退，降级到3.7.x 版本恢复正常",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/414/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/412",
      "id": 3742180752,
      "node_id": "I_kwDOPYG9FM7fDSWQ",
      "number": 412,
      "title": "能否支持OCI （Oracle 托管的LLM)",
      "user": {
        "login": "syw2014",
        "id": 6802806,
        "node_id": "MDQ6VXNlcjY4MDI4MDY=",
        "avatar_url": "https://avatars.githubusercontent.com/u/6802806?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/syw2014",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2025-12-18T09:14:01Z",
      "updated_at": "2025-12-18T09:14:01Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "OCI （Oracle 托管的LLM)，grok，gemini，gpt等",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/412/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/409",
      "id": 3741189800,
      "node_id": "I_kwDOPYG9FM7e_gao",
      "number": 409,
      "title": "什么时候能适配AzureOpenAI 的API啊",
      "user": {
        "login": "arvinlvc",
        "id": 35155651,
        "node_id": "MDQ6VXNlcjM1MTU1NjUx",
        "avatar_url": "https://avatars.githubusercontent.com/u/35155651?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/arvinlvc",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 3,
      "created_at": "2025-12-18T02:40:05Z",
      "updated_at": "2026-01-04T06:32:04Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "什么时候能适配AzureOpenAI 的API啊",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/409/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/373",
      "id": 3708867822,
      "node_id": "I_kwDOPYG9FM7dENTu",
      "number": 373,
      "title": "[Feature Proposal] Document Integration with Local Token Refresh & Usage Proxy Service",
      "user": {
        "login": "kittors",
        "id": 44192482,
        "node_id": "MDQ6VXNlcjQ0MTkyNDgy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44192482?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/kittors",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 0,
      "created_at": "2025-12-09T02:29:02Z",
      "updated_at": "2025-12-09T02:29:02Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## Summary\n\nI'd like to propose documenting an integration pattern for cc-switch to better support providers that rely on **short‑lived access tokens + long‑lived refresh tokens**.\n\nTo solve this in my own setup, I built a small local middleware service — a **Token Refresh & Usage Proxy Service** — that works as a drop‑in companion for cc-switch's Usage Script feature. I think this pattern (and the reference implementation) could be useful to other users as well.\n\nRepo: https://github.com/kittors/apikey-usage-tool\n\n---\n\n## Problem\n\ncc-switch’s Usage Script system is intentionally simple and elegant:\n\n- It executes a JavaScript snippet once.\n- That snippet describes a **single HTTP request** (`request`) and a result extractor (`extractor`).\n- There’s no built‑in state or multi‑step flow (e.g., no “call refresh, then call usage” sequence).\n\nHowever, many providers (TabCode‑style, OAuth2‑style, etc.) use:\n\n- A **short‑lived access_token** (e.g. expires every ~30 minutes).\n- A **long‑lived refresh_token**, which must be used to obtain a new access_token.\n- A **usage/overview endpoint** that only accepts a valid, current access_token.\n\nWith the current model, users have to either:\n\n- Manually update access_token in cc-switch every time it expires, or\n- Implement their own complicated refresh logic outside of cc-switch.\n\nThis is cumbersome in practice and makes the Usage Script feature much harder to use with modern, OAuth‑style APIs.\n\n---\n\n## Proposed Solution: Document the “Local Token Refresh & Usage Proxy” Pattern\n\nInstead of changing cc-switch’s core behavior, we can document a recommended pattern:\n\n1. **Keep cc-switch simple**: Usage Script still performs exactly one HTTP call.\n2. **Offload complexity to a local sidecar service**:\n   - cc-switch sends `refreshToken` (as its “API Key”) to `http://localhost:<port>/`.\n   - The local service:\n     - Caches and refreshes `access_token` as needed (using `refreshUrl`).\n     - Calls the provider’s usage/overview API (using `dashboardUrl`).\n     - Returns a normalized JSON payload for cc-switch to display.\n\nIn other words, cc-switch only sees **one black‑box HTTP endpoint** that returns usage data, and all token lifecycle “dirty work” happens in a small local proxy.\n\n### Reference Implementation: `apikey-usage-tool`\n\nI’ve implemented this pattern as a generic proxy service:\n\n- **Repo**: https://github.com/kittors/apikey-usage-tool\n- **Key features**:\n  - Configurable `refreshUrl` (refresh endpoint) and `dashboardUrl` (usage endpoint).\n  - In‑memory caching of `access_token`, automatic refresh when missing/expired.\n  - Designed specifically to integrate with cc-switch Usage Scripts.\n  - Can be run via Docker Compose or directly via Bun.\n\nHigh‑level flow:\n\n1. cc-switch sends:\n\n   ```json\n   {\n     \"refreshToken\": \"<your long-lived token>\",\n     \"refreshUrl\": \"<provider refresh endpoint>\",\n     \"dashboardUrl\": \"<provider usage/overview endpoint>\"\n   }\n",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/373/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/344",
      "id": 3688780712,
      "node_id": "I_kwDOPYG9FM7b3lOo",
      "number": 344,
      "title": "UI: CC-Switch和rustdesk同时打开的时候ccswtich图标会变成rustdesk的图标",
      "user": {
        "login": "XiaoPengYouCode",
        "id": 120481176,
        "node_id": "U_kgDOBy5lmA",
        "avatar_url": "https://avatars.githubusercontent.com/u/120481176?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/XiaoPengYouCode",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 2,
      "created_at": "2025-12-03T06:50:42Z",
      "updated_at": "2025-12-09T14:13:50Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"131\" height=\"30\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/149fa649-3668-443c-bfd7-7babf9bbe4a1\" />\n\nKernal: 6.8.0-87-generic\nDescription: Ubuntu 22.04.5 LTS\nubuntu: GNOME\nwayland",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/344/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/338",
      "id": 3682287698,
      "node_id": "I_kwDOPYG9FM7be0BS",
      "number": 338,
      "title": "关于图标设计的一些个人看法",
      "user": {
        "login": "zhengchalei",
        "id": 31665079,
        "node_id": "MDQ6VXNlcjMxNjY1MDc5",
        "avatar_url": "https://avatars.githubusercontent.com/u/31665079?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/zhengchalei",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 2,
      "created_at": "2025-12-01T18:23:32Z",
      "updated_at": "2025-12-21T12:35:51Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "首先: 图标代表文字确实比较美观, 但是不直观了, 用户对于未知的图标, 很多情况是不知道什么意思的， 是否可以添加 图标+文字的 可能,  外加一个开关可以移除文字, 满足两边用户需求.\n\nClaude Skills 管理 这个页面里面的图标是我觉得是最直观的, 我看图标很快的能知道大概是干什么的, 文字能更精准的确认. \n首页的三个按钮我一时不是很清楚知道功能\n和QQ这个有点像\n\n<img width=\"234\" height=\"247\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/6240052b-0b2c-4443-a7a6-8318eb984e90\" />\n\n另外我很喜欢  cc-switch , 真的满足了我切换模型的需求, 之前还需要 powertoys 里面的环境变量切换, cc-switch 功能强大的多,  最后感谢作者的付出.",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/338/reactions",
        "total_count": 2,
        "+1": 2,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/328",
      "id": 3678747456,
      "node_id": "I_kwDOPYG9FM7bRTtA",
      "number": 328,
      "title": "托盘图标可否改成左键打开界面呢",
      "user": {
        "login": "C-racker",
        "id": 20217449,
        "node_id": "MDQ6VXNlcjIwMjE3NDQ5",
        "avatar_url": "https://avatars.githubusercontent.com/u/20217449?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/C-racker",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 1,
      "created_at": "2025-12-01T00:41:16Z",
      "updated_at": "2025-12-01T03:25:09Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "现在点击直接是切换供应商，但是大概率点击图标是用来修改其他设置的",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/328/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/314",
      "id": 3675389819,
      "node_id": "I_kwDOPYG9FM7bEf97",
      "number": 314,
      "title": "ubuntu更新的时候希望可以添加更新进度条",
      "user": {
        "login": "wwwrookie",
        "id": 9474680,
        "node_id": "MDQ6VXNlcjk0NzQ2ODA=",
        "avatar_url": "https://avatars.githubusercontent.com/u/9474680?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/wwwrookie",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2025-11-28T16:20:05Z",
      "updated_at": "2025-11-29T09:56:04Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"858\" height=\"377\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/35088dfa-f122-4407-8451-0f7ad6107503\" />ubuntu更新的时候希望可以添加更新进度条，因为是翻墙下载，网络速度不稳定，看不到下载的进度",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/314/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/313",
      "id": 3675317063,
      "node_id": "I_kwDOPYG9FM7bEONH",
      "number": 313,
      "title": "建议：增加mcp的导出功能",
      "user": {
        "login": "hackerpayne",
        "id": 3203693,
        "node_id": "MDQ6VXNlcjMyMDM2OTM=",
        "avatar_url": "https://avatars.githubusercontent.com/u/3203693?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/hackerpayne",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 1,
      "created_at": "2025-11-28T15:48:53Z",
      "updated_at": "2025-11-29T08:25:49Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "\n建议：在MCP服务器管理的编辑后面，增加一个复制的功能，可以复制出整段的Json。或者在编辑MCP时，显示的完整 json配置，可以显示完整 的段。\n\n场景：我想复制MCP的配置从这边到ChatBox或者别的工具时，总是需要有个地方，存完整的json格式。再复制过去使用。CC Switch中目前的格式只有内部的一段。需要自己再填充，使用起来比较麻烦。\n\n可以使用完整 的格式显示。比如\n\n```\n{\n  \"servers\": {\n    \"git\": {\n      \"command\": \"uvx\",\n      \"args\": [\"mcp-server-git\"]\n    }\n  }\n}\n```\n\n不知道有没有人遇到过。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/313/reactions",
        "total_count": 2,
        "+1": 2,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/295",
      "id": 3662299210,
      "node_id": "I_kwDOPYG9FM7aSkBK",
      "number": 295,
      "title": "关于软件自带mcp中time的建议",
      "user": {
        "login": "SivanZeroX",
        "id": 32437197,
        "node_id": "MDQ6VXNlcjMyNDM3MTk3",
        "avatar_url": "https://avatars.githubusercontent.com/u/32437197?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SivanZeroX",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 1,
      "created_at": "2025-11-25T09:53:56Z",
      "updated_at": "2025-11-26T08:15:26Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"753\" height=\"679\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/d6ac28b4-ffd8-4dce-b40f-01f75612fdbc\" />自带的这种方式会出现time mcp连接不成功，建议改为 uvx 的方式。\n\n<img width=\"253\" height=\"171\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/4649db47-cbd7-4bd4-899c-b667abb9f483\" />\n\n这个就成功了",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/295/reactions",
        "total_count": 4,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 4,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/293",
      "id": 3661843372,
      "node_id": "I_kwDOPYG9FM7aQ0us",
      "number": 293,
      "title": "我在cc-switch中增加的mcp，claude code cli中llm无法识别到",
      "user": {
        "login": "ZJM6658",
        "id": 16357655,
        "node_id": "MDQ6VXNlcjE2MzU3NjU1",
        "avatar_url": "https://avatars.githubusercontent.com/u/16357655?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ZJM6658",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 3,
      "created_at": "2025-11-25T07:35:05Z",
      "updated_at": "2025-12-09T14:30:30Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "我在cc-switch中增加的mcp，claude code cli中llm无法识别到\n\n<img width=\"1546\" height=\"1210\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/3f1c130d-10d1-4ed9-9c3f-3d893126cb74\" />\n\nclaude mcp list：\n<img width=\"844\" height=\"184\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/c6765d63-db35-4495-9d1e-a43685295be3\" />\n\n直接询问：\n\n<img width=\"850\" height=\"1146\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/90ced3b2-cdfb-4b83-8d8c-e0587e260e35\" />\n\n是我的使用姿势不对吗？我是mac 14.6.1 (23G93)",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/293/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/283",
      "id": 3657209933,
      "node_id": "I_kwDOPYG9FM7Z_JhN",
      "number": 283,
      "title": "建议：增加webdav备份，增加token消耗图表",
      "user": {
        "login": "SivanZeroX",
        "id": 32437197,
        "node_id": "MDQ6VXNlcjMyNDM3MTk3",
        "avatar_url": "https://avatars.githubusercontent.com/u/32437197?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SivanZeroX",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 3,
      "created_at": "2025-11-24T06:05:54Z",
      "updated_at": "2026-02-03T05:48:40Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": null,
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/283/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/261",
      "id": 3641500222,
      "node_id": "I_kwDOPYG9FM7ZDOI-",
      "number": 261,
      "title": "希望需求：增加agent配置",
      "user": {
        "login": "SivanZeroX",
        "id": 32437197,
        "node_id": "MDQ6VXNlcjMyNDM3MTk3",
        "avatar_url": "https://avatars.githubusercontent.com/u/32437197?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SivanZeroX",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "yovinchen",
        "id": 76760071,
        "node_id": "MDQ6VXNlcjc2NzYwMDcx",
        "avatar_url": "https://avatars.githubusercontent.com/u/76760071?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yovinchen",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "yovinchen",
          "id": 76760071,
          "node_id": "MDQ6VXNlcjc2NzYwMDcx",
          "avatar_url": "https://avatars.githubusercontent.com/u/76760071?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/yovinchen",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 2,
      "created_at": "2025-11-19T07:49:59Z",
      "updated_at": "2026-01-31T14:11:25Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"856\" height=\"659\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/83f92f52-720b-4a7b-96fa-2c05442e66e5\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/261/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/205",
      "id": 3613071446,
      "node_id": "I_kwDOPYG9FM7XWxhW",
      "number": 205,
      "title": "Credential Storage Risks",
      "user": {
        "login": "geeknik",
        "id": 466878,
        "node_id": "MDQ6VXNlcjQ2Njg3OA==",
        "avatar_url": "https://avatars.githubusercontent.com/u/466878?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/geeknik",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 3,
      "created_at": "2025-11-11T16:42:52Z",
      "updated_at": "2025-11-12T03:17:17Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "Good morning. `src-tauri/src/provider.rs:10-69` and `src-tauri/src/config.rs:65-123` serialize provider definitions, including `settings_config.env` API tokens and usage-script secrets, directly into `~/.cc-switch/config.json` without encryption, OS keychain usage, or permission hardening. Any local process or user with access to the host can potentially read/modify those credentials, making privilege escalation via token theft trivial.\n\n`src/components/providers/forms/hooks/useCommonConfigSnippet.ts:36-75` and `src/components/providers/forms/hooks/useCodexCommonConfig.ts:34-75` cache user-supplied configuration snippets in `window.localStorage`. Those snippets often include full env blocks (API keys, access tokens). A compromised renderer or injected webview script can trivially dump these long-lived secrets, bypassing the desktop app’s trust boundary.\n\nIt is recommended to \n1. Move provider credentials into an encrypted store (OS keychain, Tauri secure storage, or similar) and store only references in config.json. Enforce restrictive file permissions as a baseline.\n2. Stop persisting sensitive snippets in localStorage. If temporary caching is unavoidable, encrypt the payload with a per-session key and wipe it as soon as the snippet is applied.",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/205/reactions",
        "total_count": 1,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 1,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/188",
      "id": 3605240506,
      "node_id": "I_kwDOPYG9FM7W45q6",
      "number": 188,
      "title": "总是会出现登录codex覆盖前一个配置的情况",
      "user": {
        "login": "TONG-LING",
        "id": 71418496,
        "node_id": "MDQ6VXNlcjcxNDE4NDk2",
        "avatar_url": "https://avatars.githubusercontent.com/u/71418496?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/TONG-LING",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "milestone": null,
      "comments": 4,
      "created_at": "2025-11-09T17:13:50Z",
      "updated_at": "2025-11-17T14:30:56Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "不知道能否添加一个锁定的功能，把当前的配置锁住不允许修改之类的",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/188/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/187",
      "id": 3605104759,
      "node_id": "I_kwDOPYG9FM7W4Yh3",
      "number": 187,
      "title": "feat: 支持 MCP JSON 格式导入",
      "user": {
        "login": "TinsFox",
        "id": 33956589,
        "node_id": "MDQ6VXNlcjMzOTU2NTg5",
        "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/TinsFox",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2025-11-09T15:10:30Z",
      "updated_at": "2025-12-21T15:27:53Z",
      "closed_at": null,
      "author_association": "CONTRIBUTOR",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "希望 MCP 可以支持这种格式的导入\n\n```json\n{\n  \"mcpServers\": {\n    \"context7\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@upstash/context7-mcp\", \"--api-key\", \"YOUR_API_KEY\"]\n    }\n  }\n}\n```",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/187/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/180",
      "id": 3603039033,
      "node_id": "I_kwDOPYG9FM7WwgM5",
      "number": 180,
      "title": "增加对codex和cc的全允许模型的设置（yolo模式）",
      "user": {
        "login": "systemoutprintlnhelloworld",
        "id": 62531937,
        "node_id": "MDQ6VXNlcjYyNTMxOTM3",
        "avatar_url": "https://avatars.githubusercontent.com/u/62531937?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/systemoutprintlnhelloworld",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {},
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 4,
      "created_at": "2025-11-08T07:51:08Z",
      "updated_at": "2025-11-08T12:42:09Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "我另外一个配置管理工具能够一键开启codex中的`approval_policy = \"never\"\nsandbox_mode = \"danger-full-access\"`和cc中`cc claude-yolo`，但是我用cc-switch切换一个配置就自动把配置文件这个设置项给覆盖了，又需要用那个程序设置下，这个能否聚合再cc switch中呢",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/180/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/178",
      "id": 3600066769,
      "node_id": "I_kwDOPYG9FM7WlKjR",
      "number": 178,
      "title": "[BUG] 编辑Codex 提供商页面提取API请求地址的逻辑默认是第一个出现的 model_provider",
      "user": {
        "login": "coachpo",
        "id": 12790403,
        "node_id": "MDQ6VXNlcjEyNzkwNDAz",
        "avatar_url": "https://avatars.githubusercontent.com/u/12790403?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/coachpo",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560393,
          "node_id": "LA_kwDOPYG9FM8AAAACG7GgiQ",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/bug",
          "name": "bug",
          "color": "d73a4a",
          "default": true,
          "description": "Something isn't working"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2025-11-07T12:11:19Z",
      "updated_at": "2025-11-08T02:27:56Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "如果 config.toml (TOML) 出现多个 [model_providers.packycode] 会导致 UI 上的API 请求地址 只提取 第一个 model_provider 的base_url， 期望选项应该根据config.toml 的 model_provider key 来提取 base_url。\n\nmodel_providers.guagua 是第一个出现的 model_provider， model_provider = \"guagua\"， \nUI 展示的 API 请求地址是 https://www.guagua.com/v1 \n符合期望\n\n<img width=\"766\" height=\"1190\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/08fdfb12-1cc1-4210-97cd-6e3736067a48\" />\n\nmodel_providers.packycode 是第一个出现的 model_provider， model_provider = \"guagua\"， \nUI展示的API 请求地址是 https://www.packyapi.com/v1    \n不符合期望\n\n<img width=\"783\" height=\"1209\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/ecdbd831-d4de-484c-a3fd-80ef37b84fb2\" />\n\n\nhttps://github.com/openai/codex/blob/main/docs/config.md#model_providers 是支持多 model_providers 选项的",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/178/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/145",
      "id": 3539276749,
      "node_id": "I_kwDOPYG9FM7S9RPN",
      "number": 145,
      "title": "如何同时管理windows环境与WSL环境的切换",
      "user": {
        "login": "Protears",
        "id": 45806588,
        "node_id": "MDQ6VXNlcjQ1ODA2NTg4",
        "avatar_url": "https://avatars.githubusercontent.com/u/45806588?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Protears",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 14,
      "created_at": "2025-10-22T06:17:59Z",
      "updated_at": "2026-01-10T13:22:39Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "配置目录覆盖，切换的是WSL环境的配置信息，\n不配置目录覆盖，切换的是Windows环境下的配置信息，\n但是在切换过程中会丢失目录覆盖的配置，下次再切换WSL环境需要重新添加配置\n是否可以新增启用/禁用目录覆盖，及同步目录覆盖（即同时切换Windows环境与WSL环境的配置）",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/145/reactions",
        "total_count": 4,
        "+1": 4,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": [
        704
      ]
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/135",
      "id": 3524944860,
      "node_id": "I_kwDOPYG9FM7SGmPc",
      "number": 135,
      "title": "Claude Code 使用原生 `–settings` 选项配置多个自定义模型供应商",
      "user": {
        "login": "1PercentSync",
        "id": 127626920,
        "node_id": "U_kgDOB5tuqA",
        "avatar_url": "https://avatars.githubusercontent.com/u/127626920?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/1PercentSync",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2025-10-17T07:56:53Z",
      "updated_at": "2025-10-17T08:58:04Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "https://linux.do/t/topic/957691\n如果cc switch能够实现这样快捷切换供应商的功能应该会很不错",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/135/reactions",
        "total_count": 2,
        "+1": 2,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/99",
      "id": 3498608196,
      "node_id": "I_kwDOPYG9FM7QiIZE",
      "number": 99,
      "title": "[功能建议] 启动时自动加载 config.toml 中的所有 model_providers 配置",
      "user": {
        "login": "flyhelanman",
        "id": 18319435,
        "node_id": "MDQ6VXNlcjE4MzE5NDM1",
        "avatar_url": "https://avatars.githubusercontent.com/u/18319435?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/flyhelanman",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 1,
      "created_at": "2025-10-09T10:40:29Z",
      "updated_at": "2025-10-12T07:06:35Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "## 功能建议：自动加载配置文件中的所有供应商\n\n### 当前问题\n\n目前 CC-Switch 启动时只会加载 `~/.codex/config.toml` 中当前激活的供应商，即使配置文件里定义了多个 `[model_providers.xxx]` 配置块，界面上也只显示一个 \"default\" 供应商。\n\n**我的 config.toml 示例：**\n```toml\nmodel_provider = \"88code\"\n\n[model_providers.packycode]\nname = \"packycode\"\nbase_url = \"https://oai-api.fkclaude.com/v1\"\n# ... 其他配置\n\n[model_providers.88code]\nname = \"88code\"\nbase_url = \"https://88code.org/openai/v1\"\n# ... 其他配置\n```\n\n**实际显示：** 只有 1 个名为 \"default\" 的供应商\n\n---\n\n### 期望功能\n\n希望 CC-Switch 启动时能够：\n\n1. **自动解析** `config.toml` 中所有的 `[model_providers.xxx]` 配置块\n2. **批量创建** 对应的供应商条目到界面列表中\n3. **自动配对** 每个供应商与现有的 `auth.json`（因为 Codex 使用单一 auth 文件）\n4. **用户后续可在界面中分别编辑**每个供应商的 API Key\n\n**期望显示：**\n- 供应商 1: \"packycode\" (base_url: `https://oai-api.fkclaude.com/v1`)\n- 供应商 2: \"88code\" (base_url: `https://88code.org/openai/v1`)\n\n---\n\n### 使用场景和原因\n\n我日常需要使用多个 API 供应商进行开发，目前的工作流程是：\n\n**现状（繁琐）：**\n1. 在 `config.toml` 中已经配置好了多个 model_providers\n2. 但必须在 CC-Switch 界面中逐个手动添加供应商\n3. 每次重装或更换电脑后，又要重新手动添加一遍\n4. 配置文件和界面操作需要双重维护\n\n**期望（高效）：**\n1. 在 `config.toml` 中定义好所有供应商（一次性编辑）\n2. 启动 CC-Switch 后自动识别并加载所有供应商\n3. 只需在界面中修改每个供应商的 API Key 即可使用\n4. 配置文件即配置源，无需重复操作\n\n这样做的好处：\n- ✅ **批量配置**：可以一次性在文本编辑器中配置多个供应商\n- ✅ **快速迁移**：更换设备时只需复制配置文件即可\n- ✅ **便于分享**：可以将常用供应商配置分享给团队成员\n- ✅ **减少操作**：不用在 UI 中逐个填写 base_url 等重复信息\n\n---\n\n### 实现思路\n\n建议参考现有的 migration（迁移）逻辑：\n\n1. **首次加载时**：扫描 `config.toml` 的所有 `model_providers.*` 配置块\n2. **自动导入**：将不存在的供应商添加到 `~/.cc-switch/config.json`\n3. **去重检查**：根据 `name` 或 `base_url` 避免创建重复供应商\n4. **保留编辑**：不覆盖用户已在界面中手动修改过的供应商\n\n这个功能与现有的 SSOT 架构完全兼容，相当于提供了一个\"从 Codex 配置文件批量导入供应商\"的能力。\n\n---\n\n### 环境信息\n\n- **操作系统**: Windows 10\n- **CC-Switch 版本**: v3.4.0\n- **配置文件路径**: `~/.codex/config.toml`\n\n---\n\n如果这个功能能够实现，将大大提升多供应商用户的使用体验。感谢考虑！🙏",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/99/reactions",
        "total_count": 1,
        "+1": 1,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/49",
      "id": 3439061145,
      "node_id": "I_kwDOPYG9FM7M--iZ",
      "number": 49,
      "title": "feat: codex 增加预设供应商",
      "user": {
        "login": "TinsFox",
        "id": 33956589,
        "node_id": "MDQ6VXNlcjMzOTU2NTg5",
        "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/TinsFox",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 7,
      "created_at": "2025-09-22T03:38:32Z",
      "updated_at": "2025-10-20T06:45:46Z",
      "closed_at": null,
      "author_association": "CONTRIBUTOR",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "<img width=\"1800\" height=\"1356\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/d7a912a3-8661-441c-9172-6017fad21249\" />\n\n希望可以对 codex 增加像 claude code 那样的预设供应商，进一步降低门槛\n\n<img width=\"1474\" height=\"274\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/13b0c7dc-0366-4d39-be56-82b1b3fafc2b\" />",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/49/reactions",
        "total_count": 0,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 0,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/issues/39",
      "id": 3434658059,
      "node_id": "I_kwDOPYG9FM7MuLkL",
      "number": 39,
      "title": "请问是否考虑增加云端备份、恢复的的功能？",
      "user": {
        "login": "duny31030",
        "id": 38305281,
        "node_id": "MDQ6VXNlcjM4MzA1Mjgx",
        "avatar_url": "https://avatars.githubusercontent.com/u/38305281?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/duny31030",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "labels": {
        "0": {
          "id": 9054560414,
          "node_id": "LA_kwDOPYG9FM8AAAACG7Ggng",
          "url": "https://api.github.com/repos/farion1231/cc-switch/labels/enhancement",
          "name": "enhancement",
          "color": "a2eeef",
          "default": true,
          "description": "New feature or request"
        }
      },
      "state": "open",
      "locked": false,
      "assignee": null,
      "assignees": {},
      "milestone": null,
      "comments": 9,
      "created_at": "2025-09-19T14:41:30Z",
      "updated_at": "2026-02-10T01:19:02Z",
      "closed_at": null,
      "author_association": "NONE",
      "active_lock_reason": null,
      "sub_issues_summary": {
        "total": 0,
        "completed": 0,
        "percent_completed": 0
      },
      "issue_dependencies_summary": {
        "blocked_by": 0,
        "total_blocked_by": 0,
        "blocking": 0,
        "total_blocking": 0
      },
      "body": "你好，请问是否考虑增加备份、恢复的的功能？有点类似于cherry studio的webdav备份与恢复，方便在不同的电脑之间快速便捷的同步配置信息。（比如我单位和家里的电脑都需要使用cc和codex，家里是mac os，单位是win11。不想每次有个改动，两边都改一次。）\n如下图：\n[![pV4kbRA.png](https://s21.ax1x.com/2025/09/19/pV4kbRA.png)](https://imgse.com/i/pV4kbRA)\n实际上这个功能我今天晚上已经弄了一个[简单的版本](https://github.com/duny31030/cc-switch)，如下图：\n[![pV4kqxI.png](https://s21.ax1x.com/2025/09/19/pV4kqxI.png)](https://imgse.com/i/pV4kqxI)\n因为正好下午刚给cherry studio配置好webdav，所以就惯性思维给cc-switch也做了相同的方式。\n但是现在刚反应过来，cc-switch的配置文件非常小，可能使用坚果云提供的服务更加的合适，这样大家也不用专门去折腾webdav，可以直接注册坚果云。（如果有需要，这部分我也可以加上。）\n不知道是否有这个计划，如果有，并且我能帮上忙，那就再好不过了。\n最后，非常感谢开发了这个项目，目前使用很方便，帮了很大的忙。",
      "closed_by": null,
      "reactions": {
        "url": "https://api.github.com/repos/farion1231/cc-switch/issues/39/reactions",
        "total_count": 4,
        "+1": 0,
        "-1": 0,
        "laugh": 0,
        "hooray": 0,
        "confused": 0,
        "heart": 4,
        "rocket": 0,
        "eyes": 0
      },
      "performed_via_github_app": null,
      "state_reason": null,
      "pinned_comment": null,
      "linked_prs": []
    }
  ],
  "pulls": [
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/1052",
      "id": 3288119739,
      "node_id": "PR_kwDOPYG9FM7D_Lm7",
      "number": 1052,
      "state": "open",
      "locked": false,
      "title": "fix: Don't add ?beta=true to OpenAI Chat Completions endpoints",
      "user": {
        "login": "jnorthrup",
        "id": 73514,
        "node_id": "MDQ6VXNlcjczNTE0",
        "avatar_url": "https://avatars.githubusercontent.com/u/73514?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/jnorthrup",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "Fixes Nvidia provider and other providers using apiFormat=\"openai_chat\".\r\n\r\nThe ClaudeAdapter::build_url() method was incorrectly adding ?beta=true to both /v1/messages and /v1/chat/completions endpoints. This caused the Nvidia provider to fail because:\r\n\r\n1. Nvidia uses apiFormat=\"openai_chat\"\r\n2. Requests are transformed to OpenAI format and sent to /v1/chat/completions\r\n3. The URL gets ?beta=true appended (Anthropic-specific parameter)\r\n4. Nvidia's API rejects requests with this parameter\r\n\r\nFix:\r\n- Only add ?beta=true to /v1/messages endpoint\r\n- Exclude /v1/chat/completions from getting this parameter\r\n\r\nTested:\r\n- Anthropic /v1/messages still gets ?beta=true ✓\r\n- OpenAI Chat Completions /v1/chat/completions does NOT get ?beta=true ✓\r\n- All 13 Claude adapter tests pass ✓",
      "created_at": "2026-02-16T02:38:54Z",
      "updated_at": "2026-02-16T02:38:54Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": "086bca3300b116595d026d8858b3658d6d71399a",
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "jnorthrup:fix/nvidia-openai-chat-beta-param",
        "ref": "fix/nvidia-openai-chat-beta-param",
        "sha": "a73c6c23a775c0474bf6972795fb105cbb1bfdfa",
        "user": {
          "login": "jnorthrup",
          "id": 73514,
          "node_id": "MDQ6VXNlcjczNTE0",
          "avatar_url": "https://avatars.githubusercontent.com/u/73514?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/jnorthrup",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1148067172,
          "node_id": "R_kgDORG4dZA",
          "name": "cc-switch",
          "full_name": "jnorthrup/cc-switch",
          "private": false,
          "owner": {
            "login": "jnorthrup",
            "id": 73514,
            "node_id": "MDQ6VXNlcjczNTE0",
            "avatar_url": "https://avatars.githubusercontent.com/u/73514?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/jnorthrup",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/jnorthrup/cc-switch",
          "created_at": "2026-02-02T14:40:28Z",
          "updated_at": "2026-02-02T14:40:28Z",
          "pushed_at": "2026-02-16T02:37:44Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 30527,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "6c38a8fd24a25e6c06914b4657ff331f4363e73e",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/1052"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/1052"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/1052"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/1052/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/1052/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/1052/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/a73c6c23a775c0474bf6972795fb105cbb1bfdfa"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/1047",
      "id": 3286907481,
      "node_id": "PR_kwDOPYG9FM7D6jpZ",
      "number": 1047,
      "state": "open",
      "locked": false,
      "title": "feat: Add AWS Bedrock Provider Support (AKSK & API Key)",
      "user": {
        "login": "keithyt06",
        "id": 103325445,
        "node_id": "U_kgDOBiifBQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/103325445?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/keithyt06",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "## Summary\n\n- Add AWS Bedrock as a first-class cloud provider in cc-switch\n- Support both **AKSK** (Access Key / Secret Key) and **Bedrock API Key** authentication\n- Cover **Claude Code** and **OpenCode** with cross-region inference support\n- Add new `cloud_provider` category to `ProviderCategory` type\n\n## Changes\n\n### Claude Code (2 new presets in `claudeProviderPresets.ts`)\n- **AWS Bedrock (AKSK)**: Uses `AWS_ACCESS_KEY_ID` + `AWS_SECRET_ACCESS_KEY` + `AWS_REGION`, sets `CLAUDE_CODE_USE_BEDROCK=1`\n- **AWS Bedrock (API Key)**: Uses Bedrock API Key with `Authorization: Bearer` header\n\n### OpenCode (1 new preset in `opencodeProviderPresets.ts`)\n- Added `@ai-sdk/amazon-bedrock` to `opencodeNpmPackages`\n- Added 6 Bedrock model variants (Claude Opus 4.6, Sonnet 4.5, Haiku 4.5, Nova Pro, Llama 4, DeepSeek R1)\n- **AWS Bedrock** preset with `region`, `accessKeyId`, `secretAccessKey` options\n\n### Default Models (cross-region inference)\n| Model | ID |\n|-------|----|\n| Claude Opus 4.6 | `global.anthropic.claude-opus-4-6-v1` |\n| Claude Sonnet 4.5 | `global.anthropic.claude-sonnet-4-5-20250929-v1:0` |\n| Claude Haiku 4.5 | `global.anthropic.claude-haiku-4-5-20251001-v1:0` |\n| Amazon Nova Pro | `us.amazon.nova-pro-v1:0` |\n| Meta Llama 4 Maverick | `us.meta.llama4-maverick-17b-instruct-v1:0` |\n| DeepSeek R1 | `us.deepseek.r1-v1:0` |\n\n## Files Changed\n```\nsrc/types.ts                                 |  +1  (add cloud_provider category)\nsrc/config/claudeProviderPresets.ts          | +75  (2 Bedrock presets)\nsrc/config/opencodeProviderPresets.ts        | +93  (npm pkg + model variants + preset)\ntests/config/claudeProviderPresets.test.ts   | +79  (11 tests)\ntests/config/opencodeProviderPresets.test.ts | +68  (8 tests)\nREADME.md / README_ZH.md / README_JA.md     | +3   (docs update)\n```\n\n## Test plan\n- [x] 19 new unit tests (11 Claude + 8 OpenCode) all pass\n- [x] Full suite: 159/159 tests pass\n- [x] TypeScript typecheck passes\n- [x] AKSK auth verified against live Bedrock (Claude Sonnet 4, Opus 4.6, cross-region inference)\n- [x] API Key auth verified against live Bedrock (invoke + converse endpoints)\n- [x] No Rust backend changes required\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)",
      "created_at": "2026-02-15T13:37:26Z",
      "updated_at": "2026-02-15T16:45:54Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": "da72c170e63ae20ea434a70328b2d2f74f51bde7",
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "keithyt06:feat/aws-bedrock-provider",
        "ref": "feat/aws-bedrock-provider",
        "sha": "37b1fdc3cbb47a4161f6041aa3ee2631b6665e87",
        "user": {
          "login": "keithyt06",
          "id": 103325445,
          "node_id": "U_kgDOBiifBQ",
          "avatar_url": "https://avatars.githubusercontent.com/u/103325445?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/keithyt06",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1158487067,
          "node_id": "R_kgDORQ0cGw",
          "name": "cc-switch",
          "full_name": "keithyt06/cc-switch",
          "private": false,
          "owner": {
            "login": "keithyt06",
            "id": 103325445,
            "node_id": "U_kgDOBiifBQ",
            "avatar_url": "https://avatars.githubusercontent.com/u/103325445?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/keithyt06",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/keithyt06/cc-switch",
          "created_at": "2026-02-15T13:06:47Z",
          "updated_at": "2026-02-15T13:06:47Z",
          "pushed_at": "2026-02-15T13:35:43Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33362,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "20f62bf4f81ee651018458b1f89e6433af880c59",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/1047"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/1047"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/1047"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/1047/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/1047/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/1047/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/37b1fdc3cbb47a4161f6041aa3ee2631b6665e87"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/971",
      "id": 3259906614,
      "node_id": "PR_kwDOPYG9FM7CTjo2",
      "number": 971,
      "state": "open",
      "locked": false,
      "title": "feat(opencode): add NewAPI auto-fetch models via /v1/models endpoint",
      "user": {
        "login": "DEAN-Cherry",
        "id": 76607677,
        "node_id": "MDQ6VXNlcjc2NjA3Njc3",
        "avatar_url": "https://avatars.githubusercontent.com/u/76607677?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/DEAN-Cherry",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "## What\r\n\r\nAdd the ability to automatically fetch available models from NewAPI-compatible OpenCode providers using the standard `/v1/models` endpoint.\r\n\r\n### Changes\r\n\r\n- **Rust backend**: New `fetch_remote_models` Tauri command that calls `{baseUrl}/v1/models` with Bearer auth via the global HTTP client (bypasses CORS)\r\n- **Frontend**: NewAPI toggle switch after Provider Name field; \"Fetch Models\" button in the Models section (visible when toggle is on)\r\n- **Behavior**: Fetched models are directly appended to the model list, skipping duplicates\r\n- **Persistence**: `isNewApi` flag saved in `ProviderMeta` for edit-mode restoration\r\n\r\n### Files Changed\r\n\r\n| File | Change |\r\n|------|--------|\r\n| `src-tauri/src/commands/remote_models.rs` | **New** — async command to fetch `/v1/models` |\r\n| `src-tauri/src/commands/mod.rs` | Register module |\r\n| `src-tauri/src/lib.rs` | Register command in invoke_handler |\r\n| `src/types.ts` | Add `isNewApi` to `ProviderMeta` |\r\n| `src/lib/api/providers.ts` | Add `fetchRemoteModels` API method |\r\n| `src/components/providers/forms/ProviderForm.tsx` | Add NewAPI toggle state + UI |\r\n| `src/components/providers/forms/OpenCodeFormFields.tsx` | Add fetch button + import logic |\r\n\r\n---\r\n\r\n## 概述\r\n\r\n为 OpenCode 供应商表单添加 NewAPI 自动获取模型功能，通过标准 `/v1/models` 接口获取可用模型列表并一键导入。\r\n\r\n### 改动内容\r\n\r\n- **Rust 后端**：新增 `fetch_remote_models` 命令，通过全局 HTTP 客户端调用 `{baseUrl}/v1/models`（绕过 CORS）\r\n- **前端**：Provider Name 后新增 NewAPI 开关；Models 区域新增\"获取模型\"按钮（开关开启时显示）\r\n- **行为**：获取到的模型直接追加到模型列表，自动跳过已存在的模型\r\n- **持久化**：`isNewApi` 标记保存在 `ProviderMeta` 中，编辑时自动恢复\r\n\r\n### 使用方式\r\n\r\n1. 新建/编辑 OpenCode 供应商，填写 Base URL 和 API Key\r\n2. 开启 \"NewAPI\" 开关\r\n\r\n<img width=\"1992\" height=\"1282\" alt=\"图片\" src=\"https://github.com/user-attachments/assets/b37c5189-613b-46c2-81ae-b507d012f868\" />\r\n\r\n3. 在 Models 区域点击\"获取模型\"按钮\r\n\r\n<img width=\"1992\" height=\"1282\" alt=\"图片\" src=\"https://github.com/user-attachments/assets/d9abb31e-0a03-40ca-8522-b27ea21fedb9\" />\r\n\r\n4. 模型自动导入到列表中",
      "created_at": "2026-02-08T15:01:19Z",
      "updated_at": "2026-02-08T15:44:45Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "DEAN-Cherry:feat/newapi_import",
        "ref": "feat/newapi_import",
        "sha": "b165b38c559b8c3af9f3d4d3ad90ef4db2684e2c",
        "user": {
          "login": "DEAN-Cherry",
          "id": 76607677,
          "node_id": "MDQ6VXNlcjc2NjA3Njc3",
          "avatar_url": "https://avatars.githubusercontent.com/u/76607677?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/DEAN-Cherry",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1152758411,
          "node_id": "R_kgDORLWyiw",
          "name": "cc-switch",
          "full_name": "DEAN-Cherry/cc-switch",
          "private": false,
          "owner": {
            "login": "DEAN-Cherry",
            "id": 76607677,
            "node_id": "MDQ6VXNlcjc2NjA3Njc3",
            "avatar_url": "https://avatars.githubusercontent.com/u/76607677?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/DEAN-Cherry",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/DEAN-Cherry/cc-switch",
          "created_at": "2026-02-08T11:43:29Z",
          "updated_at": "2026-02-08T11:43:29Z",
          "pushed_at": "2026-02-08T15:44:44Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 25699,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "d82027f107f1a8a0a6b1b4ac04fc1eab5f7d62c2",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/971"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/971"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/971"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/971/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/971/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/971/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/b165b38c559b8c3af9f3d4d3ad90ef4db2684e2c"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/962",
      "id": 3258014694,
      "node_id": "PR_kwDOPYG9FM7CMVvm",
      "number": 962,
      "state": "open",
      "locked": false,
      "title": "feat: 添加 Qwen Code 支持",
      "user": {
        "login": "yiliang114",
        "id": 11473889,
        "node_id": "MDQ6VXNlcjExNDczODg5",
        "avatar_url": "https://avatars.githubusercontent.com/u/11473889?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yiliang114",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "## 功能概述\r\n\r\n添加对 [Qwen Code](https://github.com/QwenLM/qwen-code) 的支持。[Qwen Code](https://github.com/QwenLM/qwen-code) 是阿里巴巴通义千问团队开源的终端 AI 智能体，专为 Qwen3-Coder 模型优化，类似 Gemini Cli。本 PR 为 CC Switch 添加完整的 Qwen Code 配置管理支持。\r\n\r\n## 供应商预设\r\n\r\n### 1. Alibaba Cloud (DashScope)\r\n\r\n- Endpoint: `https://dashscope-intl.aliyuncs.com/compatible-mode/v1`\r\n- 默认模型: `qwen3-coder-plus`\r\n\r\n### 2. ModelScope\r\n\r\n- Endpoint: `https://api-inference.modelscope.cn/v1/`\r\n- 默认模型: `Qwen/Qwen3-Coder-480B-A35B-Instruct`\r\n\r\n### 3. OpenRouter\r\n\r\n- Endpoint: `https://openrouter.ai/api/v1`\r\n- 默认模型: `qwen/qwen3-coder`\r\n\r\n## 数据库迁移\r\n\r\nCC Switch 使用 SQLite 数据库存储配置，并通过 Schema 版本控制数据库结构变更。\r\n\r\n- **当前版本**: v5 → v6\r\n- **变更内容**:\r\n  - `mcp_servers` 表添加 `enabled_qwen` 列（BOOLEAN，默认 `false`）\r\n  - `skills` 表添加 `enabled_qwen` 列（BOOLEAN，默认 `false`）\r\n- **兼容性**: 旧用户数据库自动迁移，`enabled_qwen` 默认为 `false`\r\n\r\n> **什么是 v5/v6？** 这是代码中 `SCHEMA_VERSION` 常量定义的版本号，位于 `src-tauri/src/database/mod.rs`。每次数据库表结构变更时递增，并在 `schema.rs` 中添加对应的迁移逻辑。\r\n\r\n## 配置格式\r\n\r\nQwen Code 使用 `.env` 文件格式存储配置：\r\n\r\n```env\r\nOPENAI_API_KEY=your-api-key\r\nOPENAI_BASE_URL=https://dashscope-intl.aliyuncs.com/compatible-mode/v1\r\nOPENAI_MODEL=qwen3-coder-plus\r\n```\r\n\r\nCC Switch 会在切换供应商时自动写入 `~/.qwen/.env`。\r\n\r\n## 测试方法\r\n\r\n1. **清理数据库**（模拟新用户）:\r\n\r\n   ```bash\r\n   rm ~/.cc-switch/cc-switch.db\r\n   ```\r\n\r\n2. **启动应用**:\r\n\r\n   ```bash\r\n   pnpm dev\r\n   ```\r\n\r\n3. **验证数据库迁移**: 查看日志 `v5 -> v6 迁移完成：已添加 Qwen 支持`\r\n\r\n4. **添加 Qwen 供应商**:\r\n   - 设置页 → 添加供应商\r\n   - 选择 \"Alibaba Cloud (DashScope)\" 或其他预设\r\n   - 填入 API Key\r\n\r\n5. **验证配置写入**:\r\n\r\n   ```bash\r\n   cat ~/.qwen/.env\r\n   # 应显示 OPENAI_API_KEY、OPENAI_BASE_URL、OPENAI_MODEL\r\n   ```\r\n\r\n6. **测试供应商切换**:\r\n   - 在 Qwen 供应商卡片上点击\"启用\"\r\n   - 检查系统托盘显示当前 Qwen 供应商名称\r\n\r\n## 技术细节\r\n\r\n### 文件权限（Unix）\r\n\r\n- Qwen 配置目录: `~/.qwen/` (权限 700)\r\n- `.env` 文件: 权限 600\r\n\r\n### 配置写入策略\r\n\r\n- 使用临时文件 + 重命名实现原子写入\r\n- 写入失败时保留旧配置\r\n\r\n### MCP 支持\r\n\r\n- 当前版本预留 MCP 支持（Qwen 暂不支持 MCP 服务器）\r\n- 数据库结构已准备，后续可直接启用\r\n\r\n## 改动统计\r\n\r\n```\r\n49 files changed, 941 insertions(+), 22 deletions(-)\r\n```\r\n\r\n- **新增**: Qwen 配置模块、预设、表单组件\r\n- **扩展**: AppType、McpApps、SkillApps 等数据结构\r\n- **无破坏性变更**: 所有改动均为新增功能，不影响现有应用\r\n\r\n## 兼容性\r\n\r\n- ✅ 向后兼容：旧数据库自动迁移\r\n- ✅ 配置隔离：Qwen 配置与其他应用完全隔离\r\n- ✅ 类型安全：TypeScript 类型完整覆盖\r\n\r\n## 截图\r\n\r\n<img width=\"2000\" height=\"1302\" alt=\"image\" src=\"https://github.com/user-attachments/assets/f282e981-a2bc-4645-8e48-f3175a1e501d\" />\r\n\r\n---\r\n\r\n**相关 Issue**: #937\r\n\r\n**参考链接**:\r\n\r\n- GitHub: https://github.com/QwenLM/qwen-code\r\n- 官方文档: https://qwenlm.github.io/qwen-code-docs/zh/users/overview/\r\n",
      "created_at": "2026-02-07T15:58:12Z",
      "updated_at": "2026-02-08T04:01:40Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": true,
      "head": {
        "label": "yiliang114:feat/qwen-code",
        "ref": "feat/qwen-code",
        "sha": "0c7b4d8eefb6da43e6536ea73b33c7a8134d43b0",
        "user": {
          "login": "yiliang114",
          "id": 11473889,
          "node_id": "MDQ6VXNlcjExNDczODg5",
          "avatar_url": "https://avatars.githubusercontent.com/u/11473889?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/yiliang114",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1151595565,
          "node_id": "R_kgDORKP0LQ",
          "name": "cc-switch",
          "full_name": "yiliang114/cc-switch",
          "private": false,
          "owner": {
            "login": "yiliang114",
            "id": 11473889,
            "node_id": "MDQ6VXNlcjExNDczODg5",
            "avatar_url": "https://avatars.githubusercontent.com/u/11473889?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/yiliang114",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/yiliang114/cc-switch",
          "created_at": "2026-02-06T16:58:55Z",
          "updated_at": "2026-02-06T23:00:24Z",
          "pushed_at": "2026-02-07T16:13:39Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 30972,
          "stargazers_count": 1,
          "watchers_count": 1,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 1,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "d82027f107f1a8a0a6b1b4ac04fc1eab5f7d62c2",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/962"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/962"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/962"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/962/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/962/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/962/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/0c7b4d8eefb6da43e6536ea73b33c7a8134d43b0"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": [
        9
      ]
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/930",
      "id": 3249733913,
      "node_id": "PR_kwDOPYG9FM7BswEZ",
      "number": 930,
      "state": "open",
      "locked": false,
      "title": "feat(copilot): add GitHub Copilot reverse proxy support",
      "user": {
        "login": "Mason-mengze",
        "id": 49751985,
        "node_id": "MDQ6VXNlcjQ5NzUxOTg1",
        "avatar_url": "https://avatars.githubusercontent.com/u/49751985?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/Mason-mengze",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "Add GitHub Copilot as a Claude provider variant with OAuth device code authentication and Anthropic ↔ OpenAI format transformation.\r\n\r\nBackend:\r\n\r\n- Add CopilotAuthManager for GitHub OAuth device code flow\r\n- Implement Copilot token auto-refresh (60s before expiry)\r\n- Persist GitHub token to ~/.cc-switch/copilot_auth.json\r\n- Add ProviderType::GitHubCopilot and AuthStrategy::GitHubCopilot\r\n- Modify forwarder to use /chat/completions for Copilot\r\n- Add Copilot-specific headers (Editor-Version, Editor-Plugin-Version)\r\n- Add Copilot usage query integration via GitHub API\r\n- Implement fetch_usage() to retrieve quota snapshots (chat, completions, premium_interactions)\r\n- Add copilot_get_usage command for frontend usage display\r\n- Support github_copilot template type in usage script framework\r\n- Add database migration v5→v6 to rename \"copilot\" to \"github_copilot\"\r\n\r\nFrontend:\r\n\r\n- Add CopilotAuthSection component for OAuth UI\r\n- Add useCopilotAuth hook for OAuth state management\r\n- Auto-copy user code to clipboard and open browser\r\n- Use 8-second polling interval to avoid GitHub rate limits\r\n- Skip API Key validation for Copilot providers\r\n- Add GitHub Copilot preset with claude-sonnet-4 model\r\n- Integrate Copilot usage query into \"Configure Usage Query\" modal\r\n- Add TEMPLATE_TYPES.GITHUB_COPILOT constant for type safety\r\n- Filter templates to show only GitHub Copilot option for Copilot providers\r\n- Display usage data: plan name, quota remaining/total, reset date\r\n- Add i18n support for Copilot usage (zh/en/ja)\r\n\r\nCode Quality:\r\n\r\n- Extract hardcoded strings to constants (TEMPLATE_TYPE_GITHUB_COPILOT, PROVIDER_TYPES)\r\n- Create src/config/constants.ts for centralized constant management\r\n- Add TemplateType TypeScript type for usage script templates\r\n- Improve type safety across usage query framework\r\n\r\n<img width=\"1138\" height=\"821\" alt=\"image\" src=\"https://github.com/user-attachments/assets/d33b2663-017e-45b1-9192-9cf0c02bb3bf\" />\r\n\r\n<img width=\"889\" height=\"312\" alt=\"image\" src=\"https://github.com/user-attachments/assets/75f3d67e-973e-4c23-8b79-d209392aab6c\" />\r\n\r\n<img width=\"902\" height=\"632\" alt=\"image\" src=\"https://github.com/user-attachments/assets/aa603a19-bffa-47fc-8e6a-72bfbb52302f\" />\r\n\r\n",
      "created_at": "2026-02-05T11:15:45Z",
      "updated_at": "2026-02-13T02:09:15Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "Mason-mengze:feature/add-github-copilot",
        "ref": "feature/add-github-copilot",
        "sha": "0046ccfc6c2bfd42c8c4b6666f865e9b8bd17fd4",
        "user": {
          "login": "Mason-mengze",
          "id": 49751985,
          "node_id": "MDQ6VXNlcjQ5NzUxOTg1",
          "avatar_url": "https://avatars.githubusercontent.com/u/49751985?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/Mason-mengze",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1150225558,
          "node_id": "R_kgDORI8Mlg",
          "name": "cc-switch",
          "full_name": "Mason-mengze/cc-switch",
          "private": false,
          "owner": {
            "login": "Mason-mengze",
            "id": 49751985,
            "node_id": "MDQ6VXNlcjQ5NzUxOTg1",
            "avatar_url": "https://avatars.githubusercontent.com/u/49751985?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/Mason-mengze",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/Mason-mengze/cc-switch",
          "created_at": "2026-02-05T03:02:08Z",
          "updated_at": "2026-02-11T08:27:48Z",
          "pushed_at": "2026-02-11T08:35:11Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 30214,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "TypeScript",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "e349012abc6b094b97db5798a4093338ca146f8f",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/930"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/930"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/930"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/930/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/930/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/930/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/0046ccfc6c2bfd42c8c4b6666f865e9b8bd17fd4"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/924",
      "id": 3248892943,
      "node_id": "PR_kwDOPYG9FM7BpiwP",
      "number": 924,
      "state": "open",
      "locked": false,
      "title": "feat(proxy): smart URL path detection and unified URL building",
      "user": {
        "login": "yovinchen",
        "id": 76760071,
        "node_id": "MDQ6VXNlcjc2NzYwMDcx",
        "avatar_url": "https://avatars.githubusercontent.com/u/76760071?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yovinchen",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "## Summary\n\nAdd smart URL path detection for API endpoints and unify URL building logic in the backend proxy, improving endpoint configuration UX and proxy reliability.\n\n## Changes\n\n### Smart URL Path Detection\n- Detect when base URL already contains API path suffix (`/v1/messages`, `/v1/chat/completions`, etc.)\n- Show direct and proxy request URL previews in endpoint field\n- Block provider switch when proxy is required but not active\n- Add API format selector for Codex providers (Responses/Chat)\n\n### Unified URL Building (Backend)\n- Move URL preview and proxy requirement checks from frontend to centralized Rust module (`url_builder.rs`)\n- Ensure consistency between endpoint field preview and actual proxy behavior\n- New `url_utils.rs` for shared URL query/fragment handling\n\n### Bug Fixes & Improvements\n- Preserve URL query strings and fragments correctly during proxying\n- Fix race condition in URL preview updates\n- Improve proxy toggle error feedback\n- Support Codex chat format proxy endpoint\n- Resolve merge conflict with main (terminal settings refactor)\n\n## Files Changed\n\n18 files changed, 1,240 insertions(+), 52 deletions(-)\n\n### Key files\n- `src-tauri/src/proxy/url_builder.rs` - New centralized URL building module (411 lines)\n- `src-tauri/src/proxy/url_utils.rs` - Shared URL utilities\n- `src-tauri/src/proxy/providers/claude.rs` - Claude provider adapter updates\n- `src-tauri/src/proxy/providers/codex.rs` - Codex provider adapter updates\n- `src/components/providers/forms/shared/EndpointField.tsx` - URL preview UI\n- `src/components/proxy/ProxyToggle.tsx` - Proxy toggle improvements\n- `src/hooks/useProviderActions.ts` - Provider switch guard logic\n\n## Test Plan\n\n- [x] Configure endpoint with full API path (e.g., `https://api.example.com/v1/messages`) and verify smart detection\n- [x] Verify URL preview shows correct direct/proxy URLs\n- [x] Test provider switch blocking when proxy is required but inactive\n- [x] Test Codex API format selector (Responses vs Chat)\n- [x] Verify query strings and fragments preserved through proxy\n- [x] Run `pnpm typecheck` and `cargo clippy`",
      "created_at": "2026-02-05T07:17:01Z",
      "updated_at": "2026-02-15T06:17:22Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": "91ebca30e93ddcf314e3fafea3804b6b1dfdf6b8",
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "farion1231:feat/smart-url-path-detection",
        "ref": "feat/smart-url-path-detection",
        "sha": "b8e2573730bb06ab4dc13e0d7db7673f04deb222",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "7b20c17ea42753de481f35b2bf1fa74d12dcdb9d",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/924"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/924"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/924"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/924/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/924/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/924/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/b8e2573730bb06ab4dc13e0d7db7673f04deb222"
        }
      },
      "author_association": "COLLABORATOR",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/918",
      "id": 3245465871,
      "node_id": "PR_kwDOPYG9FM7BceEP",
      "number": 918,
      "state": "open",
      "locked": false,
      "title": "feat: new compact UI components and enhanced list controls",
      "user": {
        "login": "xxk8",
        "id": 102406915,
        "node_id": "U_kgDOBhqbAw",
        "avatar_url": "https://avatars.githubusercontent.com/u/102406915?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/xxk8",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "本次 PR 新增紧凑型 UI 组件、改进的列表管理功能，以及增强的键盘快捷键，提升用户体验。\r\n完成https://github.com/farion1231/cc-switch/issues/856\r\n## 功能变更\r\n\r\n### 1. 搜索功能增强\r\n- 恢复 `ListToolbar` 和 `SearchOverlay` 组件到 ProviderList\r\n- 支持搜索语法前缀：`name:` 和 `url:`\r\n- 实现字段级搜索高亮，只高亮匹配的字段\r\n- 搜索历史记录和快捷键支持（Cmd/Ctrl + K）\r\n\r\n### 2. 列表工具栏\r\n- 视图模式切换（列表/卡片）\r\n- 排序选项（自定义/名称/创建时间）\r\n- 排序顺序切换（升序/降序）\r\n- 匿名显示\r\n\r\n### 3. 国际化支持\r\n- 添加工具栏和搜索相关翻译\r\n- 支持中文、英文、日文\r\n\r\n\r\n## 破坏性变更\r\n无\r\n\r\n<img width=\"1319\" height=\"946\" alt=\"image\" src=\"https://github.com/user-attachments/assets/ccc21475-b194-403f-a90c-9b427d9d0264\" />\r\n<img width=\"1319\" height=\"946\" alt=\"image\" src=\"https://github.com/user-attachments/assets/fdda2e3f-1444-490d-ae02-8f0f6b9fad57\" />\r\n<img width=\"1319\" height=\"946\" alt=\"image\" src=\"https://github.com/user-attachments/assets/c86dde85-f3e2-4397-8dc6-7b35f357c26d\" />\r\n\r\n",
      "created_at": "2026-02-04T11:44:35Z",
      "updated_at": "2026-02-06T08:05:55Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "xxk8:main",
        "ref": "main",
        "sha": "6df60c47717e090173a88653ee7b8851105bd470",
        "user": {
          "login": "xxk8",
          "id": 102406915,
          "node_id": "U_kgDOBhqbAw",
          "avatar_url": "https://avatars.githubusercontent.com/u/102406915?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/xxk8",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1136129606,
          "node_id": "R_kgDOQ7f2Rg",
          "name": "cc-switch",
          "full_name": "xxk8/cc-switch",
          "private": false,
          "owner": {
            "login": "xxk8",
            "id": 102406915,
            "node_id": "U_kgDOBhqbAw",
            "avatar_url": "https://avatars.githubusercontent.com/u/102406915?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/xxk8",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/xxk8/cc-switch",
          "created_at": "2026-01-17T05:43:16Z",
          "updated_at": "2026-02-04T11:31:02Z",
          "pushed_at": "2026-02-04T11:32:45Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 25822,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "Rust",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 1,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 1,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "1d97570a9415e1b88fa07688da75a5d18c0254f5",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/918"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/918"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/918"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/918/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/918/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/918/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/6df60c47717e090173a88653ee7b8851105bd470"
        }
      },
      "author_association": "CONTRIBUTOR",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/916",
      "id": 3244754208,
      "node_id": "PR_kwDOPYG9FM7BZwUg",
      "number": 916,
      "state": "open",
      "locked": false,
      "title": "feat(codex): 增强模型映射功能并添加请求体字段重写",
      "user": {
        "login": "SammySnake-d",
        "id": 173797004,
        "node_id": "U_kgDOClvujA",
        "avatar_url": "https://avatars.githubusercontent.com/u/173797004?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SammySnake-d",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "## 概述\r\n\r\n本 PR 为 Codex 供应商增加两项核心功能：**模型映射**和**请求体字段重写**，提升与不同上游 API 的兼容性。\r\n\r\n---\r\n\r\n## 功能一：Codex 模型映射\r\n\r\n允许将 Codex 请求的模型 ID 映射到实际的上游模型，支持两种映射方式：\r\n\r\n### 简单映射\r\n- 直接将源模型映射到目标模型\r\n- 例如：`gpt-5` → `gpt-5-turbo`\r\n\r\n### Effort 组合映射\r\n- 结合 `reasoning_effort` 参数进行映射\r\n- 例如：`gpt-5.2` + `xhigh` → `gpt-5.2-codex-xhigh`\r\n- 支持的 effort 级别：`low`、`medium`、`high`、`xhigh`\r\n\r\n### UI 改进\r\n- 将\"添加\"按钮移至区块标题右侧\r\n- 移除自动生成的空行，改为手动添加\r\n- 修复输入时焦点丢失问题\r\n\r\n---\r\n\r\n## 功能二：请求体字段重写\r\n\r\n允许用户按供应商配置过滤或覆盖发送到上游 API 的 JSON 字段。\r\n\r\n### 功能特性\r\n- **字段删除**：将值设为 `null` 可删除该字段\r\n- **字段覆盖**：支持用任意 JSON 值覆盖现有字段\r\n- **嵌套路径**：使用点分隔路径（如 `text.verbosity`）\r\n- **预设模板**：内置 `text`、`instructions`、`text.verbosity` 预设\r\n\r\n### 使用场景\r\n某些上游供应商不支持特定字段（如 `text` 或 `instructions`），启用此功能可自动过滤这些字段，避免请求失败。\r\n\r\n---\r\n\r\n## 截图\r\n\r\n<img width=\"2000\" height=\"1300\" alt=\"image\" src=\"https://github.com/user-attachments/assets/3edfe1d1-47b4-4bed-8da6-04801f9c6093\" />\r\n\r\n<img width=\"1978\" height=\"1052\" alt=\"image\" src=\"https://github.com/user-attachments/assets/17367873-1f27-4378-95bf-572e2fa1fafd\" />\r\n\r\n\r\n<img width=\"1874\" height=\"864\" alt=\"image\" src=\"https://github.com/user-attachments/assets/b4085d89-5b6e-4c4a-b715-3ab932aa10a9\" />\r\n",
      "created_at": "2026-02-04T08:28:44Z",
      "updated_at": "2026-02-04T08:29:11Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "SammySnake-d:feat/codex-enhancements",
        "ref": "feat/codex-enhancements",
        "sha": "4e3a41498fb86e990933d4f86bc6b4a620995633",
        "user": {
          "login": "SammySnake-d",
          "id": 173797004,
          "node_id": "U_kgDOClvujA",
          "avatar_url": "https://avatars.githubusercontent.com/u/173797004?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/SammySnake-d",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1149064266,
          "node_id": "R_kgDORH1USg",
          "name": "cc-switch",
          "full_name": "SammySnake-d/cc-switch",
          "private": false,
          "owner": {
            "login": "SammySnake-d",
            "id": 173797004,
            "node_id": "U_kgDOClvujA",
            "avatar_url": "https://avatars.githubusercontent.com/u/173797004?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/SammySnake-d",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/SammySnake-d/cc-switch",
          "created_at": "2026-02-03T17:21:53Z",
          "updated_at": "2026-02-11T21:45:36Z",
          "pushed_at": "2026-02-11T21:45:29Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 30308,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "TypeScript",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 1,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 1,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "1d97570a9415e1b88fa07688da75a5d18c0254f5",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/916"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/916"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/916"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/916/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/916/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/916/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/4e3a41498fb86e990933d4f86bc6b4a620995633"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/886",
      "id": 3236550839,
      "node_id": "PR_kwDOPYG9FM7A6di3",
      "number": 886,
      "state": "open",
      "locked": false,
      "title": "Fix/untranslated content",
      "user": {
        "login": "xxraincandyxx",
        "id": 162525686,
        "node_id": "U_kgDOCa_x9g",
        "avatar_url": "https://avatars.githubusercontent.com/u/162525686?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/xxraincandyxx",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "fix(i18n): translate Chinese strings and fix resetSettings bug",
      "created_at": "2026-02-02T13:23:55Z",
      "updated_at": "2026-02-09T14:01:25Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "xxraincandyxx:fix/untranslated-content",
        "ref": "fix/untranslated-content",
        "sha": "7926ba63860e9bd41e69665bece6d1d57e148356",
        "user": {
          "login": "xxraincandyxx",
          "id": 162525686,
          "node_id": "U_kgDOCa_x9g",
          "avatar_url": "https://avatars.githubusercontent.com/u/162525686?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/xxraincandyxx",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1147645894,
          "node_id": "R_kgDORGevxg",
          "name": "cc-switch",
          "full_name": "xxraincandyxx/cc-switch",
          "private": false,
          "owner": {
            "login": "xxraincandyxx",
            "id": 162525686,
            "node_id": "U_kgDOCa_x9g",
            "avatar_url": "https://avatars.githubusercontent.com/u/162525686?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/xxraincandyxx",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/xxraincandyxx/cc-switch",
          "created_at": "2026-02-02T03:16:09Z",
          "updated_at": "2026-02-02T03:16:09Z",
          "pushed_at": "2026-02-05T13:28:26Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 30639,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "92785a8078ecf0a080567d9d60d239e6cbcda85a",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/886"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/886"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/886"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/886/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/886/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/886/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/7926ba63860e9bd41e69665bece6d1d57e148356"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/870",
      "id": 3233189306,
      "node_id": "PR_kwDOPYG9FM7Ato26",
      "number": 870,
      "state": "open",
      "locked": false,
      "title": "feat: more granular local environment checks",
      "user": {
        "login": "kv-chiu",
        "id": 132759132,
        "node_id": "U_kgDOB-m-XA",
        "avatar_url": "https://avatars.githubusercontent.com/u/132759132?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/kv-chiu",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "## environment badge\r\n\r\n<img width=\"1350\" height=\"943\" alt=\"image\" src=\"https://github.com/user-attachments/assets/b69c621b-0af8-4687-bd97-7b123bc1d924\" />\r\n\r\n<img width=\"1299\" height=\"377\" alt=\"image\" src=\"https://github.com/user-attachments/assets/dc347e94-3af4-4b98-803a-a28d8fddb693\" />\r\n\r\n## shell selector\r\n\r\n<img width=\"659\" height=\"341\" alt=\"image\" src=\"https://github.com/user-attachments/assets/44a09e25-2421-49d8-bab6-9faff34d0689\" />\r\n\r\n## flags selector\r\n\r\n<img width=\"672\" height=\"356\" alt=\"image\" src=\"https://github.com/user-attachments/assets/fbd3d228-cc3d-4474-b97e-716efc42f19c\" />\r\n\r\n\r\n",
      "created_at": "2026-02-01T13:00:56Z",
      "updated_at": "2026-02-05T09:40:13Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": "f8528ac8866affd64b7ee04996503cf34523684d",
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "kv-chiu:feat/wsl-shell-detection",
        "ref": "feat/wsl-shell-detection",
        "sha": "ffc1406b7db0b523ee2eb0adcd623a3928e762a8",
        "user": {
          "login": "kv-chiu",
          "id": 132759132,
          "node_id": "U_kgDOB-m-XA",
          "avatar_url": "https://avatars.githubusercontent.com/u/132759132?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/kv-chiu",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1147105877,
          "node_id": "R_kgDORF9yVQ",
          "name": "cc-switch",
          "full_name": "kv-chiu/cc-switch",
          "private": false,
          "owner": {
            "login": "kv-chiu",
            "id": 132759132,
            "node_id": "U_kgDOB-m-XA",
            "avatar_url": "https://avatars.githubusercontent.com/u/132759132?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/kv-chiu",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/kv-chiu/cc-switch",
          "created_at": "2026-02-01T07:44:05Z",
          "updated_at": "2026-02-01T07:44:05Z",
          "pushed_at": "2026-02-05T09:16:47Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 25512,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "92785a8078ecf0a080567d9d60d239e6cbcda85a",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/870"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/870"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/870"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/870/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/870/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/870/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/ffc1406b7db0b523ee2eb0adcd623a3928e762a8"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/774",
      "id": 3207514106,
      "node_id": "PR_kwDOPYG9FM6_Lsf6",
      "number": 774,
      "state": "open",
      "locked": false,
      "title": "Fix manual switch in failover mode and default language",
      "user": {
        "login": "bjornfix",
        "id": 18698075,
        "node_id": "MDQ6VXNlcjE4Njk4MDc1",
        "avatar_url": "https://avatars.githubusercontent.com/u/18698075?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/bjornfix",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "Summary: Allow manual provider switch even when auto-failover is enabled (disables auto-failover first). Default UI language to English when unset and show English labels for language options. Notes: Addresses inability to manually set active provider while in failover mode.",
      "created_at": "2026-01-24T22:40:07Z",
      "updated_at": "2026-01-26T03:42:14Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "bjornfix:fix/manual-switch-failover",
        "ref": "fix/manual-switch-failover",
        "sha": "5aa3a3e0194f267939a10a425e1d9c31125ceb9e",
        "user": {
          "login": "bjornfix",
          "id": 18698075,
          "node_id": "MDQ6VXNlcjE4Njk4MDc1",
          "avatar_url": "https://avatars.githubusercontent.com/u/18698075?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/bjornfix",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1141473032,
          "node_id": "R_kgDORAl_CA",
          "name": "cc-switch",
          "full_name": "bjornfix/cc-switch",
          "private": false,
          "owner": {
            "login": "bjornfix",
            "id": 18698075,
            "node_id": "MDQ6VXNlcjE4Njk4MDc1",
            "avatar_url": "https://avatars.githubusercontent.com/u/18698075?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/bjornfix",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/bjornfix/cc-switch",
          "created_at": "2026-01-24T22:37:54Z",
          "updated_at": "2026-01-24T22:37:54Z",
          "pushed_at": "2026-01-24T22:39:55Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 30510,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "53dd0a90f3baa20db3e32a656febf37ac53ce93e",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/774"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/774"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/774"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/774/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/774/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/774/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/5aa3a3e0194f267939a10a425e1d9c31125ceb9e"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/773",
      "id": 3207344171,
      "node_id": "PR_kwDOPYG9FM6_LDAr",
      "number": 773,
      "state": "open",
      "locked": false,
      "title": "fix(common-config): improve sync reliability, runtime merge, and error handling",
      "user": {
        "login": "yovinchen",
        "id": 76760071,
        "node_id": "MDQ6VXNlcjc2NzYwMDcx",
        "avatar_url": "https://avatars.githubusercontent.com/u/76760071?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/yovinchen",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "## Summary\n\nComprehensive improvements to the common config sync system — adding runtime merge architecture, consolidating hooks, improving error handling, and fixing reliability issues across Claude/Codex/Gemini adapters.\n\n## Changes\n\n### Runtime Merge Architecture\n- Add core utilities for config merge and difference extraction (`config_merge.rs`, `configMerge.ts`)\n- Implement runtime merge of common config into live config on provider switch\n- Add merge preview UI to common config editor components\n- Extract custom config difference on provider save\n- Add common config merge to proxy live config restore\n\n### Hook Consolidation & Refactoring\n- Introduce generic base hook (`useCommonConfigBase.ts`) with per-app adapters (`commonConfigAdapters.ts`)\n- Remove duplicated `useCommonConfigSnippet.ts` and `useGeminiCommonConfig.ts`\n- Consolidate `hasContent` methods into adapters\n- Migrate Gemini to ENV format for common config\n\n### Reliability & Error Handling\n- Add in-flight lock and callback support for common config sync\n- Add clearing sync and save queue for Claude/Codex/Gemini\n- Add TOML validation for Codex common config\n- Improve Gemini common config parsing robustness\n- Defer common config save until form submission\n- Add type validation and error codes for config utilities\n- Reject OpenCode provider save when no models configured\n\n### UI Improvements\n- Add auto-height and readOnly mode to JsonEditor component\n- Add merge preview to common config editors\n- Show custom config before common config in Codex merge preview\n- Disable common config for deeplink imported providers\n- Add `CommonConfigEnabledByApp` type for per-app tracking\n\n### Code Quality\n- Format code and apply clippy lint fixes\n- Remove dead code from providerConfigUtils and config API\n- Move orphaned test into describe block\n- Multiple merge conflict resolutions with main\n\n## Files Changed\n\n40 files changed, 4,932 insertions(+), 1,588 deletions(-)\n\n### Key files (backend)\n- `src-tauri/src/config_merge.rs` — New config merge engine (889 lines)\n- `src-tauri/src/services/provider/live.rs` — Live config sync with merge\n- `src-tauri/src/services/provider/mod.rs` — Provider service extensions\n- `src-tauri/src/services/proxy.rs` — Proxy live config restore with merge\n\n### Key files (frontend)\n- `src/hooks/useCommonConfigBase.ts` — Generic common config base hook\n- `src/hooks/commonConfigAdapters.ts` — Per-app adapters (Claude/Codex/Gemini)\n- `src/utils/configMerge.ts` — Frontend config merge utilities\n- `src/utils/tomlConfigMerge.ts` — TOML-specific merge logic\n- `src/utils/commonConfigDetection.ts` — Common config detection\n- `src/lib/api/config.ts` — Extended config API layer\n- `src/components/providers/forms/ProviderForm.tsx` — Form with merge integration\n\n## Test Plan\n\n- [ ] Switch provider and verify common config merges into live config correctly\n- [ ] Edit common config and check merge preview matches expected output\n- [ ] Save provider and verify custom config difference is extracted correctly\n- [ ] Test Codex TOML common config validation (invalid TOML should show error)\n- [ ] Test Gemini ENV format common config parsing\n- [ ] Verify deeplink imported providers have common config disabled\n- [ ] Test proxy live config restore includes common config merge\n- [ ] Run `pnpm test:unit` and `cargo test`\n- [ ] Run `pnpm typecheck` and `cargo clippy`",
      "created_at": "2026-01-24T20:41:44Z",
      "updated_at": "2026-02-13T08:15:06Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "farion1231:fix/common-config-sync-improvements",
        "ref": "fix/common-config-sync-improvements",
        "sha": "4ab9cd137103cbd6613dced9ab6a14afaceb3493",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "2edee3163890528ad77af8caf06cc6a1f25575f4",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/773"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/773"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/773"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/773/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/773/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/773/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/4ab9cd137103cbd6613dced9ab6a14afaceb3493"
        }
      },
      "author_association": "COLLABORATOR",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/704",
      "id": 3190265385,
      "node_id": "PR_kwDOPYG9FM6-J5Yp",
      "number": 704,
      "state": "open",
      "locked": false,
      "title": "Fix config dir override toggle and dual-dir sync",
      "user": {
        "login": "godnight10061",
        "id": 177652969,
        "node_id": "U_kgDOCpbE6Q",
        "avatar_url": "https://avatars.githubusercontent.com/u/177652969?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/godnight10061",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "Fixes #145\r\n\r\nSummary\r\n- Keep configured override paths when disabling config dir overrides.\r\n- Optional: sync provider switches to both default and override config dirs (Windows + WSL).\r\n- Avoid partial secondary Gemini state by stopping secondary sync when secondary .env write fails.\r\n\r\nTesting\r\nLocal\r\n- pnpm install --frozen-lockfile\r\n- pnpm typecheck\r\n- pnpm test:unit\r\n- pnpm build:renderer\r\n- cd src-tauri && cargo test -- --nocapture\r\n\r\nNotes\r\n- No workflow changes in this PR.",
      "created_at": "2026-01-20T08:10:21Z",
      "updated_at": "2026-01-26T03:42:52Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "godnight10061:fix/config-dir-override-toggle-upstream",
        "ref": "fix/config-dir-override-toggle-upstream",
        "sha": "8e782b586c2b0947916008c6fe9cec3f470ad99a",
        "user": {
          "login": "godnight10061",
          "id": 177652969,
          "node_id": "U_kgDOCpbE6Q",
          "avatar_url": "https://avatars.githubusercontent.com/u/177652969?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/godnight10061",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1128686976,
          "node_id": "R_kgDOQ0ZlgA",
          "name": "cc-switch",
          "full_name": "godnight10061/cc-switch",
          "private": false,
          "owner": {
            "login": "godnight10061",
            "id": 177652969,
            "node_id": "U_kgDOCpbE6Q",
            "avatar_url": "https://avatars.githubusercontent.com/u/177652969?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/godnight10061",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/godnight10061/cc-switch",
          "created_at": "2026-01-06T02:28:36Z",
          "updated_at": "2026-01-20T05:37:24Z",
          "pushed_at": "2026-01-20T08:08:40Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 25638,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "Rust",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 1,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 1,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "76897e2b97686e173873a71e9336f96b759d9cb8",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/704"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/704"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/704"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/704/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/704/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/704/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/8e782b586c2b0947916008c6fe9cec3f470ad99a"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": [
        1,
        145
      ]
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/641",
      "id": 3170300920,
      "node_id": "PR_kwDOPYG9FM689vP4",
      "number": 641,
      "state": "open",
      "locked": false,
      "title": "feat(cli): add CLI mode for headless provider switching",
      "user": {
        "login": "AisyIE",
        "id": 155836309,
        "node_id": "U_kgDOCUnflQ",
        "avatar_url": "https://avatars.githubusercontent.com/u/155836309?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/AisyIE",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "Add `cc-switch cmd` subcommand for managing providers without GUI:\r\n- `cc-switch cmd` - interactive mode with menu-driven interface\r\n- `cc-switch cmd status` - show active providers for all tools\r\n- `cc-switch cmd list <tool>` - list providers for claude/codex/gemini\r\n- `cc-switch cmd switch <tool> <provider>` - switch provider directly\r\n- `cc-switch cmd help` - show detailed help with examples\r\n\r\nImplementation:\r\n- Add clap for CLI argument parsing\r\n- Add dialoguer for interactive menus\r\n- Add console for colored terminal output\r\n- Reuse existing ProviderService for business logic\r\n- Support proper exit codes for scripting\r\n\r\nDocumentation:\r\n- Update README.md with CLI usage section\r\n- Sync CLI docs to README_ZH.md and README_JA.md",
      "created_at": "2026-01-13T15:56:50Z",
      "updated_at": "2026-01-26T03:41:58Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": {
        "login": "farion1231",
        "id": 44939412,
        "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/farion1231",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "assignees": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "AisyIE:feature/cli-support",
        "ref": "feature/cli-support",
        "sha": "01cd1aa9c600a48c20c9a8659078a7c297b4e663",
        "user": {
          "login": "AisyIE",
          "id": 155836309,
          "node_id": "U_kgDOCUnflQ",
          "avatar_url": "https://avatars.githubusercontent.com/u/155836309?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/AisyIE",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1133550333,
          "node_id": "R_kgDOQ5Ca_Q",
          "name": "cc-switch",
          "full_name": "AisyIE/cc-switch",
          "private": false,
          "owner": {
            "login": "AisyIE",
            "id": 155836309,
            "node_id": "U_kgDOCUnflQ",
            "avatar_url": "https://avatars.githubusercontent.com/u/155836309?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/AisyIE",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/AisyIE/cc-switch",
          "created_at": "2026-01-13T13:58:17Z",
          "updated_at": "2026-01-18T15:34:00Z",
          "pushed_at": "2026-01-18T15:34:22Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 25589,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "Rust",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "6ce6f16a9962d49e493893595a3c1f06016b14c5",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/641"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/641"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/641"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/641/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/641/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/641/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/01cd1aa9c600a48c20c9a8659078a7c297b4e663"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/603",
      "id": 3164355225,
      "node_id": "PR_kwDOPYG9FM68nDqZ",
      "number": 603,
      "state": "open",
      "locked": false,
      "title": "feat(ci): add GitHub Actions workflow to bump Homebrew Cask version",
      "user": {
        "login": "hxp0618",
        "id": 30236140,
        "node_id": "MDQ6VXNlcjMwMjM2MTQw",
        "avatar_url": "https://avatars.githubusercontent.com/u/30236140?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/hxp0618",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "     ### 背景\r\n     因为每次 brew upgrade 总是比 github realease 版本要低，看了 homebrew-ccswitch也有 issue 反应同步不及时的问题，所以新增了 workflow，用来监听 release 发布完成后，自动同步新版本信息到homebrew-ccswitch\r\n     \r\n     ### 配置 token\r\n     因为要往 另一个仓库（homebrew-ccswitch）提 PR，必须有写权限 token。\r\n\r\n推荐用 Fine-grained PAT（更安全）：\r\n\t•\t只授权仓库：farion1231/homebrew-ccswitch\r\n\t•\t权限至少要：\r\n\t•\tContents: Read and write\r\n\t•\tPull requests: Read and write\r\n\r\n然后把这个 PAT 存到 farion1231/cc-switch 仓库的：\r\nSettings → Secrets and variables → Actions → New repository secret\r\n\t•\t名字：TAP_REPO_TOKEN\r\n\t•\t值：你的 PAT\r\n\t\r\n\t",
      "created_at": "2026-01-12T02:57:06Z",
      "updated_at": "2026-01-12T02:57:06Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": "cabd21699bf7bb06c57a9e17fc103f7b2da73ac3",
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "hxp0618:main",
        "ref": "main",
        "sha": "579b847a0759e75b57aa0abc0e93b53562bafe27",
        "user": {
          "login": "hxp0618",
          "id": 30236140,
          "node_id": "MDQ6VXNlcjMwMjM2MTQw",
          "avatar_url": "https://avatars.githubusercontent.com/u/30236140?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/hxp0618",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1132474870,
          "node_id": "R_kgDOQ4Ax9g",
          "name": "cc-switch",
          "full_name": "hxp0618/cc-switch",
          "private": false,
          "owner": {
            "login": "hxp0618",
            "id": 30236140,
            "node_id": "MDQ6VXNlcjMwMjM2MTQw",
            "avatar_url": "https://avatars.githubusercontent.com/u/30236140?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/hxp0618",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/hxp0618/cc-switch",
          "created_at": "2026-01-12T02:23:26Z",
          "updated_at": "2026-01-12T02:52:19Z",
          "pushed_at": "2026-01-12T02:52:13Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 29786,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "Rust",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "c56523c9c0434959621399a5a178dd810b188a53",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/603"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/603"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/603"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/603/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/603/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/603/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/579b847a0759e75b57aa0abc0e93b53562bafe27"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/513",
      "id": 3142130702,
      "node_id": "PR_kwDOPYG9FM67SRwO",
      "number": 513,
      "state": "open",
      "locked": false,
      "title": "添加 TPS 测试",
      "user": {
        "login": "exqlnet",
        "id": 44158642,
        "node_id": "MDQ6VXNlcjQ0MTU4NjQy",
        "avatar_url": "https://avatars.githubusercontent.com/u/44158642?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/exqlnet",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "## 背景\r\n  - 需要一个更直观的方式衡量/对比不同 Provider 的输出速度（TPS：Token Per\r\n  Second）。\r\n\r\n  ## 本次改动\r\n  - 后端（Tauri/Rust）\r\n    - 新增命令：`tps_test_provider`（`src-tauri/src/commands/tps_test.rs`）\r\n    - 新增服务：`TpsTestService`（`src-tauri/src/services/tps_test.rs`）\r\n    - 覆盖 Claude / Codex(OpenAI Chat) / Gemini 的一次性非流式请求\r\n    - 优先使用上游 `usage` 统计输出 tokens；缺失时按 UTF-8 字节数估算\r\n  （`ceil(bytes/4)`），计算 TPS\r\n  - 前端（React）\r\n    - Provider 操作区新增 “TPS 测试” 按钮（Gauge 图标），带 loading 状态（`src/\r\n  components/providers/ProviderActions.tsx`）\r\n    - 结果以内联方式展示在 Provider 卡片内（TPS/输出 tokens/耗时；失败时展示一行\r\n  错误）（`src/components/providers/ProviderCard.tsx`）\r\n    - 新增 Hook：`useTpsTest`，按 providerId 维度管理测试中状态与最近一次结果；\r\n  失败/异常弹 Toast（`src/hooks/useTpsTest.ts`）\r\n    - API 类型与 `invoke` 封装：`tpsTestProvider`、`TpsTestResult`（`src/lib/\r\n  api/model-test.ts`）\r\n    - i18n 补齐：`src/i18n/locales/{zh,en,ja}.json`\r\n\r\n  ## 风险与注意事项\r\n  - TPS 测试会真实请求上游，可能产生实际用量/费用与延迟波动。\r\n  - 当上游不返回 `usage` 时会走本地估算，精度有限。\r\n  - `fix(proxy)` 提交移除了 `_` 前缀字段过滤相关逻辑（原注释意图为“防止内部信息\r\n  泄露”）；请确认该行为变化是否符合预期。\r\n\r\n  ## 验证方式\r\n  - Rust：`cargo test --manifest-path src-tauri/Cargo.toml`\r\n  - 前端：`corepack pnpm typecheck`、`corepack pnpm test:unit`\r\n  - 手工：在 Provider 列表点击 “TPS 测试”（Gauge）按钮，观察卡片内联 TPS/输出/耗\r\n  时与失败提示。",
      "created_at": "2026-01-02T13:23:13Z",
      "updated_at": "2026-01-02T16:51:13Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "exqlnet:tps-test",
        "ref": "tps-test",
        "sha": "5e8d484ad1b926f7dc9ceb01d86fee0341862c16",
        "user": {
          "login": "exqlnet",
          "id": 44158642,
          "node_id": "MDQ6VXNlcjQ0MTU4NjQy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44158642?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/exqlnet",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1126470354,
          "node_id": "R_kgDOQySS0g",
          "name": "cc-switch",
          "full_name": "exqlnet/cc-switch",
          "private": false,
          "owner": {
            "login": "exqlnet",
            "id": 44158642,
            "node_id": "MDQ6VXNlcjQ0MTU4NjQy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44158642?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/exqlnet",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/exqlnet/cc-switch",
          "created_at": "2026-01-02T01:22:39Z",
          "updated_at": "2026-01-04T09:56:26Z",
          "pushed_at": "2026-01-04T09:56:27Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 26178,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "Rust",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "cce6ae86a592c2b8cba9747d1d2432259e74c3f8",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/513"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/513"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/513"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/513/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/513/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/513/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/5e8d484ad1b926f7dc9ceb01d86fee0341862c16"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/488",
      "id": 3132781179,
      "node_id": "PR_kwDOPYG9FM66unJ7",
      "number": 488,
      "state": "open",
      "locked": false,
      "title": "Release/3.8.x",
      "user": {
        "login": "ferocknew",
        "id": 2178683,
        "node_id": "MDQ6VXNlcjIxNzg2ODM=",
        "avatar_url": "https://avatars.githubusercontent.com/u/2178683?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ferocknew",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "基于这个分支，增加了 droid 的支持\r\n\r\n1. droid 的配置、 提示词会记入数据库\r\n2. mcp 操作，因为有字段硬编码，所以只是操作 mcp.json 文件",
      "created_at": "2025-12-28T08:06:39Z",
      "updated_at": "2025-12-28T08:06:39Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "ferocknew:release/3.8.x",
        "ref": "release/3.8.x",
        "sha": "3f6fe9c1ebb843977be5046c2a38db6738f256f4",
        "user": {
          "login": "ferocknew",
          "id": 2178683,
          "node_id": "MDQ6VXNlcjIxNzg2ODM=",
          "avatar_url": "https://avatars.githubusercontent.com/u/2178683?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/ferocknew",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1123955736,
          "node_id": "R_kgDOQv40GA",
          "name": "cc-switch",
          "full_name": "ferocknew/cc-switch",
          "private": false,
          "owner": {
            "login": "ferocknew",
            "id": 2178683,
            "node_id": "MDQ6VXNlcjIxNzg2ODM=",
            "avatar_url": "https://avatars.githubusercontent.com/u/2178683?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/ferocknew",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/ferocknew/cc-switch",
          "created_at": "2025-12-28T02:05:20Z",
          "updated_at": "2025-12-28T02:16:55Z",
          "pushed_at": "2025-12-28T07:55:06Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 26172,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "TypeScript",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 1,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 1,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:release/3.8.x",
        "ref": "release/3.8.x",
        "sha": "c06dd53dca809d8bda73c5ade93b2555cd23051b",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/488"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/488"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/488"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/488/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/488/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/488/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/3f6fe9c1ebb843977be5046c2a38db6738f256f4"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/448",
      "id": 3123821074,
      "node_id": "PR_kwDOPYG9FM66MboS",
      "number": 448,
      "state": "open",
      "locked": false,
      "title": "feat: 添加 WebDAV 云端备份功能",
      "user": {
        "login": "SivanZeroX",
        "id": 32437197,
        "node_id": "MDQ6VXNlcjMyNDM3MTk3",
        "avatar_url": "https://avatars.githubusercontent.com/u/32437197?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/SivanZeroX",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "添加完整的 WebDAV 云端备份系统，包括：\r\n\r\n✨ 主要特性:\r\n- 本地备份：导入/导出 SQL 文件\r\n- WebDAV 配置：服务器地址、用户名、密码、远程路径\r\n- 连接测试：支持 WebDAV 标准协议\r\n- 云端上传：将配置备份到 WebDAV 服务器\r\n- 备份列表：显示云端备份文件，支持时间排序\r\n- 智能下载：从云端恢复配置\r\n- 安全删除：删除不需要的云端备份\r\n- 时区适配：根据客户端时区显示时间\r\n- 统一格式：YYYY-MM-DD HH:mm:ss 时间显示\r\n\r\n📝 修改文件:\r\n- 新增: src/components/settings/WebDavSettings.tsx\r\n- 新增: src/components/settings/WebDavBackupManager.tsx\r\n- 新增: src/lib/api/webdav.ts\r\n- 新增: src-tauri/src/commands/webdav.rs\r\n- 新增: src-tauri/src/webdav.rs\r\n- 修改: src/components/settings/SettingsPage.tsx\r\n- 修改: 其他相关文件\r\n\r\n✅ 测试状态:\r\n- [x] 本地编译通过\r\n- [x] WebDAV 连接测试（坚果云）\r\n- [x] 上传/下载功能测试\r\n- [x] 时间显示测试\r\n- [x] UI 测试\r\n\r\n图示：\r\n![分为本地和云端备份](https://github.com/user-attachments/assets/aff5f25c-1e89-4c49-a2f9-566c771d6f15)\r\n![合并备份](https://github.com/user-attachments/assets/eb65a63a-62f8-4ea4-b8af-46e3f8d21fca)\r\n![dav 云端备份列表](https://github.com/user-attachments/assets/0cefb052-70db-42c2-83c9-36b29a4887c4)\r\n",
      "created_at": "2025-12-22T18:21:07Z",
      "updated_at": "2026-02-11T17:15:15Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "SivanZeroX:webdav-feature",
        "ref": "webdav-feature",
        "sha": "fcb217105e72714b052255f1ac65fce8c33ab4ea",
        "user": {
          "login": "SivanZeroX",
          "id": 32437197,
          "node_id": "MDQ6VXNlcjMyNDM3MTk3",
          "avatar_url": "https://avatars.githubusercontent.com/u/32437197?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/SivanZeroX",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1121279814,
          "node_id": "R_kgDOQtVfRg",
          "name": "cc-switch",
          "full_name": "SivanZeroX/cc-switch",
          "private": false,
          "owner": {
            "login": "SivanZeroX",
            "id": 32437197,
            "node_id": "MDQ6VXNlcjMyNDM3MTk3",
            "avatar_url": "https://avatars.githubusercontent.com/u/32437197?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/SivanZeroX",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/SivanZeroX/cc-switch",
          "created_at": "2025-12-22T18:15:22Z",
          "updated_at": "2025-12-22T18:15:22Z",
          "pushed_at": "2025-12-22T18:20:21Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 24303,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "bf570b6d2ab94c2489adafe3cae6bdfceea22ada",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/448"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/448"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/448"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/448/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/448/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/448/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/fcb217105e72714b052255f1ac65fce8c33ab4ea"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/444",
      "id": 3121931182,
      "node_id": "PR_kwDOPYG9FM66FOOu",
      "number": 444,
      "state": "open",
      "locked": false,
      "title": "feat: add tray popover window",
      "user": {
        "login": "TinsFox",
        "id": 33956589,
        "node_id": "MDQ6VXNlcjMzOTU2NTg5",
        "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/TinsFox",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "重构托盘的样式交互\r\n\r\n<img width=\"395\" height=\"701\" alt=\"image\" src=\"https://github.com/user-attachments/assets/906a984e-a4d8-44a7-942b-7d6b26a91c64\" />\r\n\r\nTODO\r\n\r\n- usage 消耗面板。基本 UI 有了，等代理模块完成后再实现。把两个地方可以共用的写成一个组件",
      "created_at": "2025-12-22T07:28:25Z",
      "updated_at": "2025-12-22T10:34:24Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "TinsFox:feat/tray-popover",
        "ref": "feat/tray-popover",
        "sha": "e7656d7fe1721fe5c13c93b3923ce7e333f66773",
        "user": {
          "login": "TinsFox",
          "id": 33956589,
          "node_id": "MDQ6VXNlcjMzOTU2NTg5",
          "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/TinsFox",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1051460779,
          "node_id": "R_kgDOPqwEqw",
          "name": "cc-switch",
          "full_name": "TinsFox/cc-switch",
          "private": false,
          "owner": {
            "login": "TinsFox",
            "id": 33956589,
            "node_id": "MDQ6VXNlcjMzOTU2NTg5",
            "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/TinsFox",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "一个用于管理和切换 Claude Code 和 Codex 不同供应商配置的桌面应用",
          "fork": true,
          "url": "https://api.github.com/repos/TinsFox/cc-switch",
          "created_at": "2025-09-06T03:35:02Z",
          "updated_at": "2025-12-28T14:56:43Z",
          "pushed_at": "2026-02-01T09:42:12Z",
          "homepage": "",
          "size": 25723,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "TypeScript",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "a1537807eb0d22553d2ee5cc28845ebb8b5c12de",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/444"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/444"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/444"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/444/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/444/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/444/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/e7656d7fe1721fe5c13c93b3923ce7e333f66773"
        }
      },
      "author_association": "CONTRIBUTOR",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/443",
      "id": 3121828601,
      "node_id": "PR_kwDOPYG9FM66E1L5",
      "number": 443,
      "state": "open",
      "locked": false,
      "title": "feat: add private repository support and enhance repository management / 添加私有仓库支持并增强仓库管理功能",
      "user": {
        "login": "dickiducko",
        "id": 55104872,
        "node_id": "MDQ6VXNlcjU1MTA0ODcy",
        "avatar_url": "https://avatars.githubusercontent.com/u/55104872?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/dickiducko",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": " ## Summary                                                                                                                      \r\n                                                                                                                                  \r\n  ### 1. Private Repository Support                                                                                               \r\n  - **URL Parser**: Implemented `repoUrlParser.ts` to parse private repository URLs from GitHub, GitLab, Gitea, and other platforms\r\n  - **Connection Test**: Automatically detects the best authentication method (Authorization: token/Bearer, PRIVATE-TOKEN)        \r\n  - **Auth Header Management**: Securely stores and uses correct authentication headers for private repository access             \r\n  - **Download Strategy**: Supports secure private repository downloads across multiple platforms (GitHub, GitLab, Gitea)         \r\n                                                                                                                                  \r\n  ### 2. Repository Management Enhancement                                                                                        \r\n  - **Filtering**: Added `RepoFilter` component for filtering repositories by type, name, and other criteria                      \r\n  - **Loading Optimization**: Implemented `useSkillsLoader` hook for better loading state management                              \r\n  - **UI Improvements**: Enhanced repository management panel layout for better user experience                                   \r\n  - **Internationalization**: Completed translations in Chinese, English, and Japanese                                            \r\n                                                                                                                                  \r\n  ### Technical Changes                                                                                                           \r\n  - Extended `SkillRepo` data structure to support private repository fields                                                      \r\n  - Refactored download logic to handle public and private repositories separately                                                                                                          \r\n  - Optimized frontend component architecture for better code reusability                                                         \r\n                                                                                                                                                                                                                                                    \r\n                                                                                                                                  \r\n  ## 功能概述                                                                                                                     \r\n                                                                                                                                  \r\n  ### 1. 私有仓库支持                                                                                                             \r\n  - **URL 解析器**：实现 `repoUrlParser.ts`，支持解析 GitHub/GitLab/Gitea 等平台的私有仓库 URL                                    \r\n  - **连通测试**：自动探测最佳认证方式（Authorization: token/Bearer、PRIVATE-TOKEN）                                              \r\n  - **认证头管理**：存储并使用正确的认证头进行私有仓库访问                                                                        \r\n  - **下载策略**：支持私有仓库的安全下载，兼容多平台（GitHub、GitLab、Gitea）                                                     \r\n                                                                                                                                  \r\n  ### 2. 仓库管理功能增强                                                                                                         \r\n  - **筛选功能**：新增 `RepoFilter` 组件，支持按仓库类型、名称等条件进行筛选                                                      \r\n  - **加载优化**：实现 `useSkillsLoader` hook，提供更完善的加载状态管理                                                           \r\n  - **界面改进**：优化仓库管理面板布局，提升用户体验                                                                              \r\n  - **多语言支持**：完善中文、英文、日文三语翻译                                                                                  \r\n                                                                                                                                  \r\n  ### 技术变更                                                                                                                    \r\n  - 扩展 `SkillRepo` 数据结构，新增私有仓库相关字段                                                                               \r\n  - 重构下载逻辑，区分处理公共仓库和私有仓库                                                                                                                                                                                  \r\n  - 优化前端组件架构，提高代码复用性",
      "created_at": "2025-12-22T06:41:13Z",
      "updated_at": "2026-02-13T07:12:02Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "dickiducko:dickiducko/skill-privite-repo",
        "ref": "dickiducko/skill-privite-repo",
        "sha": "232c241a4fb2b97af1c85b45c8eebbe37431d458",
        "user": {
          "login": "dickiducko",
          "id": 55104872,
          "node_id": "MDQ6VXNlcjU1MTA0ODcy",
          "avatar_url": "https://avatars.githubusercontent.com/u/55104872?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/dickiducko",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1119460079,
          "node_id": "R_kgDOQrma7w",
          "name": "cc-switch",
          "full_name": "dickiducko/cc-switch",
          "private": false,
          "owner": {
            "login": "dickiducko",
            "id": 55104872,
            "node_id": "MDQ6VXNlcjU1MTA0ODcy",
            "avatar_url": "https://avatars.githubusercontent.com/u/55104872?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/dickiducko",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/dickiducko/cc-switch",
          "created_at": "2025-12-19T09:58:47Z",
          "updated_at": "2026-01-29T03:24:22Z",
          "pushed_at": "2025-12-22T06:35:43Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 23994,
          "stargazers_count": 1,
          "watchers_count": 1,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 1,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "a1537807eb0d22553d2ee5cc28845ebb8b5c12de",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/443"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/443"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/443"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/443/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/443/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/443/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/232c241a4fb2b97af1c85b45c8eebbe37431d458"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/433",
      "id": 3120597018,
      "node_id": "PR_kwDOPYG9FM66AIga",
      "number": 433,
      "state": "open",
      "locked": false,
      "title": "feat: sync codex azure env",
      "user": {
        "login": "TinsFox",
        "id": 33956589,
        "node_id": "MDQ6VXNlcjMzOTU2NTg5",
        "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/TinsFox",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "  - macOS/Linux：会在当前 $SHELL 推断的 rc（zsh→ `~/.zshrc`，bash→ `~/.bashrc`，fish→ `~/.config/fish/\r\n    config.fish`，无法判断时用 `~/.profile`）写入；删除时会遍历 `~/.zshrc`/`~/.zprofile`/`~/.bashrc`/\r\n    `~/.bash_profile`/`~/.profile`/`~/.config/fish/config.fish`，把之前的同名变量行去掉。\r\n\r\n  - Windows：写入/删除 HKCU\\Environment（用户环境变量），不会动系统范围。已有 PowerShell/终端需\r\n    重新开或 refreshenv 才能看到变更。\r\n\r\nclose https://github.com/farion1231/cc-switch/issues/429",
      "created_at": "2025-12-21T11:57:42Z",
      "updated_at": "2025-12-21T11:58:07Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": "0f90c1965fcdde9c5157dbde857294b9613f0fa5",
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "TinsFox:feat/codex-azure-env",
        "ref": "feat/codex-azure-env",
        "sha": "e81721046ebd9358d1ef8b10088b5ec4ba5ebeec",
        "user": {
          "login": "TinsFox",
          "id": 33956589,
          "node_id": "MDQ6VXNlcjMzOTU2NTg5",
          "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/TinsFox",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1051460779,
          "node_id": "R_kgDOPqwEqw",
          "name": "cc-switch",
          "full_name": "TinsFox/cc-switch",
          "private": false,
          "owner": {
            "login": "TinsFox",
            "id": 33956589,
            "node_id": "MDQ6VXNlcjMzOTU2NTg5",
            "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/TinsFox",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "一个用于管理和切换 Claude Code 和 Codex 不同供应商配置的桌面应用",
          "fork": true,
          "url": "https://api.github.com/repos/TinsFox/cc-switch",
          "created_at": "2025-09-06T03:35:02Z",
          "updated_at": "2025-12-28T14:56:43Z",
          "pushed_at": "2026-02-01T09:42:12Z",
          "homepage": "",
          "size": 25723,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "TypeScript",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "b67cdbb18cedf57136f5f1b00e76c2090eb8aa18",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/433"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/433"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/433"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/433/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/433/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/433/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/e81721046ebd9358d1ef8b10088b5ec4ba5ebeec"
        }
      },
      "author_association": "CONTRIBUTOR",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/432",
      "id": 3120570955,
      "node_id": "PR_kwDOPYG9FM66ACJL",
      "number": 432,
      "state": "open",
      "locked": false,
      "title": "chore: add linter",
      "user": {
        "login": "TinsFox",
        "id": 33956589,
        "node_id": "MDQ6VXNlcjMzOTU2NTg5",
        "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/TinsFox",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "ref: https://github.com/innei-template/smart-webapp-template",
      "created_at": "2025-12-21T11:15:01Z",
      "updated_at": "2025-12-28T14:58:55Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {},
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "TinsFox:chore/linter",
        "ref": "chore/linter",
        "sha": "dfcb595a8737708b024b13e880ebd15a86f46b06",
        "user": {
          "login": "TinsFox",
          "id": 33956589,
          "node_id": "MDQ6VXNlcjMzOTU2NTg5",
          "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/TinsFox",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1051460779,
          "node_id": "R_kgDOPqwEqw",
          "name": "cc-switch",
          "full_name": "TinsFox/cc-switch",
          "private": false,
          "owner": {
            "login": "TinsFox",
            "id": 33956589,
            "node_id": "MDQ6VXNlcjMzOTU2NTg5",
            "avatar_url": "https://avatars.githubusercontent.com/u/33956589?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/TinsFox",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "一个用于管理和切换 Claude Code 和 Codex 不同供应商配置的桌面应用",
          "fork": true,
          "url": "https://api.github.com/repos/TinsFox/cc-switch",
          "created_at": "2025-09-06T03:35:02Z",
          "updated_at": "2025-12-28T14:56:43Z",
          "pushed_at": "2026-02-01T09:42:12Z",
          "homepage": "",
          "size": 25723,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": "TypeScript",
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "7fdaeacb5b0e7d0ec9d6a80be55eed33c732648f",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/432"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/432"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/432"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/432/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/432/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/432/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/dfcb595a8737708b024b13e880ebd15a86f46b06"
        }
      },
      "author_association": "CONTRIBUTOR",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    },
    {
      "url": "https://api.github.com/repos/farion1231/cc-switch/pulls/399",
      "id": 3098811782,
      "node_id": "PR_kwDOPYG9FM64tB2G",
      "number": 399,
      "state": "open",
      "locked": false,
      "title": "Support multiple configuration directories ",
      "user": {
        "login": "fuzi1996",
        "id": 21113919,
        "node_id": "MDQ6VXNlcjIxMTEzOTE5",
        "avatar_url": "https://avatars.githubusercontent.com/u/21113919?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/fuzi1996",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "body": "<img width=\"907\" height=\"959\" alt=\"image\" src=\"https://github.com/user-attachments/assets/ae9fedd7-b590-47c9-8bdf-6e70015d8ec0\" />\r\n<img width=\"1045\" height=\"433\" alt=\"image\" src=\"https://github.com/user-attachments/assets/f76e9d0b-8a93-4934-97d9-83fd96c3c1ee\" />\r\n\r\n相关bug:\r\nhttps://github.com/farion1231/cc-switch/issues/145",
      "created_at": "2025-12-13T15:41:49Z",
      "updated_at": "2026-01-11T11:16:52Z",
      "closed_at": null,
      "merged_at": null,
      "merge_commit_sha": null,
      "assignee": null,
      "assignees": {},
      "requested_reviewers": {
        "0": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        }
      },
      "requested_teams": {},
      "labels": {},
      "milestone": null,
      "draft": false,
      "head": {
        "label": "fuzi1996:feature/multi_env",
        "ref": "feature/multi_env",
        "sha": "82339811b50dc3254ccc79f09f310801527da823",
        "user": {
          "login": "fuzi1996",
          "id": 21113919,
          "node_id": "MDQ6VXNlcjIxMTEzOTE5",
          "avatar_url": "https://avatars.githubusercontent.com/u/21113919?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/fuzi1996",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1115789363,
          "node_id": "R_kgDOQoGYMw",
          "name": "cc-switch",
          "full_name": "fuzi1996/cc-switch",
          "private": false,
          "owner": {
            "login": "fuzi1996",
            "id": 21113919,
            "node_id": "MDQ6VXNlcjIxMTEzOTE5",
            "avatar_url": "https://avatars.githubusercontent.com/u/21113919?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/fuzi1996",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex & Gemini CLI.",
          "fork": true,
          "url": "https://api.github.com/repos/fuzi1996/cc-switch",
          "created_at": "2025-12-13T14:59:51Z",
          "updated_at": "2025-12-13T14:59:51Z",
          "pushed_at": "2026-01-11T11:16:50Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 26435,
          "stargazers_count": 0,
          "watchers_count": 0,
          "language": null,
          "has_issues": false,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": false,
          "forks_count": 0,
          "archived": false,
          "disabled": false,
          "open_issues_count": 0,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {},
          "visibility": "public",
          "forks": 0,
          "open_issues": 0,
          "watchers": 0,
          "default_branch": "main"
        }
      },
      "base": {
        "label": "farion1231:main",
        "ref": "main",
        "sha": "76fa8306886c49626de3820ef66758f508bde9c5",
        "user": {
          "login": "farion1231",
          "id": 44939412,
          "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
          "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/farion1231",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "repo": {
          "id": 1031912724,
          "node_id": "R_kgDOPYG9FA",
          "name": "cc-switch",
          "full_name": "farion1231/cc-switch",
          "private": false,
          "owner": {
            "login": "farion1231",
            "id": 44939412,
            "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
            "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
            "gravatar_id": "",
            "url": "https://api.github.com/users/farion1231",
            "type": "User",
            "user_view_type": "public",
            "site_admin": false
          },
          "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
          "fork": false,
          "url": "https://api.github.com/repos/farion1231/cc-switch",
          "created_at": "2025-08-04T14:16:16Z",
          "updated_at": "2026-02-16T02:54:48Z",
          "pushed_at": "2026-02-15T16:11:31Z",
          "homepage": "https://github.com/farion1231/cc-switch",
          "size": 33918,
          "stargazers_count": 18411,
          "watchers_count": 18411,
          "language": "TypeScript",
          "has_issues": true,
          "has_projects": true,
          "has_downloads": true,
          "has_wiki": true,
          "has_pages": false,
          "has_discussions": true,
          "forks_count": 1150,
          "archived": false,
          "disabled": false,
          "open_issues_count": 180,
          "license": {
            "key": "mit",
            "name": "MIT License",
            "spdx_id": "MIT",
            "url": "https://api.github.com/licenses/mit",
            "node_id": "MDc6TGljZW5zZTEz"
          },
          "allow_forking": true,
          "is_template": false,
          "web_commit_signoff_required": false,
          "has_pull_requests": true,
          "pull_request_creation_policy": "all",
          "topics": {
            "0": "ai-tools",
            "1": "claude-code",
            "2": "codex",
            "3": "desktop-app",
            "4": "kimi-k2-thiking",
            "5": "mcp",
            "6": "minimax",
            "7": "open-source",
            "8": "opencode",
            "9": "provider-management",
            "10": "rust",
            "11": "skills",
            "12": "skills-management",
            "13": "tauri",
            "14": "typescript",
            "15": "wsl-support"
          },
          "visibility": "public",
          "forks": 1150,
          "open_issues": 180,
          "watchers": 18411,
          "default_branch": "main"
        }
      },
      "_links": {
        "self": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/399"
        },
        "html": {
          "href": "https://github.com/farion1231/cc-switch/pull/399"
        },
        "issue": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/399"
        },
        "comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/issues/399/comments"
        },
        "review_comments": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/399/comments"
        },
        "review_comment": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/comments{/number}"
        },
        "commits": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/pulls/399/commits"
        },
        "statuses": {
          "href": "https://api.github.com/repos/farion1231/cc-switch/statuses/82339811b50dc3254ccc79f09f310801527da823"
        }
      },
      "author_association": "NONE",
      "auto_merge": null,
      "active_lock_reason": null,
      "linked_issues": []
    }
  ],
  "discussions": [
    {
      "id": "D_kwDOPYG9FM4AkKXz",
      "number": 1044,
      "title": "3.10.3的热切换问题有人解决了吗",
      "body": "如题，现在windows上无法实现热切换供应商，同时还由于数据库版本不一致无法回滚",
      "created_at": "2026-02-15T06:15:39Z",
      "updated_at": "2026-02-15T06:15:39Z",
      "category": {
        "name": "Q&A",
        "emoji": ":pray:"
      },
      "answer": null,
      "user": {
        "login": "sleepyy-dog",
        "avatar_url": "https://avatars.githubusercontent.com/u/203856888?u=484fcd323eced86169998c99a765c1d091c97a66&v=4"
      }
    },
    {
      "id": "D_kwDOPYG9FM4AkJeA",
      "number": 1038,
      "title": "智谱 GLM coding plan 的用量查询脚本",
      "body": "```js\r\n({\r\n  request: {\r\n    url: \"https://open.bigmodel.cn/api/monitor/usage/quota/limit\",\r\n    method: \"GET\",\r\n    headers: {\r\n      \"Authorization\": \"{{apiKey}}\",\r\n      \"Accept-Language\": \"en-US,en\",\r\n      \"Content-Type\": \"application/json\"\r\n    }\r\n  },\r\n  extractor: function(response) {\r\n    if (!response.success || !response.data || !response.data.limits) {\r\n      return {\r\n        isValid: false,\r\n        invalidMessage: response.msg || \"Invalid response format\"\r\n      };\r\n    }\r\n\r\n    const limits = response.data.limits;\r\n    const level = response.data.level;\r\n    const tokenLimit = limits.find(item => item.type === 'TOKENS_LIMIT');\r\n    \r\n    if (!tokenLimit) {\r\n      return {\r\n        isValid: false,\r\n        invalidMessage: \"Token limit data not found\"\r\n      };\r\n    }\r\n    \r\n    const percentage = tokenLimit.percentage || 0;\r\n    const remaining = 100 - percentage;\r\n    \r\n    const extraInfo = [];\r\n    if (tokenLimit.nextResetTime) {\r\n      const resetDate = new Date(tokenLimit.nextResetTime);\r\n      extraInfo.push(`Reset at: ${resetDate.toLocaleString()}`);\r\n    }\r\n    \r\n    return {\r\n      isValid: percentage < 100,\r\n      invalidMessage: percentage >= 100 ? \"Token quota exhausted\" : undefined,\r\n      planName: level ? level.toUpperCase() : \"ZHIPU\",\r\n      remaining: remaining,\r\n      unit: \"%\",\r\n      extra: extraInfo.join('\\n')\r\n    };\r\n  }\r\n})\r\n```\r\n\r\n<img width=\"913\" height=\"71\" alt=\"image\" src=\"https://github.com/user-attachments/assets/9d7ba8ec-89e8-4abf-8b9d-95a26ff893e4\" />\r\n\r\n> [!NOTE]\r\n> If you are using `Z.ai` , just replace `https://open.bigmodel.cn` to `https://api.z.ai` ",
      "created_at": "2026-02-14T06:23:59Z",
      "updated_at": "2026-02-14T06:23:59Z",
      "category": {
        "name": "Show and tell",
        "emoji": ":raised_hands:"
      },
      "answer": null,
      "user": {
        "login": "yrom",
        "avatar_url": "https://avatars.githubusercontent.com/u/2888674?u=783731c88392db11d188b357e6e25e4ea642cfb3&v=4"
      }
    },
    {
      "id": "D_kwDOPYG9FM4Aj8PJ",
      "number": 898,
      "title": "服务器端支持",
      "body": "cc-switch支持无界面的服务器端使用吗？",
      "created_at": "2026-02-03T07:28:46Z",
      "updated_at": "2026-02-03T07:29:46Z",
      "category": {
        "name": "General",
        "emoji": ":speech_balloon:"
      },
      "answer": null,
      "user": {
        "login": "rais-hu",
        "avatar_url": "https://avatars.githubusercontent.com/u/52861776?v=4"
      }
    },
    {
      "id": "D_kwDOPYG9FM4AjxEA",
      "number": 734,
      "title": "使用全局代理直接调用官方claude会被封么",
      "body": "v3.10.0更新之后新增了全局代理功能，有没有大佬尝试过配置isp代理直接使用claude账号的？会不会被封？我现在是自己搞了个claude relay service 服务，也配了同一个出站代理isp。如果可行的话我自己用就不需要走claude relay service了，能省个服务器的钱。",
      "created_at": "2026-01-22T14:18:25Z",
      "updated_at": "2026-01-22T14:18:25Z",
      "category": {
        "name": "Q&A",
        "emoji": ":pray:"
      },
      "answer": null,
      "user": {
        "login": "ZiqiXiao",
        "avatar_url": "https://avatars.githubusercontent.com/u/99584387?u=a18878969bbd52d50fa105111d7db82e00557587&v=4"
      }
    }
  ],
  "details": {
    "id": 1031912724,
    "node_id": "R_kgDOPYG9FA",
    "name": "cc-switch",
    "full_name": "farion1231/cc-switch",
    "private": false,
    "owner": {
      "login": "farion1231",
      "id": 44939412,
      "node_id": "MDQ6VXNlcjQ0OTM5NDEy",
      "avatar_url": "https://avatars.githubusercontent.com/u/44939412?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/farion1231",
      "type": "User",
      "user_view_type": "public",
      "site_admin": false
    },
    "description": "A cross-platform desktop All-in-One assistant tool for Claude Code, Codex, OpenCode & Gemini CLI.",
    "fork": false,
    "url": "https://api.github.com/repos/farion1231/cc-switch",
    "created_at": "2025-08-04T14:16:16Z",
    "updated_at": "2026-02-16T02:54:48Z",
    "pushed_at": "2026-02-15T16:11:31Z",
    "homepage": "https://github.com/farion1231/cc-switch",
    "size": 33918,
    "stargazers_count": 18411,
    "watchers_count": 18411,
    "language": "TypeScript",
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "has_discussions": true,
    "forks_count": 1150,
    "archived": false,
    "disabled": false,
    "open_issues_count": 180,
    "license": {
      "key": "mit",
      "name": "MIT License",
      "spdx_id": "MIT",
      "url": "https://api.github.com/licenses/mit",
      "node_id": "MDc6TGljZW5zZTEz"
    },
    "allow_forking": true,
    "is_template": false,
    "web_commit_signoff_required": false,
    "has_pull_requests": true,
    "pull_request_creation_policy": "all",
    "topics": {
      "0": "ai-tools",
      "1": "claude-code",
      "2": "codex",
      "3": "desktop-app",
      "4": "kimi-k2-thiking",
      "5": "mcp",
      "6": "minimax",
      "7": "open-source",
      "8": "opencode",
      "9": "provider-management",
      "10": "rust",
      "11": "skills",
      "12": "skills-management",
      "13": "tauri",
      "14": "typescript",
      "15": "wsl-support"
    },
    "visibility": "public",
    "forks": 1150,
    "open_issues": 180,
    "watchers": 18411,
    "default_branch": "main",
    "permissions": {
      "admin": false,
      "maintain": false,
      "push": false,
      "triage": false,
      "pull": true
    },
    "temp_clone_token": "",
    "network_count": 1150,
    "subscribers_count": 48
  },
  "lastFetched": 1771210994899
}