Home

Privacy & Sandboxing —— 安全架构规范

Hydite IDE 隐私分级与本地沙箱的形式化说明:信任边界、数据分类、三档模式控制矩阵、可验证项与配置面


文档定位:本规范用于面向安全审计、合规评估与企业采购评审的技术对齐文档;不替代客户内部的风险评估流程。

关键字:本规范中出现的「MUST / SHOULD / MAY / MUST NOT」遵循 RFC 2119 的语义。

1. 范围与术语#

1.1 适用范围#

本规范覆盖 Hydite IDE 客户端在以下方面的安全行为:

  • 数据驻留(源代码、项目语义索引、prompt 上下文、模型响应、遥测)。
  • 本地进程沙箱(文件系统、命令执行、网络访问、第三方插件 / MCP / Skill 调用)。
  • 三档隐私模式的可用性与切换约束。
  • 与 Hydite Vtslx AO 网关之间的传输与信任关系。

不在本规范范围内:

  • Hydite Vtslx AO 网关本身的服务端安全治理(详见 Vtslx AO 部署文档)。
  • 客户自部署的本地模型推理服务(Ollama / vLLM / 自托管 OpenAI 兼容服务)的内部安全控制 —— 本规范仅描述 Hydite 与之交互的边界条件。

1.2 术语定义#

术语定义
代码资产(Code Asset)项目工作区内由 Git 跟踪的源代码、配置、文档及其衍生物。
项目语义索引(Project Index)Context Hub 在客户端本地构建的代码语义、符号、调用图与关联资源索引。
Prompt 上下文(Prompt Context)单次 LLM 调用前组装的、提交给推理后端的全部输入文本与结构化字段。
本机驻留模型(On-device Model)推理过程完全在客户端机器(含其本地局域网内的私有推理服务)完成、不向公网发送请求的模型。
可达云端模型(Reachable Cloud Model)任何通过公网发往非客户控制基础设施的模型,包括但不限于 SaaS 模型 API、第三方代理。
Agent 工具调用(Agent Tool Invocation)Agent 模式下对文件系统、命令执行、网络请求、MCP 资源、Skills 的调用动作。
客户控制域(Customer-Controlled Domain)客户拥有管理权的执行环境,含本机、客户内网、客户自托管 Vtslx AO 网关及其依赖。

1.3 标识规则#

本规范中出现的控制项使用如下命名规则:

1
CTL-<域>-<序号>

其中 <域> 取值:

域代码含义
DAT数据资产
BND信任边界
SBX沙箱控制
NET网络控制
PRV隐私模式
AUD审计与可验证性
CFG配置面

2. 威胁模型#

本规范以简化 STRIDE 模型作为分析骨架,仅纳入与"客户端隐私 / 沙箱"直接相关的威胁类别。

威胁类关注资产设计目标
信息泄漏代码资产、项目语义索引、Prompt 上下文在用户未明示授权时,MUST NOT 离开客户控制域。
越权访问客户端文件系统、网络、外设Agent 工具调用 MUST 受沙箱介入,越权动作必须被拒绝且可审计。
篡改项目文件、索引、配置第三方 Skill / MCP MUST NOT 在用户授权范围之外写入或修改本机数据。
重放与中间人Vtslx AO 网关之间的传输所有跨网传输 MUST 经认证、加密信道。
抵赖Agent 行为可追溯性关键操作 SHOULD 留下本地可读的审计记录。
拒绝服务客户端资源Context Hub 与 Agent SHOULD 在资源边界内运行;本规范不对极端攻击作 SLA 承诺。

3. 信任边界与数据资产分类#

3.1 信任边界(CTL-BND-01 ~ 04)#

Hydite IDE 在客户端定义如下四条信任边界:

