@twinsearth/fang-dsh-plugin 0.0.0-stage → 3.3.5
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/CLA.md +79 -0
- package/LICENSE-COMMERCIAL +78 -0
- package/LICENSE-CORE +661 -0
- package/LICENSE-SDK +21 -0
- package/LICENSES/cordis-MIT.txt +39 -0
- package/NOTICE +95 -0
- package/README.md +158 -2
- package/client.js +7287 -0
- package/cordis.patch.yml +163 -0
- package/defaults/umbrella-rules.yaml +113 -0
- package/docs/APPROVAL-DRILL.md +42 -0
- package/docs/CONTRACT-INTEROP.md +77 -0
- package/docs/CRASH-SAFETY.md +69 -0
- package/docs/DECISION-RELAY.md +46 -0
- package/docs/DSH-ARCHITECTURE-MAP.md +73 -0
- package/docs/FORK-SEED.md +64 -0
- package/docs/MAIN-CITY-GATE.md +58 -0
- package/docs/OVERLAY-MASTER-SWITCH.md +35 -0
- package/docs/PACKAGE-RENAME-v3.3.3.md +40 -0
- package/docs/PM-DECISION-POLICY.md +61 -0
- package/docs/WORKFLOW-UI.md +86 -0
- package/icon.svg +8 -0
- package/locale/en.json +6 -0
- package/locale/zh.json +6 -0
- package/package.json +71 -4
- package/sdk/README.md +65 -0
- package/sdk/examples/status-badge/README.md +16 -0
- package/sdk/examples/status-badge/client.js +60 -0
- package/sdk/examples/status-badge/cordis.patch.yml +7 -0
- package/sdk/examples/status-badge/index.js +12 -0
- package/sdk/examples/status-badge/package.json +24 -0
- package/sdk/templates/plugin/README.md +36 -0
- package/sdk/templates/plugin/client.js +35 -0
- package/sdk/templates/plugin/cordis.patch.yml +8 -0
- package/sdk/templates/plugin/icon.svg +5 -0
- package/sdk/templates/plugin/index.js +23 -0
- package/sdk/templates/plugin/locale/en.json +6 -0
- package/sdk/templates/plugin/package.json +36 -0
- package/src/compose.mjs +67 -0
- package/src/contract/VENDOR.json +16 -0
- package/src/contract/client.js +93 -0
- package/src/contract/constants.js +94 -0
- package/src/contract/envelope.js +83 -0
- package/src/contract/index.js +20 -0
- package/src/contract/negotiate.js +106 -0
- package/src/contract/relay.js +223 -0
- package/src/contract/server.js +77 -0
- package/src/contract/transports.js +319 -0
- package/src/index.mjs +11 -0
- package/src/kernel/core.mjs +100 -0
- package/src/kernel/extensions.mjs +61 -0
- package/src/kernel/fsx.mjs +349 -0
- package/src/kernel/index.mjs +21 -0
- package/src/kernel/ledger.mjs +94 -0
- package/src/kernel/paths.mjs +182 -0
- package/src/kernel/role.mjs +68 -0
- package/src/kernel/rounds.mjs +172 -0
- package/src/kernel/schema.mjs +5 -0
- package/src/kernel/types.mjs +266 -0
- package/src/kernel/vendor/cosmokit.mjs +421 -0
- package/src/kernel/vendor/schemastery.mjs +638 -0
- package/src/lib/adapter-client.mjs +383 -0
- package/src/lib/adapter-protocol.mjs +243 -0
- package/src/lib/ai-secret-store.mjs +202 -0
- package/src/lib/approval-drill.mjs +111 -0
- package/src/lib/boot-guard.mjs +186 -0
- package/src/lib/branch-store.mjs +84 -0
- package/src/lib/branch.mjs +74 -0
- package/src/lib/bridge-client.mjs +133 -0
- package/src/lib/broker-adapter.mjs +67 -0
- package/src/lib/broker.mjs +45 -0
- package/src/lib/business-producers.mjs +109 -0
- package/src/lib/command-cache.mjs +209 -0
- package/src/lib/compat.mjs +170 -0
- package/src/lib/composer-journal.mjs +128 -0
- package/src/lib/container/index.mjs +806 -0
- package/src/lib/decision-events.mjs +129 -0
- package/src/lib/decision-ingest-client.mjs +41 -0
- package/src/lib/decision-outbox.mjs +129 -0
- package/src/lib/decision-policy.mjs +52 -0
- package/src/lib/default-essence.mjs +61 -0
- package/src/lib/desktop-launch.mjs +138 -0
- package/src/lib/essence.mjs +1211 -0
- package/src/lib/fork-client.mjs +410 -0
- package/src/lib/fork-config-lock.mjs +166 -0
- package/src/lib/fork-seed.mjs +304 -0
- package/src/lib/fork-sessions.mjs +183 -0
- package/src/lib/fork-supervision-settings.mjs +58 -0
- package/src/lib/fork-supervisor.mjs +122 -0
- package/src/lib/fs-guard.mjs +28 -0
- package/src/lib/http-auth.mjs +162 -0
- package/src/lib/idle-audit.mjs +178 -0
- package/src/lib/interaction-poke.mjs +61 -0
- package/src/lib/main-gate.mjs +582 -0
- package/src/lib/mirror-etag.mjs +92 -0
- package/src/lib/mirror-official-source.mjs +93 -0
- package/src/lib/mirror.mjs +478 -0
- package/src/lib/mother-link.mjs +156 -0
- package/src/lib/mutex.mjs +31 -0
- package/src/lib/permissions.mjs +115 -0
- package/src/lib/pnpm-store.mjs +189 -0
- package/src/lib/preferences.mjs +212 -0
- package/src/lib/producer-contract.mjs +162 -0
- package/src/lib/reflow.mjs +41 -0
- package/src/lib/remote.mjs +408 -0
- package/src/lib/restart-contract.mjs +752 -0
- package/src/lib/roots.mjs +30 -0
- package/src/lib/rule-registry.mjs +1127 -0
- package/src/lib/runtime-capture.mjs +307 -0
- package/src/lib/semaphore.mjs +34 -0
- package/src/lib/session-bundle.mjs +138 -0
- package/src/lib/session-format.mjs +672 -0
- package/src/lib/sse-parser.mjs +102 -0
- package/src/lib/ssrf-guard.mjs +170 -0
- package/src/lib/status-store.mjs +257 -0
- package/src/lib/task-handle.mjs +622 -0
- package/src/lib/ui-actions.mjs +55 -0
- package/src/lib/umbrella.mjs +1661 -0
- package/src/lib/upgrade-coordinator.mjs +107 -0
- package/src/lib/upgrade-status.mjs +43 -0
- package/src/plugins/adapter.mjs +1468 -0
- package/src/plugins/approver.mjs +1210 -0
- package/src/plugins/auditor.mjs +330 -0
- package/src/plugins/buffer-keeper.mjs +522 -0
- package/src/plugins/decision-center.mjs +2581 -0
- package/src/plugins/forker.mjs +1610 -0
- package/src/plugins/healer.mjs +702 -0
- package/src/plugins/hot-reloader.mjs +274 -0
- package/src/plugins/imports.mjs +247 -0
- package/src/plugins/orchestrator.mjs +3979 -0
- package/src/plugins/restart-guard.mjs +1022 -0
- package/src/plugins/router.mjs +714 -0
- package/src/plugins/scorer.mjs +661 -0
- package/src/plugins/session-bridge.mjs +166 -0
- package/src/plugins/session-catalog.mjs +771 -0
- package/src/plugins/session-router.mjs +125 -0
- package/src/plugins/session-sync.mjs +171 -0
- package/src/plugins/umbrella.mjs +419 -0
- package/tools/approval-drill.mjs +21 -0
- package/tools/boot-guard.mjs +95 -0
- package/tools/decision-ingest.mjs +53 -0
- package/tools/desktop-launch.mjs +71 -0
- package/tools/fangctl.mjs +425 -0
- package/tools/gate/main-city.mjs +204 -0
- package/tools/mcp/server.mjs +121 -0
- package/tools/mcp/tools.mjs +65 -0
- package/tools/recover-queue.mjs +133 -0
package/CLA.md
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# dsh-Fang 贡献者许可协议(CLA v1.0)
|
|
2
|
+
|
|
3
|
+
> 中文版为工作文本;如需英文签署件,以维护者提供的英文正式版为准。
|
|
4
|
+
> **这是草案模板,正式启用前须由律师审阅并替换维护者主体信息。**
|
|
5
|
+
>
|
|
6
|
+
> 维护者(Maintainer):`dsh-Fang 项目维护者` **(占位:替换为真实姓名/公司主体与联系方式)**
|
|
7
|
+
> 生效日期:2026-11-01
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 1. 定义
|
|
12
|
+
|
|
13
|
+
- **"你"(You)**:向本项目提交贡献的自然人或法人实体。
|
|
14
|
+
- **"贡献"(Contribution)**:你通过 Pull Request、补丁、Issue 附件、代码片段、文档、设计或任何
|
|
15
|
+
其他方式,有意提交给本项目并纳入本项目的作品。
|
|
16
|
+
- **"项目"(Project)**:本仓库及其衍生仓库中的 dsh-Fang 代码与文档。
|
|
17
|
+
- **"维护者"(Maintainer)**:项目当前的版权管理者与其继任者/受让人。
|
|
18
|
+
|
|
19
|
+
## 2. 版权许可(核心条款)
|
|
20
|
+
|
|
21
|
+
你保留对贡献的著作权。作为提交贡献的对价,你向维护者授予一项**永久、全球范围、非独占、免版税、
|
|
22
|
+
不可撤销**的著作权许可,允许维护者:
|
|
23
|
+
|
|
24
|
+
1. 复制、修改、改编、翻译、汇编、公开传播、分发你的贡献及其衍生作品;
|
|
25
|
+
2. **以任何许可证条款(包括 AGPL-3.0、MIT 以及商业闭源许可)再许可(relicense)、双重许可
|
|
26
|
+
(dual-license)或将其纳入其他许可安排**;
|
|
27
|
+
3. 授权第三方行使上述权利,包括为了商业目的。
|
|
28
|
+
|
|
29
|
+
> 第 2 条是项目双许可证与商业授权路径成立的前提:没有它,维护者无权把包含你贡献的核心层
|
|
30
|
+
> 以商业闭源方式授权给云厂商。如果你不同意此条,请不要提交贡献(可先提交 Issue 讨论)。
|
|
31
|
+
|
|
32
|
+
## 3. 专利许可
|
|
33
|
+
|
|
34
|
+
你向维护者及项目用户授予一项永久、全球、非独占、免版税、不可撤销的专利许可,允许实施你的贡献中
|
|
35
|
+
由你拥有或有权许可的专利权利要求;该许可仅在你未对项目或用户提起专利诉讼的范围内有效。
|
|
36
|
+
|
|
37
|
+
## 4. 精神权利
|
|
38
|
+
|
|
39
|
+
在适用法律允许的最大范围内,你同意不行使(或同意维护者及其被许可人无需标注你为特定修改的作者
|
|
40
|
+
而行使)与贡献相关的精神权利,但不影响你在贡献历史、AUTHORS/贡献者名单中被记录的权利。
|
|
41
|
+
|
|
42
|
+
## 5. 你的陈述与保证
|
|
43
|
+
|
|
44
|
+
你声明并保证:
|
|
45
|
+
|
|
46
|
+
1. 你有权提交该贡献,且该贡献不侵犯任何第三方的知识产权;
|
|
47
|
+
2. 若你的雇主对贡献享有权利,你已取得雇主的书面授权;
|
|
48
|
+
3. 贡献中不包含你无权许可的第三方代码;如包含,你在提交时明确标注其来源与许可证;
|
|
49
|
+
4. 贡献不包含任何恶意代码、后门、密钥或未经授权的隐私数据。
|
|
50
|
+
|
|
51
|
+
## 6. 无担保
|
|
52
|
+
|
|
53
|
+
除第 5 条外,贡献按"现状"提供,不附带任何明示或默示的担保。
|
|
54
|
+
|
|
55
|
+
## 7. 无义务采用
|
|
56
|
+
|
|
57
|
+
维护者没有义务采用、合并或发布任何贡献。
|
|
58
|
+
|
|
59
|
+
## 8. 法律适用与争议解决
|
|
60
|
+
|
|
61
|
+
本协议受**中华人民共和国法律**管辖(占位:如维护者为其他司法辖区主体则相应调整);
|
|
62
|
+
因本协议产生的争议,提交维护者主要办公地有管辖权的人民法院解决。
|
|
63
|
+
|
|
64
|
+
## 9. 签署方式
|
|
65
|
+
|
|
66
|
+
1. 提交 Pull Request 时,在 PR 描述或评论中写入:
|
|
67
|
+
`I have read the CLA and I sign it.`(附你的 GitHub 用户名与真实姓名/主体);
|
|
68
|
+
2. 或由维护者提供的 CLA 签署机器人/表单完成签署(占位:发布前补充链接);
|
|
69
|
+
3. 首次签署后覆盖你在本项目未来所有贡献,除非你书面撤回(撤回不影响已发生的授权)。
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
### English summary (non-binding convenience summary)
|
|
74
|
+
|
|
75
|
+
You retain copyright in your Contribution. You grant the Maintainer a perpetual, worldwide,
|
|
76
|
+
non-exclusive, royalty-free, irrevocable license to use, modify, distribute your Contribution and to
|
|
77
|
+
**sublicense/relicense it under any terms, including AGPL-3.0, MIT, and proprietary commercial
|
|
78
|
+
licenses**. You also grant a patent license and agree to the representations in §5. This CLA is
|
|
79
|
+
required for the project's dual-licensing model; contributions without it cannot be accepted.
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# dsh-Fang 商业许可(LICENSE-COMMERCIAL)
|
|
2
|
+
|
|
3
|
+
> ⚠️ **这是商业许可的草案模板,不是最终合同,也不构成法律意见。**
|
|
4
|
+
> 对外销售前必须由律师按实际主体、司法辖区与定价条款审阅。
|
|
5
|
+
> 占位符(公司主体、联系方式、价格、SLA 数字)发布前必须替换。
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 0. 适用范围
|
|
10
|
+
|
|
11
|
+
本许可仅适用于下列**商业层**目录及其衍生构建:
|
|
12
|
+
|
|
13
|
+
- `relay-server/**` —— Relay 服务器(联合开发同步、云备份、Token API 路由、团队协作、审计导出);
|
|
14
|
+
- `enterprise/**` —— 企业功能(SSO、组织/组权限、审批链、SLA 支持);
|
|
15
|
+
- 与本许可一并交付、标注为商业许可的任何二进制或配置文件。
|
|
16
|
+
|
|
17
|
+
**不适用**于核心层(AGPL-3.0,见 `LICENSE-CORE`)与生态层(MIT,见 `LICENSE-SDK`)。
|
|
18
|
+
商业层代码不是开源软件;未经本许可授权,不得复制、分发、修改或用于生产。
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 1. 授权模式(草案)
|
|
23
|
+
|
|
24
|
+
### 1.1 评估许可(Evaluation)
|
|
25
|
+
|
|
26
|
+
- 期限:自下载起 30 天;
|
|
27
|
+
- 用途:仅限内部评估、非生产环境;
|
|
28
|
+
- 限制:不得用于任何对外提供的服务,不得再分发;
|
|
29
|
+
- 费用:免费。
|
|
30
|
+
|
|
31
|
+
### 1.2 生产许可(Production)
|
|
32
|
+
|
|
33
|
+
按**部署范围 + 版本覆盖 + 支持等级**计费,而不是按最终用户数(避免"用户数计费"抑制采用):
|
|
34
|
+
|
|
35
|
+
| 方案 | 部署范围 | 覆盖 | 支持 | 价格(占位) |
|
|
36
|
+
|---|---|---|---|---|
|
|
37
|
+
| Team | 单组织、≤N 个并发分身 | 当前大版本 | 邮件 | ¥—/年 |
|
|
38
|
+
| Business | 单组织、无限分身、多环境 | 当前大版本 + 1 次升级 | 邮件 + 工作日 SLA | ¥—/年 |
|
|
39
|
+
| Enterprise | 多组织 / OEM / 托管转售 | 协商 | 24×7 + 私有化部署支持 | 面议 |
|
|
40
|
+
|
|
41
|
+
> 白名单域名/部署 ID + 版本覆盖范围是本许可的**授权单位**;不要改为按人头收费。
|
|
42
|
+
|
|
43
|
+
### 1.3 OEM / 托管转售
|
|
44
|
+
|
|
45
|
+
云厂商或产品集成方将商业层作为其托管服务的一部分对外提供时,需单独签署 OEM 协议,
|
|
46
|
+
并接受:服务端源码保密义务、商标使用边界、数据处理与合规条款、审计权与终止权。
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 2. 通用条款(草案)
|
|
51
|
+
|
|
52
|
+
1. **许可性质**:非独占、不可转让、可撤销(因违约)、有限期(按订阅期)。
|
|
53
|
+
2. **保密**:商业层源码与文档为保密信息;接收方仅可为获许可用途使用。
|
|
54
|
+
3. **无再分发**:除 OEM 协议明确允许外,不得再分发商业层或其衍生作品。
|
|
55
|
+
4. **回馈**:不要求商业层用户回馈核心层修改,但核心层仍受 AGPL 约束。
|
|
56
|
+
5. **数据与隐私**:Relay 服务器处理客户数据须签署 DPA;密钥与备份加密责任按合同划分。
|
|
57
|
+
6. **SLA**:按所选支持等级提供可用性目标与响应时间;SLA 数字以正式合同为准。
|
|
58
|
+
7. **审计**:许可方可在提前通知下审计部署范围与授权一致性(每年不超过一次)。
|
|
59
|
+
8. **终止**:重大违约且 30 天内未修复,许可终止;终止后须停止使用并删除商业层副本。
|
|
60
|
+
9. **无担保 / 责任限制**:商业层按"现状"提供,除合同明示外不作担保;
|
|
61
|
+
责任上限以过去 12 个月已付许可费为限(法律强制不得排除的情形除外)。
|
|
62
|
+
10. **法律适用**:以正式合同约定为准(默认:中华人民共和国法律;争议提交许可方所在地有管辖权法院)。
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## 3. 与开源层的关系
|
|
67
|
+
|
|
68
|
+
- 核心层(AGPL-3.0)**不会**因为购买商业许可而改变;购买商业许可不豁免 AGPL 义务,
|
|
69
|
+
它只解决"商业层"的使用权,以及可选的"核心层闭源商用授权"(双许可证路径,需单独签署)。
|
|
70
|
+
- 双许可证(Dual License):云厂商不愿遵守 AGPL 开源义务时,可购买核心层的闭源商业授权。
|
|
71
|
+
该授权按部署范围与版本计费,且**不代表**核心层改为非开源。
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 4. 联系方式
|
|
76
|
+
|
|
77
|
+
- 商业许可 / OEM:`licensing@example.com` **(占位)**
|
|
78
|
+
- 安全与合规:`security@example.com` **(占位)**
|