@eddyskywalker/dsh-chatgpt-subscription 0.2.5 → 0.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ - 修复搜索与抓取来源切换未生效:正确更新 Loader 配置,并在 DSH web 服务重载时重新注册后端、保留默认来源;解决启用插件抓取后仍由 DSH 内置 fetch 拦截 TUN/Fake-IP 地址的问题。
5
6
  - 修复 Antigravity 工具调用:原样回传 Google 工具 ID,兼容旧会话保存的原始 ID;转换工具参数 Schema,过滤 `propertyNames` 等不支持字段并处理嵌套结构。
6
7
  - 修复 Gemini 3.7 / 3.8 的旧 `off` / `none` 思考配置,使用最低支持档位 `LOW` 并关闭思考摘要;400 请求错误直接保留原始详情,不再被模型降级错误覆盖。
7
8
  - Codex 订阅供应商新增 `gpt-6-astra`(6 Astra),支持文本、图片、工具调用和 `low` 至 `max` 思考档位,默认 `medium`;旧会话的 `none` / `minimal` 转为 `low`。
package/README.md CHANGED
@@ -120,6 +120,8 @@ DSH 模型选择器应显示 **“Codex(ChatGPT 订阅)”**。6 Astra 与 G
120
120
 
121
121
  **设置 → Codex 订阅 → 网络代理** 同时控制 GPT 与 Antigravity(Gemini)的 Host 请求,可选择系统代理(自动检测)、自定义代理或直连。Gemini 模型生成、网页登录后的令牌交换、令牌刷新、账号信息、项目发现、配额与模型目录查询均使用此设置;修改后对后续请求生效,无需重启 DSH。浏览器中的 Google 授权页面使用浏览器自己的网络设置。
122
122
 
123
+ **搜索与抓取来源** 同时切换 DSH 的搜索和网页抓取后端。选择 ChatGPT 来源后,网页由本插件在 Host 抓取,并使用上述网络代理设置;纯 TUN 模式可使用直连,流量由虚拟网卡接管。来源切换即时生效,DSH web 服务重载后会重新注册插件后端,并保留切回 DSH 默认来源所需的配置。选择 DSH 默认来源时,抓取仍遵循 DSH 自身的代理及非公网地址校验策略。
124
+
123
125
  卸载前建议先在设置页点击 **“注销”**,它会删除当前平台的凭据和 Host 内存中的额度缓存。
124
126
 
125
127
  若 DSH 已异常退出,可在确认路径后手动处理凭据文件:
package/lib/index.js CHANGED
@@ -3544,7 +3544,7 @@ var SearchProviderSwitcher = class {
3544
3544
  else nextConfig.searchProvider = nextSearch;
3545
3545
  if (nextFetch === void 0) delete nextConfig.fetchProvider;
3546
3546
  else nextConfig.fetchProvider = nextFetch;
3547
- await entry.update({ config: nextConfig }, true);
3547
+ await entry.update({ config: nextConfig });
3548
3548
  }
3549
3549
  findWebEntry() {
3550
3550
  for (const entry of this.loader.entries()) {
@@ -5555,7 +5555,6 @@ const inject = [
5555
5555
  "llm",
5556
5556
  "attachments",
5557
5557
  "tools",
5558
- "web",
5559
5558
  "settings",
5560
5559
  "loader"
5561
5560
  ];
@@ -5596,24 +5595,14 @@ function apply(ctx) {
5596
5595
  const disposeRoutes = registerRoutes(ctx, oauth, usage, preferences, proxyManager);
5597
5596
  const disposeAdapter = ctx.llm.registerAdapter([PROVIDER_ID$1], adapter);
5598
5597
  const disposeImageTool = ctx.tools.register(createCodexImageTool(oauth, ctx.attachments, { fetchFn: proxyFetch }));
5599
- let disposeWebProviders = () => {};
5600
- const registerWebProviders = () => {
5601
- disposeWebProviders();
5602
- if (ctx.web) {
5603
- const d1 = ctx.web.registerSearchProvider(createCodexSearchProvider(oauth, { fetchFn: proxyFetch }));
5604
- const d2 = ctx.web.registerFetchProvider(createCodexFetchProvider({ fetchFn: proxyFetch }));
5605
- disposeWebProviders = () => {
5606
- d1();
5607
- d2();
5608
- };
5609
- }
5610
- };
5611
- registerWebProviders();
5598
+ ctx.inject(["web"], (ctx) => {
5599
+ ctx.web.registerSearchProvider(createCodexSearchProvider(oauth, { fetchFn: proxyFetch }));
5600
+ ctx.web.registerFetchProvider(createCodexFetchProvider({ fetchFn: proxyFetch }));
5601
+ applySearchPreference();
5602
+ });
5612
5603
  const disposePreferenceWatch = preferences.watch((next) => applySearchPreference(next.searchProvider));
5613
- applySearchPreference();
5614
5604
  return () => {
5615
5605
  disposePreferenceWatch();
5616
- disposeWebProviders();
5617
5606
  disposeImageTool();
5618
5607
  disposeAdapter();
5619
5608
  disposeRoutes();
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AA+BlD,eAAO,MAAM,MAAM,UAA4E,CAAA;AAE/F,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CA8ExC;AAED,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAA;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAClF,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAA;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,YAAY,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAE/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAClE,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,GAClB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AA+BlD,eAAO,MAAM,MAAM,UAAqE,CAAA;AAExF,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAuExC;AAED,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAA;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAClF,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAA;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,YAAY,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAE/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAClE,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,GAClB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eddyskywalker/dsh-chatgpt-subscription",
3
- "version": "0.2.5",
3
+ "version": "0.2.8",
4
4
  "description": "DSH provider plugin for Codex access through a ChatGPT subscription.",
5
5
  "author": {
6
6
  "name": "eddyskywalker",
@@ -125,7 +125,7 @@
125
125
  "build": "tsc -b && tsdown",
126
126
  "prepack": "npm run build",
127
127
  "test": "vitest run",
128
- "typecheck": "tsc -b --pretty false"
128
+ "typecheck": "tsc -b --pretty false && tsc -p test/tsconfig.json --pretty false"
129
129
  },
130
130
  "dependencies": {
131
131
  "mermaid": "^11.17.2",