1
┌─────────────────────────────────────────────────────────────────┐
2
│ T0: 操作系统进程边界(IDE 主进程) │
3
│ ┌───────────────────────────────────────────────────────────┐ │
4
│ │ T1: Agent 工具沙箱(受 OS 原语强制) │ │
5
│ │ ┌──────────────────────────────────────────────────────┐ │ │
6
│ │ │ T2: 命令执行 / 网络访问子边界 │ │ │
7
│ │ │ ┌─────────────────────────────────────────────────┐ │ │ │
8
│ │ │ │ T3: 第三方 Skill / MCP 调用 │ │ │ │
9
│ │ │ └─────────────────────────────────────────────────┘ │ │ │
10
│ │ └──────────────────────────────────────────────────────┘ │ │
11
│ └───────────────────────────────────────────────────────────┘ │
12
└─────────────────────────────────────────────────────────────────┘
13
14
▼ 仅当模式允许且用户授权
15
┌─────────────────────────────────────────────────────────────────┐
16
│ Vtslx AO 网关(Hydite 共享 / 客户专属 / 客户自托管 三档之一) │
17
└─────────────────────────────────────────────────────────────────┘
ID边界强制实现
CTL-BND-01T0:IDE 主进程由宿主操作系统进程隔离机制
CTL-BND-02T1:Agent 工具沙箱macOS Seatbelt / Linux 命名空间
CTL-BND-03T2:命令 / 网络子边界T1 内的细粒度策略
CTL-BND-04T3:Skill / MCP 调用T1 内的能力委派模型

3.2 数据资产分类(CTL-DAT-01 ~ 06)#

ID资产默认敏感度默认驻留位置
CTL-DAT-01源代码 / Git 跟踪文件客户控制域
CTL-DAT-02项目语义索引客户控制域(本机)
CTL-DAT-03Agent 临时工作区(worktree / 暂存分支)客户控制域(本机)
CTL-DAT-04Prompt 上下文由当前隐私模式决定
CTL-DAT-05模型响应客户控制域
CTL-DAT-06客户端遥测(崩溃、性能、用量计数)由客户授权决定

4. 隐私模式形式化矩阵#

4.1 三档定义(CTL-PRV-01 ~ 03)#

ID模式形式化定义
CTL-PRV-01High Privacy对所有 CTL-DAT-01..05 资产,MUST NOT 离开客户控制域;推理仅可发往本机驻留模型。
CTL-PRV-02Standard默认行为,允许将经过最小化的 Prompt 上下文(CTL-DAT-04)送入用户授权的可达云端模型;其余资产仍 MUST 驻留客户控制域。
CTL-PRV-03Self-Hosted Enterprise推理 MUST 经客户自托管的 Vtslx AO 网关;任何资产 MUST NOT 经过 Hydite 控制的网络节点。

4.2 行为矩阵#

下表对每类数据资产在每档模式下的行为给出形式化承诺。

资产 ↓ / 模式 →High PrivacyStandardSelf-Hosted Enterprise
CTL-DAT-01 源代码不出本机不出本机不出客户 VPC
CTL-DAT-02 语义索引(构建)本机本机本机
CTL-DAT-02 语义索引(存储)本机本机本机
CTL-DAT-04 Prompt 上下文不出本机仅最小相关片段送可达云端模型仅经客户自托管网关
CTL-DAT-05 模型响应来自本机模型来自用户授权的云端模型来自客户网关后端
CTL-DAT-06 遥测MUST 关闭MAY 启用(由用户控制)MUST 经客户网关或关闭

4.3 模式可用性约束(CTL-PRV-04)#

  • High Privacy 切换器 MUST 仅在 Agent 模式可见。Edit 模式下,由于其作用域被约束在当前选区且默认不主动调用云端,不提供独立的 High Privacy 切换器
  • High Privacy 模式启用时,UI MUST 在输入框胶囊上呈现锁形指示,状态栏 SHOULD 持续提示当前会话的隐私级别。
  • 启用 High Privacy 后,任何尝试调用可达云端模型的动作 MUST 被拒绝;如用户已通过白名单显式允许某些云模型,调用前 MUST 触发二次确认。

5. 沙箱控制族#

Hydite Agent 在 T1 边界内运行,本节定义其控制族。

5.1 文件系统(CTL-SBX-01 ~ 04)#

ID控制缺省策略
CTL-SBX-01工作区可读范围仅当前项目根及其子目录
CTL-SBX-02工作区可写范围仅当前项目根;项目外路径 MUST 由 Agent 显式提示
CTL-SBX-03系统敏感目录~/.ssh~/.aws、密钥库等 MUST 受显式白名单保护
CTL-SBX-04项目级文件黑名单.hydite/agent-deny.glob 中匹配的路径 MUST 被沙箱拒绝读写

5.2 命令执行(CTL-SBX-05 ~ 07)#

ID控制缺省策略
CTL-SBX-05命令工作目录默认锁定在项目根
CTL-SBX-06命令网络访问MAY 全局禁用;High Privacy 模式下 MUST 默认禁用
CTL-SBX-07命令资源限制子进程时长、CPU、内存 SHOULD 受可配置上限约束

