数据与隐私
DesireCore 采用本地优先(Local-first)架构。智能体、技能、对话、配置、审计和缓存默认保存在你的设备上。AI 推理请求只会发送给你配置的模型供应商。登录账号后,订阅、credit、云端模型列表等账号资源会从在线服务同步;这不会改变本地对话和智能体文件的存储位置。
数据存储位置
| 操作系统 | 路径 |
|---|---|
| macOS | ~/.desirecore/ |
| Windows | %USERPROFILE%\.desirecore\ |
| Linux | ~/.desirecore/ |
主要目录:
| 目录 | 内容 |
|---|---|
agents/ | 智能体仓库、人格、准则、记忆、技能、工作流 |
users/ | 用户画像、偏好、用户与智能体的关系记忆 |
skills/ | 全局技能,包括内置和用户导入的技能 |
config/ | 用户配置、算力配置、供应商配置引用 |
runs/ | 对话、执行记录、回执和审计数据 |
market/ | 市场资源缓存 |
apps/ / services/ | 已安装应用、派生服务、审批状态和健康检查信息 |
notifications/ / schedules/ | 通知中心状态、定时任务配置和触发历史 |
cache/ | 可重建缓存 |
logs/ | 本地日志和错误排查信息 |
使用统计
设置 → 数据与隐私 → 发送使用统计 是安装统计与产品使用统计的统一开关,当前版本默认开启。你可以随时主动关闭;关闭不会影响核心功能。
开启时会发送两类去标识化统计:
| 类别 | 发送内容 | 不会发送的内容 |
|---|---|---|
| 安装统计 | 硬件标识经 SHA-256 生成的设备标识、版本、操作系统、CPU 架构;成功后同一 UTC 日不重复发送 | 姓名、邮箱、对话、提示词、文件 |
| 产品使用统计 | 与硬件无关的随机 UUID、UTC 日期、版本、平台,以及任务、结果、交付等按日数字计数 | 对话与提示词、产物、Agent 名称或标识、任务标题、用户名、邮箱、文件名或路径 |
两类标识互不派生,也不会出现在同一请求中。产品统计会先在本地按日汇总,次日或恢复联网后发送;未发送队列最多保留 30 天。用于计算“使用过的 Agent 数量”的 Agent 标识只保存在本地,出网时只发送数量。统计实现不会读取或发送用户身份资料、对话、提示词、模型输出、文件内容、Agent 名称或任务标题。
关闭开关后,DesireCore 会立即停止两类上报和产品统计的本地累加,并删除本地随机统计标识与待发队列。重新开启会生成新的随机标识。关闭不会自动删除已发送的数据;服务端的去重记录最多保留 400 天,去除设备级标识后的聚合数字可用于长期趋势分析。
连接远程实例时,设置页会同时读取本机和当前连接实例:两端不一致会显示“混合”状态;无法读取远端时会明确提示远端状态未知。关闭操作会尝试同时应用到两端,本机设置不会因为远端写入失败而回滚。
协议版本与再次同意
隐私政策和使用条款采用独立版本号管理。DesireCore 会在本地记录你同意的两份协议版本及同意时间;首次使用、记录缺失,或任一协议发布新版本时,应用会在进入主界面前再次展示当前版本并要求明确同意。应用和官网只展示当前生效版本,不提供历史版本查看入口。
导出数据
你可以在 设置 → 数据与隐私 中导出数据。导出时可以选择类别,而不是只能一次性导出全部内容。
普通备份与设备迁移
设置页提供的「导出数据」和「迁移到新设备」不是同一种操作:
| 普通备份 | 迁移到新设备 | |
|---|---|---|
| 主要用途 | 在当前设备建立恢复点,或恢复同一身份的数据 | 把身份和数据带到另一台设备 |
| 身份处理 | 不替换、不重映射用户身份 | 新设备可选择「作为新身份」或「归并到当前身份」 |
| 必选内容 | 可按需要选择类别 | 智能体和系统配置为迁移必需,其他类别可选 |
| API Key | 不包含 | 仅可选择加密携带符合条件的、由用户管理的算力 Provider API Key |
| 冲突处理 | 按导入类别处理覆盖、跳过或保留 | 归并时按用户数据、智能体、团队和密钥等语义单元逐项选择 |
普通备份适合作为同机回滚点。跨设备时请使用「迁移到新设备」向导;它会写入来源身份和版本信息,让新设备正确处理用户画像、偏好、私有记忆和其他按身份隔离的数据。
常见导出类别:
| 类别 | 包含内容 |
|---|---|
| 智能体与团队 | AgentFS 仓库、人格、准则、记忆、技能、工作流、团队定义和关系记忆 |
| 技能 | 全局技能和自定义技能 |
| 对话记录 | 会话消息、执行回执和历史记录 |
| 系统配置 | 用户设置、非明文算力配置、界面偏好 |
| 媒体 | 对话和工具使用产生的媒体资源 |
| 邮件 | 邮箱相关本地数据和规则 |
| 工作区文件 | 选择导出的工作目录文件 |
| 审计日志 | 接口审计、工具调用审计和相关统计 |
导出流程会提示保存位置、数据体积和处理进度。运行时目录、缓存、设备标识和原始本地密钥文件等内容会被排除或单独处理。
升级系统或批量调整智能体前,建议先导出普通备份。迁移已有数据的新设备时,导入向导也会要求你先为新设备的现有数据建立恢复点,除非你明确选择承担风险并跳过。
可选迁移算力 API Key
API Key 不会自动跟随普通备份。只有「迁移到新设备」向导提供可选的密钥迁移,而且范围严格限定为:你在算力 Provider 中手动配置、由你自己管理且能与 Provider 配置明确关联的 API Key。
以下凭据不会被迁移:
- DesireCore 账号会话和官方云端算力凭据
- 由 OAuth、CLI 或其他外部登录流程管理的凭据
- Claude、Codex 等订阅或命令行工具管理的登录状态
- 对象存储、代码托管、邮件和其他非算力 Provider 凭据
选择携带 API Key 后,DesireCore 不会把原始 config/secrets.json 放进迁移包,而是将符合条件的密钥去重后写入独立加密载荷。迁移口令先通过 scrypt(N=2^17、r=8、p=1)派生密钥,再使用 AES-256-GCM 加密并校验载荷完整性。口令至少需要 12 个字符,DesireCore 不会保存口令,也无法在遗失后恢复。
导入时可以完全跳过密钥而不影响其他数据。若选择导入,必须先输入迁移口令;口令错误、文件被篡改或载荷损坏时不会导入密钥。本机已有同一 Provider 的密钥时,你可以逐项选择保留本机值或使用包内值:身份替换模式默认使用包内值,身份归并模式默认保留本机值。迁入的密钥会标记为未验证,请在新设备上重新验证连接和权限。
加密只降低迁移包泄露后的暴露风险,并不替代安全保管。请将迁移包与口令分开保存,不要导入来源不可信或完整性可疑的包;完成迁移后妥善删除不再需要的副本。若你直接复制整个数据根目录,而不是使用应用内导出,可能连同本地密钥存储一起复制,应按包含敏感凭据的文件处理。
导入数据
导入数据时,系统会读取包内标记并自动区分普通备份与迁移包。普通备份会展示可恢复类别,你可以只恢复部分内容;迁移包则进入身份迁移流程。
导入前系统会检查:
- 文件结构是否有效
- 是否存在同名或同 ID 智能体
- 是否存在技能、团队或配置冲突
- 备份包中是否包含大体积工作区文件
- 当前平台是否能访问相关路径
普通备份遇到冲突时,界面会给出覆盖、跳过或保留两份等可选处理方式。迁移包来自不同身份时,你可以:
- 作为此设备的新身份:使用包内身份和数据;当前身份下的数据将不再作为活动身份的数据访问
- 归并到当前身份:保留本机身份,将包内用户数据定向归入当前身份,并逐项处理冲突
如果新设备已经有用户创建的智能体,系统会要求先导出普通备份作为回滚点,或由你明确确认跳过风险。导入会停止 Agent 服务并中断正在运行的任务;完成后需要重启应用。
清除本地数据
如果需要重置 DesireCore,可以按类别清除本地数据:
| 数据类别 | 包含内容 |
|---|---|
| 对话记录 | 聊天消息、会话历史和执行回执 |
| 智能体 | 智能体配置、人设、记忆和技能(核心智能体会自动重装) |
| 技能 | 全局技能定义(内置技能会自动重装) |
| 算力 | LLM 供应商、模型列表和计算节点配置 |
| 存储 | S3 或对象存储连接配置 |
| 代码托管 | GitHub、Gitee、Gitea 等连接配置 |
| 用户档案 | 用户身份、头像、个人记忆库和审批偏好 |
| 市场数据 | 官方市场仓库缓存 |
| 应用与服务 | 已安装应用、派生服务状态和审批缓存 |
| 通知与调度 | 通知中心记录、定时任务配置和执行历史 |
| 缓存与日志 | 用量统计索引、关系图谱缓存和日志文件 |
- 确认选择后,点击 清除选中数据
- 系统会依次停止后台服务、删除数据、重启应用
清除操作不可恢复。处理异常时优先清除“缓存与日志”,不要直接删除智能体或用户档案。
隐私保障
- 本地存储:核心数据默认保存在本机文件系统
- 密钥保护:应用内导出始终排除原始本地密钥文件;只有用户明确选择时,符合条件的算力 API Key 才会以独立加密载荷进入迁移包
- 调用透明:AI 请求、工具调用和外部服务交互可在活动记录中审计
- 最小统计:安装与产品使用统计只发送设备/随机标识、版本、平台和数字计数,不包含对话、提示词、产物、Agent 名称、任务标题或文件路径,并可通过统一开关关闭
- 可审计导出:审计日志可作为独立类别导出,便于合规留存
- 数据不出本地:所有数据默认存储在你的设备上,不会自动上传到云端
- 账号能力可选:登录、云端算力、订阅和 credit 需要在线服务,但不强制上传本地对话和智能体文件
敏感场景建议
- 使用本地模型或可信私有模型服务处理高度敏感内容
- 定期查看活动记录中的接口审计,确认数据发送目标
- 对涉及命令执行、文件写入、对外发送的操作保留确认
- 同机恢复使用普通备份,换机使用「迁移到新设备」向导
- 迁移前先建立回滚点,密钥迁移包与口令分开保管