@eddyskywalker/dsh-chatgpt-subscription 0.1.11 → 0.1.12

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
@@ -1,59 +1,9 @@
1
- # Changelog
2
-
3
- ## 0.1.11 - 2026-08-18
4
-
5
- - 移除临时子代理报告去重兼容模块:按照标记 `DSH_COMPAT_REMOVE(subagent-report-settlement-dedup)` 安全移除 `subagent-report-scheduling-compat` 模块、相关测试及插件中的 `agents` 依赖注入与挂钩清理逻辑。
6
- - 扩展 Codex usage 解析,支持 `additional_rate_limits`、Credits、月度消费控制与 reset credits,并在设置页展示。
7
- - 新增 ChatGPT 订阅侧 Codex 搜索 provider,可在设置页切换 DSH 默认搜索或 `codex-subscription` 搜索来源。
8
- - 新增 `codex_image_generate` 图片生成工具,使用 Codex 图片 endpoint 生成 PNG 并保存为 DSH 图片附件,同时提供会话内工具结果渲染。
9
- - 新增 composer 快捷用量徽标开关;当前会话选择 `codex-chatgpt` 模型时,可显示最紧张限额窗口的剩余额度。
10
- - 统一模型目录显示名与 Codex App 风格:`5.6 Sol`、`5.6 Terra`、`5.6 Luna`、`5.5`、`5.4`、`5.4 Mini`、`5.3 Codex Spark`,并为 Spark 避免发送不兼容的 `reasoning.summary`。
11
-
12
- ## 0.1.10 - 2026-08-17
13
-
14
- - 移除临时 Bash Prompt 兼容模块:由于上游 DSH `0.1.0-rc.7` 已经原生修复持久化 Bash 提示符不匹配与重置问题,现按照标记 `DSH_COMPAT_REMOVE(persistent-bash-prompt-mismatch)` 安全移除全部相关兼容代码与测试。保留子代理报告去重兼容模块 `DSH_COMPAT_REMOVE(subagent-report-settlement-dedup)`。
15
- - 增强 Responses Mapper 对 DSH `0.1.0-rc.7` 中新版规范 `ReplayEnvelope` 嵌套结构(`response.outputItems`)的兼容解构支持。
16
-
17
- ## 0.1.8 - 2026-08-17
18
-
19
- - 修复 Cordis 插件依赖安全检查:使用 `ctx.inject(['terminals'], ...)` 作用域安全声明,解决在未加载 terminals 服务的 Profile 或非终端环境下直接访问 `ctx.terminals` 抛出 `cannot get property "terminals" without inject` 的启动崩溃问题。
20
-
21
- ## 0.1.7 - 2026-08-17
22
-
23
- - 临时兼容 DSH `0.1.0-rc.6` 持久化 Bash 提示符不匹配(70倍命令提速):修补 PTY 会话在 `tool-bash-persistent` 设置 `__DSH_PERSISTENT_BASH_PROMPT__ ` 时的就绪判定,避免因底层硬编码 `dsh> ` 及 6 字符截断导致回退到 3.5 秒静默超时。代码统一标记为 `DSH_COMPAT_REMOVE(persistent-bash-prompt-mismatch)`,待 DSH 原生修复后可整体移除。
24
-
25
- ## 0.1.6 - 2026-08-17
26
-
27
- - 临时兼容 DSH `0.1.0-rc.6` 的子代理报告去重:当 `subagent-settled` 已携带与同一子代理排队 `subagent-report` 完全相同的最终内容时,删除重复报告,保留 settlement 通知;部分报告、不同内容和不同子代理不受影响。代码统一标记为 `DSH_COMPAT_REMOVE(subagent-report-settlement-dedup)`,待 DSH 原生修复后可整体移除。
28
- - 新增 Linux Host 支持:平台凭据存储选择、用户私有 `0600` TokenStore,以及 Bash/POSIX shell 工具调用兼容说明与测试。
29
- - 设置页现在根据 Host 返回值展示 Windows DPAPI 或 Linux 文件存储及其真实安全边界。
30
- - 移除与 Codex 订阅接入无关的执行过程详情折叠功能。
31
-
32
- ## 0.1.2 - 2026-08-16
33
-
34
- - 优化过程详情折叠(Process folding)的初始化时机与节点匹配探测逻辑。
35
- - 增强客户端 DOM 观察与挂载测试用例覆盖。
36
-
37
- ## 0.1.1 - 2026-08-16
38
-
39
- - 新增执行过程详情与思考过程的可折叠展示机制(Collapsible process detail folding)。
40
- - 增强客户端与服务端 Responses 过程解析及 UI 交互。
41
-
42
- ## 0.1.0 - 2026-08-16
43
-
44
- - 首个正式版本发布。
45
- - 完善客户端 UI 样式体系与 `@eddyskywalker` 命名空间配置。
46
- - 增强命令执行工具与无状态安全重试机制。
47
-
48
- ## 0.1.0-alpha.0 - 2026-08-14
49
-
50
- - 新增 DSH Host/Client 双端插件与一级“Codex 订阅”设置入口。
51
- - 新增 ChatGPT OAuth PKCE、localhost callback、DPAPI TokenStore、刷新和注销。
52
- - 新增 `codex-chatgpt` LLM Adapter、固定 Responses SSE、vision、reasoning 与工具调用映射。
53
- - 新增 401 单次刷新重试、DSH 有界 retry policy、取消与安全工具参数校验。
54
- - 新增 Wham usage 双 bucket/双窗口解析、缓存、节流、连接测试和可访问进度条。
55
- - 新增 OAuth、路由、DPAPI、Responses、额度与 Client 注册测试。
56
- - 修复 OAuth 失败详情被状态刷新清空、旧 keep-alive 回调连接复用,以及 refresh token 失效后重复尝试的问题;token exchange 现在显示脱敏错误标识。
57
- - 修复工具调用 replay 缺失时仍发送孤立 `function_call_output` 导致 Codex 返回 400;现在会补全调用配对,并安全处理被压缩历史中的孤立结果。
58
-
59
- 这是首个 prerelease;没有稳定版升级承诺。ChatGPT backend compatibility 可能随上游变化。
1
+ # Changelog
2
+
3
+ ## 0.1.12 - 2026-08-20
4
+
5
+ - 适配 DSH `0.1.0-rc.8`:peerDependencies / devDependencies 中全部 DSH 包范围从 `^0.1.0-rc.6` 提升至 `^0.1.0-rc.8`,并重新生成 package-lock.json。已在本机 rc.8 依赖集上验证:typecheck、55 项测试与 tsdown 构建全部通过,插件代码无需改动。
6
+ - 移除已无引用的 `@deepseek-ai/dsh-agent` peer 依赖(子代理报告去重兼容模块已于 0.1.11 移除)。
7
+ - 新增 `@deepseek-ai/dsh-client-connection` peer 依赖(客户端 `ContentBlock` 类型来源,符合 rc.8 客户端包 peer 声明惯例)。
8
+ - 说明:rc.8 中 `@deepseek-ai/dsh-client-ui-slots` 不再是 DSH 运行时依赖图成员(仅保留为各客户端包的 devDependency),插件继续将其声明为 peer 依赖以保证安装时解析(`^0.1.0-rc.6` 联网安装时解析到 rc.8;本地锁文件因离线环境暂固定 rc.7,API 与 rc.8 用法一致)。
9
+
@@ -1,169 +1,169 @@
1
- export declare const NS: "dsh-chatgpt-subscription";
2
- export declare const zh: {
3
- readonly title: "Codex 订阅";
4
- readonly intro: "使用 ChatGPT 账号登录,在 DSH 中使用订阅可用的 Codex 模型。";
5
- readonly account: "账号";
6
- readonly signedOut: "尚未登录";
7
- readonly signedIn: "已登录";
8
- readonly plan: "套餐";
9
- readonly accountId: "账号 ID";
10
- readonly expires: "令牌到期";
11
- readonly storage: "凭据存储";
12
- readonly storageWindows: "Windows DPAPI(当前用户加密)";
13
- readonly storageLinuxFile: "Linux 用户私有文件(权限 0600)";
14
- readonly storageMemory: "仅 Host 内存(不持久化)";
15
- readonly storageUnavailable: "凭据存储不可用";
16
- readonly securityWindows: "令牌由 Host 使用 Windows CurrentUser DPAPI 加密,不会进入浏览器、settings.yaml 或日志。";
17
- readonly securityLinuxFile: "令牌仅写入 Host 上当前 Linux 用户可读的 0600 文件,但不会额外加密;同 UID 进程、root、备份和磁盘快照仍可能读取。";
18
- readonly securityMemory: "令牌仅保留在 Host 内存中,Host 退出后丢失。";
19
- readonly securityUnavailable: "Host 无法安全访问凭据存储;请修复文件所有者或权限后重试。";
20
- readonly signIn: "使用 ChatGPT 登录";
21
- readonly signInAgain: "重新登录";
22
- readonly cancel: "取消登录";
23
- readonly signOut: "注销";
24
- readonly refreshToken: "刷新凭据";
25
- readonly pending: "请在浏览器中完成登录。";
26
- readonly popupBlocked: "浏览器拦截了登录窗口,请使用下面的链接继续。";
27
- readonly continueLogin: "打开 ChatGPT 登录页";
28
- readonly loading: "正在读取状态…";
29
- readonly connection: "连接";
30
- readonly provider: "Provider";
31
- readonly connectionState: "连接状态";
32
- readonly connected: "可用";
33
- readonly untested: "尚未测试";
34
- readonly testConnection: "测试连接";
35
- readonly testing: "测试中…";
36
- readonly latency: "最近延迟";
37
- readonly models: "可用模型";
38
- readonly enhancements: "增强功能";
39
- readonly searchProvider: "搜索来源";
40
- readonly searchProviderHint: "选择 DSH Web 搜索工具使用默认来源,或改用当前 ChatGPT 订阅的 Codex 搜索来源。";
41
- readonly searchProviderDsh: "DSH 默认";
42
- readonly searchProviderCodex: "Codex 订阅";
43
- readonly quickQuota: "在输入框旁显示快捷用量";
44
- readonly quickQuotaHint: "仅在当前会话选中 codex-chatgpt 模型时显示。";
45
- readonly quota: "用量与限额";
46
- readonly quotaIntro: "数据来自 ChatGPT Codex 用量服务。页面可见时最多每 60 秒刷新一次。";
47
- readonly refreshQuota: "刷新用量";
48
- readonly refreshing: "刷新中…";
49
- readonly noQuota: "当前套餐未返回可显示的限额窗口。";
50
- readonly quotaSignedOut: "登录后可查看订阅限额。";
51
- readonly stale: "显示的是上次成功获取的数据。";
52
- readonly updated: "更新时间";
53
- readonly primary: "主要窗口";
54
- readonly secondary: "次要窗口";
55
- readonly limitWindow: "额度";
56
- readonly used: "已使用";
57
- readonly remaining: "剩余";
58
- readonly available: "可用";
59
- readonly unavailable: "不可用";
60
- readonly unlimited: "无限";
61
- readonly credits: "Credits";
62
- readonly monthlySpend: "月度消费控制";
63
- readonly resetCredits: "重置次数";
64
- readonly spendControlReached: "已触发月度消费控制,新的订阅调用可能被限制。";
65
- readonly limit: "上限";
66
- readonly exhausted: "额度已用尽";
67
- readonly resets: "重置";
68
- readonly quickQuotaLabel: "Codex 剩余";
69
- readonly quickQuotaLoading: "用量…";
70
- readonly imageToolRunning: "正在生成图片";
71
- readonly imageToolDone: "已生成图片";
72
- readonly imageToolFailed: "图片生成失败";
73
- readonly image: "图片";
74
- readonly openImage: "打开图片";
75
- readonly openNamedImage: "打开 {name}";
76
- readonly imageLoading: "加载图片…";
77
- readonly imageLoadFailed: "图片加载失败,点击重试";
78
- readonly imagePreviewClose: "关闭";
79
- readonly imagePreviewOpenOriginal: "打开原图";
80
- readonly retry: "重试";
81
- readonly unknown: "未知";
82
- };
83
- export declare const en: Record<keyof typeof zh, string>;
84
- export type LocaleKey = keyof typeof zh;
85
- export declare const dictionaries: {
86
- zh: {
87
- readonly title: "Codex 订阅";
88
- readonly intro: "使用 ChatGPT 账号登录,在 DSH 中使用订阅可用的 Codex 模型。";
89
- readonly account: "账号";
90
- readonly signedOut: "尚未登录";
91
- readonly signedIn: "已登录";
92
- readonly plan: "套餐";
93
- readonly accountId: "账号 ID";
94
- readonly expires: "令牌到期";
95
- readonly storage: "凭据存储";
96
- readonly storageWindows: "Windows DPAPI(当前用户加密)";
97
- readonly storageLinuxFile: "Linux 用户私有文件(权限 0600)";
98
- readonly storageMemory: "仅 Host 内存(不持久化)";
99
- readonly storageUnavailable: "凭据存储不可用";
100
- readonly securityWindows: "令牌由 Host 使用 Windows CurrentUser DPAPI 加密,不会进入浏览器、settings.yaml 或日志。";
101
- readonly securityLinuxFile: "令牌仅写入 Host 上当前 Linux 用户可读的 0600 文件,但不会额外加密;同 UID 进程、root、备份和磁盘快照仍可能读取。";
102
- readonly securityMemory: "令牌仅保留在 Host 内存中,Host 退出后丢失。";
103
- readonly securityUnavailable: "Host 无法安全访问凭据存储;请修复文件所有者或权限后重试。";
104
- readonly signIn: "使用 ChatGPT 登录";
105
- readonly signInAgain: "重新登录";
106
- readonly cancel: "取消登录";
107
- readonly signOut: "注销";
108
- readonly refreshToken: "刷新凭据";
109
- readonly pending: "请在浏览器中完成登录。";
110
- readonly popupBlocked: "浏览器拦截了登录窗口,请使用下面的链接继续。";
111
- readonly continueLogin: "打开 ChatGPT 登录页";
112
- readonly loading: "正在读取状态…";
113
- readonly connection: "连接";
114
- readonly provider: "Provider";
115
- readonly connectionState: "连接状态";
116
- readonly connected: "可用";
117
- readonly untested: "尚未测试";
118
- readonly testConnection: "测试连接";
119
- readonly testing: "测试中…";
120
- readonly latency: "最近延迟";
121
- readonly models: "可用模型";
122
- readonly enhancements: "增强功能";
123
- readonly searchProvider: "搜索来源";
124
- readonly searchProviderHint: "选择 DSH Web 搜索工具使用默认来源,或改用当前 ChatGPT 订阅的 Codex 搜索来源。";
125
- readonly searchProviderDsh: "DSH 默认";
126
- readonly searchProviderCodex: "Codex 订阅";
127
- readonly quickQuota: "在输入框旁显示快捷用量";
128
- readonly quickQuotaHint: "仅在当前会话选中 codex-chatgpt 模型时显示。";
129
- readonly quota: "用量与限额";
130
- readonly quotaIntro: "数据来自 ChatGPT Codex 用量服务。页面可见时最多每 60 秒刷新一次。";
131
- readonly refreshQuota: "刷新用量";
132
- readonly refreshing: "刷新中…";
133
- readonly noQuota: "当前套餐未返回可显示的限额窗口。";
134
- readonly quotaSignedOut: "登录后可查看订阅限额。";
135
- readonly stale: "显示的是上次成功获取的数据。";
136
- readonly updated: "更新时间";
137
- readonly primary: "主要窗口";
138
- readonly secondary: "次要窗口";
139
- readonly limitWindow: "额度";
140
- readonly used: "已使用";
141
- readonly remaining: "剩余";
142
- readonly available: "可用";
143
- readonly unavailable: "不可用";
144
- readonly unlimited: "无限";
145
- readonly credits: "Credits";
146
- readonly monthlySpend: "月度消费控制";
147
- readonly resetCredits: "重置次数";
148
- readonly spendControlReached: "已触发月度消费控制,新的订阅调用可能被限制。";
149
- readonly limit: "上限";
150
- readonly exhausted: "额度已用尽";
151
- readonly resets: "重置";
152
- readonly quickQuotaLabel: "Codex 剩余";
153
- readonly quickQuotaLoading: "用量…";
154
- readonly imageToolRunning: "正在生成图片";
155
- readonly imageToolDone: "已生成图片";
156
- readonly imageToolFailed: "图片生成失败";
157
- readonly image: "图片";
158
- readonly openImage: "打开图片";
159
- readonly openNamedImage: "打开 {name}";
160
- readonly imageLoading: "加载图片…";
161
- readonly imageLoadFailed: "图片加载失败,点击重试";
162
- readonly imagePreviewClose: "关闭";
163
- readonly imagePreviewOpenOriginal: "打开原图";
164
- readonly retry: "重试";
165
- readonly unknown: "未知";
166
- };
167
- en: Record<"pending" | "title" | "intro" | "account" | "signedOut" | "signedIn" | "plan" | "accountId" | "expires" | "storage" | "storageWindows" | "storageLinuxFile" | "storageMemory" | "storageUnavailable" | "securityWindows" | "securityLinuxFile" | "securityMemory" | "securityUnavailable" | "signIn" | "signInAgain" | "cancel" | "signOut" | "refreshToken" | "popupBlocked" | "continueLogin" | "loading" | "connection" | "provider" | "connectionState" | "connected" | "untested" | "testConnection" | "testing" | "latency" | "models" | "enhancements" | "searchProvider" | "searchProviderHint" | "searchProviderDsh" | "searchProviderCodex" | "quickQuota" | "quickQuotaHint" | "quota" | "quotaIntro" | "refreshQuota" | "refreshing" | "noQuota" | "quotaSignedOut" | "stale" | "updated" | "primary" | "secondary" | "limitWindow" | "used" | "remaining" | "available" | "unavailable" | "unlimited" | "credits" | "monthlySpend" | "resetCredits" | "spendControlReached" | "limit" | "exhausted" | "resets" | "quickQuotaLabel" | "quickQuotaLoading" | "imageToolRunning" | "imageToolDone" | "imageToolFailed" | "image" | "openImage" | "openNamedImage" | "imageLoading" | "imageLoadFailed" | "imagePreviewClose" | "imagePreviewOpenOriginal" | "retry" | "unknown", string>;
168
- };
1
+ export declare const NS: "dsh-chatgpt-subscription";
2
+ export declare const zh: {
3
+ readonly title: "Codex 订阅";
4
+ readonly intro: "使用 ChatGPT 账号登录,在 DSH 中使用订阅可用的 Codex 模型。";
5
+ readonly account: "账号";
6
+ readonly signedOut: "尚未登录";
7
+ readonly signedIn: "已登录";
8
+ readonly plan: "套餐";
9
+ readonly accountId: "账号 ID";
10
+ readonly expires: "令牌到期";
11
+ readonly storage: "凭据存储";
12
+ readonly storageWindows: "Windows DPAPI(当前用户加密)";
13
+ readonly storageLinuxFile: "Linux 用户私有文件(权限 0600)";
14
+ readonly storageMemory: "仅 Host 内存(不持久化)";
15
+ readonly storageUnavailable: "凭据存储不可用";
16
+ readonly securityWindows: "令牌由 Host 使用 Windows CurrentUser DPAPI 加密,不会进入浏览器、settings.yaml 或日志。";
17
+ readonly securityLinuxFile: "令牌仅写入 Host 上当前 Linux 用户可读的 0600 文件,但不会额外加密;同 UID 进程、root、备份和磁盘快照仍可能读取。";
18
+ readonly securityMemory: "令牌仅保留在 Host 内存中,Host 退出后丢失。";
19
+ readonly securityUnavailable: "Host 无法安全访问凭据存储;请修复文件所有者或权限后重试。";
20
+ readonly signIn: "使用 ChatGPT 登录";
21
+ readonly signInAgain: "重新登录";
22
+ readonly cancel: "取消登录";
23
+ readonly signOut: "注销";
24
+ readonly refreshToken: "刷新凭据";
25
+ readonly pending: "请在浏览器中完成登录。";
26
+ readonly popupBlocked: "浏览器拦截了登录窗口,请使用下面的链接继续。";
27
+ readonly continueLogin: "打开 ChatGPT 登录页";
28
+ readonly loading: "正在读取状态…";
29
+ readonly connection: "连接";
30
+ readonly provider: "Provider";
31
+ readonly connectionState: "连接状态";
32
+ readonly connected: "可用";
33
+ readonly untested: "尚未测试";
34
+ readonly testConnection: "测试连接";
35
+ readonly testing: "测试中…";
36
+ readonly latency: "最近延迟";
37
+ readonly models: "可用模型";
38
+ readonly enhancements: "增强功能";
39
+ readonly searchProvider: "搜索来源";
40
+ readonly searchProviderHint: "选择 DSH Web 搜索工具使用默认来源,或改用当前 ChatGPT 订阅的 Codex 搜索来源。";
41
+ readonly searchProviderDsh: "DSH 默认";
42
+ readonly searchProviderCodex: "Codex 订阅";
43
+ readonly quickQuota: "在输入框旁显示快捷用量";
44
+ readonly quickQuotaHint: "仅在当前会话选中 codex-chatgpt 模型时显示。";
45
+ readonly quota: "用量与限额";
46
+ readonly quotaIntro: "数据来自 ChatGPT Codex 用量服务。页面可见时最多每 60 秒刷新一次。";
47
+ readonly refreshQuota: "刷新用量";
48
+ readonly refreshing: "刷新中…";
49
+ readonly noQuota: "当前套餐未返回可显示的限额窗口。";
50
+ readonly quotaSignedOut: "登录后可查看订阅限额。";
51
+ readonly stale: "显示的是上次成功获取的数据。";
52
+ readonly updated: "更新时间";
53
+ readonly primary: "主要窗口";
54
+ readonly secondary: "次要窗口";
55
+ readonly limitWindow: "额度";
56
+ readonly used: "已使用";
57
+ readonly remaining: "剩余";
58
+ readonly available: "可用";
59
+ readonly unavailable: "不可用";
60
+ readonly unlimited: "无限";
61
+ readonly credits: "Credits";
62
+ readonly monthlySpend: "月度消费控制";
63
+ readonly resetCredits: "重置次数";
64
+ readonly spendControlReached: "已触发月度消费控制,新的订阅调用可能被限制。";
65
+ readonly limit: "上限";
66
+ readonly exhausted: "额度已用尽";
67
+ readonly resets: "重置";
68
+ readonly quickQuotaLabel: "Codex 剩余";
69
+ readonly quickQuotaLoading: "用量…";
70
+ readonly imageToolRunning: "正在生成图片";
71
+ readonly imageToolDone: "已生成图片";
72
+ readonly imageToolFailed: "图片生成失败";
73
+ readonly image: "图片";
74
+ readonly openImage: "打开图片";
75
+ readonly openNamedImage: "打开 {name}";
76
+ readonly imageLoading: "加载图片…";
77
+ readonly imageLoadFailed: "图片加载失败,点击重试";
78
+ readonly imagePreviewClose: "关闭";
79
+ readonly imagePreviewOpenOriginal: "打开原图";
80
+ readonly retry: "重试";
81
+ readonly unknown: "未知";
82
+ };
83
+ export declare const en: Record<keyof typeof zh, string>;
84
+ export type LocaleKey = keyof typeof zh;
85
+ export declare const dictionaries: {
86
+ zh: {
87
+ readonly title: "Codex 订阅";
88
+ readonly intro: "使用 ChatGPT 账号登录,在 DSH 中使用订阅可用的 Codex 模型。";
89
+ readonly account: "账号";
90
+ readonly signedOut: "尚未登录";
91
+ readonly signedIn: "已登录";
92
+ readonly plan: "套餐";
93
+ readonly accountId: "账号 ID";
94
+ readonly expires: "令牌到期";
95
+ readonly storage: "凭据存储";
96
+ readonly storageWindows: "Windows DPAPI(当前用户加密)";
97
+ readonly storageLinuxFile: "Linux 用户私有文件(权限 0600)";
98
+ readonly storageMemory: "仅 Host 内存(不持久化)";
99
+ readonly storageUnavailable: "凭据存储不可用";
100
+ readonly securityWindows: "令牌由 Host 使用 Windows CurrentUser DPAPI 加密,不会进入浏览器、settings.yaml 或日志。";
101
+ readonly securityLinuxFile: "令牌仅写入 Host 上当前 Linux 用户可读的 0600 文件,但不会额外加密;同 UID 进程、root、备份和磁盘快照仍可能读取。";
102
+ readonly securityMemory: "令牌仅保留在 Host 内存中,Host 退出后丢失。";
103
+ readonly securityUnavailable: "Host 无法安全访问凭据存储;请修复文件所有者或权限后重试。";
104
+ readonly signIn: "使用 ChatGPT 登录";
105
+ readonly signInAgain: "重新登录";
106
+ readonly cancel: "取消登录";
107
+ readonly signOut: "注销";
108
+ readonly refreshToken: "刷新凭据";
109
+ readonly pending: "请在浏览器中完成登录。";
110
+ readonly popupBlocked: "浏览器拦截了登录窗口,请使用下面的链接继续。";
111
+ readonly continueLogin: "打开 ChatGPT 登录页";
112
+ readonly loading: "正在读取状态…";
113
+ readonly connection: "连接";
114
+ readonly provider: "Provider";
115
+ readonly connectionState: "连接状态";
116
+ readonly connected: "可用";
117
+ readonly untested: "尚未测试";
118
+ readonly testConnection: "测试连接";
119
+ readonly testing: "测试中…";
120
+ readonly latency: "最近延迟";
121
+ readonly models: "可用模型";
122
+ readonly enhancements: "增强功能";
123
+ readonly searchProvider: "搜索来源";
124
+ readonly searchProviderHint: "选择 DSH Web 搜索工具使用默认来源,或改用当前 ChatGPT 订阅的 Codex 搜索来源。";
125
+ readonly searchProviderDsh: "DSH 默认";
126
+ readonly searchProviderCodex: "Codex 订阅";
127
+ readonly quickQuota: "在输入框旁显示快捷用量";
128
+ readonly quickQuotaHint: "仅在当前会话选中 codex-chatgpt 模型时显示。";
129
+ readonly quota: "用量与限额";
130
+ readonly quotaIntro: "数据来自 ChatGPT Codex 用量服务。页面可见时最多每 60 秒刷新一次。";
131
+ readonly refreshQuota: "刷新用量";
132
+ readonly refreshing: "刷新中…";
133
+ readonly noQuota: "当前套餐未返回可显示的限额窗口。";
134
+ readonly quotaSignedOut: "登录后可查看订阅限额。";
135
+ readonly stale: "显示的是上次成功获取的数据。";
136
+ readonly updated: "更新时间";
137
+ readonly primary: "主要窗口";
138
+ readonly secondary: "次要窗口";
139
+ readonly limitWindow: "额度";
140
+ readonly used: "已使用";
141
+ readonly remaining: "剩余";
142
+ readonly available: "可用";
143
+ readonly unavailable: "不可用";
144
+ readonly unlimited: "无限";
145
+ readonly credits: "Credits";
146
+ readonly monthlySpend: "月度消费控制";
147
+ readonly resetCredits: "重置次数";
148
+ readonly spendControlReached: "已触发月度消费控制,新的订阅调用可能被限制。";
149
+ readonly limit: "上限";
150
+ readonly exhausted: "额度已用尽";
151
+ readonly resets: "重置";
152
+ readonly quickQuotaLabel: "Codex 剩余";
153
+ readonly quickQuotaLoading: "用量…";
154
+ readonly imageToolRunning: "正在生成图片";
155
+ readonly imageToolDone: "已生成图片";
156
+ readonly imageToolFailed: "图片生成失败";
157
+ readonly image: "图片";
158
+ readonly openImage: "打开图片";
159
+ readonly openNamedImage: "打开 {name}";
160
+ readonly imageLoading: "加载图片…";
161
+ readonly imageLoadFailed: "图片加载失败,点击重试";
162
+ readonly imagePreviewClose: "关闭";
163
+ readonly imagePreviewOpenOriginal: "打开原图";
164
+ readonly retry: "重试";
165
+ readonly unknown: "未知";
166
+ };
167
+ en: Record<"pending" | "title" | "intro" | "account" | "signedOut" | "signedIn" | "plan" | "accountId" | "expires" | "storage" | "storageWindows" | "storageLinuxFile" | "storageMemory" | "storageUnavailable" | "securityWindows" | "securityLinuxFile" | "securityMemory" | "securityUnavailable" | "signIn" | "signInAgain" | "cancel" | "signOut" | "refreshToken" | "popupBlocked" | "continueLogin" | "loading" | "connection" | "provider" | "connectionState" | "connected" | "untested" | "testConnection" | "testing" | "latency" | "models" | "enhancements" | "searchProvider" | "searchProviderHint" | "searchProviderDsh" | "searchProviderCodex" | "quickQuota" | "quickQuotaHint" | "quota" | "quotaIntro" | "refreshQuota" | "refreshing" | "noQuota" | "quotaSignedOut" | "stale" | "updated" | "primary" | "secondary" | "limitWindow" | "used" | "remaining" | "available" | "unavailable" | "unlimited" | "credits" | "monthlySpend" | "resetCredits" | "spendControlReached" | "limit" | "exhausted" | "resets" | "quickQuotaLabel" | "quickQuotaLoading" | "imageToolRunning" | "imageToolDone" | "imageToolFailed" | "image" | "openImage" | "openNamedImage" | "imageLoading" | "imageLoadFailed" | "imagePreviewClose" | "imagePreviewOpenOriginal" | "retry" | "unknown", string>;
168
+ };
169
169
  //# sourceMappingURL=locales.d.ts.map
