# 安全声明 [English](SAFETY_EN.md) | 简体中文 ## 实验性状态 DACW 是实验性开发者预览插件,未经安全审计,不得用于生产环境。它会执行模型生成的代码与命令(npm / pytest / cargo / go 等),并向其开放工作区文件、环境变量与本地进程;错误的模型输出、缺陷、配置错误或恶意输入可能损坏宿主、泄露数据或造成其他非预期影响。 ## 沙箱限制 DACW **不是容器级沙箱**:子进程与宿主同用户同权限,可访问网络。命令白名单、环境变量隔离、HMAC 签名、结构化裁决与人工闸门可以降低风险,但不构成隔离保证。不要把 DACW 作为不可信工作负载唯一的安全控制措施。 ## 关键边界 - 插件运行在 DSH Host 进程内,通过 `node:fs` 直接读写工作区与状态文件,不经过 DSH 会话的文件沙箱;实际文件权限等于运行 Harness 的系统账号权限。 - 写手/审查者是真实的子代理会话(可在 profile 中查看);显式配置模型时,任务描述与工作区代码会发送给所选模型提供方。 - 工作区每轮被重置为非地基文件集,这是设计上的破坏性行为;`workspacePolicy: "allow"` 会跳过空目录/标记检查。 - 状态文件默认落在 `os.tmpdir()/dacw-state`,包含任务描述、测试输出与审查文本,不自动清理、不做崩溃恢复。 - 子代理工具隔离依赖宿主的 `ctx.tools.restrict` 与 `agent/created` 事件;隔离或 preset 注册失败时默认拒绝运行(可用 `enforceChildToolIsolation` / `allowInheritedPresets` 显式关闭,关闭即失去对应保证)。 - 被测试项目的依赖需人工预装,`node_modules` 被视为可信基座。 - 审查者模型可能被工作区注入的指令劫持,格式合法的伪造 PASS 仍可能出现——**人工闸门是最终兜底**。 ## 负责任地使用 - 仅安装来源可信、经过审查的 bundle;安装/升级会修改整个 DSH profile。 - 在专用或一次性环境、最小权限账号下运行;使用专用空工作区,并备份可访问的文件。 - 不要把敏感凭据或数据暴露给不可信的模型。 - 在 NEED_HUMAN 人工终审完成前,不要合入产出。 ## 免责声明 请在充分了解相关风险的前提下使用 DACW。在适用法律允许的最大范围内,作者与版权持有人不对因使用本项目造成的计算机损坏、数据丢失或泄露、文件丢失或其他损害承担责任。