From 84fcb0d4c0efeafdecc5b961ba9e22ba8fa9d9fc Mon Sep 17 00:00:00 2001 From: ysicing Date: Sun, 27 Sep 2026 20:36:27 +0800 Subject: [PATCH] =?UTF-8?q?docs(legal):=20=E6=9B=B4=E6=96=B0=E9=9A=90?= =?UTF-8?q?=E7=A7=81=E4=B8=8E=E6=9C=8D=E5=8A=A1=E6=9D=A1=E6=AC=BE=E4=B8=AD?= =?UTF-8?q?=E7=9A=84=E5=90=8C=E6=AD=A5=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../XStatsUI/Resources/Legal/Privacy.en.md | 16 ++++++---------- .../XStatsUI/Resources/Legal/Privacy.zh-Hans.md | 16 ++++++---------- .../Sources/XStatsUI/Resources/Legal/Terms.en.md | 4 +--- .../XStatsUI/Resources/Legal/Terms.zh-Hans.md | 4 +--- 4 files changed, 14 insertions(+), 26 deletions(-) diff --git a/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Privacy.en.md b/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Privacy.en.md index 48f142a..7daf000 100644 --- a/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Privacy.en.md +++ b/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Privacy.en.md @@ -2,20 +2,20 @@ Effective date: September 23, 2026 -This policy explains what XStats processes on your Mac and which features contact external services. XStats-operated services retain only the update-statistics aggregates described in section 2; the app's other persisted data stays on your Mac and is not uploaded to XStats-operated servers. Only if you configure and manually use WebDAV sync is a settings backup stored on the server you configured. Network tests also send requests needed for the test to independent providers, as described in sections 3 and 4. Contact: i@xiai.me. +This policy explains what XStats processes on your Mac and which features contact external services. XStats-operated services retain only the update-statistics aggregates described in section 2; the app's other persisted data stays on your Mac and is not uploaded to XStats-operated servers. Network tests send requests needed for the test to independent providers, as described in section 3. Contact: i@xiai.me. ## 1. Data processed on your Mac -CPU, GPU, memory, network, temperature, fan, and process metrics come from local system interfaces. Those metrics, their history, hardware serial numbers, and process lists are processed on your Mac and are not uploaded to the XStats update service. While history is on, XStats also totals daily time with the screen on and unlocked, without sampling every minute. For the live display and when saving a total, it reads how long ago the last keyboard or pointer input occurred (not what the input was) and excludes the current continuous idle tail beyond five minutes. If you resume input before the next settlement, idle time in between may still be counted. Days while history was turned off are not filled in after you turn it back on. At each launch, it reads display on/off times from the system power log (`pmset -g log`) to fill in previous days; those estimates do not subtract idle or locked time. Results are kept for 90 days in the same local database as metric history. Preferences are stored locally; selected preferences become a remote backup only when you manually use WebDAV sync. +CPU, GPU, memory, network, temperature, fan, and process metrics come from local system interfaces. Those metrics, their history, hardware serial numbers, and process lists are processed on your Mac and are not uploaded to the XStats update service. While history is on, XStats also totals daily time with the screen on and unlocked, without sampling every minute. For the live display and when saving a total, it reads how long ago the last keyboard or pointer input occurred (not what the input was) and excludes the current continuous idle tail beyond five minutes. If you resume input before the next settlement, idle time in between may still be counted. Days while history was turned off are not filled in after you turn it back on. At each launch, it reads display on/off times from the system power log (`pmset -g log`) to fill in previous days; those estimates do not subtract idle or locked time. Results are kept for 90 days in the same local database as metric history. Preferences are stored locally. AI Usage & Quotas is off by default. When enabled, it reads local Codex / Claude Code session logs to summarize token usage by model. It also checks subscription quotas. Codex first uses the installed local Codex CLI App Server, which maintains its own login; if unavailable, XStats reads cached CLI credentials and queries the quota service directly. Claude Code uses its local CLI credentials for direct quota requests. Requests send the login token to the respective provider; XStats does not save tokens in its preferences or statistics database, and does not send session-log contents with quota requests. A quota request may fail or be rate-limited without affecting local token statistics. Turning the feature off stops subsequent scans and quota requests. Apple Intelligence process explanations run on-device and do not send process information to another AI service. -If you manually configure Sub2API as a backup quota source for Codex or Claude Code, the app contacts the HTTPS server specified for that source only when its automatic quota lookup fails. The two configurations are stored separately, and XStats verifies the queried account's platform. Your admin email and password are sent to the corresponding server to sign in. Passwords are stored separately in this Mac's Keychain; addresses, emails, and account IDs stay in local preferences and are excluded from WebDAV backups. Background quota requests use `force=false` and do not trigger active probes. Removing one source's configuration deletes its locally stored Sub2API password and connection details. +If you manually configure Sub2API as a backup quota source for Codex or Claude Code, the app contacts the HTTPS server specified for that source only when its automatic quota lookup fails. The two configurations are stored separately, and XStats verifies the queried account's platform. Your admin email and password are sent to the corresponding server to sign in. Passwords are stored separately in this Mac's Keychain; addresses, emails, and account IDs stay in local preferences. Background quota requests use `force=false` and do not trigger active probes. Removing one source's configuration deletes its locally stored Sub2API password and connection details. You choose whether and where to export diagnostics; they are not uploaded automatically. An exported archive may contain a settings summary, the last three days of system logs, cleanup records, and crash reports. Review it before sharing. ## 2. Update checks and installation statistics -When automatic update checks are enabled, XStats sends its current version and the SHA-256 hash of a random installation identifier to the XStats update service according to the schedule selected in Settings → About: quietly while running, at launch, daily, weekly, or monthly. Choosing Never limits these requests to manual checks. Quiet checks still contact the service but do not show an update prompt. China-region devices try `x-stats.china.12306.work` first; others try `xstats-apps.12306.work` first. The other endpoint is tried only if the preferred one fails. The original random value stays in local preferences and is excluded from WebDAV backups. +When automatic update checks are enabled, XStats sends its current version and the SHA-256 hash of a random installation identifier to the XStats update service according to the schedule selected in Settings → About: quietly while running, at launch, daily, weekly, or monthly. Choosing Never limits these requests to manual checks. Quiet checks still contact the service but do not show an update prompt. China-region devices try `x-stats.china.12306.work` first; others try `xstats-apps.12306.work` first. The other endpoint is tried only if the preferred one fails. The original random value stays in local preferences. The update service's application database stores the hash, current version, first and most recent check times, and cumulative check count. These aggregate records support deduplicated installation counts, version distribution, and activity statistics. They have no automatic expiry. The update service does not create a separate record for every request or store request IP addresses in its application database. It uses IP addresses in memory for one-minute rate limiting. Network infrastructure may process connection metadata under its own rules. @@ -31,13 +31,9 @@ You can set automatic checks to Never in Settings → About. You decide whether These third-party services operate independently and process requests under their own policies. Except for update checks, these requests are not relayed through XStats servers. -## 4. WebDAV settings sync +## 4. Retention, controls, and contact -You enter and save the WebDAV server address, username, and password yourself; XStats does not provide or preconfigure a WebDAV sync server. The app contacts that server over HTTPS only when you manually upload or download. The uploaded JSON contains preferences, not monitoring data, history, the original installation identifier, or WebDAV connection details. Your WebDAV password stays in the local Keychain. XStats does not add encryption to the backup file stored on your server. You and your chosen provider control retention and deletion there. - -## 5. Retention, controls, and contact - -You and macOS control local data. Uninstalling the app may leave local preferences, logs, or diagnostic archives you exported. You can disable optional features to stop future requests and delete local or WebDAV data yourself. +You and macOS control local data. Uninstalling the app may leave local preferences, logs, or diagnostic archives you exported. You can disable optional features to stop future requests and delete local data yourself. The update service retains hashed aggregate records without automatic expiry, as described in section 2. If you email us, we use your message to handle the request and keep it only as long as needed for that purpose and applicable obligations. Contact i@xiai.me to ask about, correct, or delete an associated record we can locate, or to raise a privacy concern. diff --git a/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Privacy.zh-Hans.md b/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Privacy.zh-Hans.md index e679a80..7fe57be 100644 --- a/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Privacy.zh-Hans.md +++ b/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Privacy.zh-Hans.md @@ -2,20 +2,20 @@ 生效日期:2026 年 9 月 23 日 -本政策说明 XStats 在 macOS 上处理哪些信息,以及哪些功能会连接外部服务。XStats 自有服务仅保存第 2 节所述的更新统计汇总;应用自身的其他持久化数据保存在本机,不上传到 XStats 自有服务器。只有你自行配置并主动使用 WebDAV 同步时,设置备份才会保存在你配置的服务器;联网测试也会向相应第三方发送完成测试所需的请求,详见第 3、4 节。联系邮箱:i@xiai.me。 +本政策说明 XStats 在 macOS 上处理哪些信息,以及哪些功能会连接外部服务。XStats 自有服务仅保存第 2 节所述的更新统计汇总;应用自身的其他持久化数据保存在本机,不上传到 XStats 自有服务器。联网测试会向相应第三方发送完成测试所需的请求,详见第 3 节。联系邮箱:i@xiai.me。 ## 1. 本机处理的数据 -CPU、GPU、内存、网络、温度、风扇、进程等监控数据来自本机系统接口,其指标、历史记录、硬件序列号和进程列表仅在本机处理,不上传到 XStats 更新服务。开启历史记录时,应用还会在本机统计每天屏幕亮着且未锁定的时间,不每分钟采样。实时展示与结算时会读取距离上次键鼠操作的时长(不读取操作内容),扣除当前连续空闲超过 5 分钟的尾段;若在下一次结算前重新操作,中间的空闲时间可能仍被计入。重新开启历史记录后,关闭期间的日期不会被补录。每次启动时读取系统电源日志(`pmset -g log`)中的屏幕开关时间以补齐此前几天;这部分估算不扣除空闲或锁屏时间。结果与指标历史存于同一本机数据库,保留 90 天。设置保存在本机应用偏好中;仅在你主动使用 WebDAV 同步时,所选设置会形成远端备份。 +CPU、GPU、内存、网络、温度、风扇、进程等监控数据来自本机系统接口,其指标、历史记录、硬件序列号和进程列表仅在本机处理,不上传到 XStats 更新服务。开启历史记录时,应用还会在本机统计每天屏幕亮着且未锁定的时间,不每分钟采样。实时展示与结算时会读取距离上次键鼠操作的时长(不读取操作内容),扣除当前连续空闲超过 5 分钟的尾段;若在下一次结算前重新操作,中间的空闲时间可能仍被计入。重新开启历史记录后,关闭期间的日期不会被补录。每次启动时读取系统电源日志(`pmset -g log`)中的屏幕开关时间以补齐此前几天;这部分估算不扣除空闲或锁屏时间。结果与指标历史存于同一本机数据库,保留 90 天。设置保存在本机应用偏好中。 “AI 用量与额度”默认关闭;开启后读取本机 Codex / Claude Code 会话日志,按模型汇总 Token 用量,并查询相应的订阅额度。Codex 优先通过本机已安装的 Codex CLI App Server 读取额度,由 CLI 自行维护登录;若该方式不可用,才读取本机 CLI 登录凭据并直连额度接口。Claude Code 使用本机 CLI 凭据直连。查询请求会向对应服务发送登录令牌;令牌不写入 XStats 设置或统计数据库,日志内容不会随额度请求发送。接口可能变化或限流,额度查询失败不影响本机 Token 统计。关闭此功能后停止后续扫描和额度查询。Apple 智能进程解释在本机运行,不把进程信息发送给其他 AI 服务。 -如果你为 Codex 或 Claude Code 手动配置 Sub2API 额度备选来源,只有对应来源的自动额度查询失败时,应用才会连接你为它填写的 HTTPS 服务器。两份配置分别保存,并核对查询账号的平台。管理员邮箱与密码在登录时发送到对应服务器;密码分别保存在本机钥匙串,地址、邮箱和账号 ID 只保存在本机设置中,不进入 WebDAV 备份。后台额度请求使用 `force=false`,不触发主动探测。移除某个来源的配置会删除其本机保存的 Sub2API 密码和连接信息。 +如果你为 Codex 或 Claude Code 手动配置 Sub2API 额度备选来源,只有对应来源的自动额度查询失败时,应用才会连接你为它填写的 HTTPS 服务器。两份配置分别保存,并核对查询账号的平台。管理员邮箱与密码在登录时发送到对应服务器;密码分别保存在本机钥匙串,地址、邮箱和账号 ID 只保存在本机设置中。后台额度请求使用 `force=false`,不触发主动探测。移除某个来源的配置会删除其本机保存的 Sub2API 密码和连接信息。 诊断信息由你主动导出到指定位置,不会自动上传。导出的压缩包可能包含应用设置摘要、最近三天的系统日志、清理记录和崩溃报告;分享前请自行检查内容。 ## 2. 更新检查与安装统计 -启用自动检查更新时,应用按你在“设置 → 关于”选择的策略(运行时静默、启动时、每日、每周或每月)向 XStats 更新服务发送当前版本和随机安装标识的 SHA-256 哈希,并获取版本清单;选择“从不”时仅在你手动检查后发送。“运行时静默”仍会检查,但不会弹出新版本提示。中国地区优先连接 `x-stats.china.12306.work`,其他地区优先连接 `xstats-apps.12306.work`,首选失败时才尝试另一端。原始随机值仅保存在本机偏好设置中,不在 WebDAV 备份中。 +启用自动检查更新时,应用按你在“设置 → 关于”选择的策略(运行时静默、启动时、每日、每周或每月)向 XStats 更新服务发送当前版本和随机安装标识的 SHA-256 哈希,并获取版本清单;选择“从不”时仅在你手动检查后发送。“运行时静默”仍会检查,但不会弹出新版本提示。中国地区优先连接 `x-stats.china.12306.work`,其他地区优先连接 `xstats-apps.12306.work`,首选失败时才尝试另一端。原始随机值仅保存在本机偏好设置中。 更新服务的业务数据库保存哈希、当前版本、首次及最近检查时间、累计检查次数,用于去重统计安装量、版本分布和活跃情况。此汇总记录不设自动到期清理;更新服务不建立逐次请求明细,应用服务不将请求 IP 写入业务数据库。请求 IP 会在内存中用于一分钟限流。网络基础设施可能按其自身规则处理连接元数据。 @@ -31,13 +31,9 @@ CPU、GPU、内存、网络、温度、风扇、进程等监控数据来自本 上述第三方服务不由 XStats 控制,其对请求信息的处理以各自政策为准。除更新服务外,这些请求不经 XStats 服务器转发。 -## 4. WebDAV 设置同步 +## 4. 保存、控制与联系我们 -WebDAV 服务器地址、用户名和密码均由你自行填写并保存;XStats 不提供或预设 WebDAV 同步服务器。只有你主动上传或下载时,应用才会通过 HTTPS 与该服务器通信。上传的 JSON 文件包含偏好设置,不包含监控数据、历史记录、原始安装标识或 WebDAV 连接信息。WebDAV 密码保存在本机钥匙串;备份文件在服务器上不由 XStats 额外加密。远端文件的保存与删除由你及所选服务商管理。 - -## 5. 保存、控制与联系我们 - -本机数据由你和 macOS 管理;卸载应用不一定自动删除本机偏好、日志或你已导出的诊断包。可通过关闭相应功能停止后续查询,并在本机或 WebDAV 服务端删除相关数据。 +本机数据由你和 macOS 管理;卸载应用不一定自动删除本机偏好、日志或你已导出的诊断包。可通过关闭相应功能停止后续查询,并自行删除本机相关数据。 更新服务的哈希汇总记录按第 2 节说明保留,不自动过期。通过邮件联系我们时,我们仅将邮件用于处理你的请求,并按处理请求及适用义务所需的期限保存。你可通过 i@xiai.me 请求了解、更正或删除我们可定位的关联记录,或提出隐私问题。 diff --git a/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Terms.en.md b/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Terms.en.md index d7b6b9d..0827acc 100644 --- a/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Terms.en.md +++ b/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Terms.en.md @@ -12,11 +12,9 @@ XStats provides local system monitoring, network tests, settings sync, cleanup, Some features change local state, including file cleanup, app uninstallation, fan control, startup-item management, and update installation. The app presents relevant choices, permission requests, or confirmations, but you should still review targets, keep appropriate backups, and decide whether an action suits your device. Items moved to Trash may be recoverable only while Trash remains unemptied and macOS permits recovery. -You configure the WebDAV server address and account yourself; XStats does not provide or preconfigure a sync server. You also start each sync manually. Uploading may replace the remote settings file; downloading and applying may overwrite corresponding local preferences. Manage server access, backups, and credentials accordingly. - ## 3. Network features and third parties -Update checks, network details, speed tests, egress checks, global probes, and WebDAV may connect to external services when used. Some services are run by independent third parties; their availability, accuracy, limits, and terms can change. Do not submit a target to Globalping if it must stay private. See the Privacy Policy for details. +Update checks, network details, speed tests, egress checks, and global probes may connect to external services when used. Some services are run by independent third parties; their availability, accuracy, limits, and terms can change. Do not submit a target to Globalping if it must stay private. See the Privacy Policy for details. Finding an update does not install it automatically. You can review the changes and decide whether to upgrade. diff --git a/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Terms.zh-Hans.md b/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Terms.zh-Hans.md index f14ed91..8b0d008 100644 --- a/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Terms.zh-Hans.md +++ b/Packages/XStatsKit/Sources/XStatsUI/Resources/Legal/Terms.zh-Hans.md @@ -12,11 +12,9 @@ XStats 提供本机系统监控、网络测试、设置同步及清理等功能 部分功能会修改本机状态,例如清理文件、卸载应用、控制风扇、管理启动项或安装更新。应用会在相应步骤显示选择、权限要求或确认,但你仍应核对目标、保留必要备份,并确认操作适合自己的设备。移到废纸篓的内容只有在废纸篓未清空且系统允许时才可能恢复。 -WebDAV 服务器地址和账号由你自行配置,XStats 不提供或预设同步服务器;同步也由你主动发起。上传可能替换远端同名设置文件,下载并应用可能覆盖本机相应设置;请管理好服务器权限、备份和凭据。 - ## 3. 联网功能与第三方服务 -检查更新、网络详情、测速、出口检测、全球探针及 WebDAV 等功能按实际使用情形连接外部服务。部分服务由第三方提供,不受 XStats 控制;其可用性、准确性、限额及条款可能变化。请勿把不应公开的目标提交给全球探针。详见隐私政策。 +检查更新、网络详情、测速、出口检测、全球探针等功能按实际使用情形连接外部服务。部分服务由第三方提供,不受 XStats 控制;其可用性、准确性、限额及条款可能变化。请勿把不应公开的目标提交给全球探针。详见隐私政策。 发现更新不代表应用会自动安装;由你查看更新内容并决定是否升级。