package/package.json CHANGED
@@ -1,126 +1,126 @@
1
- {
2
- "name": "@eddyskywalker/dsh-chatgpt-subscription",
3
- "version": "0.1.11",
4
- "description": "DSH provider plugin for Codex access through a ChatGPT subscription.",
5
- "author": {
6
- "name": "eddyskywalker",
7
- "url": "https://www.npmjs.com/~eddyskywalker"
8
- },
9
- "repository": {
10
- "type": "git",
11
- "url": "git+https://github.com/Aa728848/dsh-chatgpt-subscription.git"
12
- },
13
- "homepage": "https://github.com/Aa728848/dsh-chatgpt-subscription#readme",
14
- "bugs": {
15
- "url": "https://github.com/Aa728848/dsh-chatgpt-subscription/issues"
16
- },
17
- "keywords": [
18
- "dsh-plugin",
19
- "dsh",
20
- "deepseek-harness",
21
- "chatgpt",
22
- "codex",
23
- "openai",
24
- "provider"
25
- ],
26
- "type": "module",
27
- "publishConfig": {
28
- "access": "public",
29
- "tag": "latest"
30
- },
31
- "main": "lib/index.js",
32
- "types": "lib/types/index.d.ts",
33
- "exports": {
34
- ".": {
35
- "types": "./lib/types/index.d.ts",
36
- "default": "./lib/index.js"
37
- },
38
- "./client": {
39
- "types": "./lib/types/client/index.d.ts",
40
- "default": "./lib/client.js"
41
- },
42
- "./package.json": "./package.json"
43
- },
44
- "dsh": {
45
- "bundle": {
46
- "patch": "./cordis.patch.yml"
47
- },
48
- "client": {
49
- "inject": [
50
- "@deepseek-ai/dsh-client-runtime",
51
- "@deepseek-ai/dsh-client-locale",
52
- "@deepseek-ai/dsh-client-ui-slots",
53
- "@deepseek-ai/dsh-client-ui-settings",
54
- "@deepseek-ai/dsh-client-ui-model-selection",
55
- "@deepseek-ai/dsh-client-ui-conversation",
56
- "@deepseek-ai/dsh-client-ui-tool"
57
- ],
58
- "platform": "web"
59
- }
60
- },
61
- "peerDependencies": {
62
- "@deepseek-ai/cordis": "^4.0.1",
63
- "@deepseek-ai/cordis-plugin-loader": "^1.0.2",
64
- "@deepseek-ai/dsh-agent": "^0.1.0-rc.6",
65
- "@deepseek-ai/dsh-attachment": "^0.1.0-rc.6",
66
- "@deepseek-ai/dsh-client-locale": "^0.1.0-rc.6",
67
- "@deepseek-ai/dsh-client-runtime": "^0.1.0-rc.6",
68
- "@deepseek-ai/dsh-client-ui-conversation": "^0.1.0-rc.6",
69
- "@deepseek-ai/dsh-client-ui-model-selection": "^0.1.0-rc.6",
70
- "@deepseek-ai/dsh-client-ui-settings": "^0.1.0-rc.6",
71
- "@deepseek-ai/dsh-client-ui-slots": "^0.1.0-rc.6",
72
- "@deepseek-ai/dsh-client-ui-tool": "^0.1.0-rc.6",
73
- "@deepseek-ai/dsh-host-webserver": "^0.1.0-rc.6",
74
- "@deepseek-ai/dsh-llm": "^0.1.0-rc.6",
75
- "@deepseek-ai/dsh-settings": "^0.1.0-rc.6",
76
- "@deepseek-ai/dsh-tools": "^0.1.0-rc.6",
77
- "@deepseek-ai/dsh-web": "^0.1.0-rc.6",
78
- "@deepseek-ai/schemastery": "^3.18.1",
79
- "react": "^18.2.0"
80
- },
81
- "devDependencies": {
82
- "@deepseek-ai/cordis": "^4.0.1",
83
- "@deepseek-ai/cordis-plugin-loader": "^1.0.2",
84
- "@deepseek-ai/dsh-agent": "^0.1.0-rc.6",
85
- "@deepseek-ai/dsh-attachment": "^0.1.0-rc.6",
86
- "@deepseek-ai/dsh-client-locale": "^0.1.0-rc.6",
87
- "@deepseek-ai/dsh-client-runtime": "^0.1.0-rc.6",
88
- "@deepseek-ai/dsh-client-ui-conversation": "^0.1.0-rc.6",
89
- "@deepseek-ai/dsh-client-ui-model-selection": "^0.1.0-rc.6",
90
- "@deepseek-ai/dsh-client-ui-settings": "^0.1.0-rc.6",
91
- "@deepseek-ai/dsh-client-ui-slots": "^0.1.0-rc.6",
92
- "@deepseek-ai/dsh-client-ui-tool": "^0.1.0-rc.6",
93
- "@deepseek-ai/dsh-host-webserver": "^0.1.0-rc.6",
94
- "@deepseek-ai/dsh-llm": "^0.1.0-rc.6",
95
- "@deepseek-ai/dsh-settings": "^0.1.0-rc.6",
96
- "@deepseek-ai/dsh-tools": "^0.1.0-rc.6",
97
- "@deepseek-ai/dsh-web": "^0.1.0-rc.6",
98
- "@deepseek-ai/schemastery": "^3.18.1",
99
- "@types/node": "^22.20.0",
100
- "@types/react": "~18.3.1",
101
- "@types/react-dom": "^18.3.5",
102
- "jsdom": "29.1.1",
103
- "react": "^18.3.1",
104
- "react-dom": "^18.3.1",
105
- "tsdown": "0.22.2",
106
- "typescript": "~5.7.2",
107
- "vitest": "^4.1.8"
108
- },
109
- "files": [
110
- "lib/index.js",
111
- "lib/client.js",
112
- "lib/client.js.map",
113
- "lib/types/**/*.d.ts",
114
- "lib/types/**/*.d.ts.map",
115
- "cordis.patch.yml",
116
- "README.md",
117
- "CHANGELOG.md"
118
- ],
119
- "license": "MIT",
120
- "scripts": {
121
- "build": "tsc -b && tsdown",
122
- "prepack": "npm run build",
123
- "test": "vitest run",
124
- "typecheck": "tsc -b --pretty false"
125
- }
126
- }
1
+ {
2
+ "name": "@eddyskywalker/dsh-chatgpt-subscription",
3
+ "version": "0.1.12",
4
+ "description": "DSH provider plugin for Codex access through a ChatGPT subscription.",
5
+ "author": {
6
+ "name": "eddyskywalker",
7
+ "url": "https://www.npmjs.com/~eddyskywalker"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/Aa728848/dsh-chatgpt-subscription.git"
12
+ },
13
+ "homepage": "https://github.com/Aa728848/dsh-chatgpt-subscription#readme",
14
+ "bugs": {
15
+ "url": "https://github.com/Aa728848/dsh-chatgpt-subscription/issues"
16
+ },
17
+ "keywords": [
18
+ "dsh-plugin",
19
+ "dsh",
20
+ "deepseek-harness",
21
+ "chatgpt",
22
+ "codex",
23
+ "openai",
24
+ "provider"
25
+ ],
26
+ "type": "module",
27
+ "publishConfig": {
28
+ "access": "public",
29
+ "tag": "latest"
30
+ },
31
+ "main": "lib/index.js",
32
+ "types": "lib/types/index.d.ts",
33
+ "exports": {
34
+ ".": {
35
+ "types": "./lib/types/index.d.ts",
36
+ "default": "./lib/index.js"
37
+ },
38
+ "./client": {
39
+ "types": "./lib/types/client/index.d.ts",
40
+ "default": "./lib/client.js"
41
+ },
42
+ "./package.json": "./package.json"
43
+ },
44
+ "dsh": {
45
+ "bundle": {
46
+ "patch": "./cordis.patch.yml"
47
+ },
48
+ "client": {
49
+ "inject": [
50
+ "@deepseek-ai/dsh-client-runtime",
51
+ "@deepseek-ai/dsh-client-locale",
52
+ "@deepseek-ai/dsh-client-ui-slots",
53
+ "@deepseek-ai/dsh-client-ui-settings",
54
+ "@deepseek-ai/dsh-client-ui-model-selection",
55
+ "@deepseek-ai/dsh-client-ui-conversation",
56
+ "@deepseek-ai/dsh-client-ui-tool"
57
+ ],
58
+ "platform": "web"
59
+ }
60
+ },
61
+ "peerDependencies": {
62
+ "@deepseek-ai/cordis": "^4.0.1",
63
+ "@deepseek-ai/cordis-plugin-loader": "^1.0.2",
64
+ "@deepseek-ai/dsh-attachment": "^0.1.0-rc.8",
65
+ "@deepseek-ai/dsh-client-connection": "^0.1.0-rc.8",
66
+ "@deepseek-ai/dsh-client-locale": "^0.1.0-rc.8",
67
+ "@deepseek-ai/dsh-client-runtime": "^0.1.0-rc.8",
68
+ "@deepseek-ai/dsh-client-ui-conversation": "^0.1.0-rc.8",
69
+ "@deepseek-ai/dsh-client-ui-model-selection": "^0.1.0-rc.8",
70
+ "@deepseek-ai/dsh-client-ui-settings": "^0.1.0-rc.8",
71
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.0-rc.6",
72
+ "@deepseek-ai/dsh-client-ui-tool": "^0.1.0-rc.8",
73
+ "@deepseek-ai/dsh-host-webserver": "^0.1.0-rc.8",
74
+ "@deepseek-ai/dsh-llm": "^0.1.0-rc.8",
75
+ "@deepseek-ai/dsh-settings": "^0.1.0-rc.8",
76
+ "@deepseek-ai/dsh-tools": "^0.1.0-rc.8",
77
+ "@deepseek-ai/dsh-web": "^0.1.0-rc.8",
78
+ "@deepseek-ai/schemastery": "^3.18.1",
79
+ "react": "^18.2.0"
80
+ },
81
+ "devDependencies": {
82
+ "@deepseek-ai/cordis": "^4.0.1",
83
+ "@deepseek-ai/cordis-plugin-loader": "^1.0.2",
84
+ "@deepseek-ai/dsh-attachment": "^0.1.0-rc.8",
85
+ "@deepseek-ai/dsh-client-connection": "^0.1.0-rc.8",
86
+ "@deepseek-ai/dsh-client-locale": "^0.1.0-rc.8",
87
+ "@deepseek-ai/dsh-client-runtime": "^0.1.0-rc.8",
88
+ "@deepseek-ai/dsh-client-ui-conversation": "^0.1.0-rc.8",
89
+ "@deepseek-ai/dsh-client-ui-model-selection": "^0.1.0-rc.8",
90
+ "@deepseek-ai/dsh-client-ui-settings": "^0.1.0-rc.8",
91
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.0-rc.6",
92
+ "@deepseek-ai/dsh-client-ui-tool": "^0.1.0-rc.8",
93
+ "@deepseek-ai/dsh-host-webserver": "^0.1.0-rc.8",
94
+ "@deepseek-ai/dsh-llm": "^0.1.0-rc.8",
95
+ "@deepseek-ai/dsh-settings": "^0.1.0-rc.8",
96
+ "@deepseek-ai/dsh-tools": "^0.1.0-rc.8",
97
+ "@deepseek-ai/dsh-web": "^0.1.0-rc.8",
98
+ "@deepseek-ai/schemastery": "^3.18.1",
99
+ "@types/node": "^22.20.0",
100
+ "@types/react": "~18.3.1",
101
+ "@types/react-dom": "^18.3.5",
102
+ "jsdom": "29.1.1",
103
+ "react": "^18.3.1",
104
+ "react-dom": "^18.3.1",
105
+ "tsdown": "0.22.2",
106
+ "typescript": "~5.7.2",
107
+ "vitest": "^4.1.8"
108
+ },
109
+ "files": [
110
+ "lib/index.js",
111
+ "lib/client.js",
112
+ "lib/client.js.map",
113
+ "lib/types/**/*.d.ts",
114
+ "lib/types/**/*.d.ts.map",
115
+ "cordis.patch.yml",
116
+ "README.md",
117
+ "CHANGELOG.md"
118
+ ],
119
+ "license": "MIT",
120
+ "scripts": {
121
+ "build": "tsc -b && tsdown",
122
+ "prepack": "npm run build",
123
+ "test": "vitest run",
124
+ "typecheck": "tsc -b --pretty false"
125
+ }
126
+ }