@mogragsigma/dsh-dual-host-plugin 0.33.1 → 0.33.2
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.md +61 -47
- package/bundle/LICENSE +58 -0
- package/bundle/LICENSE.en.md +94 -0
- package/bundle/README.md +75 -0
- package/bundle/compatibility.json +980 -0
- package/bundle/cordis.patch.yml +5 -0
- package/{distribution-lock.json → bundle/distribution-lock.json} +5 -5
- package/{link-contract.js → bundle/link-contract.js} +1 -1
- package/bundle/package-lock.json +773 -0
- package/bundle/package.json +99 -0
- package/compatibility.json +2 -2
- package/cordis.patch.yml +0 -2
- package/package.json +18 -58
- /package/{ASSET_NOTICE.md → bundle/ASSET_NOTICE.md} +0 -0
- /package/{THIRD_PARTY_NOTICES.md → bundle/THIRD_PARTY_NOTICES.md} +0 -0
- /package/{a2a-dispatches.js → bundle/a2a-dispatches.js} +0 -0
- /package/{a2a-endpoint.js → bundle/a2a-endpoint.js} +0 -0
- /package/{a2a-tools.js → bundle/a2a-tools.js} +0 -0
- /package/{a2a-worker.js → bundle/a2a-worker.js} +0 -0
- /package/{approval-auth.js → bundle/approval-auth.js} +0 -0
- /package/{approval-chat.js → bundle/approval-chat.js} +0 -0
- /package/{approval-feishu.js → bundle/approval-feishu.js} +0 -0
- /package/{approval-guidance.js → bundle/approval-guidance.js} +0 -0
- /package/{approval-http.js → bundle/approval-http.js} +0 -0
- /package/{approval-ledger.js → bundle/approval-ledger.js} +0 -0
- /package/{approval-local-relay.js → bundle/approval-local-relay.js} +0 -0
- /package/{approval-receipts.js → bundle/approval-receipts.js} +0 -0
- /package/{approval-reference.js → bundle/approval-reference.js} +0 -0
- /package/{approval-semantic-model.js → bundle/approval-semantic-model.js} +0 -0
- /package/{approval-semantics.js → bundle/approval-semantics.js} +0 -0
- /package/{approval-ui → bundle/approval-ui}/app.js +0 -0
- /package/{approval-ui → bundle/approval-ui}/index.html +0 -0
- /package/{approval-ui → bundle/approval-ui}/style.css +0 -0
- /package/{approval-workbench.js → bundle/approval-workbench.js} +0 -0
- /package/{artifact-media.js → bundle/artifact-media.js} +0 -0
- /package/{bounded-text.js → bundle/bounded-text.js} +0 -0
- /package/{delivery-approval.js → bundle/delivery-approval.js} +0 -0
- /package/{delivery-artifacts.js → bundle/delivery-artifacts.js} +0 -0
- /package/{delivery-commit.js → bundle/delivery-commit.js} +0 -0
- /package/{delivery-contract.js → bundle/delivery-contract.js} +0 -0
- /package/{delivery-git-read.js → bundle/delivery-git-read.js} +0 -0
- /package/{delivery-index.js → bundle/delivery-index.js} +0 -0
- /package/{delivery-journal.js → bundle/delivery-journal.js} +0 -0
- /package/{delivery-object-plan.js → bundle/delivery-object-plan.js} +0 -0
- /package/{delivery-preview.js → bundle/delivery-preview.js} +0 -0
- /package/{delivery-process-receipts.js → bundle/delivery-process-receipts.js} +0 -0
- /package/{delivery-process.js → bundle/delivery-process.js} +0 -0
- /package/{delivery-process.py → bundle/delivery-process.py} +0 -0
- /package/{delivery-push-approval.js → bundle/delivery-push-approval.js} +0 -0
- /package/{delivery-push-plan.js → bundle/delivery-push-plan.js} +0 -0
- /package/{delivery-push-recovery.js → bundle/delivery-push-recovery.js} +0 -0
- /package/{delivery-push.js → bundle/delivery-push.js} +0 -0
- /package/{delivery-recovery.js → bundle/delivery-recovery.js} +0 -0
- /package/{delivery-runtime.js → bundle/delivery-runtime.js} +0 -0
- /package/{delivery-ssh.js → bundle/delivery-ssh.js} +0 -0
- /package/{delivery-state.js → bundle/delivery-state.js} +0 -0
- /package/{development-attention.js → bundle/development-attention.js} +0 -0
- /package/{development-bridge.js → bundle/development-bridge.js} +0 -0
- /package/{development-command-review.js → bundle/development-command-review.js} +0 -0
- /package/{development-container.js → bundle/development-container.js} +0 -0
- /package/{development-contract.js → bundle/development-contract.js} +0 -0
- /package/{development-files.js → bundle/development-files.js} +0 -0
- /package/{development-gate.js → bundle/development-gate.js} +0 -0
- /package/{development-model-budget.js → bundle/development-model-budget.js} +0 -0
- /package/{development-peer.js → bundle/development-peer.js} +0 -0
- /package/{development-plan.js → bundle/development-plan.js} +0 -0
- /package/{development-reconciliation.js → bundle/development-reconciliation.js} +0 -0
- /package/{development-review.js → bundle/development-review.js} +0 -0
- /package/{development-rules → bundle/development-rules}/AGENTS.md +0 -0
- /package/{development-runtime.js → bundle/development-runtime.js} +0 -0
- /package/{development-source.js → bundle/development-source.js} +0 -0
- /package/{development-test-runner.js → bundle/development-test-runner.js} +0 -0
- /package/{development-tools.js → bundle/development-tools.js} +0 -0
- /package/{development-worker-review.js → bundle/development-worker-review.js} +0 -0
- /package/{development-worker.js → bundle/development-worker.js} +0 -0
- /package/{development-workspace.js → bundle/development-workspace.js} +0 -0
- /package/{diagnostics.js → bundle/diagnostics.js} +0 -0
- /package/{drained-process.js → bundle/drained-process.js} +0 -0
- /package/{durable-inbox.js → bundle/durable-inbox.js} +0 -0
- /package/{feishu-policy.js → bundle/feishu-policy.js} +0 -0
- /package/{gateway-maintenance.js → bundle/gateway-maintenance.js} +0 -0
- /package/{global-rules → bundle/global-rules}/AGENTS.md +0 -0
- /package/{im-delivery.js → bundle/im-delivery.js} +0 -0
- /package/{index.js → bundle/index.js} +0 -0
- /package/{intervention-actions.js → bundle/intervention-actions.js} +0 -0
- /package/{intervention-job-control.js → bundle/intervention-job-control.js} +0 -0
- /package/{intervention-state.js → bundle/intervention-state.js} +0 -0
- /package/{job-version.js → bundle/job-version.js} +0 -0
- /package/{legacy-feishu-adapter.js → bundle/legacy-feishu-adapter.js} +0 -0
- /package/{maintenance-process-identity.js → bundle/maintenance-process-identity.js} +0 -0
- /package/{model-selection.js → bundle/model-selection.js} +0 -0
- /package/{native-context.js → bundle/native-context.js} +0 -0
- /package/{native-entry-admission.js → bundle/native-entry-admission.js} +0 -0
- /package/{native-entry.js → bundle/native-entry.js} +0 -0
- /package/{native-file-reference.js → bundle/native-file-reference.js} +0 -0
- /package/{native-owner-origin.js → bundle/native-owner-origin.js} +0 -0
- /package/{native-rules → bundle/native-rules}/AGENTS.md +0 -0
- /package/{native-tools.js → bundle/native-tools.js} +0 -0
- /package/{notification-artifacts.js → bundle/notification-artifacts.js} +0 -0
- /package/{notification-contract.js → bundle/notification-contract.js} +0 -0
- /package/{notification-defaults.js → bundle/notification-defaults.js} +0 -0
- /package/{notification-discovery.js → bundle/notification-discovery.js} +0 -0
- /package/{notification-endpoint.js → bundle/notification-endpoint.js} +0 -0
- /package/{notification-feishu.js → bundle/notification-feishu.js} +0 -0
- /package/{notification-media-endpoint.js → bundle/notification-media-endpoint.js} +0 -0
- /package/{notification-review.js → bundle/notification-review.js} +0 -0
- /package/{notification-targets.js → bundle/notification-targets.js} +0 -0
- /package/{onboarding-activity.js → bundle/onboarding-activity.js} +0 -0
- /package/{onboarding-agent-hold.js → bundle/onboarding-agent-hold.js} +0 -0
- /package/{onboarding-boundary.js → bundle/onboarding-boundary.js} +0 -0
- /package/{onboarding-cloud-contract.js → bundle/onboarding-cloud-contract.js} +0 -0
- /package/{onboarding-cloud-file-review.js → bundle/onboarding-cloud-file-review.js} +0 -0
- /package/{onboarding-cloud-files.js → bundle/onboarding-cloud-files.js} +0 -0
- /package/{onboarding-cloud-im.js → bundle/onboarding-cloud-im.js} +0 -0
- /package/{onboarding-cloud-model-probe.js → bundle/onboarding-cloud-model-probe.js} +0 -0
- /package/{onboarding-cloud-models.js → bundle/onboarding-cloud-models.js} +0 -0
- /package/{onboarding-cloud-operation.js → bundle/onboarding-cloud-operation.js} +0 -0
- /package/{onboarding-cloud-package.js → bundle/onboarding-cloud-package.js} +0 -0
- /package/{onboarding-cloud-repositories.js → bundle/onboarding-cloud-repositories.js} +0 -0
- /package/{onboarding-cloud-retirement.js → bundle/onboarding-cloud-retirement.js} +0 -0
- /package/{onboarding-cloud-task-runtime.js → bundle/onboarding-cloud-task-runtime.js} +0 -0
- /package/{onboarding-cloud-web.js → bundle/onboarding-cloud-web.js} +0 -0
- /package/{onboarding-cloud.js → bundle/onboarding-cloud.js} +0 -0
- /package/{onboarding-coordinated-hold.js → bundle/onboarding-coordinated-hold.js} +0 -0
- /package/{onboarding-exclusive-rename.js → bundle/onboarding-exclusive-rename.js} +0 -0
- /package/{onboarding-existing-host.js → bundle/onboarding-existing-host.js} +0 -0
- /package/{onboarding-existing-setup.js → bundle/onboarding-existing-setup.js} +0 -0
- /package/{onboarding-file-contract.js → bundle/onboarding-file-contract.js} +0 -0
- /package/{onboarding-file-review-contract.js → bundle/onboarding-file-review-contract.js} +0 -0
- /package/{onboarding-file-transfer.js → bundle/onboarding-file-transfer.js} +0 -0
- /package/{onboarding-handoff-remote.js → bundle/onboarding-handoff-remote.js} +0 -0
- /package/{onboarding-handoff.js → bundle/onboarding-handoff.js} +0 -0
- /package/{onboarding-host-stop-observation.js → bundle/onboarding-host-stop-observation.js} +0 -0
- /package/{onboarding-host.js → bundle/onboarding-host.js} +0 -0
- /package/{onboarding-identity.js → bundle/onboarding-identity.js} +0 -0
- /package/{onboarding-im-maintenance-native.js → bundle/onboarding-im-maintenance-native.js} +0 -0
- /package/{onboarding-im-maintenance.js → bundle/onboarding-im-maintenance.js} +0 -0
- /package/{onboarding-im.js → bundle/onboarding-im.js} +0 -0
- /package/{onboarding-inspection-guard.js → bundle/onboarding-inspection-guard.js} +0 -0
- /package/{onboarding-install-fs.js → bundle/onboarding-install-fs.js} +0 -0
- /package/{onboarding-installer.js → bundle/onboarding-installer.js} +0 -0
- /package/{onboarding-local-pair-native.js → bundle/onboarding-local-pair-native.js} +0 -0
- /package/{onboarding-local-pair.js → bundle/onboarding-local-pair.js} +0 -0
- /package/{onboarding-maintenance-fs.js → bundle/onboarding-maintenance-fs.js} +0 -0
- /package/{onboarding-maintenance-plan.js → bundle/onboarding-maintenance-plan.js} +0 -0
- /package/{onboarding-maintenance-record.js → bundle/onboarding-maintenance-record.js} +0 -0
- /package/{onboarding-maintenance.js → bundle/onboarding-maintenance.js} +0 -0
- /package/{onboarding-model-probe.js → bundle/onboarding-model-probe.js} +0 -0
- /package/{onboarding-models.js → bundle/onboarding-models.js} +0 -0
- /package/{onboarding-native-host.js → bundle/onboarding-native-host.js} +0 -0
- /package/{onboarding-native-probe.js → bundle/onboarding-native-probe.js} +0 -0
- /package/{onboarding-native-runner.js → bundle/onboarding-native-runner.js} +0 -0
- /package/{onboarding-node-bootstrap.py → bundle/onboarding-node-bootstrap.py} +0 -0
- /package/{onboarding-node.js → bundle/onboarding-node.js} +0 -0
- /package/{onboarding-notification-defaults.js → bundle/onboarding-notification-defaults.js} +0 -0
- /package/{onboarding-package-source.js → bundle/onboarding-package-source.js} +0 -0
- /package/{onboarding-paths.js → bundle/onboarding-paths.js} +0 -0
- /package/{onboarding-peer-binding.js → bundle/onboarding-peer-binding.js} +0 -0
- /package/{onboarding-peer-contract.js → bundle/onboarding-peer-contract.js} +0 -0
- /package/{onboarding-plugin-repair.js → bundle/onboarding-plugin-repair.js} +0 -0
- /package/{onboarding-plugin-version.js → bundle/onboarding-plugin-version.js} +0 -0
- /package/{onboarding-remote-control.js → bundle/onboarding-remote-control.js} +0 -0
- /package/{onboarding-remote-probe.js → bundle/onboarding-remote-probe.js} +0 -0
- /package/{onboarding-repositories.js → bundle/onboarding-repositories.js} +0 -0
- /package/{onboarding-repository.js → bundle/onboarding-repository.js} +0 -0
- /package/{onboarding-runtime-activation.js → bundle/onboarding-runtime-activation.js} +0 -0
- /package/{onboarding-runtime-artifacts-client.js → bundle/onboarding-runtime-artifacts-client.js} +0 -0
- /package/{onboarding-runtime-artifacts.js → bundle/onboarding-runtime-artifacts.js} +0 -0
- /package/{onboarding-runtime-extension.js → bundle/onboarding-runtime-extension.js} +0 -0
- /package/{onboarding-runtime-inventory.js → bundle/onboarding-runtime-inventory.js} +0 -0
- /package/{onboarding-runtime-program.js → bundle/onboarding-runtime-program.js} +0 -0
- /package/{onboarding-runtime-reclaim-client.js → bundle/onboarding-runtime-reclaim-client.js} +0 -0
- /package/{onboarding-runtime-reclaim-worker.js → bundle/onboarding-runtime-reclaim-worker.js} +0 -0
- /package/{onboarding-runtime-reclaim.js → bundle/onboarding-runtime-reclaim.js} +0 -0
- /package/{onboarding-runtime-repair-client.js → bundle/onboarding-runtime-repair-client.js} +0 -0
- /package/{onboarding-runtime-repair.js → bundle/onboarding-runtime-repair.js} +0 -0
- /package/{onboarding-runtime-stop.js → bundle/onboarding-runtime-stop.js} +0 -0
- /package/{onboarding-runtime-uninstall-client.js → bundle/onboarding-runtime-uninstall-client.js} +0 -0
- /package/{onboarding-runtime-uninstall.js → bundle/onboarding-runtime-uninstall.js} +0 -0
- /package/{onboarding-runtime-version-client.js → bundle/onboarding-runtime-version-client.js} +0 -0
- /package/{onboarding-runtime-version.js → bundle/onboarding-runtime-version.js} +0 -0
- /package/{onboarding-schema.js → bundle/onboarding-schema.js} +0 -0
- /package/{onboarding-self-disable.js → bundle/onboarding-self-disable.js} +0 -0
- /package/{onboarding-self-lifecycle.js → bundle/onboarding-self-lifecycle.js} +0 -0
- /package/{onboarding-self-maintenance.js → bundle/onboarding-self-maintenance.js} +0 -0
- /package/{onboarding-self-remove.js → bundle/onboarding-self-remove.js} +0 -0
- /package/{onboarding-self-stop.js → bundle/onboarding-self-stop.js} +0 -0
- /package/{onboarding-ssh-forward.js → bundle/onboarding-ssh-forward.js} +0 -0
- /package/{onboarding-ssh.js → bundle/onboarding-ssh.js} +0 -0
- /package/{onboarding-state.js → bundle/onboarding-state.js} +0 -0
- /package/{onboarding-task-runtime-contract.js → bundle/onboarding-task-runtime-contract.js} +0 -0
- /package/{onboarding-task-runtime-native.js → bundle/onboarding-task-runtime-native.js} +0 -0
- /package/{onboarding-task-runtime.js → bundle/onboarding-task-runtime.js} +0 -0
- /package/{onboarding-token-plan.js → bundle/onboarding-token-plan.js} +0 -0
- /package/{onboarding-version-activation-client.js → bundle/onboarding-version-activation-client.js} +0 -0
- /package/{onboarding-version-candidate.js → bundle/onboarding-version-candidate.js} +0 -0
- /package/{onboarding-version-repair.js → bundle/onboarding-version-repair.js} +0 -0
- /package/{peer-file-fs.js → bundle/peer-file-fs.js} +0 -0
- /package/{peer-file-migration.js → bundle/peer-file-migration.js} +0 -0
- /package/{peer-file-review.js → bundle/peer-file-review.js} +0 -0
- /package/{peer-files.js → bundle/peer-files.js} +0 -0
- /package/{peer-mailbox.js → bundle/peer-mailbox.js} +0 -0
- /package/{protocol.js → bundle/protocol.js} +0 -0
- /package/{recovery.js → bundle/recovery.js} +0 -0
- /package/{repository-catalog.js → bundle/repository-catalog.js} +0 -0
- /package/{repository-gitee.js → bundle/repository-gitee.js} +0 -0
- /package/{repository-managed.js → bundle/repository-managed.js} +0 -0
- /package/{repository-writer.js → bundle/repository-writer.js} +0 -0
- /package/{rules → bundle/rules}/AGENTS.md +0 -0
- /package/{runtime-im-lock.json → bundle/runtime-im-lock.json} +0 -0
- /package/{runtime-im-package.json → bundle/runtime-im-package.json} +0 -0
- /package/{runtime-lock.json → bundle/runtime-lock.json} +0 -0
- /package/{runtime-package.json → bundle/runtime-package.json} +0 -0
- /package/{scheduler-migration.js → bundle/scheduler-migration.js} +0 -0
- /package/{search-contract.js → bundle/search-contract.js} +0 -0
- /package/{skills → bundle/skills}/dsh-dual-end/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-a2a/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-a2a-worker/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-approval/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-artifacts/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-development/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-diagnostics/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-direct-link/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-file-transfer/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-handoff/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-intake/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-notify/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-onboarding/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-recovery/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-repository/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-research/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-schedule/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-sidebar/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-workbench/SKILL.md +0 -0
- /package/{skills → bundle/skills}/task-worker/SKILL.md +0 -0
- /package/{source-search.js → bundle/source-search.js} +0 -0
- /package/{source-web.js → bundle/source-web.js} +0 -0
- /package/{ssh-connector.js → bundle/ssh-connector.js} +0 -0
- /package/{store.js → bundle/store.js} +0 -0
- /package/{task-a2a.js → bundle/task-a2a.js} +0 -0
- /package/{task-artifacts.js → bundle/task-artifacts.js} +0 -0
- /package/{task-board-a2a.js → bundle/task-board-a2a.js} +0 -0
- /package/{task-board-development.js → bundle/task-board-development.js} +0 -0
- /package/{task-board-planning.js → bundle/task-board-planning.js} +0 -0
- /package/{task-board.js → bundle/task-board.js} +0 -0
- /package/{task-branch.js → bundle/task-branch.js} +0 -0
- /package/{task-catalog.js → bundle/task-catalog.js} +0 -0
- /package/{task-context.js → bundle/task-context.js} +0 -0
- /package/{task-envelope.js → bundle/task-envelope.js} +0 -0
- /package/{task-interventions.js → bundle/task-interventions.js} +0 -0
- /package/{task-jobs.js → bundle/task-jobs.js} +0 -0
- /package/{task-notifications.js → bundle/task-notifications.js} +0 -0
- /package/{task-results.js → bundle/task-results.js} +0 -0
- /package/{task-scheduler.js → bundle/task-scheduler.js} +0 -0
- /package/{task-sources.js → bundle/task-sources.js} +0 -0
- /package/{task-trigger-time.js → bundle/task-trigger-time.js} +0 -0
- /package/{task-triggers.js → bundle/task-triggers.js} +0 -0
- /package/{task-worker.js → bundle/task-worker.js} +0 -0
- /package/{task-workflows.js → bundle/task-workflows.js} +0 -0
- /package/{tools.js → bundle/tools.js} +0 -0
- /package/{workbench-assets → bundle/workbench-assets}/asset-provenance.json +0 -0
- /package/{workbench-assets → bundle/workbench-assets}/whale-ui-states.png +0 -0
- /package/{workbench-client.js → bundle/workbench-client.js} +0 -0
- /package/{workbench-decisions.js → bundle/workbench-decisions.js} +0 -0
- /package/{workbench-host.js → bundle/workbench-host.js} +0 -0
- /package/{workbench-im-identity.js → bundle/workbench-im-identity.js} +0 -0
- /package/{workbench-proxy.js → bundle/workbench-proxy.js} +0 -0
- /package/{worker-rules → bundle/worker-rules}/AGENTS.md +0 -0
- /package/{worker-tools.js → bundle/worker-tools.js} +0 -0
package/README.md
CHANGED
|
@@ -1,75 +1,89 @@
|
|
|
1
|
-
# 大肥鱼 bot — DSH
|
|
1
|
+
# 大肥鱼 bot — DSH 本地与云端协作插件
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
面向 [DeepSeek Harness(DSH)](https://github.com/deepseek-ai/deepseek-harness) 的双端协作插件:
|
|
4
|
+
在本地对话或 IM 中自然语言交办,云端独立 worker 持续处理有界任务,
|
|
5
|
+
在统一工作台查看成果并处理需要你决定的事项。
|
|
4
6
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
7
|
+
- npm 包:`@mogragsigma/dsh-dual-host-plugin`(发布内容为本仓库 `bundle/` 目录)
|
|
8
|
+
- 兼容基线:官方 DSH `0.2.1-rc.3`
|
|
9
|
+
- 许可:自定义源码可见许可(以中文文本为准),允许免费自用,禁止转售与收费对外托管
|
|
10
|
+
- 本仓库是产品源码仓库;`bundle/` 为 npm 发布内容,`docs/` 为设计与验收文档
|
|
8
11
|
|
|
9
12
|
## 安装
|
|
10
13
|
|
|
11
|
-
### 插件市场(推荐)
|
|
12
|
-
|
|
13
|
-
在 DSH 的插件市场中搜索「大肥鱼 bot」或包名,一键安装。
|
|
14
|
-
本包含原生依赖 `koffi`,pnpm 默认会拦截其构建脚本;插件市场会提示
|
|
15
|
-
「允许构建脚本并重试」,点击即可完成安装。
|
|
16
|
-
|
|
17
|
-
### 命令行
|
|
18
|
-
|
|
19
14
|
```sh
|
|
15
|
+
# 插件市场(推荐):在 DSH 插件市场搜索「大肥鱼 bot」一键安装
|
|
16
|
+
|
|
17
|
+
# 命令行
|
|
20
18
|
dsh plugin --profile web add @mogragsigma/dsh-dual-host-plugin --allow-build=koffi
|
|
21
19
|
```
|
|
22
20
|
|
|
23
|
-
|
|
21
|
+
本包含原生依赖 `koffi`,pnpm 11 默认会拦截依赖的构建脚本;插件市场会提示
|
|
22
|
+
「允许构建脚本并重试」,点击即可完成安装。若所用 pnpm 不支持 `--allow-build`,
|
|
23
|
+
可在目标 profile 的 `pnpm-workspace.yaml` 中加入:
|
|
24
24
|
|
|
25
25
|
```yaml
|
|
26
26
|
allowBuilds:
|
|
27
27
|
koffi: true
|
|
28
28
|
```
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
Desktop 与 Web 请选择各自实际使用的 profile;安装后按当前 Host 的方式重载或重启。
|
|
31
|
+
|
|
32
|
+
## 能力
|
|
31
33
|
|
|
32
|
-
|
|
34
|
+
- **双端协作**:本地与云端各装同一套自有插件,按角色与配对区分职责;不要求两个机器人同群
|
|
35
|
+
- **持久任务**:云端独立 worker、有界批次与预算、检查点与重启恢复;入口不持续占用
|
|
36
|
+
- **按任务选模型**:以目标端实际模型目录唯一匹配为准,简称可用,歧义先澄清
|
|
37
|
+
- **审批账本**:工作台自然语言意见、已绑定 IM 身份核验、持久账本与权威回执;
|
|
38
|
+
批准、排队、执行、测试、交付、已读分别证明
|
|
39
|
+
- **成果与文件**:任务成果查询、受控下载与原执行会话入口;IM/本地/云端三端文件收发
|
|
40
|
+
- **六页配置导览**:连接云端、模型服务、聊天与审批、成果与仓库、安装计划、配置与验收
|
|
41
|
+
- **全局规则与 Skill**:保护性追加或确认后创建,不覆盖用户原规则;冲突先阻止
|
|
33
42
|
|
|
34
|
-
|
|
35
|
-
(19 个按全局托管安装,`task-worker` 仅用于独立执行会话)。
|
|
36
|
-
提供六页配置导览、本地/云端协作、独立 worker、按任务选模型、持久任务和审批账本、
|
|
37
|
-
成果入口、文件收发及工作台。普通原生模式与工具仍由 DSH 提供,不修改其源码。
|
|
38
|
-
新安装默认仅显示导览,不启动业务 worker、机器人消费者或仓库写入。
|
|
39
|
-
配置、配对、真实身份确认、任务批准、开发、commit、push 与发布是不同授权,不能互相替代。
|
|
43
|
+
## 兼容与边界
|
|
40
44
|
|
|
41
|
-
|
|
45
|
+
- 仅声明已测试的官方 DSH `0.2.1-rc.3`;其他 Host 版本或平台需自行验证
|
|
46
|
+
- 不修改 DSH 内核或第三方 IM 插件源码
|
|
47
|
+
- 不承诺操作系统级隔离、全平台支持或全部 IM 渠道能力一致
|
|
48
|
+
- 开发、commit、push、发布分别授权;源码可见不等于授权分发、部署或商业托管
|
|
49
|
+
- 本项目是独立插件,不代表 DeepSeek 或依赖作者的官方产品
|
|
42
50
|
|
|
43
|
-
|
|
44
|
-
不要求用户获取产品源码仓库权限;任务成果仓库与产品源码仓库相互独立。
|
|
45
|
-
基础模型接入使用 DeepSeek 官方 API Key;可选第三方模型与 IM 通过其官方插件公开能力接入。
|
|
46
|
-
没有配置模型或 IM 时不伪称调用或消息回归已通过。
|
|
51
|
+
## 仓库结构
|
|
47
52
|
|
|
48
|
-
|
|
53
|
+
| 路径 | 内容 |
|
|
54
|
+
| --- | --- |
|
|
55
|
+
| `bundle/` | 插件包(npm 发布内容):自有插件、全局规则模板、Skill、工作台客户端、许可与声明 |
|
|
56
|
+
| `ui-source/` | 工作台与六页导览前端源码(`bundle/` 内为生成结果,不手改) |
|
|
57
|
+
| `scripts/` | 构建、模块索引与定向回归脚本 |
|
|
58
|
+
| `tests/` | 合成测试;测试依赖声明见 `tests/package.json` |
|
|
59
|
+
| `docs/` | 设计、兼容、验收与发行文档 |
|
|
60
|
+
| `operator-kit/` | 历史运营工具,仅供维护参考 |
|
|
49
61
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
62
|
+
## 开发与测试
|
|
63
|
+
|
|
64
|
+
- 需要 Node.js 22 与 Python 3;测试使用隔离 HOME/DSH_HOME 与合成服务,不读取日常配置
|
|
65
|
+
- 定向回归(先阅读脚本清单,不通配执行历史测试):
|
|
66
|
+
|
|
67
|
+
```sh
|
|
68
|
+
python3 scripts/run-market-regression.py
|
|
69
|
+
python3 scripts/run-onboarding-regression.py
|
|
70
|
+
```
|
|
53
71
|
|
|
54
|
-
##
|
|
72
|
+
## 许可
|
|
55
73
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
本包不改内部凭据命名空间、不清除旧队列、不重试旧任务,也不自动改写正式 profile。
|
|
59
|
-
旧归档的版本接收器仍拒绝跨包身份/元数据变化,不绕过原安全契约。
|
|
74
|
+
本仓库根目录 `LICENSE` 为中文控制文本,`LICENSE.en.md` 为英文参考译本;
|
|
75
|
+
npm 包内 `bundle/LICENSE` 与内容相同。核心规则:
|
|
60
76
|
|
|
61
|
-
|
|
77
|
+
- 允许任何个人和组织免费安装、运行、研究、备份和修改,含企业内部使用与内部商业工作
|
|
78
|
+
- 未经另行书面授权,禁止转售、出租、商业再许可、收费再分发和收费对外托管
|
|
79
|
+
- 允许免费再分发;须附许可与声明、标明修改、不得冒充官方版本
|
|
80
|
+
- 不是 MIT/Apache-2.0/OSI 开源许可;许可以中文文本为准
|
|
62
81
|
|
|
63
|
-
|
|
64
|
-
允许任何个人和组织免费使用(含企业内部使用),未经书面授权禁止转售、收费再分发或收费对外托管。
|
|
65
|
-
不是 MIT/Apache-2.0/OSI 开源许可。许可以中文文本为准,`LICENSE.en.md` 为英文参考译本。
|
|
66
|
-
第三方组件见 `THIRD_PARTY_NOTICES.md`,素材见 `ASSET_NOTICE.md`。
|
|
82
|
+
第三方组件声明见 `bundle/THIRD_PARTY_NOTICES.md`,素材声明见 `bundle/ASSET_NOTICE.md`。
|
|
67
83
|
|
|
68
|
-
##
|
|
84
|
+
## 反馈
|
|
69
85
|
|
|
70
|
-
-
|
|
71
|
-
-
|
|
72
|
-
- Gitee 镜像:<https://gitee.com/wenheng-Zhang/dsh-dual-host-plugin>(可见性以该站实际状态为准)。
|
|
86
|
+
- Issues:本仓库
|
|
87
|
+
- Gitee 镜像:<https://gitee.com/wenheng-Zhang/dsh-dual-host-plugin>(可见性以该站实际状态为准)
|
|
73
88
|
|
|
74
|
-
|
|
75
|
-
本项目是独立插件,不代表 DeepSeek 或依赖作者的官方产品。
|
|
89
|
+
提交问题前请移除 API Key、机器人密钥、用户消息、内网地址、签名及私有任务数据。
|
package/bundle/LICENSE
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
mogragsigma 源码可见·免费自用·禁止转售许可 1.0
|
|
2
|
+
Copyright (c) 2026 mogragsigma
|
|
3
|
+
|
|
4
|
+
本许可是自定义的源码可见许可,不是 MIT、Apache-2.0 或 OSI 认证的开源许可。
|
|
5
|
+
它允许任何个人和组织免费安装、运行、研究、备份和修改本软件;
|
|
6
|
+
它禁止将本软件本身或其访问权用于转售、收费再分发或收费对外托管。
|
|
7
|
+
|
|
8
|
+
一、定义与范围
|
|
9
|
+
"本软件"指明确标注适用本许可的原始插件、全局托管规则模板、Skill 及其文档。
|
|
10
|
+
"许可方"指有权授予本许可的权利人,公开署名为 mogragsigma。
|
|
11
|
+
以其他许可单独授权的第三方代码、组件和素材,仍适用其各自的许可与条款。
|
|
12
|
+
|
|
13
|
+
二、允许的使用
|
|
14
|
+
在遵守本许可的前提下,许可方授予你一项全球范围、非独占、免许可费的著作权许可:
|
|
15
|
+
你可以为本人的个人使用,或为一个组织(含企业)的内部业务运营(包括内部商业工作),
|
|
16
|
+
安装、运行、研究、复制、备份和修改本软件。
|
|
17
|
+
组织的人员和承包商可以仅代表该组织、在上述范围内使用。
|
|
18
|
+
上述使用是免费的;本许可不要求你就使用本软件支付许可费或分成。
|
|
19
|
+
|
|
20
|
+
三、成果归属
|
|
21
|
+
仅因使用本软件而产生的报告、分析、代码或其他成果,本许可不施加分成、收入分享、
|
|
22
|
+
非商业限制或权利转让。这不构成对成果权属或权利清洁的保证;
|
|
23
|
+
成果中包含的本软件或第三方受保护内容,仍适用其各自的许可。
|
|
24
|
+
|
|
25
|
+
四、禁止转售
|
|
26
|
+
未经许可方另行书面授权,你不得出售、出租、商业再许可本软件、修改版本或其访问权,
|
|
27
|
+
也不得为其分发收取费用。改名、重新打包或将其捆绑进收费产品,不解除本条限制。
|
|
28
|
+
本条限制针对本软件;独立第三方组件按其自身许可处理,独立编写的实现不受本条限制。
|
|
29
|
+
|
|
30
|
+
五、禁止收费对外托管
|
|
31
|
+
未经许可方另行书面授权,你不得为外部用户提供本软件或修改版本的运营服务,
|
|
32
|
+
并据此收取订阅、访问、使用或捆绑服务费用,包括提供与本软件功能相当的托管机器人或 API。
|
|
33
|
+
为你自己在许可范围内的使用而支付通用云主机、模型 API、网络或存储费用的,不属于本条所称的收费托管。
|
|
34
|
+
向客户交付你自己的报告或其他工作成果,本身不属于出售本软件的访问权。
|
|
35
|
+
|
|
36
|
+
六、免费再分发
|
|
37
|
+
你可以免费再分发本软件的原版或修改版,条件是:每一接收方同时获得本许可及适用的
|
|
38
|
+
版权和第三方声明,修改之处被清楚标明,且本软件继续受本许可约束。
|
|
39
|
+
你不得向接收方授予超过你自身拥有的、关于本软件的权利。适用的第三方许可不因本条而被限缩。
|
|
40
|
+
|
|
41
|
+
七、署名与保留权利
|
|
42
|
+
不得移除或伪造署名,不得将修改版本冒充官方版本。
|
|
43
|
+
本许可不授予商标权,也不表示 mogragsigma、DeepSeek、依赖维护者或其他方的认可或背书。
|
|
44
|
+
未明确授予的权利均予保留;超出本许可范围的使用需另行书面授权。
|
|
45
|
+
本许可仅规范本软件本身的复制、分发与对外提供;不以本软件再分发或对外托管为内容的
|
|
46
|
+
独立服务(例如单独提供的安装、培训或技术支持),不属于本许可的调整范围。
|
|
47
|
+
|
|
48
|
+
八、遵守、终止与免责
|
|
49
|
+
超出本许可范围使用本软件,不获授权。
|
|
50
|
+
你违反第四条或第五条的,本许可自违反之日起自动终止。
|
|
51
|
+
在适用法律允许的最大范围内,本软件按"现状"提供,不附带任何明示或默示的保证;
|
|
52
|
+
许可方不对因使用本软件而产生的损害承担责任。适用法律赋予的强制性权利不因本条被排除。
|
|
53
|
+
本许可适用中华人民共和国法律。
|
|
54
|
+
因本许可产生的争议,由许可方住所地有管辖权的人民法院管辖。
|
|
55
|
+
|
|
56
|
+
九、语言与版本
|
|
57
|
+
本许可以中文文本为准。英文译本(LICENSE.en.md)仅为参考;中英文不一致时,以中文文本为准。
|
|
58
|
+
本许可版本号为 1.0。
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
MogragSigma Source-Available Free-Use, No-Resale License 1.0
|
|
2
|
+
Copyright (c) 2026 mogragsigma
|
|
3
|
+
|
|
4
|
+
This English text is a reference translation of the controlling Chinese license in LICENSE.
|
|
5
|
+
If the two differ, the Chinese text controls.
|
|
6
|
+
|
|
7
|
+
This is a custom, source-available license; it is not MIT, Apache-2.0, or an OSI-approved
|
|
8
|
+
open source license. It allows any individual or organization to install, run, study,
|
|
9
|
+
back up and modify the Software free of charge. It prohibits selling, charging for
|
|
10
|
+
redistribution of, or charging external users for hosted access to the Software itself
|
|
11
|
+
or access rights to it.
|
|
12
|
+
|
|
13
|
+
1. Definitions and scope
|
|
14
|
+
"The Software" means the original plugin, managed global-rule templates, Skills and
|
|
15
|
+
documentation expressly designated under this license.
|
|
16
|
+
"Licensor" means the rights holder entitled to grant this license, publicly identified
|
|
17
|
+
as mogragsigma.
|
|
18
|
+
Third-party code, components and artwork licensed separately remain subject to their own
|
|
19
|
+
licenses and terms.
|
|
20
|
+
|
|
21
|
+
2. Permitted use
|
|
22
|
+
Subject to this license, the Licensor grants you a worldwide, non-exclusive, royalty-free
|
|
23
|
+
copyright license to install, run, study, copy, back up and modify the Software for your
|
|
24
|
+
own personal use, or for an organization's internal business operations (including
|
|
25
|
+
internal commercial work).
|
|
26
|
+
An organization's personnel and contractors may use it only on that organization's
|
|
27
|
+
behalf within that scope.
|
|
28
|
+
That use is free of charge; this license does not require you to pay license fees or
|
|
29
|
+
share revenue for using the Software.
|
|
30
|
+
|
|
31
|
+
3. Outputs
|
|
32
|
+
This license imposes no revenue sharing, royalty, noncommercial restriction, or
|
|
33
|
+
assignment of rights on reports, analyses, code or other outputs merely because the
|
|
34
|
+
Software was used to produce them.
|
|
35
|
+
This is not a guarantee of ownership of, or clearance for, those outputs; the Software
|
|
36
|
+
or third-party protected content included in an output remains subject to its own
|
|
37
|
+
license.
|
|
38
|
+
|
|
39
|
+
4. No resale
|
|
40
|
+
Without separate written authorization from the Licensor, you must not sell, rent or
|
|
41
|
+
commercially sublicense the Software, modified versions, or access rights to them, and
|
|
42
|
+
you must not charge for their distribution.
|
|
43
|
+
Renaming, repackaging, or bundling them into a paid product does not remove this
|
|
44
|
+
restriction.
|
|
45
|
+
This restriction applies to the Software; independent third-party components are
|
|
46
|
+
governed by their own licenses, and independently authored implementations are not
|
|
47
|
+
restricted by this clause.
|
|
48
|
+
|
|
49
|
+
5. No paid external hosting
|
|
50
|
+
Without separate written authorization from the Licensor, you must not operate the
|
|
51
|
+
Software or a modified version for external users in exchange for subscription, access,
|
|
52
|
+
usage or bundled service fees, including a hosted bot or API that provides functionality
|
|
53
|
+
equivalent to the Software.
|
|
54
|
+
Paying for general-purpose cloud hosts, model APIs, networking or storage for your own
|
|
55
|
+
use within the scope of this license is not paid hosting under this clause.
|
|
56
|
+
Delivering your own reports or other work products to a customer is not, by itself,
|
|
57
|
+
selling access to the Software.
|
|
58
|
+
|
|
59
|
+
6. Free redistribution
|
|
60
|
+
You may redistribute original or modified copies of the Software free of charge,
|
|
61
|
+
provided that each recipient also receives this license and the applicable copyright and
|
|
62
|
+
third-party notices, modifications are clearly identified, and the Software remains
|
|
63
|
+
subject to this license.
|
|
64
|
+
You may not grant recipients rights in the Software broader than you hold.
|
|
65
|
+
Applicable third-party licenses are not narrowed by this clause.
|
|
66
|
+
|
|
67
|
+
7. Attribution and reserved rights
|
|
68
|
+
Do not remove or falsify attribution, and do not present modified versions as official
|
|
69
|
+
versions.
|
|
70
|
+
This license grants no trademark rights and does not imply endorsement or approval by
|
|
71
|
+
mogragsigma, DeepSeek, dependency maintainers or any other party.
|
|
72
|
+
Rights not expressly granted are reserved; use outside this license requires separate
|
|
73
|
+
written authorization.
|
|
74
|
+
This license governs only copying, distribution and making available of the Software
|
|
75
|
+
itself. Independent services that do not involve redistribution or external hosting of
|
|
76
|
+
the Software (for example, separately providing installation, training or technical
|
|
77
|
+
support) are outside the scope of this license.
|
|
78
|
+
|
|
79
|
+
8. Compliance, termination and disclaimer
|
|
80
|
+
Use of the Software outside this license is not authorized.
|
|
81
|
+
If you breach Section 4 or Section 5, this license terminates automatically from the
|
|
82
|
+
date of the breach.
|
|
83
|
+
To the maximum extent permitted by applicable law, the Software is provided "AS IS",
|
|
84
|
+
without warranties of any kind, express or implied; the Licensor is not liable for
|
|
85
|
+
damages arising from use of the Software. Mandatory rights under applicable law are not
|
|
86
|
+
excluded by this section.
|
|
87
|
+
This license is governed by the laws of the People's Republic of China.
|
|
88
|
+
Disputes arising from this license are subject to the jurisdiction of the competent
|
|
89
|
+
people's court at the Licensor's domicile.
|
|
90
|
+
|
|
91
|
+
9. Language and version
|
|
92
|
+
The Chinese text of this license controls. This English translation is for reference
|
|
93
|
+
only; where the Chinese and English texts differ, the Chinese text controls.
|
|
94
|
+
This license is version 1.0.
|
package/bundle/README.md
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# 大肥鱼 bot — DSH 本地与云端协作
|
|
2
|
+
|
|
3
|
+
`@mogragsigma/dsh-dual-host-plugin` · `0.33.1` · 作者:mogragsigma
|
|
4
|
+
|
|
5
|
+
> 面向 DeepSeek Harness(DSH)的双端协作插件。本地负责日常对话与工作台入口,
|
|
6
|
+
> 云端负责持久任务、独立 worker、审批账本与受控交付。
|
|
7
|
+
> 技术验收基线为官方 DSH `0.2.1-rc.3`;不保证其他 Host 版本或未经验证的平台。
|
|
8
|
+
|
|
9
|
+
## 安装
|
|
10
|
+
|
|
11
|
+
### 插件市场(推荐)
|
|
12
|
+
|
|
13
|
+
在 DSH 的插件市场中搜索「大肥鱼 bot」或包名,一键安装。
|
|
14
|
+
本包含原生依赖 `koffi`,pnpm 默认会拦截其构建脚本;插件市场会提示
|
|
15
|
+
「允许构建脚本并重试」,点击即可完成安装。
|
|
16
|
+
|
|
17
|
+
### 命令行
|
|
18
|
+
|
|
19
|
+
```sh
|
|
20
|
+
dsh plugin --profile web add @mogragsigma/dsh-dual-host-plugin --allow-build=koffi
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
若所用 pnpm 不支持 `--allow-build`,可在目标 profile 的 `pnpm-workspace.yaml` 中加入:
|
|
24
|
+
|
|
25
|
+
```yaml
|
|
26
|
+
allowBuilds:
|
|
27
|
+
koffi: true
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
安装后按当前 Host 的方式重载 profile 或重启。Desktop 与 Web 请选择各自实际使用的 profile。
|
|
31
|
+
|
|
32
|
+
## 组成与能力
|
|
33
|
+
|
|
34
|
+
本包包含自有插件、全局 `AGENTS.md` 托管模板和 20 个 Skill
|
|
35
|
+
(19 个按全局托管安装,`task-worker` 仅用于独立执行会话)。
|
|
36
|
+
提供六页配置导览、本地/云端协作、独立 worker、按任务选模型、持久任务和审批账本、
|
|
37
|
+
成果入口、文件收发及工作台。普通原生模式与工具仍由 DSH 提供,不修改其源码。
|
|
38
|
+
新安装默认仅显示导览,不启动业务 worker、机器人消费者或仓库写入。
|
|
39
|
+
配置、配对、真实身份确认、任务批准、开发、commit、push 与发布是不同授权,不能互相替代。
|
|
40
|
+
|
|
41
|
+
## 配置
|
|
42
|
+
|
|
43
|
+
安装后在“大肥鱼 bot”中按六页导览配置。云端实例、模型、IM 与可选用户成果仓库均由用户拥有。
|
|
44
|
+
不要求用户获取产品源码仓库权限;任务成果仓库与产品源码仓库相互独立。
|
|
45
|
+
基础模型接入使用 DeepSeek 官方 API Key;可选第三方模型与 IM 通过其官方插件公开能力接入。
|
|
46
|
+
没有配置模型或 IM 时不伪称调用或消息回归已通过。
|
|
47
|
+
|
|
48
|
+
## 规则与数据保护
|
|
49
|
+
|
|
50
|
+
全局规则按实际 Host 路径保护性追加,或明确确认后创建;不会覆盖用户原规则。
|
|
51
|
+
Skill 安装先检查冲突及文件归属;未知改动、同名文件或符号链接冲突会阻止覆盖。
|
|
52
|
+
凭据、运行账本和用户会话不在发行包内。安装、升级或卸载包不等于授权删除用户数据。
|
|
53
|
+
|
|
54
|
+
## 旧包名迁移
|
|
55
|
+
|
|
56
|
+
历史包名 `@local/dsh-task-gateway` 与本包是不同包管理身份,不可直接认为常规版本升级。
|
|
57
|
+
不要同时启用旧、新包。原生管理精确关系、托管文件归属和历史数据应先在隔离副本中核对。
|
|
58
|
+
本包不改内部凭据命名空间、不清除旧队列、不重试旧任务,也不自动改写正式 profile。
|
|
59
|
+
旧归档的版本接收器仍拒绝跨包身份/元数据变化,不绕过原安全契约。
|
|
60
|
+
|
|
61
|
+
## 许可与素材
|
|
62
|
+
|
|
63
|
+
采用 `LICENSE` 中的自定义源码可见许可《mogragsigma 源码可见·免费自用·禁止转售许可 1.0》:
|
|
64
|
+
允许任何个人和组织免费使用(含企业内部使用),未经书面授权禁止转售、收费再分发或收费对外托管。
|
|
65
|
+
不是 MIT/Apache-2.0/OSI 开源许可。许可以中文文本为准,`LICENSE.en.md` 为英文参考译本。
|
|
66
|
+
第三方组件见 `THIRD_PARTY_NOTICES.md`,素材见 `ASSET_NOTICE.md`。
|
|
67
|
+
|
|
68
|
+
## 支持与问题反馈
|
|
69
|
+
|
|
70
|
+
- 产品源码及说明:[GitHub 仓库](https://github.com/mogragsigma/dsh-dual-host-plugin)
|
|
71
|
+
- 反馈:[Issues](https://github.com/mogragsigma/dsh-dual-host-plugin/issues)
|
|
72
|
+
- Gitee 镜像:<https://gitee.com/wenheng-Zhang/dsh-dual-host-plugin>(可见性以该站实际状态为准)。
|
|
73
|
+
|
|
74
|
+
提交问题前移除 API Key、机器人密钥、用户消息、内网地址、签名及私有任务数据。
|
|
75
|
+
本项目是独立插件,不代表 DeepSeek 或依赖作者的官方产品。
|