5.3 网络(CTL-NET-01 ~ 04)#

ID控制缺省策略
CTL-NET-01默认出站策略High Privacy:拒绝;其余模式:仅允许已授权目的地
CTL-NET-02模型推理出站仅指向当前模式约定的目标(本机 / 用户授权云端 / 自托管网关)
CTL-NET-03客户端更新通道SHOULD 可由企业管理员关闭或代理至内网
CTL-NET-04第三方 MCP 出站CTL-NET-01 一致;MCP MUST NOT 绕过沙箱直接联网

5.4 第三方代码:Skill / MCP(CTL-SBX-08 ~ 10)#

ID控制缺省策略
CTL-SBX-08Skill 文件读写权限与所属 Agent 的 T1 限制一致;不能突破
CTL-SBX-09MCP 资源白名单默认 MUST 由用户在项目级显式启用
CTL-SBX-10Skill / MCP 网络出站CTL-NET-04 约束

5.5 Worktree 物理隔离(CTL-SBX-11)#

Agent Hub 在多 Agent 并行作业时,每个 Agent MUST 在独立的 Git Worktree(或临时分支)中执行;其写操作 MUST NOT 直接污染主分支,回流前 SHOULD 经统一审查。该机制保证:

  • 单个 Agent 的失败 / 越权尝试 MUST 被限制在单一 Worktree 内。
  • 用户对任何 Agent 的写操作 MAY 通过删除其 Worktree 一键回滚。

6. High Privacy 模式正式规范#

6.1 激活条件(CTL-PRV-05)#

  • 当前会话 MUST 处于 Agent 模式。
  • 用户在输入框左下角的高隐私胶囊上发起切换,MUST 经过一次显式确认面板。
  • 确认面板 MUST 逐项展示如下作用域:源代码出站、索引出站、命令网络、Skill / MCP 网络、遥测。

6.2 出站契约(CTL-PRV-06)#

进入 High Privacy 后,下列承诺生效:

  1. 源代码 MUST NOT 离开本机。 任何尝试将文件内容、文件路径或文件元信息发送至非本机驻留模型的行为 MUST 被拒绝。
  2. 项目语义索引 MUST 仅由本机模型构建与查询。 索引数据 MUST NOT 出现在任何对外请求体中。
  3. Prompt 上下文 MUST 仅发往本机驻留模型。
  4. 遥测 MUST 处于关闭状态。
  5. 命令执行的网络访问 MUST 默认拒绝。 用户 MAY 通过逐条规则放行内网目的地,但不得放行公网。

6.3 推理路径限制(CTL-PRV-07)#

High Privacy 模式下,可用推理路径受限于「本机驻留模型」,包含但不限于:

  • 客户端宿主机直接运行的本地推理框架。
  • 客户端可达局域网内的私有推理服务。

任何指向公网的推理路径在该模式下 MUST 被禁用。若用户在白名单中显式登记了云端模型,调用 MUST 在执行前再次提示并要求确认。

6.4 UI 不变量(CTL-PRV-08)#

  • 输入框胶囊 MUST 显示锁形指示,且仅在 High Privacy 期间显示。
  • 状态栏 SHOULD 显示「Local-only」或语义等价的指示。
  • 切出 High Privacy MUST 触发显式提示,提示中应说明退出后恢复的默认出站策略。

7. Standard 模式正式规范#

7.1 数据最小化原则(CTL-PRV-09)#

Standard 模式遵循"最小相关片段"原则:

  • Prompt 上下文 MUST 经 Context Hub 的本地检索阶段筛选,仅保留与当前请求最相关的片段。
  • 整目录扫描结果、整索引快照 MUST NOT 直接进入 Prompt 上下文。

7.2 传输保护(CTL-PRV-10)#

  • 跨网传输 MUST 使用具备认证与加密的信道。
  • 客户端 MUST 校验对端身份;自定义网关时 MUST 校验客户提供的证书或 SPKI 锚定信息。

7.3 用户可控项(CTL-PRV-11)#

Standard 模式下,下列项 MUST 在客户端设置中可关闭:

  • 遥测上报。
  • 客户端自动更新通道。
  • 第三方 Skill / MCP 网络出站。
  • 模型回流(response)日志缓存。

8. Self-Hosted Enterprise 模式正式规范#

