dsh-edge 0.2.0-alpha.1 → 0.2.0-alpha.3
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/README.i18n.yaml +2 -2
- package/README.md +4 -2
- package/README.zh.md +4 -2
- package/THIRD_PARTY_NOTICES.md +387 -1131
- package/dist/assets/index-BNMwCG9c.css +1 -0
- package/dist/assets/index-CA9Bpko5.js +96 -0
- package/dist/assets/langs/{php-D-uCvoST.js → php-DDkx9sim.js} +2 -2
- package/dist/assets/langs/{ruby-DEItuUFs.js → ruby-DCxyoPen.js} +2 -2
- package/dist/assets/{vendor-Cjbwl5VI.js → vendor-D22_Mp1f.js} +2 -2
- package/dist/index.html +26 -5
- package/dist/plugins/@deepseek-ai/dsh-api-remotes/client.js +166 -27
- package/dist/plugins/@deepseek-ai/dsh-client-connection/client.js +136 -19
- package/dist/plugins/@deepseek-ai/dsh-client-locale/client.js +51 -12
- package/dist/plugins/@deepseek-ai/dsh-client-modules/client.js +188 -123
- package/dist/plugins/@deepseek-ai/dsh-client-runtime/client.js +43 -8
- package/dist/plugins/@deepseek-ai/dsh-client-ui-agent-preset/client.js +54 -54
- package/dist/plugins/@deepseek-ai/dsh-client-ui-brand-official/client.js +50 -0
- package/dist/plugins/@deepseek-ai/dsh-client-ui-commands/client.js +46 -17
- package/dist/plugins/@deepseek-ai/dsh-client-ui-conversation/client.js +805 -486
- package/dist/plugins/@deepseek-ai/dsh-client-ui-deliverables/client.js +5 -5
- package/dist/plugins/@deepseek-ai/dsh-client-ui-input-trigger/client.js +82 -26
- package/dist/plugins/@deepseek-ai/dsh-client-ui-jobs/client.js +7 -7
- package/dist/plugins/@deepseek-ai/dsh-client-ui-layout/client.js +2 -2
- package/dist/plugins/@deepseek-ai/dsh-client-ui-model-selection/client.js +18 -18
- package/dist/plugins/@deepseek-ai/dsh-client-ui-permission-presets/client.js +96 -82
- package/dist/plugins/@deepseek-ai/dsh-client-ui-renderer/client.js +989 -0
- package/dist/plugins/@deepseek-ai/dsh-client-ui-settings/client.js +1177 -67
- package/dist/plugins/@deepseek-ai/dsh-client-ui-settings-general/client.js +61 -65
- package/dist/plugins/@deepseek-ai/dsh-client-ui-sidebar/client.js +51 -21
- package/dist/plugins/@deepseek-ai/dsh-client-ui-skill/client.js +12 -12
- package/dist/plugins/@deepseek-ai/dsh-client-ui-subagent/client.js +18 -45
- package/dist/plugins/@deepseek-ai/dsh-client-ui-theme/client.js +46 -3
- package/dist/plugins/@deepseek-ai/dsh-client-ui-tool/client.js +102 -62
- package/dist/plugins/@deepseek-ai/dsh-client-ui-trajectory/client.js +143 -142
- package/dist/plugins/@deepseek-ai/dsh-client-ui-user-questions/client.js +25 -25
- package/dist/plugins/@deepseek-ai/dsh-client-ui-workflow-run/client.js +261 -86
- package/dist/plugins/@deepseek-ai/dsh-client-ui-workspace/client.js +72 -62
- package/package.json +22 -22
- package/scripts/activation.d.mts +34 -0
- package/scripts/activation.mjs +133 -0
- package/scripts/cli.d.mts +9 -0
- package/scripts/cli.mjs +66 -3
- package/scripts/install.d.mts +8 -0
- package/scripts/install.mjs +18 -1
- package/scripts/legal-files.mjs +12 -7
- package/scripts/pnpm-invocation.d.mts +14 -0
- package/scripts/pnpm-invocation.mjs +25 -0
- package/worker/direct/index.js +692 -688
- package/worker/isolated/index.js +469 -465
- package/dist/assets/index-C-1AiF3k.js +0 -112
- package/dist/assets/index-CSGf6Qzd.css +0 -1
package/README.i18n.yaml
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
# last confirmed-consistent state. Both languages carry equal authority.
|
|
3
3
|
# After editing either side, update both and re-record every pair with:
|
|
4
4
|
# pnpm run doc-pairs -- --write
|
|
5
|
-
README.md:
|
|
6
|
-
README.zh.md:
|
|
5
|
+
README.md: 6677bc90acde245bf00f9cacf27c800c1320caf3
|
|
6
|
+
README.zh.md: 899072d815abafe399c8561999a07c8c3cb12474
|
package/README.md
CHANGED
|
@@ -166,11 +166,13 @@ Stable deployments use `npx dsh-edge@latest upgrade`. The Edge settings page der
|
|
|
166
166
|
|
|
167
167
|
The installer asks for the runtime before the account. The recommended `Free — Direct Shell` mode works on Workers Free and can use a detected Cloudflare account, open Cloudflare sign-in or registration, or create a temporary account without login. `Isolated — Dynamic Worker` requires Workers Paid and therefore offers only a detected or newly authenticated account. Cloudflare does not expose a reliable local entitlement check for Worker Loader, so an isolated install lets Cloudflare authorize the upload and turns a rejection into a choice between enabling Workers Paid and using direct mode.
|
|
168
168
|
|
|
169
|
-
The remaining prompts select a Worker name, generate or accept the owner access key, collect the DeepSeek API key through hidden input, and show a final cost summary. A temporary-account install also asks the user to accept Cloudflare's Terms of Service and Privacy Policy explicitly. An existing Worker is never overwritten without confirmation. The installer passes both credentials through a mode-`0600` temporary secrets file and gives Wrangler only an allowlisted runtime environment plus the Cloudflare authentication selected for that command; unrelated ambient keys, tokens, passwords, secrets, and Node injection options do not reach the child. It removes the secret file after the command and discovers the resulting URL from Wrangler's structured output. Deployment output is hidden behind one progress indicator by default; add `--verbose` to either command to inspect Wrangler diagnostics.
|
|
169
|
+
The remaining prompts select a Worker name, generate or accept the owner access key, collect the DeepSeek API key through hidden input, and show a final cost summary. A temporary-account install also asks the user to accept Cloudflare's Terms of Service and Privacy Policy explicitly. An existing Worker is never overwritten without confirmation. The installer passes both credentials through a mode-`0600` temporary secrets file and gives Wrangler only an allowlisted runtime environment plus the Cloudflare authentication selected for that command; unrelated ambient keys, tokens, passwords, secrets, and Node injection options do not reach the child. It removes the secret file after the command and discovers the resulting URL from Wrangler's structured output. Deployment output is hidden behind one progress indicator by default; add `--verbose` to either command to inspect Wrangler diagnostics.
|
|
170
|
+
|
|
171
|
+
After an accepted upload, a second progress indicator observes the public `/api/health` route for at most 45 seconds without sending either credential or following redirects. It accepts only the exact packaged version and selected runtime. A matching response produces a ready card. Cloudflare propagation, challenge, placeholder, transport, and older-release responses remain pending; expiry still exits successfully and tells the owner to wait briefly and refresh. This observation does not call DeepSeek or touch Durable Object state. The final card prints the URL, owner access key, and concrete next steps; a temporary account also receives a bearer claim URL that must be claimed within 60 minutes to retain the Worker and its data. A rejected upload is reported as not installed and, when Wrangler created a temporary account first, still prints its claim URL without presenting the unused owner key as active. If upload succeeds but output parsing, claim-URL extraction, interruption handling, activation interruption, or local cleanup prevents a normal handoff, a recovery card still prints the active owner key and any known URLs before the command exits unsuccessfully. The installation uploads directly through Wrangler and does not create or bind a GitHub repository, Cloudflare Builds project, or source-build pipeline.
|
|
170
172
|
|
|
171
173
|
Contributors working from a checkout can reproduce the two release artifacts locally with `pnpm --filter dsh-edge bundle:direct` and `pnpm --filter dsh-edge bundle:isolated`. The first command also enforces the compressed-size budget.
|
|
172
174
|
|
|
173
|
-
Contributors can replay the complete Free temporary-account journey without a key or network call. This example runs the shipped bin, real prompts, Wrangler subprocess, structured deployment-output parsing, and final handoff while replacing
|
|
175
|
+
Contributors can replay the complete Free temporary-account journey without a key or network call. This example runs the shipped bin, real prompts, Wrangler subprocess, structured deployment-output parsing, public-activation observation, and final handoff while replacing the external Cloudflare boundaries:
|
|
174
176
|
|
|
175
177
|
```sh
|
|
176
178
|
pnpm --filter dsh-edge example:install
|
package/README.zh.md
CHANGED
|
@@ -166,11 +166,13 @@ npx dsh-edge@next upgrade
|
|
|
166
166
|
|
|
167
167
|
安装器会先询问运行时,再询问账户。推荐的 `Free — Direct Shell` 模式可在 Workers Free 上运行,并可使用检测到的 Cloudflare 账户、打开 Cloudflare 登录或注册,也可在不登录的情况下创建临时账户。`Isolated — Dynamic Worker` 需要 Workers Paid,因此只提供已检测到或新认证的账户。Cloudflare 没有提供可靠的本地 Worker Loader entitlement 检查;isolated 安装会由 Cloudflare 对上传进行授权,并在被拒绝时提示启用 Workers Paid 或改用 direct 模式。
|
|
168
168
|
|
|
169
|
-
后续提示会选择 Worker 名称、生成或接收 owner access key、通过隐藏输入收集 DeepSeek API key,并显示最终费用摘要。临时账户安装还会要求用户明确接受 Cloudflare 服务条款与隐私政策。安装器绝不会在未经确认时覆盖现有 Worker。两项 credential 会通过权限模式为 `0600` 的临时 secret 文件传给 Wrangler;Wrangler 子进程只会收到 allowlist 内的运行时环境变量和当前命令选中的 Cloudflare authentication,其他 ambient key、token、password、secret 与 Node 注入选项不会进入子进程。命令结束后临时 secret 文件会被删除,安装器从 Wrangler 结构化输出中取得最终 URL。默认情况下,部署输出会收敛到一个进度提示;在任一命令后添加 `--verbose` 可以查看 Wrangler
|
|
169
|
+
后续提示会选择 Worker 名称、生成或接收 owner access key、通过隐藏输入收集 DeepSeek API key,并显示最终费用摘要。临时账户安装还会要求用户明确接受 Cloudflare 服务条款与隐私政策。安装器绝不会在未经确认时覆盖现有 Worker。两项 credential 会通过权限模式为 `0600` 的临时 secret 文件传给 Wrangler;Wrangler 子进程只会收到 allowlist 内的运行时环境变量和当前命令选中的 Cloudflare authentication,其他 ambient key、token、password、secret 与 Node 注入选项不会进入子进程。命令结束后临时 secret 文件会被删除,安装器从 Wrangler 结构化输出中取得最终 URL。默认情况下,部署输出会收敛到一个进度提示;在任一命令后添加 `--verbose` 可以查看 Wrangler 诊断。
|
|
170
|
+
|
|
171
|
+
上传被接受后,第二个进度提示会在不发送任一 credential 且不跟随重定向的前提下,最多观察公开 `/api/health` 路由 45 秒。它只接受当前 package 的精确版本和所选 runtime。匹配的 response 会产生 ready 卡片;Cloudflare propagation、challenge、占位页、传输错误与旧 release response 都保持 pending,观察到期仍以成功退出,并提示 owner 稍后刷新。该观察不会调用 DeepSeek,也不会访问 Durable Object 状态。最终卡片会输出 URL、owner access key 与明确的下一步;临时账户还会收到一个 bearer claim URL,必须在 60 分钟内认领才能保留 Worker 及其数据。上传被拒绝时,安装器会明确报告未安装;如果 Wrangler 已经创建临时账户,仍会输出其 claim URL,但不会把尚未生效的 owner key 显示为 active。如果上传成功,但输出解析、claim URL 提取、中断处理、激活观察中断或本地清理导致正常交接无法完成,命令仍会在按失败退出前通过恢复卡片输出已生效的 owner key 与当时已知的 URL。安装过程直接通过 Wrangler 上传,不会创建或绑定 GitHub 仓库、Cloudflare Builds 项目或源码构建流水线。
|
|
170
172
|
|
|
171
173
|
从 checkout 开发的贡献者可以用 `pnpm --filter dsh-edge bundle:direct` 和 `pnpm --filter dsh-edge bundle:isolated` 在本地复现两种 release artifact。第一条命令还会执行压缩体积预算检查。
|
|
172
174
|
|
|
173
|
-
贡献者可以在没有 key 且不发起网络请求的情况下重放完整的 Free 临时账户流程。这个 example 会运行实际交付的 bin、真实 prompt、Wrangler
|
|
175
|
+
贡献者可以在没有 key 且不发起网络请求的情况下重放完整的 Free 临时账户流程。这个 example 会运行实际交付的 bin、真实 prompt、Wrangler 子进程、结构化部署输出解析、公开激活观察与最终交接,并替换外部 Cloudflare 边界:
|
|
174
176
|
|
|
175
177
|
```sh
|
|
176
178
|
pnpm --filter dsh-edge example:install
|