文档 / 安全
安全
本地优先与确定性规则。Yuli 保护什么、哪些内容会离开你的电脑,以及哪些由你决定。
在 Yuli 中,安全边界由引擎在每次操作中强制执行。它们不取决于提示词怎么写,也不依赖模型“表现良好”。智能体无法通过说服自己来绕过规则。
本地优先
代码、代码索引、记忆和智能体状态都保存在你的电脑和项目中。Yuli 的运行不需要账户,也不需要自有服务器。
哪些内容会离开你的电脑
| 内容 | 发往何处 | 何时 |
|---|---|---|
| AI 的消息和上下文 | 你选择的提供商(或你的 Claude Code、Kiro、Codex 或 Antigravity) | 在你使用 AI 工作时。发出前,机密会被替换为占位标记。 |
| 检查更新 | 更新服务器(或你自己的 Yuli Hub) | 启动时,如果启用了自动检查。 |
| 依赖的 group、artifact 和版本 | OSV.dev | 仅当你在安全中心启用该数据源时。 |
| 问题报告 | 仅当你选择发送时 | 由你通过 帮助 → 报告问题… 自行生成。 |
使用本地模型(Ollama、LM Studio、vLLM 或 llama.cpp)时,连 AI 的上下文都不会离开你的网络。参见模型与提供商。
防护层
| 层 | 作用 | 更多信息 |
|---|---|---|
| 项目沙箱 | 智能体只能在项目内以及你授权的文件夹中创建、移动或删除文件。 | 沙箱与权限 |
| 按风险审批 | 每个操作都会被评估;只有有风险的操作才需要确认。 | 沙箱与权限 |
| 仅在你要求时使用 Git 和 CI | 提交、推送、分支和流水线默认被阻止,除非你明确要求。 | 沙箱与权限 |
| 机密 | 绝不读取 .env 或密钥;敏感内容以带类型的占位标记发出。 |
机密与隐私 |
| 提示注入 | 带有隐藏指令的外部内容会被当作数据处理。 | 机密与隐私 |
| 数据库 | 由你为每个连接设定智能体的访问权限。 | 安全的数据库访问 |
| 安全分析 | 依赖、代码、泄漏和竞态条件,离线完成。 | 安全中心 |
| 质量关卡 | 在每次提交时拒绝机密和测试作弊。 | Gate 与治理中心 |
智能体绝不会做的事
- 读取环境文件、私钥、证书或 SSH 配置。
- 在你未要求的情况下提交、推送、合并或创建分支。
- 未经你批准执行写入数据库的语句,也不会在无人值守模式下执行。
- 使用命令行数据库客户端(
sqlplus、sqlcmd、mysql、psql、mongosh等)。这样,任何人都无法绕过访问策略。 - 以作者身份签署提交或添加 AI 署名。作者始终是负责的那个人。
由你决定的事
- 自主性:智能体无需询问即可做多少事(谨慎、平衡或自主)。
- 文件夹访问:可以使用项目之外的哪些文件夹,以及是否只能读取。
- 项目信任:是否运行仓库中的代码以进行分析。
- 每个数据库的访问权限:无访问、仅查询或超级权限。
- 受信任的服务器:使用自有证书的内部服务器,始终需要你确认。
凭据
API key、数据库密码以及 Git、CI 和 MCP 的令牌都保存在系统密钥链中:Windows 的原生凭据存储、macOS 的钥匙串或 Linux 上的 Secret Service。绝不存入项目。它们在屏幕上始终以掩码形式显示。
插件
插件在隔离环境中运行:出错不会影响 IDE。插件在清单中声明其权限,网络访问仅限于声明的域名,团队还可以要求数字签名。
报告问题
帮助 → 报告问题… 会在你的下载文件夹中生成一个 .zip,其中包含版本、系统信息、错误日志以及最近发往引擎的请求(不含参数)。
报告绝不包含你的代码或与智能体的对话。密钥、令牌和密码会被脱敏,你的个人文件夹显示为 ~。