8.1 部署假设(CTL-PRV-12)#

  • 客户在自有 VPC / 内网中部署 Hydite Vtslx AO 网关。
  • 客户端 MUST 仅指向客户提供的网关地址;Hydite 控制的网络节点 MUST NOT 出现在调用链上。

8.2 BYOK 与身份(CTL-PRV-13)#

  • 模型 API Key、推理凭证 MUST 由客户保管,存放于客户网关或客户密钥管理系统。
  • 客户端 MUST 支持企业 SSO 登录(详见 Vtslx AO 文档),并 SHOULD 复用其会话标识完成网关鉴权。

8.3 审计协同(CTL-PRV-14)#

  • 所有跨网请求 MUST 经过客户网关;客户网关 SHOULD 提供完整的访问日志。
  • 客户端 SHOULD 提供本地行为摘要导出能力,便于与网关日志合并审计。

9. 遥测与最小化#

9.1 遥测分类(CTL-AUD-01)#

分类包含示例High PrivacyStandardSelf-Hosted
崩溃报告堆栈、版本、平台关闭用户可关经客户网关或关闭
性能计数启动耗时、索引耗时(不含路径)关闭用户可关经客户网关或关闭
用量计数模式切换次数、Agent 启动次数关闭用户可关经客户网关或关闭
Prompt / 响应模型输入与输出MUST 关闭MUST NOT 默认开启MUST 经客户网关或关闭

9.2 默认值(CTL-AUD-02)#

  • 任何包含代码片段、文件路径、提示词、模型响应的遥测 MUST NOT 默认启用。
  • 默认启用的遥测项 MUST 不包含可还原代码资产的字段。

10. 可审计性与自验证#

10.1 用户级自验证(CTL-AUD-03)#

任何用户均可通过以下路径自行验证当前模式是否如本规范所述:

验证目标操作期望结果
索引位置检查项目根 .hydite/index/索引文件存在于本地,无远端同步痕迹
网络出站在主机上启动包嗅探(如 lsof -i、Little Snitch、tcpdump)High Privacy 期间无指向公网的推理流量
命令网络让 Agent 执行 curl https://example.comHigh Privacy 模式下被沙箱拒绝
文件越权.hydite/agent-deny.glob 中加入 *.pem,让 Agent 读取读取被拒绝并记录
模式 UI切换至 High Privacy输入框胶囊显示锁形指示

10.2 企业级自验证(CTL-AUD-04)#

  • 客户网络团队可在出口防火墙上对客户端集群配置出站白名单,仅放行自托管 Vtslx AO 网关,SHOULD 观察到无任何意外目的地流量。
  • 客户网关日志 SHOULD 与客户端导出的本地行为摘要在请求计数上对账一致。

11. 配置面参考#

11.1 项目级文件(CTL-CFG-01)#

路径用途
.hydite/index.ignore索引黑名单,语法同 .gitignore
.hydite/index.include索引强制纳入路径
.hydite/agent-deny.globAgent 文件读写黑名单
.hydite/index/本地索引存储(建议加入 .gitignore

11.2 命令面板项(CTL-CFG-02)#

命令用途
Hydite: Toggle High Privacy Mode在 Agent 模式下切换高隐私
Hydite: Rebuild Project Index强制重建本地索引
Hydite: Open Privacy Scope Panel打开高隐私作用域确认面板
Hydite: Export Local Activity Summary导出本地行为摘要供审计

11.3 全局设置项(CTL-CFG-03,节选)#

设置键含义
hydite.privacy.defaultModeIDE 启动默认隐私模式
hydite.privacy.allowedCloudModels高隐私白名单内的可达云端模型
hydite.telemetry.enabled是否启用基础遥测
hydite.network.allowedHosts命令执行允许出站的主机白名单

12. 一致性等级#

为便于客户内部评估,本规范定义两级一致性:

  • 基础一致:客户端默认启用的所有控制项符合本规范第 5、9 条对应内容。
  • 企业一致:在基础一致之上,启用 Self-Hosted Enterprise 模式并通过第 8 条与第 10.2 节的自验证项。

本规范不主张任何特定第三方认证(如 SOC 2、ISO/IEC 27001、FedRAMP 等)。客户在受监管行业落地时,SHOULD 将本规范作为合规自评的输入之一,并结合所在行业的具体要求进行差距分析。

13. 修订记录#

版本范围
1.0初版:定义术语、信任边界、三档隐私模式形式化矩阵、沙箱控制族与可验证项

14. 参考与延伸阅读#