device-center 0.2.0-beta.3 → 0.2.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/CONTRIBUTING.md +2 -0
  2. package/Dockerfile +2 -1
  3. package/README.md +24 -7
  4. package/SECURITY.md +8 -2
  5. package/bin/device-center.mjs +6 -5
  6. package/docs/agent-install.md +43 -9
  7. package/docs/driver-binding.md +14 -4
  8. package/docs/friend-trial.md +5 -5
  9. package/docs/hosted-access.md +1 -1
  10. package/docs/npm.md +13 -9
  11. package/docs/onboarding.md +5 -3
  12. package/docs/remote-access.md +2 -2
  13. package/docs/roadmap.md +13 -1
  14. package/docs/security-and-sync.md +4 -0
  15. package/docs/troubleshooting.md +11 -0
  16. package/docs/windows-acceptance.md +57 -0
  17. package/favicon.svg +4 -0
  18. package/index.html +1 -0
  19. package/login.html +2 -2
  20. package/npm-shrinkwrap.json +2 -2
  21. package/package.json +4 -2
  22. package/scripts/access.mjs +0 -1
  23. package/scripts/driver.mjs +27 -11
  24. package/scripts/service.mjs +42 -16
  25. package/server/cloudAccess.mjs +7 -1
  26. package/server/drivers/access.mjs +15 -14
  27. package/server/drivers/browserPairing.mjs +46 -0
  28. package/server/drivers/cloudLink.mjs +19 -20
  29. package/server/drivers/cloudRegistry.mjs +23 -6
  30. package/server/drivers/privateFiles.mjs +57 -0
  31. package/server/drivers/windowsSecurity.mjs +119 -0
  32. package/server/drivers/windowsService.mjs +77 -0
  33. package/server/index.mjs +30 -7
  34. package/server/unifiedAccess.mjs +24 -4
  35. package/src/api.js +4 -0
  36. package/src/install-prompt.js +2 -2
  37. package/src/install-walkthrough.js +49 -0
  38. package/src/login-flow.js +37 -0
  39. package/src/login.css +3 -1
  40. package/src/login.js +20 -11
  41. package/src/main.js +20 -12
  42. package/src/messages.js +1745 -162
  43. package/src/onboarding.js +60 -17
  44. package/src/pair.css +23 -0
  45. package/src/pair.js +60 -0
  46. package/src/pairing-handoff.js +30 -0
  47. package/src/start.css +265 -45
  48. package/src/start.js +155 -26
  49. package/start.html +143 -27
package/src/messages.js CHANGED
@@ -1,13 +1,12 @@
1
- // Explicit interface copy only; never translate user device data or commands.
2
1
  export const messages = {
3
2
  "zh-CN": {
4
3
  "language": "语言",
5
4
  "guide.title": "开始试用 · Device Center",
6
5
  "guide.open": "进入设备面板 ↗",
7
- "guide.badge": "公开试用 · 0.2.0-beta.3 · MIT",
6
+ "guide.badge": "开发预览 · 0.2.0-beta.5 · MIT",
8
7
  "guide.hero": "让你的 Agent 看见自己的闲置电脑。",
9
8
  "guide.lead": "查看设备资源、记住每台电脑的用途,并在单独授权后读取指定日志。把安装交给本机 Agent,从一台电脑开始。",
10
- "guide.platform": "macOS / Linux · Node.js 24+ · Windows 原生版暂未支持",
9
+ "guide.platform": "macOS / Linux / Windows 11 候选 · Node.js 24+",
11
10
  "guide.install": "选一种方式,复制给本机 Agent",
12
11
  "guide.local": "本机使用",
13
12
  "guide.localDesc": "本机面板和 MCP,无需账号。适合先了解自己的电脑与已有设备资源。",
@@ -15,7 +14,7 @@ export const messages = {
15
14
  "guide.hosted": "官方托管",
16
15
  "guide.hostedDesc": "用自己的账号管理设备,使用官方加密中转。Driver 和私钥仍留在设备上。",
17
16
  "guide.hostedCopy": "复制托管安装说明",
18
- "guide.paste": "粘贴给正在目标电脑上运行、能安装软件的 Agent。它会检查已有配置、安装固定版本、配置用户级后台服务及 MCP,再核验真实结果。网页本身不会安装软件。",
17
+ "guide.paste": "交给 Agent 时复制安装说明;手动安装时复制 Shell 脚本,到目标设备终端执行。两种方式都安装本机 Driver;MCP 只需在使用 AI Agent 的管理电脑上配置。网页只复制,不执行安装。",
19
18
  "guide.custom": "已有自己的控制面?",
20
19
  "guide.address": "自建控制面的 HTTPS 地址",
21
20
  "guide.customCopy": "复制自建接入说明",
@@ -23,9 +22,9 @@ export const messages = {
23
22
  "guide.preview": "查看或手动复制完整说明",
24
23
  "guide.instructions": "Agent 安装说明",
25
24
  "guide.pair": "使用托管时,登录并认领自己的电脑",
26
- "guide.pair1": "按 Agent 提示打开设备面板,使用自己的 App Services/个人站账号登录。没有账号时在账号页注册。",
25
+ "guide.pair1": "仅托管模式需要账号。有浏览器时脚本自动打开绑定页;无浏览器时在另一台电脑登录控制面并输入终端配对码。",
27
26
  "guide.loginLink": "打开云端设备面板",
28
- "guide.pair2": "在面板输入本机终端显示的五分钟配对码,核对完整公钥指纹后批准。密码、私钥和配对码不要发给别人或贴到 Agent 对话。",
27
+ "guide.pair2": "只批准自己刚发起的申请,核对设备名称、系统和终端显示的完整公钥指纹;不要分享配对码。",
29
28
  "guide.pair3": "在另一台自己的电脑重复安装并绑定同一账号。没有真实回报的设备会显示未知或未回报。",
30
29
  "guide.localHint": "本机模式跳过此步。绑定只允许已说明的资源回报;读取日志需要目标设备另外授权。",
31
30
  "guide.try": "试用时看这四件事",
@@ -41,9 +40,9 @@ export const messages = {
41
40
  "guide.faqBody": "确认 Node.js 为 24+、Driver 正在运行、电脑已唤醒、网络及系统时间正常。端口被占用时改用空闲本机端口,不停止其他程序。云端“未回报”表示近期没收到数据,不是私钥过期。",
42
41
  "guide.feedback": "反馈时说明系统、版本、所选模式、失败步骤和去掉敏感信息的错误。不要附私钥、配对码、cookie 或日志正文。",
43
42
  "guide.scope": "这版的范围",
44
- "guide.scopeBody": "支持真实资源、设备说明、手动采集和经单独授权的日志尾读。暂不提供任意远程命令、通用文件传输、Windows 原生 Driver、自动网络扫描、离线局域网授权或本机/云端说明同步。",
43
+ "guide.scopeBody": "支持真实资源、设备说明、手动采集和经单独授权的日志尾读。暂不提供任意远程命令、通用文件传输、自动网络扫描、离线局域网授权或本机/云端说明同步。",
45
44
  "guide.quota": "官方中转为试用额度:每账号每日 100 MiB(UTC),每方向 16 KiB/s;不是无限带宽服务。服务与应用为手动登记,未经自动检测。",
46
- "guide.full": "Agent 完整安装指南(中文)",
45
+ "guide.full": "完整安装指南(中文)",
47
46
  "guide.markdown": "文字版试用指南(中文)",
48
47
  "guide.source": "MIT npm 源码包 ↗",
49
48
  "guide.footer": "本机安装 · 私钥留在设备 · 操作单独授权",
@@ -57,14 +56,14 @@ export const messages = {
57
56
  "prompt.private": "控制面:{origin}。Driver 在设备本机运行,身份私钥留在设备上,不托管到云端。",
58
57
  "prompt.background": "用户级后台服务,登录系统后启动",
59
58
  "prompt.foreground": "仅前台运行,不安装后台服务",
60
- "prompt.environment": "检查 macOS/Linux、Node.js >=24、npm 和当前 Agent 的 MCP 支持。Windows 原生 Driver 尚不支持,遇到 Windows 应说明并停止。缺少 Node.js 时仅使用官方来源;需要管理员或系统授权时交给我处理。",
59
+ "prompt.environment": "检查 macOS/Linux、Node.js >=24、npm 和当前 Agent 的 MCP 支持;目标系统与选择不符时停止,并让用户重新选择。Node.js 仅用官方来源,管理员或系统授权交给用户。",
61
60
  "prompt.existing": "先检查已有 CLI、绑定、用户服务及 {url}/api/health,保留原配置。固定 CLI 已存在时可检查 {status} 和 {service}。不打开私钥。端口被占用时换空闲的已知回环端口并同步地址,不停止其他程序。版本、控制面和启动方式匹配则复用;冲突时让我选择,不覆盖、解绑或重复安装。",
62
61
  "prompt.userInstall": "全新安装使用用户可写的固定位置,无需 sudo:",
63
62
  "prompt.config": "不修改全局 npm 设置或 shell 启动文件。后续使用上述绝对 CLI 路径。",
64
63
  "prompt.bg": "先查看计划,确认用户级、仅回环监听,再安装并检查状态。失败或已有冲突时保留现场,不清理重装。Linux 需要 systemd --user,macOS 需要当前登录用户的 launchd;不可用时如实建议前台模式。",
65
64
  "prompt.fg": "保持前台进程运行。若使用托管,下一步 connect 获准后会启动 Driver;本机模式执行下方 start。关闭网页不会停止进程;关闭终端会停止回报。",
66
65
  "prompt.pairBefore": "先查看回报范围,再申请绑定:",
67
- "prompt.pairAfter": "让我在 {origin} 登录自己的账号,在本机终端核对完整公钥指纹并手动批准。不要代我批准,不读取密码、cookie 或私钥。配对码只留在本机终端,不贴到对话、脚本或链接;如果工具会记录它,让我仅在本机终端执行 connect,你完成其他检查。批准后核验真实资源回报,不能仅凭 configured=true 声称连通。",
66
+ "prompt.pairAfter": "由你执行 --browser 并保持进程。它自动打开本机浏览器,不输出临时凭据。只请我在 {origin} 登录自己的账号,核对输出的完整公钥指纹并批准一次。不要代我批准,不读取密码、cookie 或私钥,不获取带凭据的链接。持续观察进程,批准后核验 firstReport.verified=true 并继续;不要求我去终端执行或回复“已批准”。configured=true 不代表回报成功。无浏览器或打开失败时,才让我在本机终端执行去掉 --browser 的 connect,配对码留在终端。控制面不支持时提示升级,不自动输出凭据。",
68
67
  "prompt.local": "不执行 connect,不生成设备身份或申请账号。如果发现已有云端绑定,先解释 start 或后台服务可能恢复它,不把已有绑定伪装成本机专用模式。",
69
68
  "prompt.mcp": "读取 {url}/api/connector/setup,通过当前 Agent 支持的官方接口配置 Streamable HTTP MCP:{mcp}。复用一致配置,不覆盖其他 MCP。工具无法配置时只让我粘贴该地址,不编造接通结果。",
70
69
  "prompt.verify": "核验 /api/health、/api/overview 的真实本机内存和磁盘,以及 Agent 实际调用 device_center_list_resources。报告版本、面板/MCP 地址、运行方式、云端绑定结果和未完成步骤。",
@@ -79,14 +78,17 @@ export const messages = {
79
78
  "login.submit": "登录",
80
79
  "login.unified": "使用 App Services/个人站的统一账号。",
81
80
  "login.link": "使用统一账号登录 ↗",
82
- "login.help": "在新页面用邮箱或 Google 完成登录,回到这里会自动进入设备面板。",
83
- "login.continue": "我已登录,继续",
81
+ "login.help": "已有登录会自动进入。需要登录时打开下方账号页,完成后回到这里继续。",
82
+ "login.continue": "进入控制面",
84
83
  "login.return": "完成统一账号登录后,回到此页即可。",
85
84
  "login.first": "请先在统一账号页面完成邮箱或 Google 登录,再回到这里。",
86
85
  "login.owner": "当前账号没有此个人面板的访问权限,请使用面板所有者的账号。",
87
86
  "login.rate": "尝试过于频繁,请一分钟后重试。",
88
- "login.unavailable": "统一账号服务暂不可用,请稍后重试。",
89
- "login.timeout": "连接账号服务超时,请重试。",
87
+ "login.unavailable": "账号服务暂时连接失败。请在这里重试,无需反复返回个人站。",
88
+ "login.timeout": "账号校验超时。请在这里重试,无需重新输入密码。",
89
+ "login.session": "登录会话未能保存。请在同一个浏览器中打开账号页和控制面,并检查本站 Cookie 是否被阻止。",
90
+ "login.returned": "控制面登录未能保持,已暂停自动跳转。请在这里重试;若仍失败,请记录提示和发生时间。",
91
+ "login.checking": "正在确认登录状态…",
90
92
  "login.optionsError": "无法读取登录方式,请刷新重试。",
91
93
  "login.credentials": "用户名或密码不正确。",
92
94
  "login.multi": "账号设备隔离 · HTTPS 保护",
@@ -320,7 +322,7 @@ export const messages = {
320
322
  "panel.224": "复制给 Agent",
321
323
  "panel.225": "查看完整安装说明",
322
324
  "panel.226": "交给 Agent 的安装说明",
323
- "panel.227": "支持 macOS / Linux,需要 Node.js 24。说明固定使用 0.2.0-beta.3。本页只复制说明;安装由你交给的 Agent 在本机执行。",
325
+ "panel.227": "支持 macOS / Linux / Windows 11,需要 Node.js 24。说明固定使用 0.2.0-beta.5。本页只复制说明;安装由你交给的 Agent 在本机执行。",
324
326
  "panel.228": "已复制。粘贴给目标电脑上的 Agent;需要绑定时由你登录并核对。",
325
327
  "panel.229": "请手动复制已选中的安装说明。",
326
328
  "panel.230": "无法确认管理电脑",
@@ -439,7 +441,7 @@ export const messages = {
439
441
  "panel.343": "网络不可达时走云端中转;证书、身份或权限错误直接停止。两种路径都需要控制面在线核验设备是否已撤销。",
440
442
  "panel.344": "目标设备可运行",
441
443
  "panel.345": "device-center access revoke --peer 管理电脑完整指纹 --confirm",
442
- "panel.346": "随时撤销。私钥与日志授权路径留在本机;云端仅转发 TLS 密文。Windows 原生 Agent 尚未提供。",
444
+ "panel.346": "随时撤销。私钥与日志授权路径留在本机;云端仅转发 TLS 密文。 Windows 11 预览版 · 使用 PowerShell 安装,按图示核对绑定与后台状态。",
443
445
  "panel.347": "处理中…",
444
446
  "panel.348": "查找请求",
445
447
  "panel.349": "允许分享至多 15 个已关联 SSH 名称和缓存状态(不含地址、用户、路径、配置或私钥)",
@@ -515,7 +517,7 @@ export const messages = {
515
517
  "panel.419": "关掉网页不需要停止服务。普通用户的默认方向是:安装一次,登录系统后自动在后台运行。",
516
518
  "panel.420": "本机安装 · 推荐",
517
519
  "panel.421": "仓库提供用户级服务脚本:macOS 使用 launchd,Linux 使用 systemd。先预览安装计划,再由你执行安装。",
518
- "panel.422": "先手动停止本次同端口前台预览,再安装。需要 Node.js 24 和稳定的仓库目录。安装会登记本用户的后台服务、日志和数据目录;不需要管理员权限。Windows 后台安装尚未支持,可先用前台方式或 Docker。",
520
+ "panel.422": "先手动停止本次同端口前台预览,再安装。需要 Node.js 24 和稳定的仓库目录。安装会登记本用户的后台服务、日志和数据目录;不需要管理员权限。 Windows 11 预览版 · 使用 PowerShell 安装,按图示核对绑定与后台状态。",
519
521
  "panel.423": "用 Docker,如何连接本机智能体?",
520
522
  "panel.424": "Docker 只运行 Device Center。Codex 留在本机,通过相同的",
521
523
  "panel.425": "http://127.0.0.1:端口/mcp",
@@ -523,7 +525,7 @@ export const messages = {
523
525
  "panel.427": "仓库中的 Compose 配置只映射到本机回环地址,并保留数据卷与重启策略。本机 AI → 本机地址 → 容器服务。无需挂载 Docker socket、Codex 配置或宿主机目录。",
524
526
  "panel.428": "Docker 引擎必须运行;不会因为使用容器就自动取得本机的操作权限。容器清单只表示容器,宿主的内存、磁盘与 SSH 配置不可见。请在宿主运行原生 Driver。",
525
527
  "panel.429": "这次只提供脚本与运行配置,没有安装常驻服务或启动 Docker。当前进程仍是本机预览。",
526
- "panel.430": "交给 Agent 安装",
528
+ "panel.430": "安装 Device Center",
527
529
  "panel.431": "授权远程日志",
528
530
  "panel.432": "连接本机 Codex",
529
531
  "panel.433": "云端面板 · 可选",
@@ -651,16 +653,189 @@ export const messages = {
651
653
  "notice.notConfig": "文件不是 SSH 配置,已忽略。",
652
654
  "notice.candidateLimit": "候选数达到上限。",
653
655
  "notice.match": "含 Match 条件:仅登记别名,未解析条件或执行命令。",
654
- "notice.conditional": "已跳过 Host / Match 内的条件 Include,候选可能不完整。"
656
+ "notice.conditional": "已跳过 Host / Match 内的条件 Include,候选可能不完整。",
657
+ "guide.visual.hero": "少切电脑,少搬日志。",
658
+ "guide.visual.lead": "让本机 Agent 查看其他设备的状态与授权日志。",
659
+ "guide.visual.begin": "开始接入",
660
+ "guide.visual.example": "使用示意",
661
+ "guide.visual.yourDevices": "用好你自己的设备",
662
+ "guide.visual.request": "“帮我看看家里服务器的日志。”",
663
+ "guide.visual.myAgent": "本机 Agent",
664
+ "guide.visual.myComputer": "你正在用的电脑",
665
+ "guide.visual.authorized": "按授权读取",
666
+ "guide.visual.otherDevice": "自己的设备",
667
+ "guide.visual.homeServer": "例如:家里的服务器",
668
+ "guide.visual.log": "授权日志",
669
+ "guide.visual.scenarios": "使用场景",
670
+ "guide.visual.debug": "服务报错时",
671
+ "guide.visual.debugBody": "让 Agent 读取已授权日志",
672
+ "guide.visual.save": "买云资源前",
673
+ "guide.visual.saveBody": "先看看已有电脑的资源",
674
+ "guide.visual.away": "出门在外时",
675
+ "guide.visual.awayBody": "通过云端查看在线设备状态",
676
+ "guide.visual.startSmall": "从一台电脑开始",
677
+ "guide.visual.choose": "选一种方式,复制给 Agent",
678
+ "guide.visual.noInstall": "复制不会执行安装",
679
+ "guide.visual.localCaption": "先在自己电脑试一试",
680
+ "guide.visual.localBody": "本机面板,可选 MCP,无需账号。",
681
+ "guide.visual.hostedCaption": "多台设备,统一查看",
682
+ "guide.visual.hostedBody": "用自己的账号绑定设备,使用加密中转。",
683
+ "guide.visual.next": "复制之后,怎么做?",
684
+ "guide.visual.pasteTitle": "去要接入的电脑",
685
+ "guide.visual.pasteBody": "把说明粘贴给那台电脑上的 Agent。",
686
+ "guide.visual.installTitle": "让 Agent 帮你安装",
687
+ "guide.visual.installBody": "它检查环境、安装 Driver,并配置本机 MCP。",
688
+ "guide.visual.bindTitle": "托管模式:本人绑定",
689
+ "guide.visual.bindBody": "程序会自动继续,无需回 Agent 回复“已批准”。",
690
+ "guide.visual.trust": "私钥留在设备上 · 读取日志需要另外授权",
691
+ "guide.visual.details": "详细说明",
692
+ "guide.visual.pairDetails": "安装和绑定的详细步骤",
693
+ "guide.visual.copiedLocal": "已复制。去要接入的电脑,粘贴给 Agent;本机模式无需登录。",
694
+ "guide.visual.copiedHosted": "已复制。去要接入的电脑,粘贴给 Agent;绑定时需要你本人核对。",
695
+ "guide.visual.localReady": "本机模式:开始使用",
696
+ "guide.visual.localReadyBody": "无需登录。在本机面板查看资源,让 Agent 使用 MCP。",
697
+ "guide.visual.heroLine1": "少切电脑。",
698
+ "guide.visual.heroLine2": "少搬日志。",
699
+ "guide.visual.viewFlow": "查看接入流程",
700
+ "guide.visual.pauseMotion": "暂停动效",
701
+ "guide.visual.playMotion": "播放动效",
702
+ "guide.visual.dashboard": "设备面板",
703
+ "guide.focus.overview": "产品介绍",
704
+ "guide.focus.example": "工作原理示意 · 无需操作",
705
+ "guide.focus.firstTry": "第一次用?先选本机,无需账号。",
706
+ "guide.focus.alreadyInstalled": "已接入?",
707
+ "guide.focus.start": "开始操作",
708
+ "guide.focus.startTitle": "接入,从这里开始",
709
+ "guide.focus.startBody": "选好使用方式,再选交给 Agent 或手动安装。目标设备没有 Agent 也能接入。",
710
+ "guide.focus.select": "选择使用方式",
711
+ "guide.focus.useSelfHosted": "使用我的自建服务",
712
+ "guide.focus.copyHint": "这是给 Agent 的说明,请粘贴到 Agent 对话中,而不是终端。",
713
+ "guide.focus.paste": "到目标电脑,粘贴给 Agent",
714
+ "guide.focus.pasteBefore": "先复制上面的说明,再打开要接入的电脑上的 Agent 对话。",
715
+ "guide.focus.pasteAfter": "在要接入的电脑上打开 Agent 对话,粘贴刚才的说明,按它的提示继续。",
716
+ "guide.focus.whatNext": "之后会发生什么?",
717
+ "guide.focus.openHosted": "安装后,打开面板完成本人绑定 ↗",
718
+ "guide.focus.copied": "已复制。下一步:去目标电脑粘贴给 Agent。",
719
+ "pair.title": "绑定这台电脑",
720
+ "pair.step": "本人确认",
721
+ "pair.intro": "只批准你刚在这台电脑发起的申请。申请已自动带入,无需填码。",
722
+ "pair.fingerprint": "与终端或 Agent 显示的完整公钥指纹核对:",
723
+ "pair.scope": "默认只回报本机名称、系统、内存和磁盘,不授予远程操作权限。",
724
+ "pair.approve": "核对一致,绑定这台电脑",
725
+ "pair.cancel": "取消本次操作",
726
+ "pair.loading": "正在读取本次申请",
727
+ "pair.wait": "请稍候;未登录时会先进入账号登录。",
728
+ "pair.bound": "已绑定,正在确认连接",
729
+ "pair.reporting": "正在等待这台电脑的首次资源回报…",
730
+ "pair.noReply": "程序会自动继续,无需回 Agent 回复“已批准”。",
731
+ "pair.done": "这台电脑已接入",
732
+ "pair.doneBody": "云端已收到资源回报。你可以在设备面板命名,填写用途与标签。",
733
+ "pair.reportTimeout": "绑定已完成,但尚未确认首次回报。检查设备是否唤醒、本机服务及网络;不要重复绑定。",
734
+ "pair.cancelled": "已取消",
735
+ "pair.cancelledBody": "没有批准设备;本次申请会自动过期。",
736
+ "pair.missing": "申请已过期或不可用",
737
+ "pair.missingBody": "请在目标电脑重新发起接入。不要打开别人发送的绑定链接;已绑定的电脑无需重新接入。",
738
+ "pair.start": "返回接入指南",
739
+ "pair.dashboard": "进入设备面板",
740
+ "pair.boundary": "私钥留在设备上 · 远程操作需要另行授权",
741
+ "pair.manual": "无浏览器,或已经拿到终端配对码?",
742
+ "pair.manualHint": "只在无浏览器服务器或使用旧客户端时采用:在目标机终端运行下面的手动命令,然后输入配对码。",
743
+ "pair.browserHint": "执行后自动打开本次绑定页。本人登录、核对指纹并批准一次;程序自动等待回报,无需返回 Agent 确认。",
744
+ "pair.approvalUnknown": "尚未确认批准结果",
745
+ "pair.approvalUnknownBody": "网络中断或申请已被处理。先查看目标电脑的接入进程与设备面板;已经绑定时无需重新接入。",
746
+ "guide.method.title": "选择安装方式",
747
+ "guide.method.agent": "交给 Agent",
748
+ "guide.method.manual": "手动安装",
749
+ "guide.manual.prerequisites": "Node.js 24+ · 全新安装。已有安装会停止并保留配置。",
750
+ "guide.manual.browserQuestion": "目标设备能打开浏览器吗?",
751
+ "guide.manual.hasBrowser": "有浏览器",
752
+ "guide.manual.noBrowser": "无浏览器 / 服务器",
753
+ "guide.manual.copy": "复制终端安装脚本",
754
+ "guide.manual.copyHint": "这是 Shell 脚本,请在要接入的设备终端粘贴并执行。无需 AI Agent。",
755
+ "guide.manual.preview": "查看或手动复制脚本",
756
+ "guide.manual.scriptLabel": "终端安装脚本",
757
+ "guide.manual.pasteTitle": "在目标设备终端运行",
758
+ "guide.manual.pasteBefore": "先复制脚本,再打开要接入的设备的终端。Mac 用“终端”,Linux 用终端或已有 SSH 会话。",
759
+ "guide.manual.pasteAfter": "到目标设备的终端粘贴并执行。脚本会检查环境、安装 Driver 和用户级后台服务。",
760
+ "guide.manual.copied": "已复制脚本。下一步:在目标设备终端粘贴并执行。",
761
+ "guide.manual.installBody": "脚本安装用户级后台服务,登录系统后自动启动。目标设备无需 AI Agent,也不用配置 MCP;以后要让管理电脑上的 Agent 使用它,再按需添加 MCP。",
762
+ "guide.manual.localBody": "无需登录,在目标设备本机面板查看资源。只有需要 Agent 操作的管理电脑才需配置 MCP;不要把服务器的回环地址当作远程地址。",
763
+ "guide.manual.browserBody": "脚本会打开目标设备的浏览器。登录自己的账号,对照终端完整公钥指纹,批准一次即可;设备随后自动回报。",
764
+ "guide.manual.headlessBody": "保持目标设备终端打开。在另一台有浏览器的电脑上登录控制面,点“连接我的电脑”,输入终端的 5 分钟配对码,核对完整公钥指纹并批准。无需回到 Agent 确认。",
765
+ "guide.manual.openPanel": "打开控制面完成绑定 ↗",
766
+ "guide.manual.openGuide": "设备没有 Agent?打开手动安装指南 ↗",
767
+ "walk.title": "复制后,照图操作",
768
+ "walk.disclaimer": "以下是操作示意;请在对应电脑的真实窗口操作。",
769
+ "walk.terminalTitle": "在目标电脑的终端粘贴",
770
+ "walk.terminalBody": "在要接入的那台电脑打开终端,粘贴完整脚本,再按回车。中途报错时先停下排查。",
771
+ "walk.agentTitle": "贴到目标电脑的 Agent 对话",
772
+ "walk.agentBody": "打开那台电脑上能操作本机的 Agent 对话,粘贴安装说明并发送,后续安装交给它执行。",
773
+ "walk.headlessTitle": "换到有浏览器的电脑绑定",
774
+ "walk.headlessBody": "目标终端保持打开。在另一台电脑登录控制面,输入终端配对码,核对完整公钥指纹后批准。",
775
+ "walk.browserTitle": "在自动打开的网页绑定",
776
+ "walk.browserBody": "脚本会打开本次绑定申请。登录自己的账号,对照终端或 Agent 显示的完整公钥指纹,批准一次。",
777
+ "walk.installTitle": "等安装完成,检查错误",
778
+ "walk.installBody": "脚本安装本机 Driver 和用户级后台服务,无需 AI Agent。若出现错误,请按报错排查。",
779
+ "walk.agentInstallBody": "Agent 安装 Driver、用户级后台服务并接入 MCP,让它核验实际运行结果。",
780
+ "walk.checkTitle": "到设备列表确认真实回报",
781
+ "walk.cloudCheckBody": "在云端设备列表找到这台电脑。看到真实内存、磁盘和更新的回报时间才算完成;绑定成功不等于已经回报。",
782
+ "walk.localCheckBody": "在刚安装的那台电脑,用浏览器打开图中的本机面板地址,查看资源。127.0.0.1 指那台电脑自己。",
783
+ "walk.copyFirst": "先点上方复制按钮,再到对应窗口操作。",
784
+ "walk.openMac": "Mac:⌘ 空格 → 搜索「终端」",
785
+ "walk.openLinux": "Linux:应用菜单 → 终端,或已有 SSH 会话",
786
+ "walk.autoBrowser": "执行后自动打开浏览器;打不开时按终端提示改用手动配对",
787
+ "walk.sameComputer": "在刚安装的那台电脑打开这个地址",
788
+ "walk.steps": "安装操作示意步骤",
789
+ "walk.pasteTab": "粘贴执行",
790
+ "walk.bindTab": "登录绑定",
791
+ "walk.installTab": "等待安装",
792
+ "walk.checkTab": "查看设备",
793
+ "walk.copiedContent": "剪贴板",
794
+ "walk.terminal": "终端",
795
+ "walk.chat": "Agent 对话",
796
+ "walk.browser": "网页",
797
+ "walk.fullFingerprint": "这里显示完整公钥指纹",
798
+ "walk.approve": "核对一致,绑定这台电脑",
799
+ "walk.targetTerminal": "目标设备 · 终端",
800
+ "walk.pasteScript": "在这里粘贴完整脚本",
801
+ "walk.pressEnter": "粘贴后按",
802
+ "walk.targetChat": "目标设备 · Agent 对话",
803
+ "walk.pastePrompt": "在这里粘贴安装说明",
804
+ "walk.send": "点击发送",
805
+ "walk.pairCode": "终端里的配对码",
806
+ "walk.otherBrowser": "另一台电脑 · 浏览器",
807
+ "walk.signIn": "登录自己的账号",
808
+ "walk.pasteCode": "把终端配对码填在这里",
809
+ "walk.compare": "核对两处完整公钥指纹",
810
+ "walk.driver": "安装本机 Driver",
811
+ "walk.service": "启动用户级后台服务",
812
+ "walk.mcp": "接入当前 Agent 的 MCP",
813
+ "walk.yourDevice": "你的设备",
814
+ "walk.awaitReport": "等待真实回报",
815
+ "walk.reportTime": "检查回报时间是否刚刚更新",
816
+ "walk.previous": "← 上一张",
817
+ "walk.restart": "回看粘贴位置",
818
+ "walk.next": "看下一步 →",
819
+ "walk.counter": "{current} / {total}",
820
+ "walk.openDevices": "打开设备列表 ↗",
821
+ "walk.openPairing": "点「{action}」→ 配对码",
822
+ "guide.os.title": "目标电脑的系统",
823
+ "guide.windowsCandidate": "Windows 11 预览版 · 使用 PowerShell 安装,按图示核对绑定与后台状态。",
824
+ "guide.windowsPrerequisites": "Windows 11 · PowerShell 5.1+ · Node.js 24+ · 普通用户窗口,无需 AD 或 AI Agent。已有安装会停止并保留配置。",
825
+ "walk.windowsTitle": "粘贴到 Windows PowerShell,按回车",
826
+ "walk.windowsBody": "在目标电脑打开普通用户 PowerShell(不是命令提示符或 WSL),粘贴整段脚本并按回车。安装前核对脚本,失败时保留窗口。",
827
+ "walk.openWindows": "开始菜单 → 搜索 PowerShell → 打开(无需管理员)",
828
+ "prompt.windowsEnvironment": "检查 Windows 11、PowerShell 5.1+、Node.js >=24、npm.cmd 与当前 Agent 的 MCP 支持。在普通用户 PowerShell 执行,不使用 WSL 或 npm.ps1。每个原生命令后检查 $LASTEXITCODE,非零停止;不改执行策略、不提权。缺少 Node.js 时使用官方来源。",
829
+ "prompt.windowsBackground": "先查看计划,再明确安装当前用户登录任务并核验状态。无需 AD、管理员或账号密码,不改组策略。失败保留现场,可改用前台。身份由本机 DPAPI 当前用户加密及 NTFS ACL 保护;不搬运身份文件。注销、休眠或断网时无法回报。"
655
830
  },
656
831
  "zh-TW": {
657
832
  "language": "語言",
658
833
  "guide.title": "開始試用 · Device Center",
659
834
  "guide.open": "進入裝置面板 ↗",
660
- "guide.badge": "公開試用 · 0.2.0-beta.3 · MIT",
835
+ "guide.badge": "開發預覽 · 0.2.0-beta.5 · MIT",
661
836
  "guide.hero": "讓你的 Agent 看見自己的閒置電腦。",
662
837
  "guide.lead": "查看裝置資源、記住每台電腦的用途,並在另外授權後讀取指定日誌。把安裝交給本機 Agent,從一台電腦開始。",
663
- "guide.platform": "macOS / Linux · Node.js 24+ · 暫不支援 Windows 原生版",
838
+ "guide.platform": "macOS / Linux / Windows 11 候選 · Node.js 24+",
664
839
  "guide.install": "選一種方式,複製給本機 Agent",
665
840
  "guide.local": "本機使用",
666
841
  "guide.localDesc": "本機面板和 MCP,無需帳號。適合先了解自己的電腦與現有裝置資源。",
@@ -668,7 +843,7 @@ export const messages = {
668
843
  "guide.hosted": "官方託管",
669
844
  "guide.hostedDesc": "用自己的帳號管理裝置,使用官方加密中繼。Driver 和私鑰仍留在裝置上。",
670
845
  "guide.hostedCopy": "複製託管安裝說明",
671
- "guide.paste": "貼給正在目標電腦上執行、能安裝軟體的 Agent。它會檢查現有設定、安裝固定版本、設定使用者層級背景服務及 MCP,再核驗實際結果。網頁本身不會安裝軟體。",
846
+ "guide.paste": "交給 Agent 時複製安裝說明;手動安裝時複製 Shell 腳本,到目標裝置終端機執行。兩者都安裝本機 Driver;MCP 僅需在使用 AI Agent 的管理電腦設定。網頁只複製,不執行安裝。",
672
847
  "guide.custom": "已有自己的控制面?",
673
848
  "guide.address": "自架控制面的 HTTPS 位址",
674
849
  "guide.customCopy": "複製自架接入說明",
@@ -676,9 +851,9 @@ export const messages = {
676
851
  "guide.preview": "查看或手動複製完整說明",
677
852
  "guide.instructions": "Agent 安裝說明",
678
853
  "guide.pair": "使用託管時,登入並認領自己的電腦",
679
- "guide.pair1": "依 Agent 提示開啟裝置面板,使用自己的 App Services/個人網站帳號登入。沒有帳號時在帳號頁註冊。",
854
+ "guide.pair1": "僅託管模式需要帳號。有瀏覽器時腳本自動開啟綁定頁;無瀏覽器時在另一台電腦登入控制面並輸入終端機配對碼。",
680
855
  "guide.loginLink": "開啟雲端裝置面板",
681
- "guide.pair2": "在面板輸入本機終端機顯示的五分鐘配對碼,核對完整公鑰指紋後批准。密碼、私鑰和配對碼不要傳給別人或貼到 Agent 對話。",
856
+ "guide.pair2": "只批准自己剛發起的申請,核對裝置名稱、系統及終端機顯示的完整公鑰指紋;不要分享配對碼。",
682
857
  "guide.pair3": "在另一台自己的電腦重複安裝並綁定同一帳號。沒有實際回報的裝置會顯示未知或未回報。",
683
858
  "guide.localHint": "本機模式跳過此步。綁定只允許已說明的資源回報;讀取日誌需要目標裝置另外授權。",
684
859
  "guide.try": "試用時看這四件事",
@@ -694,9 +869,9 @@ export const messages = {
694
869
  "guide.faqBody": "確認 Node.js 為 24+、Driver 正在執行、電腦已喚醒,網路及系統時間正常。連接埠被佔用時改用空閒本機連接埠,不停止其他程式。雲端「未回報」表示近期未收到資料,不是私鑰過期。",
695
870
  "guide.feedback": "回報時說明系統、版本、所選模式、失敗步驟,以及移除敏感資訊的錯誤。不要附上私鑰、配對碼、cookie 或日誌內文。",
696
871
  "guide.scope": "此版本的範圍",
697
- "guide.scopeBody": "支援真實資源、裝置說明、手動採集和另外授權的日誌尾端讀取。暫不提供任意遠端命令、通用檔案傳輸、Windows 原生 Driver、自動網路掃描、離線區網授權或本機/雲端說明同步。",
872
+ "guide.scopeBody": "支援真實資源、裝置說明、手動採集和另外授權的日誌尾端讀取。暫不提供任意遠端命令、通用檔案傳輸、自動網路掃描、離線區網授權或本機/雲端說明同步。",
698
873
  "guide.quota": "官方中繼為試用額度:每帳號每日 100 MiB(UTC),每方向 16 KiB/s;不是無限頻寬服務。服務與應用為手動登記,未經自動偵測。",
699
- "guide.full": "Agent 完整安裝指南(簡體中文)",
874
+ "guide.full": "完整安裝指南(中文)",
700
875
  "guide.markdown": "文字版試用指南(簡體中文)",
701
876
  "guide.source": "MIT npm 原始碼套件 ↗",
702
877
  "guide.footer": "本機安裝 · 私鑰留在裝置 · 操作另外授權",
@@ -710,14 +885,14 @@ export const messages = {
710
885
  "prompt.private": "控制面:{origin}。Driver 在裝置本機執行,身分私鑰留在裝置上,不託管至雲端。",
711
886
  "prompt.background": "使用者層級背景服務,登入系統後啟動",
712
887
  "prompt.foreground": "僅前景執行,不安裝背景服務",
713
- "prompt.environment": "檢查 macOS/Linux、Node.js >=24、npm 及目前 Agent 的 MCP 支援。Windows 原生 Driver 尚不支援,遇到 Windows 請說明並停止。缺少 Node.js 時僅使用官方來源;需要管理員或系統授權時交給我處理。",
888
+ "prompt.environment": "檢查 macOS/Linux、Node.js >=24、npm 與 Agent 的 MCP 支援;系統與選擇不符時停止並請使用者重選。Node.js 僅用官方來源,系統授權交給使用者。",
714
889
  "prompt.existing": "先檢查現有 CLI、綁定、使用者服務及 {url}/api/health,保留原設定。固定 CLI 已存在時可檢查 {status} 和 {service}。不開啟私鑰。連接埠被佔用時換空閒的已知回環連接埠並同步位址,不停止其他程式。版本、控制面及啟動方式相符則沿用;衝突時讓我選擇,不覆寫、解除綁定或重複安裝。",
715
890
  "prompt.userInstall": "全新安裝使用使用者可寫的固定位置,不需 sudo:",
716
891
  "prompt.config": "不修改全域 npm 設定或 shell 啟動檔。後續使用上述絕對 CLI 路徑。",
717
892
  "prompt.bg": "先查看計畫,確認使用者層級且僅回環監聽,再安裝並檢查狀態。失敗或有衝突時保留現場,不清理重裝。Linux 需要 systemd --user,macOS 需要目前登入使用者的 launchd;不可用時如實建議前景模式。",
718
893
  "prompt.fg": "保持前景程序執行。使用託管時,下一步 connect 獲准後會啟動 Driver;本機模式執行下方 start。關閉網頁不會停止程序;關閉終端機會停止回報。",
719
894
  "prompt.pairBefore": "先查看回報範圍,再申請綁定:",
720
- "prompt.pairAfter": "讓我在 {origin} 登入自己的帳號,在本機終端機核對完整公鑰指紋並手動批准。不要代我批准,不讀取密碼、cookie 或私鑰。配對碼只留在本機終端機,不貼到對話、腳本或連結;若工具會記錄它,讓我僅在本機終端機執行 connect,你完成其他檢查。批准後核驗實際資源回報,不能只憑 configured=true 宣稱連通。",
895
+ "prompt.pairAfter": "由你執行 --browser 並保持程序。它自動開啟本機瀏覽器,不輸出臨時憑據。只請我在 {origin} 登入自己的帳號,核對完整公鑰指紋並批准一次。不要代我批准,不讀取密碼、cookie、私鑰或憑據連結。持續觀察程序,核驗 firstReport.verified=true 後繼續;不要求我到終端機執行或回覆「已批准」。configured=true 不代表回報成功。無瀏覽器時才讓我在終端機執行不帶 --browser 的 connect,配對碼留在終端機。不支援時提示升級控制面。",
721
896
  "prompt.local": "不執行 connect,不產生裝置身分或申請帳號。若發現現有雲端綁定,先說明 start 或背景服務可能恢復它,不假裝是本機專用模式。",
722
897
  "prompt.mcp": "讀取 {url}/api/connector/setup,透過目前 Agent 支援的官方介面設定 Streamable HTTP MCP:{mcp}。沿用一致設定,不覆寫其他 MCP。工具無法設定時只讓我貼上此位址,不編造連接結果。",
723
898
  "prompt.verify": "核驗 /api/health、/api/overview 的真實本機記憶體與磁碟,以及 Agent 實際呼叫 device_center_list_resources。報告版本、面板/MCP 位址、執行方式、雲端綁定結果及未完成步驟。",
@@ -732,14 +907,17 @@ export const messages = {
732
907
  "login.submit": "登入",
733
908
  "login.unified": "使用 App Services/個人網站的統一帳號。",
734
909
  "login.link": "使用統一帳號登入 ↗",
735
- "login.help": "在新頁面以信箱或 Google 完成登入,返回此處會自動進入裝置面板。",
736
- "login.continue": "我已登入,繼續",
910
+ "login.help": "已登入時會自動進入。需要登入時開啟下方帳號頁,完成後回到這裡繼續。",
911
+ "login.continue": "進入控制面",
737
912
  "login.return": "完成統一帳號登入後,返回此頁即可。",
738
913
  "login.first": "請先在統一帳號頁面以信箱或 Google 登入,再返回此處。",
739
914
  "login.owner": "目前帳號沒有此個人面板的存取權限,請使用面板擁有者的帳號。",
740
915
  "login.rate": "嘗試過於頻繁,請一分鐘後再試。",
741
- "login.unavailable": "統一帳號服務暫時無法使用,請稍後再試。",
742
- "login.timeout": "連接帳號服務逾時,請再試。",
916
+ "login.unavailable": "帳號服務暫時連線失敗。請在此重試,無需反覆返回個人站。",
917
+ "login.timeout": "帳號驗證逾時。請在此重試,無需重新輸入密碼。",
918
+ "login.session": "登入工作階段無法儲存。請在同一瀏覽器開啟帳號頁與控制面,並檢查本站 Cookie 是否遭封鎖。",
919
+ "login.returned": "控制面登入未能維持,已暫停自動跳轉。請在此重試;若仍失敗,請記錄提示與發生時間。",
920
+ "login.checking": "正在確認登入狀態…",
743
921
  "login.optionsError": "無法讀取登入方式,請重新整理再試。",
744
922
  "login.credentials": "使用者名稱或密碼不正確。",
745
923
  "login.multi": "帳號裝置隔離 · HTTPS 保護",
@@ -973,7 +1151,7 @@ export const messages = {
973
1151
  "panel.224": "複製給 Agent",
974
1152
  "panel.225": "查看完整安裝說明",
975
1153
  "panel.226": "交給 Agent 的安裝說明",
976
- "panel.227": "支持 macOS / Linux,需要 Node.js 24。說明固定使用 0.2.0-beta.3。本頁只複製說明;安裝由你交給的 Agent 在本機執行。",
1154
+ "panel.227": "支持 macOS / Linux / Windows 11,需要 Node.js 24。說明固定使用 0.2.0-beta.5。本頁只複製說明;安裝由你交給的 Agent 在本機執行。",
977
1155
  "panel.228": "已複製。粘貼給目標電腦上的 Agent;需要綁定時由你登入並核對。",
978
1156
  "panel.229": "請手動複製已選中的安裝說明。",
979
1157
  "panel.230": "無法確認管理電腦",
@@ -1092,7 +1270,7 @@ export const messages = {
1092
1270
  "panel.343": "網路不可達時走雲端中轉;證書、身份或權限錯誤直接停止。兩種路徑都需要控制面在線核驗裝置是否已撤銷。",
1093
1271
  "panel.344": "目標裝置可運行",
1094
1272
  "panel.345": "device-center access revoke --peer MANAGEMENT_FINGERPRINT --confirm",
1095
- "panel.346": "隨時撤銷。私鑰與日誌授權路徑留在本機;雲端僅轉發 TLS 密文。Windows 原生 Agent 尚未提供。",
1273
+ "panel.346": "隨時撤銷。私鑰與日誌授權路徑留在本機;雲端僅轉發 TLS 密文。 Windows 11 預覽版 · 使用 PowerShell 安裝,依圖示核對綁定與背景狀態。",
1096
1274
  "panel.347": "處理中…",
1097
1275
  "panel.348": "查找請求",
1098
1276
  "panel.349": "允許分享至多 15 個已關聯 SSH 名稱和快取狀態(不含地址、使用者、路徑、設定或私鑰)",
@@ -1168,7 +1346,7 @@ export const messages = {
1168
1346
  "panel.419": "關掉網頁不需要停止服務。普通使用者的預設方向是:安裝一次,登入系統後自動在後台運行。",
1169
1347
  "panel.420": "本機安裝 · 推薦",
1170
1348
  "panel.421": "倉庫提供使用者級服務腳本:macOS 使用 launchd,Linux 使用 systemd。先預覽安裝計劃,再由你執行安裝。",
1171
- "panel.422": "先手動停止本次同連接埠前台預覽,再安裝。需要 Node.js 24 和穩定的倉庫目錄。安裝會登記本使用者的後台服務、日誌和數據目錄;不需要管理員權限。Windows 後台安裝尚未支持,可先用前台方式或 Docker。",
1349
+ "panel.422": "先手動停止本次同連接埠前台預覽,再安裝。需要 Node.js 24 和穩定的倉庫目錄。安裝會登記本使用者的後台服務、日誌和數據目錄;不需要管理員權限。 Windows 11 預覽版 · 使用 PowerShell 安裝,依圖示核對綁定與背景狀態。",
1172
1350
  "panel.423": "用 Docker,如何連接本機智能體?",
1173
1351
  "panel.424": "Docker 只運行 Device Center。Codex 留在本機,通過相同的",
1174
1352
  "panel.425": "http://127.0.0.1:PORT/mcp",
@@ -1176,7 +1354,7 @@ export const messages = {
1176
1354
  "panel.427": "倉庫中的 Compose 設定只映射到本機回環地址,並保留數據卷與重啓策略。本機 AI → 本機地址 → 容器服務。無需掛載 Docker socket、Codex 設定或宿主機目錄。",
1177
1355
  "panel.428": "Docker 引擎必須運行;不會因為使用容器就自動取得本機的操作權限。容器清單只表示容器,宿主的記憶體、磁碟與 SSH 設定不可見。請在宿主運行原生 Driver。",
1178
1356
  "panel.429": "這次只提供腳本與運行設定,沒有安裝常駐服務或啓動 Docker。當前進程仍是本機預覽。",
1179
- "panel.430": "交給 Agent 安裝",
1357
+ "panel.430": "安裝 Device Center",
1180
1358
  "panel.431": "授權遠程日誌",
1181
1359
  "panel.432": "連接本機 Codex",
1182
1360
  "panel.433": "雲端面板 · 可選",
@@ -1304,16 +1482,189 @@ export const messages = {
1304
1482
  "notice.outside": "已跳過目錄外的 Include。",
1305
1483
  "notice.restricted": "已跳過受限目錄外或非 config / .conf 的 Include。",
1306
1484
  "notice.unreadable": "部分 Include 無法讀取。",
1307
- "route.local": "{name} 的資源由當前{scope}進程直接擷取,無 SSH、跳板或網路轉發。"
1485
+ "route.local": "{name} 的資源由當前{scope}進程直接擷取,無 SSH、跳板或網路轉發。",
1486
+ "guide.visual.hero": "少切電腦,少搬日誌。",
1487
+ "guide.visual.lead": "讓本機 Agent 查看其他裝置的狀態與授權日誌。",
1488
+ "guide.visual.begin": "開始連接",
1489
+ "guide.visual.example": "使用示意",
1490
+ "guide.visual.yourDevices": "善用你自己的裝置",
1491
+ "guide.visual.request": "「幫我看看家裡伺服器的日誌。」",
1492
+ "guide.visual.myAgent": "本機 Agent",
1493
+ "guide.visual.myComputer": "你正在使用的電腦",
1494
+ "guide.visual.authorized": "依授權讀取",
1495
+ "guide.visual.otherDevice": "自己的裝置",
1496
+ "guide.visual.homeServer": "例如:家裡的伺服器",
1497
+ "guide.visual.log": "授權日誌",
1498
+ "guide.visual.scenarios": "使用情境",
1499
+ "guide.visual.debug": "服務出錯時",
1500
+ "guide.visual.debugBody": "讓 Agent 讀取已授權日誌",
1501
+ "guide.visual.save": "購買雲端資源前",
1502
+ "guide.visual.saveBody": "先看看現有電腦的資源",
1503
+ "guide.visual.away": "外出時",
1504
+ "guide.visual.awayBody": "透過雲端查看在線裝置狀態",
1505
+ "guide.visual.startSmall": "從一台電腦開始",
1506
+ "guide.visual.choose": "選一種方式,複製給 Agent",
1507
+ "guide.visual.noInstall": "複製不會執行安裝",
1508
+ "guide.visual.localCaption": "先在自己的電腦試試看",
1509
+ "guide.visual.localBody": "本機面板,可選 MCP,無需帳號。",
1510
+ "guide.visual.hostedCaption": "多台裝置,統一查看",
1511
+ "guide.visual.hostedBody": "用自己的帳號綁定裝置,使用加密中繼。",
1512
+ "guide.visual.next": "複製之後,怎麼做?",
1513
+ "guide.visual.pasteTitle": "前往要連接的電腦",
1514
+ "guide.visual.pasteBody": "將說明貼給那台電腦上的 Agent。",
1515
+ "guide.visual.installTitle": "讓 Agent 協助安裝",
1516
+ "guide.visual.installBody": "它會檢查環境、安裝 Driver,並設定本機 MCP。",
1517
+ "guide.visual.bindTitle": "託管模式:本人綁定",
1518
+ "guide.visual.bindBody": "程式會自動繼續,無需回 Agent 回覆「已批准」。",
1519
+ "guide.visual.trust": "私鑰留在裝置上 · 讀取日誌需另行授權",
1520
+ "guide.visual.details": "詳細說明",
1521
+ "guide.visual.pairDetails": "安裝與綁定的詳細步驟",
1522
+ "guide.visual.copiedLocal": "已複製。前往要連接的電腦,貼給 Agent;本機模式無需登入。",
1523
+ "guide.visual.copiedHosted": "已複製。前往要連接的電腦,貼給 Agent;綁定時需由你本人核對。",
1524
+ "guide.visual.localReady": "本機模式:開始使用",
1525
+ "guide.visual.localReadyBody": "無需登入。在本機面板查看資源,讓 Agent 使用 MCP。",
1526
+ "guide.visual.heroLine1": "少切電腦。",
1527
+ "guide.visual.heroLine2": "少搬日誌。",
1528
+ "guide.visual.viewFlow": "查看連接流程",
1529
+ "guide.visual.pauseMotion": "暫停動畫",
1530
+ "guide.visual.playMotion": "播放動畫",
1531
+ "guide.visual.dashboard": "裝置面板",
1532
+ "guide.focus.overview": "產品介紹",
1533
+ "guide.focus.example": "運作原理示意 · 無需操作",
1534
+ "guide.focus.firstTry": "第一次用?先選本機,無需帳號。",
1535
+ "guide.focus.alreadyInstalled": "已接入?",
1536
+ "guide.focus.start": "開始操作",
1537
+ "guide.focus.startTitle": "接入,從這裡開始",
1538
+ "guide.focus.startBody": "選好使用方式,再選交給 Agent 或手動安裝。目標裝置沒有 Agent 也能接入。",
1539
+ "guide.focus.select": "選擇使用方式",
1540
+ "guide.focus.useSelfHosted": "使用我的自架服務",
1541
+ "guide.focus.copyHint": "這是給 Agent 的說明,請貼到 Agent 對話中,而非終端機。",
1542
+ "guide.focus.paste": "到目標電腦,貼給 Agent",
1543
+ "guide.focus.pasteBefore": "先複製上方說明,再開啟要接入的電腦上的 Agent 對話。",
1544
+ "guide.focus.pasteAfter": "在要接入的電腦上開啟 Agent 對話,貼上剛才的說明,依提示繼續。",
1545
+ "guide.focus.whatNext": "接下來會發生什麼?",
1546
+ "guide.focus.openHosted": "安裝後,開啟面板由本人完成綁定 ↗",
1547
+ "guide.focus.copied": "已複製。下一步:到目標電腦貼給 Agent。",
1548
+ "pair.title": "綁定這台電腦",
1549
+ "pair.step": "本人確認",
1550
+ "pair.intro": "只批准你剛在這台電腦發起的申請。申請已自動帶入,無需填碼。",
1551
+ "pair.fingerprint": "與終端機或 Agent 顯示的完整公鑰指紋核對:",
1552
+ "pair.scope": "預設只回報本機名稱、系統、記憶體和磁碟,不授予遠端操作權限。",
1553
+ "pair.approve": "核對一致,綁定這台電腦",
1554
+ "pair.cancel": "取消本次操作",
1555
+ "pair.loading": "正在讀取本次申請",
1556
+ "pair.wait": "請稍候;未登入時會先進入帳號登入。",
1557
+ "pair.bound": "已綁定,正在確認連線",
1558
+ "pair.reporting": "正在等待這台電腦首次回報資源…",
1559
+ "pair.noReply": "程式會自動繼續,無需回 Agent 回覆「已批准」。",
1560
+ "pair.done": "這台電腦已接入",
1561
+ "pair.doneBody": "雲端已收到資源回報。可在裝置面板命名、填寫用途與標籤。",
1562
+ "pair.reportTimeout": "綁定已完成,但尚未確認首次回報。檢查電腦是否喚醒、本機服務及網路;不要重複綁定。",
1563
+ "pair.cancelled": "已取消",
1564
+ "pair.cancelledBody": "沒有批准裝置;本次申請會自動過期。",
1565
+ "pair.missing": "申請已過期或無法使用",
1566
+ "pair.missingBody": "請在目標電腦重新發起接入。不要開啟別人傳送的綁定連結;已綁定的電腦無需重新接入。",
1567
+ "pair.start": "返回接入指南",
1568
+ "pair.dashboard": "進入裝置面板",
1569
+ "pair.boundary": "私鑰留在裝置上 · 遠端操作需要另外授權",
1570
+ "pair.manual": "無瀏覽器,或已有終端機配對碼?",
1571
+ "pair.manualHint": "僅無瀏覽器伺服器或舊客戶端使用:在目標機終端機執行下方手動命令,再輸入配對碼。",
1572
+ "pair.browserHint": "自動開啟本次綁定頁。本人登入、核對指紋並批准一次;程式自動等待回報,無需回 Agent 確認。",
1573
+ "pair.approvalUnknown": "尚未確認批准結果",
1574
+ "pair.approvalUnknownBody": "網路中斷或申請已被處理。先查看目標電腦的接入程序與裝置面板;已綁定時無需重新接入。",
1575
+ "guide.method.title": "選擇安裝方式",
1576
+ "guide.method.agent": "交給 Agent",
1577
+ "guide.method.manual": "手動安裝",
1578
+ "guide.manual.prerequisites": "Node.js 24+ · 全新安裝。已有安裝會停止並保留設定。",
1579
+ "guide.manual.browserQuestion": "目標裝置能開啟瀏覽器嗎?",
1580
+ "guide.manual.hasBrowser": "有瀏覽器",
1581
+ "guide.manual.noBrowser": "無瀏覽器 / 伺服器",
1582
+ "guide.manual.copy": "複製終端機安裝腳本",
1583
+ "guide.manual.copyHint": "這是 Shell 腳本,請在要接入的裝置終端機貼上並執行。無需 AI Agent。",
1584
+ "guide.manual.preview": "檢視或手動複製腳本",
1585
+ "guide.manual.scriptLabel": "終端機安裝腳本",
1586
+ "guide.manual.pasteTitle": "在目標裝置終端機執行",
1587
+ "guide.manual.pasteBefore": "先複製腳本,再開啟目標裝置的終端機。Mac 使用「終端機」,Linux 使用終端機或既有 SSH 工作階段。",
1588
+ "guide.manual.pasteAfter": "到目標裝置的終端機貼上並執行。腳本會檢查環境、安裝 Driver 和使用者層級背景服務。",
1589
+ "guide.manual.copied": "已複製腳本。下一步:在目標裝置終端機貼上並執行。",
1590
+ "guide.manual.installBody": "腳本安裝使用者層級背景服務,登入系統後自動啟動。目標裝置無需 AI Agent 或 MCP;日後要讓管理電腦的 Agent 使用時,再按需加入 MCP。",
1591
+ "guide.manual.localBody": "無需登入,在目標裝置本機面板查看資源。只有需要 Agent 操作的管理電腦才需設定 MCP;伺服器的回環位址不是遠端位址。",
1592
+ "guide.manual.browserBody": "腳本會開啟目標裝置的瀏覽器。登入自己的帳號,對照終端機完整公鑰指紋,批准一次即可;裝置隨後自動回報。",
1593
+ "guide.manual.headlessBody": "保持目標裝置終端機開啟。在另一台有瀏覽器的電腦登入控制面,點「連接我的電腦」,輸入終端機的 5 分鐘配對碼,核對完整公鑰指紋並批准。無需回 Agent 確認。",
1594
+ "guide.manual.openPanel": "開啟控制面完成綁定 ↗",
1595
+ "guide.manual.openGuide": "裝置沒有 Agent?開啟手動安裝指南 ↗",
1596
+ "walk.title": "複製後,照圖操作",
1597
+ "walk.disclaimer": "以下為操作示意;請在對應電腦的實際視窗操作。",
1598
+ "walk.terminalTitle": "貼到目標電腦的終端機",
1599
+ "walk.terminalBody": "在要接入的電腦開啟終端機,貼上完整腳本,再按 Enter。途中出錯時請先停下排查。",
1600
+ "walk.agentTitle": "貼到目標電腦的 Agent 對話",
1601
+ "walk.agentBody": "開啟該電腦上能操作本機的 Agent 對話,貼上安裝說明並傳送,後續安裝交給它執行。",
1602
+ "walk.headlessTitle": "換到有瀏覽器的電腦綁定",
1603
+ "walk.headlessBody": "保持目標終端機開啟。在另一台電腦登入控制面,輸入終端機配對碼,核對完整公鑰指紋後批准。",
1604
+ "walk.browserTitle": "在自動開啟的網頁綁定",
1605
+ "walk.browserBody": "腳本會開啟這次綁定申請。登入自己的帳號,對照終端機或 Agent 顯示的完整公鑰指紋,批准一次。",
1606
+ "walk.installTitle": "等安裝完成,檢查錯誤",
1607
+ "walk.installBody": "腳本安裝本機 Driver 與使用者級背景服務,無需 AI Agent。如有錯誤,請依訊息排查。",
1608
+ "walk.agentInstallBody": "Agent 安裝 Driver、使用者級背景服務並接入 MCP,讓它驗證實際執行結果。",
1609
+ "walk.checkTitle": "在裝置清單確認實際回報",
1610
+ "walk.cloudCheckBody": "在雲端裝置清單找到這台電腦。看到實際記憶體、磁碟及更新的回報時間才算完成;綁定成功不代表已回報。",
1611
+ "walk.localCheckBody": "在剛安裝的電腦,以瀏覽器開啟圖中的本機面板位址查看資源。127.0.0.1 指該電腦本身。",
1612
+ "walk.copyFirst": "先按上方複製按鈕,再到對應視窗操作。",
1613
+ "walk.openMac": "Mac:⌘ 空白鍵 → 搜尋「終端機」",
1614
+ "walk.openLinux": "Linux:應用程式選單 → 終端機,或既有 SSH 工作階段",
1615
+ "walk.autoBrowser": "執行後自動開啟瀏覽器;若無法開啟,依終端機提示改用手動配對",
1616
+ "walk.sameComputer": "在剛安裝的電腦開啟此位址",
1617
+ "walk.steps": "安裝操作示意步驟",
1618
+ "walk.pasteTab": "貼上執行",
1619
+ "walk.bindTab": "登入綁定",
1620
+ "walk.installTab": "等待安裝",
1621
+ "walk.checkTab": "查看裝置",
1622
+ "walk.copiedContent": "剪貼簿",
1623
+ "walk.terminal": "終端機",
1624
+ "walk.chat": "Agent 對話",
1625
+ "walk.browser": "網頁",
1626
+ "walk.fullFingerprint": "此處顯示完整公鑰指紋",
1627
+ "walk.approve": "核對一致,綁定這台電腦",
1628
+ "walk.targetTerminal": "目標裝置 · 終端機",
1629
+ "walk.pasteScript": "在此貼上完整腳本",
1630
+ "walk.pressEnter": "貼上後按",
1631
+ "walk.targetChat": "目標裝置 · Agent 對話",
1632
+ "walk.pastePrompt": "在此貼上安裝說明",
1633
+ "walk.send": "點擊傳送",
1634
+ "walk.pairCode": "終端機的配對碼",
1635
+ "walk.otherBrowser": "另一台電腦 · 瀏覽器",
1636
+ "walk.signIn": "登入自己的帳號",
1637
+ "walk.pasteCode": "在此輸入終端機配對碼",
1638
+ "walk.compare": "核對兩處完整公鑰指紋",
1639
+ "walk.driver": "安裝本機 Driver",
1640
+ "walk.service": "啟動使用者級背景服務",
1641
+ "walk.mcp": "接入目前 Agent 的 MCP",
1642
+ "walk.yourDevice": "你的裝置",
1643
+ "walk.awaitReport": "等待實際回報",
1644
+ "walk.reportTime": "檢查回報時間是否剛更新",
1645
+ "walk.previous": "← 上一張",
1646
+ "walk.restart": "回看貼上位置",
1647
+ "walk.next": "看下一步 →",
1648
+ "walk.counter": "{current} / {total}",
1649
+ "walk.openDevices": "開啟裝置清單 ↗",
1650
+ "walk.openPairing": "點「{action}」→ 配對碼",
1651
+ "guide.os.title": "目標電腦的系統",
1652
+ "guide.windowsCandidate": "Windows 11 預覽版 · 使用 PowerShell 安裝,依圖示核對綁定與背景狀態。",
1653
+ "guide.windowsPrerequisites": "Windows 11 · PowerShell 5.1+ · Node.js 24+ · 一般使用者視窗,無需 AD 或 AI Agent。已有安裝會停止並保留設定。",
1654
+ "walk.windowsTitle": "貼到 Windows PowerShell,按 Enter",
1655
+ "walk.windowsBody": "在目標電腦開啟一般使用者 PowerShell(非命令提示字元或 WSL),貼上整段腳本並按 Enter。執行前核對腳本,失敗請保留視窗。",
1656
+ "walk.openWindows": "開始功能表 → 搜尋 PowerShell → 開啟(無需管理員)",
1657
+ "prompt.windowsEnvironment": "確認 Windows 11、PowerShell 5.1+、Node.js >=24、npm.cmd 及 Agent 的 MCP 支援。使用一般使用者 PowerShell,不用 WSL 或 npm.ps1。逐步檢查 $LASTEXITCODE,非零停止;不改執行原則或提權。Node.js 僅用官方來源。",
1658
+ "prompt.windowsBackground": "先檢視計畫,再明確安裝目前使用者登入工作並驗證狀態。無需 AD、管理員或密碼,不改群組原則。失敗保留現場,可改前景執行。身分以本機 DPAPI 與 NTFS ACL 保護,不搬移身分檔。登出、休眠或斷網無法回報。"
1308
1659
  },
1309
1660
  "en": {
1310
1661
  "language": "Language",
1311
1662
  "guide.title": "Get started · Device Center",
1312
1663
  "guide.open": "Open device dashboard ↗",
1313
- "guide.badge": "Public beta · 0.2.0-beta.3 · MIT",
1664
+ "guide.badge": "Development preview · 0.2.0-beta.5 · MIT",
1314
1665
  "guide.hero": "Let your Agent see your spare computers.",
1315
1666
  "guide.lead": "View device resources and roles, and read specific logs after separate approval. Let your local Agent handle setup, starting with one computer.",
1316
- "guide.platform": "macOS / Linux · Node.js 24+ · Native Windows support is not available yet",
1667
+ "guide.platform": "macOS / Linux / Windows 11 candidate · Node.js 24+",
1317
1668
  "guide.install": "Choose a mode and copy the instructions to your local Agent",
1318
1669
  "guide.local": "Local use",
1319
1670
  "guide.localDesc": "Local dashboard and MCP, with no account required. Explore your computer and existing device resources first.",
@@ -1321,7 +1672,7 @@ export const messages = {
1321
1672
  "guide.hosted": "Official hosting",
1322
1673
  "guide.hostedDesc": "Manage devices with your own account and use the official encrypted relay. The Driver and private keys stay on your devices.",
1323
1674
  "guide.hostedCopy": "Copy hosted setup instructions",
1324
- "guide.paste": "Paste into an Agent running on the target computer with permission to install software. It will check existing settings, install the pinned version, configure a user background service and MCP, and verify the result. This webpage does not install software.",
1675
+ "guide.paste": "For an Agent, copy the instructions. For manual setup, copy the shell script and run it in the target’s terminal. Both install a local Driver. MCP is only needed on a management computer that uses an AI Agent. The webpage only copies; it does not install.",
1325
1676
  "guide.custom": "Already have your own control plane?",
1326
1677
  "guide.address": "Self-hosted control plane HTTPS address",
1327
1678
  "guide.customCopy": "Copy self-hosted setup instructions",
@@ -1329,9 +1680,9 @@ export const messages = {
1329
1680
  "guide.preview": "View or manually copy the full instructions",
1330
1681
  "guide.instructions": "Agent setup instructions",
1331
1682
  "guide.pair": "For hosting, sign in and claim your computer",
1332
- "guide.pair1": "Open the dashboard as your Agent requests. Sign in with your own App Services / personal-site account, or register on the account page.",
1683
+ "guide.pair1": "Only hosted modes need an account. With a browser, the script opens the pairing page. Without one, sign in on another computer and enter the terminal’s pairing code.",
1333
1684
  "guide.loginLink": "Open cloud dashboard",
1334
- "guide.pair2": "Enter the five-minute pairing code from your local terminal in the dashboard. Check the full public-key fingerprint before approving. Do not share passwords, private keys or pairing codes, or paste them into Agent chats.",
1685
+ "guide.pair2": "Approve only the request you just started. Check the device name, OS and full public key fingerprint shown in the terminal. Do not share the pairing code.",
1335
1686
  "guide.pair3": "Repeat setup on another computer you own and bind it to the same account. Devices without real reports appear as unknown or not reporting.",
1336
1687
  "guide.localHint": "Skip this step in local mode. Binding only permits the stated resource reports; reading logs requires separate approval on the target device.",
1337
1688
  "guide.try": "Check these four things during your trial",
@@ -1347,9 +1698,9 @@ export const messages = {
1347
1698
  "guide.faqBody": "Check Node.js 24+, a running Driver, an awake computer, network access and the system clock. If a port is occupied, choose a free local port without stopping other programs. Not reporting means no recent data; it does not mean the private key has expired.",
1348
1699
  "guide.feedback": "When reporting an issue, include your OS, version, mode, failed step and a redacted error. Never include private keys, pairing codes, cookies or log contents.",
1349
1700
  "guide.scope": "What this beta supports",
1350
- "guide.scopeBody": "Supports real resources, device details, manual collection and separately authorized log tail reads. No arbitrary remote commands, general file transfers, native Windows Driver, automatic network scans, offline LAN authorization or local/cloud detail sync yet.",
1701
+ "guide.scopeBody": "Supports real resources, device details, manual collection and separately authorized log tail reads. No arbitrary remote commands, general file transfers, automatic network scans, offline LAN authorization or local/cloud detail sync yet.",
1351
1702
  "guide.quota": "Official relay trial limits: 100 MiB per account per UTC day, 16 KiB/s per direction. Bandwidth is not unlimited. Services and applications are entered manually, not detected automatically.",
1352
- "guide.full": "Full Agent setup guide (Chinese)",
1703
+ "guide.full": "Full installation guide (Chinese)",
1353
1704
  "guide.markdown": "Text trial guide (Chinese)",
1354
1705
  "guide.source": "MIT npm source package ↗",
1355
1706
  "guide.footer": "Local installation · Keys stay on-device · Operations need separate approval",
@@ -1363,14 +1714,14 @@ export const messages = {
1363
1714
  "prompt.private": "Control plane: {origin}. The Driver runs on this device. Identity private keys stay on-device and are not entrusted to the cloud.",
1364
1715
  "prompt.background": "User background service, started after OS login",
1365
1716
  "prompt.foreground": "Foreground only; do not install a background service",
1366
- "prompt.environment": "Check macOS/Linux, Node.js >=24, npm and the current Agent’s MCP support. Native Windows Driver is unsupported: explain and stop on Windows. Use official sources for missing Node.js; hand administrator or OS permission requests to me.",
1717
+ "prompt.environment": "Check macOS/Linux, Node.js >=24, npm and Agent MCP support. Stop if the target OS differs from the selected OS and ask the user to choose again. Use official Node.js sources; leave OS or administrator approvals to the user.",
1367
1718
  "prompt.existing": "Inspect existing CLI, bindings, user services and {url}/api/health first; preserve settings. If the fixed CLI exists, check {status} and {service}. Never open private-key files. If a port is occupied, choose a known free loopback port and update all addresses without stopping other programs. Reuse matching version, control plane and run mode; ask me about conflicts, never overwrite, unbind or duplicate installations.",
1368
1719
  "prompt.userInstall": "For a new installation, use a fixed user-writable prefix, without sudo:",
1369
1720
  "prompt.config": "Do not alter global npm settings or shell startup files. Use the absolute CLI path above for later commands.",
1370
1721
  "prompt.bg": "Review the service plan, confirm user scope and loopback-only listening, then install and check status. Preserve the state on failure or conflict; do not clean up and reinstall. Linux needs systemd --user; macOS needs launchd for the logged-in user. If unavailable, explain and offer foreground mode.",
1371
1722
  "prompt.fg": "Keep the foreground process running. For hosting, connect in the next step starts the Driver after approval; in local mode run start below. Closing the webpage does not stop the process; closing the terminal stops reports.",
1372
1723
  "prompt.pairBefore": "Review the reporting scope, then request binding:",
1373
- "prompt.pairAfter": "Have me sign in to my own account at {origin}, check the full public-key fingerprint in my local terminal and approve manually. Never approve for me or read passwords, cookies or private keys. Keep the pairing code only in the local terminal, never in chats, scripts or links. If your tools would log it, have me execute only connect in my terminal while you finish other checks. After approval, verify real resource reports; configured=true alone does not prove cloud connectivity.",
1724
+ "prompt.pairAfter": "Execute --browser yourself and keep the process running. It opens the local browser without printing temporary credentials. Ask me only to sign in at {origin}, compare the full printed public-key fingerprint and approve once. Never approve for me or read passwords, cookies, private keys or credential links. Observe the process; verify firstReport.verified=true and continue automatically. Do not hand the command back to me or ask me to reply “approved”. configured=true is not proof of delivery. Only if no local browser is available, ask me to run connect without --browser in my terminal, keeping the code there. An older control plane needs upgrading; never dump credentials as a fallback.",
1374
1725
  "prompt.local": "Do not run connect, generate device identity or register an account. If a cloud binding already exists, explain that start or the background service may resume it; do not present an existing binding as local-only mode.",
1375
1726
  "prompt.mcp": "Read {url}/api/connector/setup and configure Streamable HTTP MCP at {mcp} using the current Agent’s official supported interface. Reuse matching settings without replacing other MCP servers. If tools cannot configure it, ask me to paste only this address; never claim an unverified connection.",
1376
1727
  "prompt.verify": "Verify /api/health, real local memory and disk from /api/overview, and an actual Agent call to device_center_list_resources. Report version, dashboard/MCP URLs, run mode, cloud binding result if applicable, and unfinished steps.",
@@ -1385,14 +1736,17 @@ export const messages = {
1385
1736
  "login.submit": "Sign in",
1386
1737
  "login.unified": "Use your shared App Services / personal-site account.",
1387
1738
  "login.link": "Sign in with your shared account ↗",
1388
- "login.help": "Sign in with email or Google in the new page. Return here to enter the dashboard automatically.",
1389
- "login.continue": "I’m signed in, continue",
1739
+ "login.help": "Already signed in? You will enter automatically. Otherwise, open the account page below, sign in, and return here.",
1740
+ "login.continue": "Enter dashboard",
1390
1741
  "login.return": "Return to this page after signing in to your shared account.",
1391
1742
  "login.first": "Sign in with email or Google on the account page first, then return here.",
1392
1743
  "login.owner": "This account cannot access this personal dashboard. Use the dashboard owner’s account.",
1393
1744
  "login.rate": "Too many attempts. Try again in one minute.",
1394
- "login.unavailable": "The shared account service is temporarily unavailable. Try again later.",
1395
- "login.timeout": "The connection to the account service timed out. Try again.",
1745
+ "login.unavailable": "The account service could not be reached. Retry here; you do not need to return to the personal site.",
1746
+ "login.timeout": "Account verification timed out. Retry here without entering your password again.",
1747
+ "login.session": "The sign-in session was not saved. Open the account page and dashboard in the same browser and check whether cookies are blocked for this site.",
1748
+ "login.returned": "Dashboard sign-in did not persist, so automatic navigation has paused. Retry here. If it fails again, note the message and time.",
1749
+ "login.checking": "Checking sign-in…",
1396
1750
  "login.optionsError": "Could not load sign-in options. Refresh and try again.",
1397
1751
  "login.credentials": "Incorrect username or password.",
1398
1752
  "login.multi": "Account-isolated devices · HTTPS protected",
@@ -1626,7 +1980,7 @@ export const messages = {
1626
1980
  "panel.224": "Copy for Agent",
1627
1981
  "panel.225": "View full setup instructions",
1628
1982
  "panel.226": "Instructions for your Agent",
1629
- "panel.227": "macOS/Linux and Node.js 24 required. Instructions pin 0.2.0-beta.3. This page only copies; your chosen local Agent performs installation.",
1983
+ "panel.227": "macOS / Linux / Windows 11 and Node.js 24 required. Instructions pin 0.2.0-beta.5. This page only copies; your chosen local Agent performs installation.",
1630
1984
  "panel.228": "Copied. Paste into your target computer’s Agent. Sign in and verify binding yourself.",
1631
1985
  "panel.229": "Manually copy the selected setup instructions.",
1632
1986
  "panel.230": "Cannot confirm management computer",
@@ -1745,7 +2099,7 @@ export const messages = {
1745
2099
  "panel.343": "Network failure uses cloud relay. Certificate, identity or permission errors stop immediately. Both routes need an online control plane to check revocation.",
1746
2100
  "panel.344": "On the target you can run",
1747
2101
  "panel.345": "device-center access revoke --peer MANAGEMENT_FINGERPRINT --confirm",
1748
- "panel.346": "to revoke anytime. Private keys and authorized log paths stay local; the cloud relays only TLS ciphertext. Native Windows Agent unavailable.",
2102
+ "panel.346": "to revoke anytime. Private keys and authorized log paths stay local; the cloud relays only TLS ciphertext. Windows 11 preview · Install in PowerShell and follow the diagrams to verify pairing and background status.",
1749
2103
  "panel.347": "Processing…",
1750
2104
  "panel.348": "Find request",
1751
2105
  "panel.349": "Allow sharing up to 15 linked SSH names and cached states, without addresses, users, paths, configuration or private keys",
@@ -1821,7 +2175,7 @@ export const messages = {
1821
2175
  "panel.419": "Closing the webpage need not stop the service. Install once, then run in the background after OS login.",
1822
2176
  "panel.420": "Local install · Recommended",
1823
2177
  "panel.421": "User service scripts use launchd on macOS and systemd on Linux. Preview the plan before you install.",
1824
- "panel.422": "Manually stop this foreground preview on the same port before installing. Requires Node.js 24 and a stable source directory. Installs user service, logs and data without admin rights. Windows background installation unsupported; use foreground or Docker where suitable.",
2178
+ "panel.422": "Manually stop this foreground preview on the same port before installing. Requires Node.js 24 and a stable source directory. Installs user service, logs and data without admin rights. Windows 11 preview · Install in PowerShell and follow the diagrams to verify pairing and background status.",
1825
2179
  "panel.423": "How does Docker connect to my local Agent?",
1826
2180
  "panel.424": "Docker runs only Device Center. Codex stays local and uses the same",
1827
2181
  "panel.425": "http://127.0.0.1:PORT/mcp",
@@ -1829,7 +2183,7 @@ export const messages = {
1829
2183
  "panel.427": "Compose maps only to loopback and retains data and restart policy. Local AI → local URL → container. No Docker socket, Codex settings or host-directory mounts needed.",
1830
2184
  "panel.428": "Docker engine must run. Containers do not gain host-operation permissions automatically. Inventory describes the container, not host memory, disk or SSH settings. Run a native Driver on the host.",
1831
2185
  "panel.429": "Only scripts and configuration are provided here. No persistent service or Docker started; this process is still a local preview.",
1832
- "panel.430": "Install with Agent",
2186
+ "panel.430": "Install Device Center",
1833
2187
  "panel.431": "Authorize remote logs",
1834
2188
  "panel.432": "Connect local Codex",
1835
2189
  "panel.433": "Cloud dashboard · Optional",
@@ -1957,16 +2311,189 @@ export const messages = {
1957
2311
  "notice.notConfig": "Not an SSH configuration file; ignored.",
1958
2312
  "notice.candidateLimit": "Candidate limit reached.",
1959
2313
  "notice.match": "Match conditions present: aliases only; no condition evaluation or commands executed.",
1960
- "notice.conditional": "Skipped conditional Include inside Host / Match; candidates may be incomplete."
2314
+ "notice.conditional": "Skipped conditional Include inside Host / Match; candidates may be incomplete.",
2315
+ "guide.visual.hero": "Less switching. Fewer copied logs.",
2316
+ "guide.visual.lead": "Let your local Agent see other devices and read logs you authorize.",
2317
+ "guide.visual.begin": "Get started",
2318
+ "guide.visual.example": "Example workflow",
2319
+ "guide.visual.yourDevices": "Make use of your own devices",
2320
+ "guide.visual.request": "“Check the logs on my home server.”",
2321
+ "guide.visual.myAgent": "Local Agent",
2322
+ "guide.visual.myComputer": "The computer you use",
2323
+ "guide.visual.authorized": "Authorized access",
2324
+ "guide.visual.otherDevice": "Your own device",
2325
+ "guide.visual.homeServer": "For example: your home server",
2326
+ "guide.visual.log": "Authorized logs",
2327
+ "guide.visual.scenarios": "Use cases",
2328
+ "guide.visual.debug": "When a service fails",
2329
+ "guide.visual.debugBody": "Let your Agent read authorized logs",
2330
+ "guide.visual.save": "Before renting a server",
2331
+ "guide.visual.saveBody": "Check the resources you already own",
2332
+ "guide.visual.away": "When you are away",
2333
+ "guide.visual.awayBody": "Check online devices in the hosted dashboard",
2334
+ "guide.visual.startSmall": "Start with one computer",
2335
+ "guide.visual.choose": "Choose a mode. Copy it to your Agent.",
2336
+ "guide.visual.noInstall": "Copying does not install anything",
2337
+ "guide.visual.localCaption": "Try it on your own computer",
2338
+ "guide.visual.localBody": "Local dashboard, optional MCP. No account.",
2339
+ "guide.visual.hostedCaption": "See multiple devices in one place",
2340
+ "guide.visual.hostedBody": "Pair devices with your account and use encrypted relay.",
2341
+ "guide.visual.next": "What happens after copying?",
2342
+ "guide.visual.pasteTitle": "Go to the target computer",
2343
+ "guide.visual.pasteBody": "Paste the instructions into the Agent on that computer.",
2344
+ "guide.visual.installTitle": "Let your Agent install it",
2345
+ "guide.visual.installBody": "It checks the environment, installs the Driver and sets up local MCP.",
2346
+ "guide.visual.bindTitle": "Hosted mode: approve pairing",
2347
+ "guide.visual.bindBody": "The program continues automatically. No need to tell your Agent you approved.",
2348
+ "guide.visual.trust": "Private keys stay on devices · Log access needs separate permission",
2349
+ "guide.visual.details": "More details",
2350
+ "guide.visual.pairDetails": "Installation and pairing, step by step",
2351
+ "guide.visual.copiedLocal": "Copied. Go to the target computer and paste into its Agent. Local mode needs no sign-in.",
2352
+ "guide.visual.copiedHosted": "Copied. Go to the target computer and paste into its Agent. You must review pairing yourself.",
2353
+ "guide.visual.localReady": "Local mode: start using it",
2354
+ "guide.visual.localReadyBody": "No sign-in needed. View resources locally and let your Agent use MCP.",
2355
+ "guide.visual.heroLine1": "Less switching.",
2356
+ "guide.visual.heroLine2": "Less log copying.",
2357
+ "guide.visual.viewFlow": "See how it works",
2358
+ "guide.visual.pauseMotion": "Pause animation",
2359
+ "guide.visual.playMotion": "Play animation",
2360
+ "guide.visual.dashboard": "Dashboard",
2361
+ "guide.focus.overview": "Overview",
2362
+ "guide.focus.example": "How it works · illustration only",
2363
+ "guide.focus.firstTry": "First time? Try local, no account needed.",
2364
+ "guide.focus.alreadyInstalled": "Already connected?",
2365
+ "guide.focus.start": "Take action",
2366
+ "guide.focus.startTitle": "Connect your first computer",
2367
+ "guide.focus.startBody": "Choose a usage mode, then install with an Agent or manually. The target device does not need an AI Agent.",
2368
+ "guide.focus.select": "Choose how to use it",
2369
+ "guide.focus.useSelfHosted": "Use my own control plane",
2370
+ "guide.focus.copyHint": "These are instructions for an Agent. Paste them into an Agent chat, not a terminal.",
2371
+ "guide.focus.paste": "On the target computer, paste into your Agent",
2372
+ "guide.focus.pasteBefore": "Copy the instructions above, then open an Agent chat on the computer you want to connect.",
2373
+ "guide.focus.pasteAfter": "Open an Agent chat on the computer you want to connect, paste the instructions, and follow its guidance.",
2374
+ "guide.focus.whatNext": "What happens after that?",
2375
+ "guide.focus.openHosted": "After installation, open the panel to approve pairing yourself ↗",
2376
+ "guide.focus.copied": "Copied. Next: paste into the Agent on the target computer.",
2377
+ "pair.title": "Bind this computer",
2378
+ "pair.step": "Your approval",
2379
+ "pair.intro": "Approve only a request you just started on this computer. The request is filled in automatically.",
2380
+ "pair.fingerprint": "Compare the full public-key fingerprint with your terminal or Agent:",
2381
+ "pair.scope": "Reports include this computer’s name, OS, memory and disk only. No remote operations are granted.",
2382
+ "pair.approve": "Fingerprints match — bind this computer",
2383
+ "pair.cancel": "Cancel",
2384
+ "pair.loading": "Loading your request",
2385
+ "pair.wait": "Please wait. You will sign in first if needed.",
2386
+ "pair.bound": "Bound. Checking the connection",
2387
+ "pair.reporting": "Waiting for this computer’s first resource report…",
2388
+ "pair.noReply": "The program continues automatically. No need to tell your Agent you approved.",
2389
+ "pair.done": "This computer is connected",
2390
+ "pair.doneBody": "The cloud received a resource report. Add a name, purpose and tags in the dashboard.",
2391
+ "pair.reportTimeout": "Binding succeeded, but the first report is unconfirmed. Check the awake computer, local service and network. Do not bind again.",
2392
+ "pair.cancelled": "Cancelled",
2393
+ "pair.cancelledBody": "No device was approved. This request will expire automatically.",
2394
+ "pair.missing": "Request expired or unavailable",
2395
+ "pair.missingBody": "Start again on the target computer. Do not open binding links sent by others. Already bound computers do not need pairing again.",
2396
+ "pair.start": "Back to setup guide",
2397
+ "pair.dashboard": "Open device dashboard",
2398
+ "pair.boundary": "Private keys stay on the device · Remote operations need separate permission",
2399
+ "pair.manual": "No browser, or already have a terminal pairing code?",
2400
+ "pair.manualHint": "For headless servers or older clients only: run the manual command on the target, then enter its code here.",
2401
+ "pair.browserHint": "Opens this binding request automatically. Sign in, compare the fingerprint and approve once. Reporting is checked automatically; no reply to your Agent needed.",
2402
+ "pair.approvalUnknown": "Approval result unconfirmed",
2403
+ "pair.approvalUnknownBody": "The network failed or this request was already handled. Check the target’s running connection process and dashboard before starting over. Already bound devices do not need pairing again.",
2404
+ "guide.method.title": "Choose how to install",
2405
+ "guide.method.agent": "Use an Agent",
2406
+ "guide.method.manual": "Install manually",
2407
+ "guide.manual.prerequisites": "Node.js 24+ · Fresh installs only. Existing installations are preserved and the script stops.",
2408
+ "guide.manual.browserQuestion": "Can the target device open a browser?",
2409
+ "guide.manual.hasBrowser": "Has a browser",
2410
+ "guide.manual.noBrowser": "No browser / server",
2411
+ "guide.manual.copy": "Copy terminal install script",
2412
+ "guide.manual.copyHint": "This is a shell script. Paste and run it in the target device’s terminal. No AI Agent needed.",
2413
+ "guide.manual.preview": "View or manually copy the script",
2414
+ "guide.manual.scriptLabel": "Terminal install script",
2415
+ "guide.manual.pasteTitle": "Run in the target device’s terminal",
2416
+ "guide.manual.pasteBefore": "Copy the script, then open the target device’s terminal. Use Terminal on Mac, or a terminal or existing SSH session on Linux.",
2417
+ "guide.manual.pasteAfter": "Paste and run in the target device’s terminal. The script checks prerequisites and installs the Driver and a user background service.",
2418
+ "guide.manual.copied": "Script copied. Next: paste and run in the target device’s terminal.",
2419
+ "guide.manual.installBody": "The script installs a user background service that starts at login. The target needs no AI Agent or MCP setup. Add MCP later on a management computer when you want its Agent to use Device Center.",
2420
+ "guide.manual.localBody": "No login needed. View resources in the target’s local dashboard. MCP setup is only needed on a computer whose Agent will use it. A server’s loopback address is not a remote URL.",
2421
+ "guide.manual.browserBody": "The script opens the target’s browser. Sign in to your own account, compare the full public key fingerprint with the terminal, and approve once. The device then reports automatically.",
2422
+ "guide.manual.headlessBody": "Keep the target terminal open. On another computer with a browser, sign in to the control plane, choose “Connect my computer”, enter the terminal’s 5-minute pairing code, compare the full public key fingerprint, and approve. No Agent reply is needed.",
2423
+ "guide.manual.openPanel": "Open the control plane to finish pairing ↗",
2424
+ "guide.manual.openGuide": "No Agent on the device? Open manual setup ↗",
2425
+ "walk.title": "Copied? Follow the pictures",
2426
+ "walk.disclaimer": "These are illustrations. Perform the actions in the actual windows on the indicated computer.",
2427
+ "walk.terminalTitle": "Paste into Terminal on the target computer",
2428
+ "walk.terminalBody": "Open a terminal on the computer you want to connect. Paste the entire script, then press Enter. Stop and check any errors.",
2429
+ "walk.agentTitle": "Paste into the target computer’s Agent chat",
2430
+ "walk.agentBody": "Open an Agent chat that can operate that computer. Paste and send the installation instructions; the Agent handles installation.",
2431
+ "walk.headlessTitle": "Bind from another computer with a browser",
2432
+ "walk.headlessBody": "Keep the target terminal open. Sign in to the control panel on another computer, enter the terminal’s pairing code, compare the full public key fingerprint, then approve.",
2433
+ "walk.browserTitle": "Bind in the browser that opens",
2434
+ "walk.browserBody": "The script opens this binding request. Sign in to your account, compare the full public key fingerprint with the terminal or Agent output, and approve once.",
2435
+ "walk.installTitle": "Wait for installation and check for errors",
2436
+ "walk.installBody": "The script installs the local Driver and a user background service. No AI Agent is needed. Troubleshoot any reported errors.",
2437
+ "walk.agentInstallBody": "The Agent installs the Driver and user background service, connects MCP, and verifies that they actually work.",
2438
+ "walk.checkTitle": "Check the device list for a real report",
2439
+ "walk.cloudCheckBody": "Find this computer in the cloud device list. Actual memory, disk, and an updated report time confirm completion. Binding alone does not confirm reporting.",
2440
+ "walk.localCheckBody": "On the computer you just installed, open the local panel address shown below in a browser. 127.0.0.1 refers to that computer itself.",
2441
+ "walk.copyFirst": "Use the copy button above first, then switch to the indicated window.",
2442
+ "walk.openMac": "Mac: ⌘ Space → search “Terminal”",
2443
+ "walk.openLinux": "Linux: app menu → Terminal, or an existing SSH session",
2444
+ "walk.autoBrowser": "The browser opens after execution; if it fails, follow the terminal’s manual pairing instructions",
2445
+ "walk.sameComputer": "Open this address on the computer you just installed",
2446
+ "walk.steps": "Illustrated installation steps",
2447
+ "walk.pasteTab": "Paste & run",
2448
+ "walk.bindTab": "Sign in & bind",
2449
+ "walk.installTab": "Installation",
2450
+ "walk.checkTab": "Check device",
2451
+ "walk.copiedContent": "Clipboard",
2452
+ "walk.terminal": "Terminal",
2453
+ "walk.chat": "Agent chat",
2454
+ "walk.browser": "Web page",
2455
+ "walk.fullFingerprint": "Full public key fingerprint here",
2456
+ "walk.approve": "Matches — bind this computer",
2457
+ "walk.targetTerminal": "Target computer · Terminal",
2458
+ "walk.pasteScript": "Paste the entire script here",
2459
+ "walk.pressEnter": "Then press",
2460
+ "walk.targetChat": "Target computer · Agent chat",
2461
+ "walk.pastePrompt": "Paste installation instructions here",
2462
+ "walk.send": "Send",
2463
+ "walk.pairCode": "Code from the terminal",
2464
+ "walk.otherBrowser": "Another computer · Browser",
2465
+ "walk.signIn": "Sign in to your own account",
2466
+ "walk.pasteCode": "Enter the terminal’s code here",
2467
+ "walk.compare": "Compare both full public key fingerprints",
2468
+ "walk.driver": "Install local Driver",
2469
+ "walk.service": "Start user background service",
2470
+ "walk.mcp": "Connect this Agent’s MCP",
2471
+ "walk.yourDevice": "Your device",
2472
+ "walk.awaitReport": "Waiting for a real report",
2473
+ "walk.reportTime": "Check that the report time just updated",
2474
+ "walk.previous": "← Previous",
2475
+ "walk.restart": "See where to paste again",
2476
+ "walk.next": "Next step →",
2477
+ "walk.counter": "{current} / {total}",
2478
+ "walk.openDevices": "Open device list ↗",
2479
+ "walk.openPairing": "Choose “{action}” → pairing code",
2480
+ "guide.os.title": "Target computer’s OS",
2481
+ "guide.windowsCandidate": "Windows 11 preview · Install in PowerShell and follow the diagrams to verify pairing and background status.",
2482
+ "guide.windowsPrerequisites": "Windows 11 · PowerShell 5.1+ · Node.js 24+ · Normal user window; no AD or AI Agent needed. Stops if already installed.",
2483
+ "walk.windowsTitle": "Paste into Windows PowerShell, then press Enter",
2484
+ "walk.windowsBody": "Open a normal-user PowerShell window on the target computer (not Command Prompt or WSL). Review, paste the entire script and press Enter. Keep the window if it fails.",
2485
+ "walk.openWindows": "Start → search PowerShell → Open (no administrator required)",
2486
+ "prompt.windowsEnvironment": "Check Windows 11, PowerShell 5.1+, Node.js >=24, npm.cmd and the Agent’s MCP support. Use normal-user PowerShell, not WSL or npm.ps1. Check $LASTEXITCODE after every native command; stop on nonzero. Do not change execution policy or elevate. Use official Node.js sources.",
2487
+ "prompt.windowsBackground": "Review the plan, explicitly install the current-user logon task, then verify status. No AD, administrator, password or policy changes. Preserve failures; offer foreground mode. Local DPAPI CurrentUser encryption and NTFS ACLs protect identity; do not move identity files. No reporting while logged out, sleeping or offline."
1961
2488
  },
1962
2489
  "ja": {
1963
2490
  "language": "言語",
1964
2491
  "guide.title": "はじめる · Device Center",
1965
2492
  "guide.open": "デバイス画面へ ↗",
1966
- "guide.badge": "公開ベータ · 0.2.0-beta.3 · MIT",
2493
+ "guide.badge": "開発プレビュー · 0.2.0-beta.5 · MIT",
1967
2494
  "guide.hero": "手元の空きパソコンを、Agent のリソースに。",
1968
2495
  "guide.lead": "リソースと各パソコンの用途を確認し、個別の許可を得て指定ログを読み取ります。まずは1台から、ローカルの Agent にセットアップを任せられます。",
1969
- "guide.platform": "macOS / Linux · Node.js 24+ · Windows ネイティブ版は未対応です",
2496
+ "guide.platform": "macOS / Linux / Windows 11 開発候補 · Node.js 24+",
1970
2497
  "guide.install": "方式を選び、ローカルの Agent に手順を渡す",
1971
2498
  "guide.local": "ローカルで使う",
1972
2499
  "guide.localDesc": "アカウント不要のローカル画面と MCP。自分のパソコンや既存のデバイスのリソースを確認できます。",
@@ -1974,7 +2501,7 @@ export const messages = {
1974
2501
  "guide.hosted": "公式ホスティング",
1975
2502
  "guide.hostedDesc": "自分のアカウントでデバイスを管理し、公式の暗号化中継を利用します。Driver と秘密鍵はデバイスに残ります。",
1976
2503
  "guide.hostedCopy": "公式サービス用の手順をコピー",
1977
- "guide.paste": "インストールが可能な、対象パソコン上の Agent に貼り付けてください。既存設定を確認し、固定バージョン、ユーザー単位の常駐サービス、MCP を設定して結果を検証します。このページ自体はソフトをインストールしません。",
2504
+ "guide.paste": "Agent に任せる場合は手順をコピーします。手動の場合は Shell スクリプトを対象端末で実行します。どちらも本機の Driver をインストールします。MCP は AI Agent を使う管理用パソコンだけに設定します。ウェブページはコピーするだけです。",
1978
2505
  "guide.custom": "自分のコントロールプレーンを使う",
1979
2506
  "guide.address": "自前のコントロールプレーンの HTTPS アドレス",
1980
2507
  "guide.customCopy": "自前サーバー用の手順をコピー",
@@ -1982,9 +2509,9 @@ export const messages = {
1982
2509
  "guide.preview": "手順の全文を表示・手動でコピー",
1983
2510
  "guide.instructions": "Agent 向けセットアップ手順",
1984
2511
  "guide.pair": "ホスティング利用時はログインしてパソコンを登録",
1985
- "guide.pair1": "Agent の案内に従ってデバイス画面を開き、自分の App Services/個人サイトのアカウントでログインします。未登録ならアカウントページで登録してください。",
2512
+ "guide.pair1": "アカウントが必要なのはクラウド利用時だけです。ブラウザーがあれば接続ページが開きます。ない場合は別のパソコンでログインし、端末のコードを入力します。",
1986
2513
  "guide.loginLink": "クラウドのデバイス画面を開く",
1987
- "guide.pair2": "ローカル端末に表示された有効期間5分のペアリングコードを画面に入力し、公開鍵の指紋全体を照合してから承認します。パスワード、秘密鍵、コードを他人に送ったり Agent の会話に貼ったりしないでください。",
2514
+ "guide.pair2": "自分が今開始した申請だけ承認してください。端末名、OS、ターミナルに表示された公開鍵の指紋全体を確認し、コードは共有しないでください。",
1988
2515
  "guide.pair3": "自分の別のパソコンでも同じ手順でインストールし、同じアカウントに紐付けます。実際の報告がないデバイスは「不明」または「報告なし」と表示されます。",
1989
2516
  "guide.localHint": "ローカルモードではこの手順は不要です。登録で許可されるのは説明済みのリソース報告のみです。ログの読み取りは対象デバイスで別途許可が必要です。",
1990
2517
  "guide.try": "試用時に確認する4つのこと",
@@ -2000,9 +2527,9 @@ export const messages = {
2000
2527
  "guide.faqBody": "Node.js 24+、Driver の起動、パソコンのスリープ状態、ネットワーク、システム時刻を確認します。ポート使用中なら他のプログラムを止めず、空いているローカルポートを選んでください。「報告なし」は最近のデータがない意味で、秘密鍵の期限切れではありません。",
2001
2528
  "guide.feedback": "不具合報告には OS、バージョン、選択した方式、失敗した手順、機密情報を除いたエラーを記載してください。秘密鍵、コード、cookie、ログ本文は含めないでください。",
2002
2529
  "guide.scope": "このベータ版の対応範囲",
2003
- "guide.scopeBody": "実際のリソース、デバイスの説明、手動取得、個別許可によるログ末尾の読み取りに対応。任意のリモートコマンド、一般的なファイル転送、Windows ネイティブ Driver、自動ネットワーク探索、オフライン LAN 認可、ローカルとクラウドの説明同期は未対応です。",
2530
+ "guide.scopeBody": "実際のリソース、デバイスの説明、手動取得、個別許可によるログ末尾の読み取りに対応。任意のリモートコマンド、一般的なファイル転送、自動ネットワーク探索、オフライン LAN 認可、ローカルとクラウドの説明同期は未対応です。",
2004
2531
  "guide.quota": "公式中継の試用上限はアカウントごとに1日100 MiB(UTC)、方向ごとに16 KiB/sです。帯域は無制限ではありません。サービスとアプリは手動登録で、自動検出はしません。",
2005
- "guide.full": "Agent 詳細インストールガイド(中国語)",
2532
+ "guide.full": "インストール完全ガイド(中国語)",
2006
2533
  "guide.markdown": "テキスト版試用ガイド(中国語)",
2007
2534
  "guide.source": "MIT npm ソースパッケージ ↗",
2008
2535
  "guide.footer": "ローカルにインストール · 秘密鍵はデバイス内 · 操作は別途許可",
@@ -2016,14 +2543,14 @@ export const messages = {
2016
2543
  "prompt.private": "コントロールプレーン:{origin}。Driver はこのデバイスで動作します。本人確認用の秘密鍵はデバイスに保管し、クラウドに預けません。",
2017
2544
  "prompt.background": "OS ログイン後に起動するユーザー単位の常駐サービス",
2018
2545
  "prompt.foreground": "フォアグラウンドのみ。常駐サービスはインストールしない",
2019
- "prompt.environment": "macOS/Linux、Node.js >=24、npm、現在の Agent の MCP 対応を確認してください。Windows ネイティブ Driver は未対応なので、Windows なら説明して停止してください。Node.js がなければ公式の入手先を使い、管理者権限や OS の許可が必要なら私に引き継いでください。",
2546
+ "prompt.environment": "macOS/Linux、Node.js >=24、npm、Agent の MCP 対応を確認。対象 OS が選択と違う場合は停止して再選択を依頼してください。Node.js は公式から取得し、OS や管理者の許可はユーザーに任せてください。",
2020
2547
  "prompt.existing": "既存の CLI、紐付け、ユーザーサービス、{url}/api/health を先に確認し、設定を残してください。固定パスに CLI があれば {status} と {service} を確認できます。秘密鍵ファイルは開かないでください。ポート使用中は他のプログラムを止めず、既知の空きループバックポートに変更し、各アドレスを更新してください。バージョン、接続先、起動方式が一致すれば再利用し、競合時は私に確認して、上書き・紐付け解除・重複インストールをしないでください。",
2021
2548
  "prompt.userInstall": "新規インストールでは sudo 不要の、ユーザーが書き込める固定パスを使います:",
2022
2549
  "prompt.config": "グローバル npm 設定やシェル起動ファイルは変更せず、以後は上記の CLI 絶対パスを使ってください。",
2023
2550
  "prompt.bg": "サービス計画を確認し、ユーザー単位・ループバックのみの待受けを確認してからインストールし、状態を検証してください。失敗や競合があれば状態を保持し、削除して再インストールしないでください。Linux は systemd --user、macOS はログイン中のユーザーの launchd が必要です。利用できなければ説明し、フォアグラウンド起動を提案してください。",
2024
2551
  "prompt.fg": "フォアグラウンドのプロセスを維持してください。ホスティングでは次の connect が承認後に Driver を起動します。ローカルモードでは以下の start を実行してください。ページを閉じても停止しませんが、端末を閉じると報告が止まります。",
2025
2552
  "prompt.pairBefore": "まず報告範囲を確認し、登録を申請します:",
2026
- "prompt.pairAfter": "私自身が {origin} にログインし、ローカル端末で公開鍵の指紋全体を照合して手動で承認するよう案内してください。代わりに承認したり、パスワード、cookie、秘密鍵を読んだりしないでください。コードはローカル端末だけに表示し、会話、スクリプト、リンクに入れないでください。ツールが記録してしまう場合は connect のみ私が端末で実行し、他の検証は続けてください。承認後は実際のリソース報告を確認し、configured=true だけでクラウド接続済みと判断しないでください。",
2553
+ "prompt.pairAfter": "あなたが --browser を実行して待機してください。本機ブラウザーが開き、臨時の認証情報は出力されません。私には {origin} にログインし、出力された公開鍵の指紋全体を照合して一度承認するよう案内してください。代理承認やパスワード、cookie、秘密鍵、認証リンクの読み取りは禁止です。処理を監視し firstReport.verified=true を確認して自動続行。端末での再実行や「承認済み」の返信を要求しないでください。configured=true だけでは報告の証拠になりません。ブラウザーが使えない時のみ、私が端末で --browser なしの connect を実行し、コードは端末に残します。未対応の制御面は更新を案内してください。",
2027
2554
  "prompt.local": "connect の実行、デバイス ID の生成、アカウント作成は行わないでください。既存のクラウド登録があれば start や常駐サービスで再開する可能性を説明し、ローカル専用と偽らないでください。",
2028
2555
  "prompt.mcp": "{url}/api/connector/setup を読み、現在の Agent が対応する公式の設定方法で Streamable HTTP MCP の {mcp} を登録してください。一致する設定は再利用し、他の MCP は上書きしないでください。設定できなければこのアドレスの貼り付けだけを私に依頼し、接続成功を捏造しないでください。",
2029
2556
  "prompt.verify": "/api/health、/api/overview の実際のメモリとディスク、Agent による device_center_list_resources の実呼び出しを検証してください。バージョン、画面と MCP の URL、起動方式、該当するクラウド登録結果、未完了の手順を報告してください。",
@@ -2038,14 +2565,17 @@ export const messages = {
2038
2565
  "login.submit": "ログイン",
2039
2566
  "login.unified": "App Services/個人サイト共通のアカウントを使います。",
2040
2567
  "login.link": "共通アカウントでログイン ↗",
2041
- "login.help": "新しいページでメールまたは Google でログインし、ここに戻ると自動でデバイス画面に進みます。",
2042
- "login.continue": "ログイン済み、続ける",
2568
+ "login.help": "ログイン済みの場合は自動で進みます。必要な場合は下のアカウントページでログインし、ここに戻ってください。",
2569
+ "login.continue": "管理画面へ進む",
2043
2570
  "login.return": "共通アカウントへのログイン後、このページに戻ってください。",
2044
2571
  "login.first": "先にアカウントページでメールまたは Google でログインしてから、ここに戻ってください。",
2045
2572
  "login.owner": "この個人用画面へのアクセス権がありません。所有者のアカウントを使ってください。",
2046
2573
  "login.rate": "試行回数が多すぎます。1分後に再試行してください。",
2047
- "login.unavailable": "共通アカウントサービスが一時的に利用できません。しばらくしてから再試行してください。",
2048
- "login.timeout": "アカウントサービスへの接続がタイムアウトしました。再試行してください。",
2574
+ "login.unavailable": "アカウントサービスに接続できません。ここで再試行してください。個人サイトに戻る必要はありません。",
2575
+ "login.timeout": "アカウント確認がタイムアウトしました。パスワードを再入力せず、ここで再試行してください。",
2576
+ "login.session": "ログイン状態を保存できません。同じブラウザーでアカウントと管理画面を開き、このサイトの Cookie がブロックされていないか確認してください。",
2577
+ "login.returned": "管理画面のログイン状態を維持できないため、自動移動を停止しました。ここで再試行し、再び失敗する場合は表示内容と時刻を記録してください。",
2578
+ "login.checking": "ログイン状態を確認中…",
2049
2579
  "login.optionsError": "ログイン方法を読み込めません。再読み込みしてください。",
2050
2580
  "login.credentials": "ユーザー名またはパスワードが違います。",
2051
2581
  "login.multi": "アカウントごとにデバイスを分離 · HTTPS 保護",
@@ -2279,7 +2809,7 @@ export const messages = {
2279
2809
  "panel.224": "Agent 用にコピー",
2280
2810
  "panel.225": "インストール手順を表示",
2281
2811
  "panel.226": "Agent に渡すインストール手順",
2282
- "panel.227": "macOS / Linux と Node.js 24 に対応。固定バージョン 0.2.0-beta.3 を使用します。この画面は手順のコピーのみで、渡した Agent がローカルでインストールします。",
2812
+ "panel.227": "macOS / Linux / Windows 11 と Node.js 24 に対応。固定バージョン 0.2.0-beta.5 を使用します。この画面は手順のコピーのみで、渡した Agent がローカルでインストールします。",
2283
2813
  "panel.228": "コピーしました。対象コンピューターの Agent に貼り付け、必要な登録は本人がログインして確認してください。",
2284
2814
  "panel.229": "選択された手順を手動でコピーしてください。",
2285
2815
  "panel.230": "管理コンピューターを確認できません",
@@ -2398,7 +2928,7 @@ export const messages = {
2398
2928
  "panel.343": "ネットワーク到達不能時はクラウド中継を使います。証明書、識別情報、権限エラーでは停止します。どちらの経路も失効を確認するためコントロールプレーンがオンラインである必要があります。",
2399
2929
  "panel.344": "対象デバイスで実行可能:",
2400
2930
  "panel.345": "device-center access revoke --peer MANAGEMENT_FINGERPRINT --confirm",
2401
- "panel.346": "いつでも取り消せます。秘密鍵とログ許可パスはローカルに残り、クラウドは TLS 暗号文のみ転送します。Windows ネイティブ Agent は未提供です。",
2931
+ "panel.346": "いつでも取り消せます。秘密鍵とログ許可パスはローカルに残り、クラウドは TLS 暗号文のみ転送します。 Windows 11 プレビュー版 · PowerShell でインストールし、図に従ってペアリングとバックグラウンドの状態を確認してください。",
2402
2932
  "panel.347": "処理中…",
2403
2933
  "panel.348": "リクエストを検索",
2404
2934
  "panel.349": "関連付けた SSH 名とキャッシュ状態を最大 15 件共有(アドレス、ユーザー、パス、設定、秘密鍵は除く)",
@@ -2474,7 +3004,7 @@ export const messages = {
2474
3004
  "panel.419": "画面を閉じてもサービスを停止する必要はありません。標準の利用方法は、一度インストールして OS ログイン後にバックグラウンド実行することです。",
2475
3005
  "panel.420": "ローカルインストール・推奨",
2476
3006
  "panel.421": "macOS の launchd、Linux の systemd 用ユーザーサービススクリプトがあります。計画を確認してから本人がインストールします。",
2477
- "panel.422": "同じポートの前景プレビューを手動停止してからインストールします。Node.js 24 と固定のソースディレクトリが必要です。ユーザー用サービス、ログ、データを登録し管理者権限は不要です。Windows のバックグラウンド実行は未対応で、前景または Docker を使用できます。",
3007
+ "panel.422": "同じポートの前景プレビューを手動停止してからインストールします。Node.js 24 と固定のソースディレクトリが必要です。ユーザー用サービス、ログ、データを登録し管理者権限は不要です。 Windows 11 プレビュー版 · PowerShell でインストールし、図に従ってペアリングとバックグラウンドの状態を確認してください。",
2478
3008
  "panel.423": "Docker とローカル Agent の接続",
2479
3009
  "panel.424": "Docker は Device Center のみ実行します。Codex はローカルのまま、同じ",
2480
3010
  "panel.425": "http://127.0.0.1:PORT/mcp",
@@ -2482,7 +3012,7 @@ export const messages = {
2482
3012
  "panel.427": "Compose はループバックのみ公開し、データボリュームと再起動方針を維持します。ローカル AI → ローカル URL → コンテナ。Docker socket、Codex 設定、ホストのディレクトリのマウントは不要です。",
2483
3013
  "panel.428": "Docker エンジンが必要です。コンテナでローカル操作権限を自動取得しません。一覧はコンテナのみを示し、ホストのメモリ、ディスク、SSH 設定は見えません。ホストでネイティブ Driver を実行してください。",
2484
3014
  "panel.429": "スクリプトと実行設定の提供のみです。常駐サービスのインストールや Docker 起動はしません。現在はローカルプレビューです。",
2485
- "panel.430": "Agent にインストールを依頼",
3015
+ "panel.430": "Device Center をインストール",
2486
3016
  "panel.431": "リモートログを許可",
2487
3017
  "panel.432": "ローカル Codex を接続",
2488
3018
  "panel.433": "クラウド画面・任意",
@@ -2610,16 +3140,189 @@ export const messages = {
2610
3140
  "notice.notConfig": "SSH 設定ではないため無視しました。",
2611
3141
  "notice.candidateLimit": "候補数の上限に達しました。",
2612
3142
  "notice.match": "Match 条件あり。別名のみ登録し、条件評価やコマンド実行はしません。",
2613
- "notice.conditional": "Host / Match 内の条件 Include を省略。候補が不完全な場合があります。"
3143
+ "notice.conditional": "Host / Match 内の条件 Include を省略。候補が不完全な場合があります。",
3144
+ "guide.visual.hero": "PCの切り替えも、ログのコピペも少なく。",
3145
+ "guide.visual.lead": "手元のAgentから、ほかのデバイスの状態や許可したログを確認。",
3146
+ "guide.visual.begin": "接続を始める",
3147
+ "guide.visual.example": "利用イメージ",
3148
+ "guide.visual.yourDevices": "自分のデバイスを活用",
3149
+ "guide.visual.request": "「自宅サーバーのログを確認して。」",
3150
+ "guide.visual.myAgent": "手元のAgent",
3151
+ "guide.visual.myComputer": "いま使っているPC",
3152
+ "guide.visual.authorized": "許可に基づく読み取り",
3153
+ "guide.visual.otherDevice": "自分のデバイス",
3154
+ "guide.visual.homeServer": "例:自宅のサーバー",
3155
+ "guide.visual.log": "許可したログ",
3156
+ "guide.visual.scenarios": "利用シーン",
3157
+ "guide.visual.debug": "サービスに問題が起きたら",
3158
+ "guide.visual.debugBody": "許可したログをAgentが確認",
3159
+ "guide.visual.save": "クラウドを借りる前に",
3160
+ "guide.visual.saveBody": "手持ちのPCのリソースを確認",
3161
+ "guide.visual.away": "外出先でも",
3162
+ "guide.visual.awayBody": "クラウド画面からオンラインのデバイスを確認",
3163
+ "guide.visual.startSmall": "まずは1台から",
3164
+ "guide.visual.choose": "利用方法を選び、Agentにコピー",
3165
+ "guide.visual.noInstall": "コピーだけではインストールされません",
3166
+ "guide.visual.localCaption": "自分のPCで試す",
3167
+ "guide.visual.localBody": "ローカル画面、MCP は任意。アカウント不要。",
3168
+ "guide.visual.hostedCaption": "複数のデバイスをまとめて確認",
3169
+ "guide.visual.hostedBody": "自分のアカウントに紐づけ、暗号化中継を利用。",
3170
+ "guide.visual.next": "コピーした後は?",
3171
+ "guide.visual.pasteTitle": "接続したいPCへ移動",
3172
+ "guide.visual.pasteBody": "そのPC上のAgentに手順を貼り付けます。",
3173
+ "guide.visual.installTitle": "Agentにインストールを依頼",
3174
+ "guide.visual.installBody": "環境を確認し、Driverを導入してローカルMCPを設定します。",
3175
+ "guide.visual.bindTitle": "ホスト型:本人が承認",
3176
+ "guide.visual.bindBody": "プログラムは自動で続行します。Agent に承認完了を返信する必要はありません。",
3177
+ "guide.visual.trust": "秘密鍵はデバイス内に保存 · ログの読み取りは別途許可が必要",
3178
+ "guide.visual.details": "詳しい説明",
3179
+ "guide.visual.pairDetails": "インストールと紐づけの詳しい手順",
3180
+ "guide.visual.copiedLocal": "コピーしました。接続したいPCのAgentに貼り付けてください。ローカル利用はログイン不要です。",
3181
+ "guide.visual.copiedHosted": "コピーしました。接続したいPCのAgentに貼り付けてください。紐づけは本人が確認します。",
3182
+ "guide.visual.localReady": "ローカル利用:使い始める",
3183
+ "guide.visual.localReadyBody": "ログイン不要。ローカル画面でリソースを確認し、AgentからMCPを利用します。",
3184
+ "guide.visual.heroLine1": "PCの移動も、",
3185
+ "guide.visual.heroLine2": "ログのコピーも少なく。",
3186
+ "guide.visual.viewFlow": "接続手順を見る",
3187
+ "guide.visual.pauseMotion": "アニメーションを停止",
3188
+ "guide.visual.playMotion": "アニメーションを再生",
3189
+ "guide.visual.dashboard": "デバイス",
3190
+ "guide.focus.overview": "製品紹介",
3191
+ "guide.focus.example": "仕組みのイメージ · 操作不要",
3192
+ "guide.focus.firstTry": "初めてならローカルから。アカウント不要。",
3193
+ "guide.focus.alreadyInstalled": "接続済みですか?",
3194
+ "guide.focus.start": "ここから操作",
3195
+ "guide.focus.startTitle": "まず1台を接続",
3196
+ "guide.focus.startBody": "利用方法を選び、Agent に任せるか手動でインストールします。対象端末に AI Agent は不要です。",
3197
+ "guide.focus.select": "利用方法を選ぶ",
3198
+ "guide.focus.useSelfHosted": "自分の管理サーバーを使う",
3199
+ "guide.focus.copyHint": "Agent 向けの手順です。ターミナルではなく、Agent のチャットに貼り付けてください。",
3200
+ "guide.focus.paste": "接続先のパソコンで Agent に貼り付ける",
3201
+ "guide.focus.pasteBefore": "上の手順をコピーしてから、接続したいパソコンで Agent のチャットを開きます。",
3202
+ "guide.focus.pasteAfter": "接続したいパソコンで Agent のチャットを開き、コピーした手順を貼り付けて案内に従ってください。",
3203
+ "guide.focus.whatNext": "その後はどうなりますか?",
3204
+ "guide.focus.openHosted": "インストール後、管理画面で本人がペアリングを承認 ↗",
3205
+ "guide.focus.copied": "コピーしました。次は接続先のパソコンで Agent に貼り付けてください。",
3206
+ "pair.title": "このコンピューターを登録",
3207
+ "pair.step": "本人の確認",
3208
+ "pair.intro": "このコンピューターで今開始した申請だけを承認してください。申請は自動入力されます。",
3209
+ "pair.fingerprint": "端末または Agent に表示された公開鍵の指紋全体と照合:",
3210
+ "pair.scope": "標準では名前、OS、メモリ、ディスクのみを報告します。遠隔操作の権限は付与しません。",
3211
+ "pair.approve": "指紋を確認して登録",
3212
+ "pair.cancel": "キャンセル",
3213
+ "pair.loading": "申請を読み込み中",
3214
+ "pair.wait": "必要な場合は、先にログイン画面へ進みます。",
3215
+ "pair.bound": "登録済み。接続を確認中",
3216
+ "pair.reporting": "このコンピューターからの最初のリソース報告を待っています…",
3217
+ "pair.noReply": "プログラムは自動で続行します。Agent に承認完了を返信する必要はありません。",
3218
+ "pair.done": "接続が完了しました",
3219
+ "pair.doneBody": "クラウドが報告を受信しました。パネルで名前、用途、タグを設定できます。",
3220
+ "pair.reportTimeout": "登録は完了しましたが、最初の報告は未確認です。スリープ、本機サービス、ネットワークを確認してください。再登録は不要です。",
3221
+ "pair.cancelled": "キャンセル済み",
3222
+ "pair.cancelledBody": "デバイスは承認されていません。申請は自動で期限切れになります。",
3223
+ "pair.missing": "申請が期限切れか利用できません",
3224
+ "pair.missingBody": "対象のコンピューターでやり直してください。他人からの登録リンクは開かないでください。登録済みの端末は再登録不要です。",
3225
+ "pair.start": "接続ガイドに戻る",
3226
+ "pair.dashboard": "デバイスパネルを開く",
3227
+ "pair.boundary": "秘密鍵はデバイスに保存 · 遠隔操作は別途許可が必要",
3228
+ "pair.manual": "ブラウザーなし、または端末のコードをお持ちですか?",
3229
+ "pair.manualHint": "ブラウザーのないサーバーまたは旧版専用:対象端末で下のコマンドを実行し、コードを入力。",
3230
+ "pair.browserHint": "登録画面が自動で開きます。本人がログインし、指紋を照合して一度承認。報告は自動確認され、Agent への返信は不要です。",
3231
+ "pair.approvalUnknown": "承認結果は未確認です",
3232
+ "pair.approvalUnknownBody": "ネットワークの中断、または処理済みの申請です。対象端末の接続プロセスとパネルを確認してください。登録済みなら再登録は不要です。",
3233
+ "guide.method.title": "インストール方法を選択",
3234
+ "guide.method.agent": "Agent に任せる",
3235
+ "guide.method.manual": "手動インストール",
3236
+ "guide.manual.prerequisites": "Node.js 24+ · 新規インストール用。既存の設定があれば保持して停止します。",
3237
+ "guide.manual.browserQuestion": "対象端末でブラウザーを開けますか?",
3238
+ "guide.manual.hasBrowser": "ブラウザーあり",
3239
+ "guide.manual.noBrowser": "ブラウザーなし / サーバー",
3240
+ "guide.manual.copy": "端末用インストールスクリプトをコピー",
3241
+ "guide.manual.copyHint": "Shell スクリプトです。対象端末のターミナルに貼り付けて実行してください。AI Agent は不要です。",
3242
+ "guide.manual.preview": "スクリプトを表示・手動コピー",
3243
+ "guide.manual.scriptLabel": "端末用インストールスクリプト",
3244
+ "guide.manual.pasteTitle": "対象端末のターミナルで実行",
3245
+ "guide.manual.pasteBefore": "スクリプトをコピーし、対象端末のターミナルを開きます。Mac は「ターミナル」、Linux は端末または既存の SSH セッションを使います。",
3246
+ "guide.manual.pasteAfter": "対象端末のターミナルに貼り付けて実行します。環境を確認し、Driver とユーザー用バックグラウンドサービスをインストールします。",
3247
+ "guide.manual.copied": "コピーしました。次は対象端末のターミナルに貼り付けて実行してください。",
3248
+ "guide.manual.installBody": "ログイン時に起動するユーザー用サービスをインストールします。対象端末に AI Agent や MCP 設定は不要です。管理用パソコンの Agent から使うときに、必要に応じて MCP を追加します。",
3249
+ "guide.manual.localBody": "ログイン不要。対象端末のローカル画面でリソースを確認できます。MCP 設定は Agent を使う管理用パソコンだけに必要です。サーバーのループバックアドレスはリモート URL ではありません。",
3250
+ "guide.manual.browserBody": "対象端末のブラウザーが開きます。自分のアカウントでログインし、端末に表示された公開鍵の指紋全体と照合して一度承認すると、自動で状態を報告します。",
3251
+ "guide.manual.headlessBody": "対象端末のターミナルは開いたままにします。別のパソコンで管理画面にログインし「自分のパソコンを接続」を選び、端末の 5 分間有効なコードを入力、公開鍵の指紋全体を照合して承認します。Agent への返信は不要です。",
3252
+ "guide.manual.openPanel": "管理画面を開いて接続を承認 ↗",
3253
+ "guide.manual.openGuide": "端末に Agent がない場合:手動インストールへ ↗",
3254
+ "walk.title": "コピーしたら、図に沿って操作",
3255
+ "walk.disclaimer": "以下は操作のイメージです。該当するパソコンの実際のウィンドウで操作してください。",
3256
+ "walk.terminalTitle": "対象のパソコンのターミナルに貼り付ける",
3257
+ "walk.terminalBody": "接続するパソコンでターミナルを開き、スクリプト全体を貼り付けて Enter を押します。エラーが出たら止めて確認してください。",
3258
+ "walk.agentTitle": "対象のパソコンの Agent チャットに貼り付ける",
3259
+ "walk.agentBody": "そのパソコンを操作できる Agent のチャットを開き、インストール手順を貼り付けて送信します。以降のインストールは Agent が行います。",
3260
+ "walk.headlessTitle": "ブラウザーのある別のパソコンで登録",
3261
+ "walk.headlessBody": "対象のターミナルは開いたままにします。別のパソコンで管理画面にログインし、ターミナルのペアリングコードを入力。公開鍵の指紋全体を照合して承認します。",
3262
+ "walk.browserTitle": "自動で開くブラウザーで登録",
3263
+ "walk.browserBody": "スクリプトが今回の登録申請を開きます。自分のアカウントでログインし、ターミナルまたは Agent の公開鍵の指紋全体と照合して、一度承認します。",
3264
+ "walk.installTitle": "インストール完了を待ち、エラーを確認",
3265
+ "walk.installBody": "スクリプトがローカル Driver とユーザー用のバックグラウンドサービスをインストールします。AI Agent は不要です。エラーがあれば内容を確認してください。",
3266
+ "walk.agentInstallBody": "Agent が Driver とユーザー用のバックグラウンドサービスをインストールし、MCP を接続して実際の動作を確認します。",
3267
+ "walk.checkTitle": "デバイス一覧で実際の報告を確認",
3268
+ "walk.cloudCheckBody": "クラウドのデバイス一覧でこのパソコンを探します。実際のメモリ、ディスク、更新された報告時刻を確認したら完了です。登録だけでは報告の成功は確認できません。",
3269
+ "walk.localCheckBody": "インストールしたパソコンのブラウザーで、図のローカル管理画面のアドレスを開きます。127.0.0.1 はそのパソコン自身を指します。",
3270
+ "walk.copyFirst": "まず上のコピーボタンを押し、図のウィンドウに移動してください。",
3271
+ "walk.openMac": "Mac:⌘ Space →「ターミナル」を検索",
3272
+ "walk.openLinux": "Linux:アプリメニュー → ターミナル、または既存の SSH セッション",
3273
+ "walk.autoBrowser": "実行後にブラウザーが開きます。開かない場合はターミナルの案内に従い手動ペアリングへ",
3274
+ "walk.sameComputer": "インストールしたパソコンでこのアドレスを開く",
3275
+ "walk.steps": "インストール手順の図",
3276
+ "walk.pasteTab": "貼り付け・実行",
3277
+ "walk.bindTab": "ログイン・登録",
3278
+ "walk.installTab": "インストール",
3279
+ "walk.checkTab": "デバイス確認",
3280
+ "walk.copiedContent": "クリップボード",
3281
+ "walk.terminal": "ターミナル",
3282
+ "walk.chat": "Agent チャット",
3283
+ "walk.browser": "Web ページ",
3284
+ "walk.fullFingerprint": "ここに公開鍵の指紋全体を表示",
3285
+ "walk.approve": "一致を確認、このパソコンを登録",
3286
+ "walk.targetTerminal": "対象のパソコン · ターミナル",
3287
+ "walk.pasteScript": "ここにスクリプト全体を貼り付け",
3288
+ "walk.pressEnter": "貼り付け後に押す",
3289
+ "walk.targetChat": "対象のパソコン · Agent チャット",
3290
+ "walk.pastePrompt": "ここにインストール手順を貼り付け",
3291
+ "walk.send": "送信する",
3292
+ "walk.pairCode": "ターミナルのペアリングコード",
3293
+ "walk.otherBrowser": "別のパソコン · ブラウザー",
3294
+ "walk.signIn": "自分のアカウントでログイン",
3295
+ "walk.pasteCode": "ここにターミナルのコードを入力",
3296
+ "walk.compare": "両方の公開鍵の指紋全体を照合",
3297
+ "walk.driver": "ローカル Driver をインストール",
3298
+ "walk.service": "ユーザー用バックグラウンドサービスを開始",
3299
+ "walk.mcp": "この Agent の MCP を接続",
3300
+ "walk.yourDevice": "あなたのデバイス",
3301
+ "walk.awaitReport": "実際の報告を待機",
3302
+ "walk.reportTime": "報告時刻が更新されたことを確認",
3303
+ "walk.previous": "← 前の図",
3304
+ "walk.restart": "貼り付け先をもう一度見る",
3305
+ "walk.next": "次の手順 →",
3306
+ "walk.counter": "{current} / {total}",
3307
+ "walk.openDevices": "デバイス一覧を開く ↗",
3308
+ "walk.openPairing": "「{action}」→ ペアリングコード",
3309
+ "guide.os.title": "対象パソコンの OS",
3310
+ "guide.windowsCandidate": "Windows 11 プレビュー版 · PowerShell でインストールし、図に従ってペアリングとバックグラウンドの状態を確認してください。",
3311
+ "guide.windowsPrerequisites": "Windows 11 · PowerShell 5.1+ · Node.js 24+ · 通常ユーザーで実行。AD や AI Agent は不要。既存インストールがあれば停止します。",
3312
+ "walk.windowsTitle": "Windows PowerShell に貼り付け、Enter",
3313
+ "walk.windowsBody": "対象パソコンで通常ユーザーの PowerShell を開きます(コマンドプロンプトや WSL ではありません)。内容を確認してスクリプト全体を貼り付け、Enter。失敗時はウィンドウを残してください。",
3314
+ "walk.openWindows": "スタート → PowerShell を検索 → 開く(管理者権限不要)",
3315
+ "prompt.windowsEnvironment": "Windows 11、PowerShell 5.1+、Node.js >=24、npm.cmd、Agent の MCP 対応を確認。通常ユーザーの PowerShell を使い、WSL や npm.ps1 は使わないでください。各コマンドの $LASTEXITCODE を確認し、非ゼロなら停止。実行ポリシーや権限を変更せず、Node.js は公式から取得してください。",
3316
+ "prompt.windowsBackground": "計画を確認後、現在のユーザーのログオンタスクを明示的にインストールし状態を検証。AD、管理者、パスワードやポリシー変更は不要。失敗時は状態を保持し前景起動を提案。識別情報はローカル DPAPI と NTFS ACL で保護し、ファイルを移動しないでください。ログアウト、スリープ、オフライン中は送信できません。"
2614
3317
  },
2615
3318
  "ko": {
2616
3319
  "language": "언어",
2617
3320
  "guide.title": "시작하기 · Device Center",
2618
3321
  "guide.open": "기기 대시보드 열기 ↗",
2619
- "guide.badge": "공개 베타 · 0.2.0-beta.3 · MIT",
3322
+ "guide.badge": "개발 미리보기 · 0.2.0-beta.5 · MIT",
2620
3323
  "guide.hero": "사용하지 않는 컴퓨터를 Agent에 연결하세요.",
2621
3324
  "guide.lead": "기기 리소스와 용도를 확인하고 별도 승인 후 지정된 로그를 읽을 수 있습니다. 로컬 Agent에 설치를 맡기고 컴퓨터 한 대부터 시작하세요.",
2622
- "guide.platform": "macOS / Linux · Node.js 24+ · Windows 네이티브 버전은 아직 지원하지 않습니다",
3325
+ "guide.platform": "macOS / Linux / Windows 11 후보 · Node.js 24+",
2623
3326
  "guide.install": "방식을 선택하고 로컬 Agent에 안내를 복사하세요",
2624
3327
  "guide.local": "로컬 사용",
2625
3328
  "guide.localDesc": "계정 없이 로컬 대시보드와 MCP를 사용합니다. 내 컴퓨터와 기존 기기의 리소스를 먼저 살펴보세요.",
@@ -2627,7 +3330,7 @@ export const messages = {
2627
3330
  "guide.hosted": "공식 호스팅",
2628
3331
  "guide.hostedDesc": "내 계정으로 기기를 관리하고 공식 암호화 릴레이를 사용합니다. Driver와 개인 키는 기기에 보관됩니다.",
2629
3332
  "guide.hostedCopy": "호스팅 설치 안내 복사",
2630
- "guide.paste": "소프트웨어를 설치할 수 있는 대상 컴퓨터의 Agent에 붙여 넣으세요. 기존 설정을 확인하고 고정 버전, 사용자 백그라운드 서비스와 MCP를 설치한 뒤 실제 결과를 확인합니다. 웹페이지 자체는 설치를 실행하지 않습니다.",
3333
+ "guide.paste": "Agent에게 맡기려면 안내를 복사하세요. 수동 설치는 Shell 스크립트를 대상 터미널에서 실행하세요. 둘 다 로컬 Driver를 설치합니다. MCP는 AI Agent를 사용하는 관리 컴퓨터에만 필요합니다. 웹페이지는 복사만 하고 설치하지 않습니다.",
2631
3334
  "guide.custom": "자체 제어 서버가 있나요?",
2632
3335
  "guide.address": "자체 제어 서버 HTTPS 주소",
2633
3336
  "guide.customCopy": "자체 서버 연결 안내 복사",
@@ -2635,9 +3338,9 @@ export const messages = {
2635
3338
  "guide.preview": "전체 안내 보기 또는 직접 복사",
2636
3339
  "guide.instructions": "Agent 설치 안내",
2637
3340
  "guide.pair": "호스팅 사용 시 로그인하고 내 컴퓨터를 등록하세요",
2638
- "guide.pair1": "Agent 안내에 따라 대시보드를 열고 본인의 App Services / 개인 사이트 계정으로 로그인하세요. 계정이 없으면 계정 페이지에서 가입하세요.",
3341
+ "guide.pair1": "호스팅 모드만 계정이 필요합니다. 브라우저가 있으면 페어링 페이지가 열립니다. 없으면 다른 컴퓨터에서 로그인해 터미널의 코드를 입력하세요.",
2639
3342
  "guide.loginLink": "클라우드 패널 열기",
2640
- "guide.pair2": "로컬 터미널에 표시된 5분 유효 페어링 코드를 대시보드에 입력하고 전체 공개 키 지문을 확인한 뒤 승인하세요. 비밀번호, 개인 키, 페어링 코드를 공유하거나 Agent 대화에 붙여 넣지 마세요.",
3343
+ "guide.pair2": "방금 직접 시작한 요청만 승인하세요. 기기 이름, OS, 터미널의 전체 공개 키 지문을 확인하세요. 페어링 코드는 공유하지 마세요.",
2641
3344
  "guide.pair3": "다른 본인 컴퓨터에서도 설치를 반복하고 같은 계정에 연결하세요. 실제 보고가 없는 기기는 알 수 없음 또는 보고 없음으로 표시됩니다.",
2642
3345
  "guide.localHint": "로컬 모드에서는 이 단계를 건너뜁니다. 연결은 명시된 리소스 보고만 허용하며 로그 읽기는 대상 기기의 별도 승인이 필요합니다.",
2643
3346
  "guide.try": "체험 중 다음 네 가지를 확인하세요",
@@ -2653,9 +3356,9 @@ export const messages = {
2653
3356
  "guide.faqBody": "Node.js 24+, Driver 실행 여부, 컴퓨터 절전 상태, 네트워크와 시스템 시간을 확인하세요. 포트가 사용 중이면 다른 프로그램을 중지하지 말고 빈 로컬 포트를 선택하세요. 보고 없음은 최근 데이터가 없다는 뜻이며 개인 키 만료가 아닙니다.",
2654
3357
  "guide.feedback": "문제를 제보할 때 OS, 버전, 선택한 모드, 실패한 단계와 민감 정보를 제거한 오류를 알려주세요. 개인 키, 페어링 코드, 쿠키, 로그 본문은 첨부하지 마세요.",
2655
3358
  "guide.scope": "이 베타 버전의 지원 범위",
2656
- "guide.scopeBody": "실제 리소스, 기기 설명, 수동 수집, 별도 승인된 로그 마지막 부분 읽기를 지원합니다. 임의 원격 명령, 일반 파일 전송, Windows 네이티브 Driver, 자동 네트워크 검색, 오프라인 LAN 권한 확인, 로컬/클라우드 설명 동기화는 아직 지원하지 않습니다.",
3359
+ "guide.scopeBody": "실제 리소스, 기기 설명, 수동 수집, 별도 승인된 로그 마지막 부분 읽기를 지원합니다. 임의 원격 명령, 일반 파일 전송, 자동 네트워크 검색, 오프라인 LAN 권한 확인, 로컬/클라우드 설명 동기화는 아직 지원하지 않습니다.",
2657
3360
  "guide.quota": "공식 릴레이 체험 한도는 계정당 하루 100 MiB(UTC), 방향별 16 KiB/s입니다. 무제한 대역폭 서비스가 아닙니다. 서비스와 앱은 자동 검색되지 않으며 직접 등록합니다.",
2658
- "guide.full": "전체 Agent 설치 가이드(중국어)",
3361
+ "guide.full": "전체 설치 안내 (중국어)",
2659
3362
  "guide.markdown": "텍스트 체험 가이드(중국어)",
2660
3363
  "guide.source": "MIT npm 소스 패키지 ↗",
2661
3364
  "guide.footer": "로컬 설치 · 개인 키는 기기에 보관 · 작업은 별도 승인",
@@ -2669,14 +3372,14 @@ export const messages = {
2669
3372
  "prompt.private": "제어 서버: {origin}. Driver는 이 기기에서 실행됩니다. 신원 개인 키는 기기에 보관하며 클라우드에 맡기지 않습니다.",
2670
3373
  "prompt.background": "OS 로그인 후 시작되는 사용자 백그라운드 서비스",
2671
3374
  "prompt.foreground": "포그라운드 실행만 사용하며 백그라운드 서비스는 설치하지 않음",
2672
- "prompt.environment": "macOS/Linux, Node.js >=24, npm과 현재 Agent의 MCP 지원을 확인하세요. Windows 네이티브 Driver는 지원하지 않으므로 Windows에서는 설명 후 중단하세요. Node.js가 없으면 공식 출처만 사용하고 관리자 또는 OS 권한 요청은 저에게 맡기세요.",
3375
+ "prompt.environment": "macOS/Linux, Node.js >=24, npm과 Agent MCP를 확인하세요. 대상 OS가 선택과 다르면 중단하고 다시 선택하도록 하세요. Node.js는 공식 출처를 쓰고 시스템 권한은 사용자에게 맡기세요.",
2673
3376
  "prompt.existing": "기존 CLI, 연결, 사용자 서비스와 {url}/api/health부터 확인하고 설정을 보존하세요. 고정 CLI가 있으면 {status}와 {service}를 확인하세요. 개인 키 파일은 열지 마세요. 포트가 사용 중이면 다른 프로그램을 중지하지 말고 알려진 빈 루프백 포트로 변경해 모든 주소를 갱신하세요. 버전, 제어 서버, 실행 방식이 일치하면 재사용하고 충돌 시 저에게 물어보세요. 덮어쓰기, 연결 해제, 중복 설치는 하지 마세요.",
2674
3377
  "prompt.userInstall": "새로 설치할 때는 sudo 없이 사용자가 쓸 수 있는 고정 위치를 사용하세요:",
2675
3378
  "prompt.config": "전역 npm 설정이나 shell 시작 파일을 변경하지 마세요. 이후 명령에는 위 CLI 절대 경로를 사용하세요.",
2676
3379
  "prompt.bg": "서비스 계획에서 사용자 범위와 루프백 전용 수신을 확인한 후 설치하고 상태를 확인하세요. 실패나 충돌 시 상태를 보존하고 정리 후 재설치하지 마세요. Linux는 systemd --user, macOS는 로그인한 사용자의 launchd가 필요합니다. 사용할 수 없으면 설명하고 포그라운드 모드를 제안하세요.",
2677
3380
  "prompt.fg": "포그라운드 프로세스를 유지하세요. 호스팅에서는 다음 단계의 connect가 승인 후 Driver를 시작하며 로컬 모드에서는 아래 start를 실행합니다. 웹페이지를 닫아도 프로세스는 유지되지만 터미널을 닫으면 보고가 중단됩니다.",
2678
3381
  "prompt.pairBefore": "보고 범위를 확인한 후 연결을 요청하세요:",
2679
- "prompt.pairAfter": "제가 {origin}에서 본인 계정으로 로그인하고 로컬 터미널의 전체 공개 키 지문을 확인해 직접 승인하도록 안내하세요. 대신 승인하거나 비밀번호, 쿠키, 개인 키를 읽지 마세요. 페어링 코드는 로컬 터미널에만 표시하고 대화, 스크립트, 링크에 넣지 마세요. 도구가 기록한다면 connect만 제가 터미널에서 실행하도록 하고 다른 확인은 계속하세요. 승인 후 실제 리소스 보고를 확인하세요. configured=true만으로 클라우드 연결 성공을 판단하지 마세요.",
3382
+ "prompt.pairAfter": "직접 --browser를 실행하고 프로세스를 유지하세요. 로컬 브라우저를 열며 임시 자격 정보는 출력하지 않습니다. 저는 {origin}에서 로그인하고 전체 공개 키 지문을 비교해 한 번 승인하면 됩니다. 대신 승인하거나 비밀번호, cookie, 개인 키, 자격 정보 링크를 읽지 마세요. 프로세스를 관찰해 firstReport.verified=true를 검증한 후 자동으로 계속하세요. 터미널 재실행이나 승인 답변을 요구하지 마세요. configured=true는 보고 성공 증거가 아닙니다. 브라우저가 없을 때만 제가 터미널에서 --browser 없이 connect를 실행하며 코드는 터미널에 둡니다. 구형 제어판은 업그레이드를 안내하세요.",
2680
3383
  "prompt.local": "connect 실행, 기기 신원 생성, 계정 등록을 하지 마세요. 기존 클라우드 연결이 있으면 start나 백그라운드 서비스가 이를 재개할 수 있음을 설명하고 로컬 전용 모드라고 표시하지 마세요.",
2681
3384
  "prompt.mcp": "{url}/api/connector/setup을 읽고 현재 Agent가 지원하는 공식 인터페이스로 Streamable HTTP MCP 주소 {mcp}를 설정하세요. 일치하는 설정은 재사용하고 다른 MCP 서버를 덮어쓰지 마세요. 도구로 설정할 수 없으면 이 주소만 제가 붙여 넣도록 요청하고 확인되지 않은 연결 성공을 주장하지 마세요.",
2682
3385
  "prompt.verify": "/api/health, /api/overview의 실제 로컬 메모리와 디스크, Agent의 실제 device_center_list_resources 호출을 확인하세요. 버전, 대시보드/MCP URL, 실행 모드, 해당하는 클라우드 연결 결과와 미완료 단계를 보고하세요.",
@@ -2691,14 +3394,17 @@ export const messages = {
2691
3394
  "login.submit": "로그인",
2692
3395
  "login.unified": "App Services / 개인 사이트의 통합 계정을 사용합니다.",
2693
3396
  "login.link": "통합 계정으로 로그인 ↗",
2694
- "login.help": "새 페이지에서 이메일 또는 Google로 로그인한 뒤 돌아오면 대시보드로 자동 이동합니다.",
2695
- "login.continue": "로그인 완료, 계속",
3397
+ "login.help": "이미 로그인한 경우 자동으로 이동합니다. 필요한 경우 아래 계정 페이지에서 로그인한 뒤 여기로 돌아오세요.",
3398
+ "login.continue": "관리 화면 열기",
2696
3399
  "login.return": "통합 계정 로그인을 마친 뒤 이 페이지로 돌아오세요.",
2697
3400
  "login.first": "먼저 계정 페이지에서 이메일 또는 Google로 로그인한 다음 돌아오세요.",
2698
3401
  "login.owner": "현재 계정은 이 개인 대시보드에 접근할 수 없습니다. 소유자 계정을 사용하세요.",
2699
3402
  "login.rate": "시도가 너무 많습니다. 1분 후 다시 시도하세요.",
2700
- "login.unavailable": "통합 계정 서비스를 일시적으로 사용할 수 없습니다. 나중에 다시 시도하세요.",
2701
- "login.timeout": "계정 서비스 연결 시간이 초과되었습니다. 다시 시도하세요.",
3403
+ "login.unavailable": "계정 서비스에 연결하지 못했습니다. 여기에서 다시 시도하세요. 개인 사이트로 돌아갈 필요는 없습니다.",
3404
+ "login.timeout": "계정 확인 시간이 초과되었습니다. 비밀번호를 다시 입력하지 말고 여기에서 재시도하세요.",
3405
+ "login.session": "로그인 세션을 저장하지 못했습니다. 같은 브라우저에서 계정 페이지와 관리 화면을 열고 이 사이트의 쿠키 차단 여부를 확인하세요.",
3406
+ "login.returned": "관리 화면의 로그인 상태가 유지되지 않아 자동 이동을 중지했습니다. 여기에서 재시도하고, 계속 실패하면 메시지와 시간을 기록하세요.",
3407
+ "login.checking": "로그인 상태 확인 중…",
2702
3408
  "login.optionsError": "로그인 방식을 불러오지 못했습니다. 새로고침 후 다시 시도하세요.",
2703
3409
  "login.credentials": "사용자 이름 또는 비밀번호가 올바르지 않습니다.",
2704
3410
  "login.multi": "계정별 기기 격리 · HTTPS 보호",
@@ -2932,7 +3638,7 @@ export const messages = {
2932
3638
  "panel.224": "Agent용 복사",
2933
3639
  "panel.225": "전체 설치 안내 보기",
2934
3640
  "panel.226": "Agent에게 전달할 설치 안내",
2935
- "panel.227": "macOS / Linux, Node.js 24 지원. 고정 버전 0.2.0-beta.3를 사용합니다. 이 페이지는 안내만 복사하며 전달받은 Agent가 로컬에서 설치합니다.",
3641
+ "panel.227": "macOS / Linux / Windows 11, Node.js 24 지원. 고정 버전 0.2.0-beta.5를 사용합니다. 이 페이지는 안내만 복사하며 전달받은 Agent가 로컬에서 설치합니다.",
2936
3642
  "panel.228": "복사했습니다. 대상 컴퓨터의 Agent에게 붙여 넣고 연결이 필요하면 본인이 로그인하여 확인하세요.",
2937
3643
  "panel.229": "선택된 설치 안내를 수동 복사하세요.",
2938
3644
  "panel.230": "관리 컴퓨터 확인 불가",
@@ -3051,7 +3757,7 @@ export const messages = {
3051
3757
  "panel.343": "네트워크 도달 불가 시 클라우드 중계로 전환합니다. 인증서, 신원, 권한 오류는 중단합니다. 두 경로 모두 취소 상태를 검증하려면 제어면이 온라인이어야 합니다.",
3052
3758
  "panel.344": "대상 기기에서 실행 가능:",
3053
3759
  "panel.345": "device-center access revoke --peer MANAGEMENT_FINGERPRINT --confirm",
3054
- "panel.346": "언제든 취소할 수 있습니다. 개인 키와 허용 로그 경로는 로컬에 남고 클라우드는 TLS 암호문만 전달합니다. Windows 네이티브 Agent는 미제공입니다.",
3760
+ "panel.346": "언제든 취소할 수 있습니다. 개인 키와 허용 로그 경로는 로컬에 남고 클라우드는 TLS 암호문만 전달합니다. Windows 11 미리 보기 · PowerShell에서 설치하고 그림에 따라 페어링과 백그라운드 상태를 확인하세요.",
3055
3761
  "panel.347": "처리 중…",
3056
3762
  "panel.348": "요청 찾기",
3057
3763
  "panel.349": "연결된 SSH 이름과 캐시 상태 최대 15개 공유 허용(주소, 사용자, 경로, 설정, 개인 키 제외)",
@@ -3127,7 +3833,7 @@ export const messages = {
3127
3833
  "panel.419": "웹을 닫아도 서비스를 중지할 필요는 없습니다. 한 번 설치하고 로그인 후 백그라운드에서 자동 실행하는 방식입니다.",
3128
3834
  "panel.420": "로컬 설치 · 권장",
3129
3835
  "panel.421": "사용자 서비스 스크립트를 제공합니다. macOS는 launchd, Linux는 systemd입니다. 계획을 확인한 뒤 본인이 설치합니다.",
3130
- "panel.422": "같은 포트의 포그라운드 미리보기를 수동 중지하고 설치하세요. Node.js 24와 고정 소스 경로가 필요합니다. 사용자 서비스, 로그, 데이터를 등록하며 관리자 권한은 필요 없습니다. Windows 백그라운드는 미지원으로 포그라운드나 Docker를 사용하세요.",
3836
+ "panel.422": "같은 포트의 포그라운드 미리보기를 수동 중지하고 설치하세요. Node.js 24와 고정 소스 경로가 필요합니다. 사용자 서비스, 로그, 데이터를 등록하며 관리자 권한은 필요 없습니다. Windows 11 미리 보기 · PowerShell에서 설치하고 그림에 따라 페어링과 백그라운드 상태를 확인하세요.",
3131
3837
  "panel.423": "Docker와 로컬 Agent 연결",
3132
3838
  "panel.424": "Docker는 Device Center만 실행합니다. Codex는 로컬에서 동일한",
3133
3839
  "panel.425": "http://127.0.0.1:PORT/mcp",
@@ -3135,7 +3841,7 @@ export const messages = {
3135
3841
  "panel.427": "Compose는 루프백만 공개하고 데이터 볼륨과 재시작 정책을 유지합니다. 로컬 AI → 로컬 주소 → 컨테이너입니다. Docker socket, Codex 설정, 호스트 폴더 마운트는 필요 없습니다.",
3136
3842
  "panel.428": "Docker 엔진이 필요합니다. 컨테이너 사용만으로 로컬 작업 권한은 생기지 않습니다. 목록은 컨테이너만 나타내며 호스트 메모리, 디스크, SSH 설정은 보이지 않습니다. 호스트에서 네이티브 Driver를 실행하세요.",
3137
3843
  "panel.429": "스크립트와 실행 설정만 제공합니다. 상주 서비스를 설치하거나 Docker를 시작하지 않았습니다. 현재 프로세스는 로컬 미리보기입니다.",
3138
- "panel.430": "Agent로 설치",
3844
+ "panel.430": "Device Center 설치",
3139
3845
  "panel.431": "원격 로그 허가",
3140
3846
  "panel.432": "로컬 Codex 연결",
3141
3847
  "panel.433": "클라우드 패널 · 선택",
@@ -3263,16 +3969,189 @@ export const messages = {
3263
3969
  "notice.notConfig": "SSH 설정 파일이 아니어서 무시했습니다.",
3264
3970
  "notice.candidateLimit": "후보 한도에 도달했습니다.",
3265
3971
  "notice.match": "Match 조건 있음: 별칭만 등록하며 조건 해석이나 명령 실행은 하지 않습니다.",
3266
- "notice.conditional": "Host / Match 조건 Include를 건너뛰어 후보가 불완전할 수 있습니다."
3972
+ "notice.conditional": "Host / Match 조건 Include를 건너뛰어 후보가 불완전할 수 있습니다.",
3973
+ "guide.visual.hero": "컴퓨터 전환도, 로그 복사도 줄이세요.",
3974
+ "guide.visual.lead": "로컬 Agent로 다른 기기의 상태와 허용한 로그를 확인하세요.",
3975
+ "guide.visual.begin": "연결 시작",
3976
+ "guide.visual.example": "사용 예시",
3977
+ "guide.visual.yourDevices": "내 기기를 활용하세요",
3978
+ "guide.visual.request": "“집에 있는 서버 로그를 확인해 줘.”",
3979
+ "guide.visual.myAgent": "로컬 Agent",
3980
+ "guide.visual.myComputer": "지금 사용하는 컴퓨터",
3981
+ "guide.visual.authorized": "허용된 접근",
3982
+ "guide.visual.otherDevice": "내 기기",
3983
+ "guide.visual.homeServer": "예: 집에 있는 서버",
3984
+ "guide.visual.log": "허용한 로그",
3985
+ "guide.visual.scenarios": "사용 사례",
3986
+ "guide.visual.debug": "서비스에 오류가 생기면",
3987
+ "guide.visual.debugBody": "Agent가 허용된 로그를 확인",
3988
+ "guide.visual.save": "클라우드 서버를 빌리기 전에",
3989
+ "guide.visual.saveBody": "이미 보유한 컴퓨터 자원 확인",
3990
+ "guide.visual.away": "외출 중에도",
3991
+ "guide.visual.awayBody": "클라우드 화면에서 온라인 기기 확인",
3992
+ "guide.visual.startSmall": "컴퓨터 한 대부터 시작",
3993
+ "guide.visual.choose": "방식을 선택해 Agent에 복사하세요",
3994
+ "guide.visual.noInstall": "복사만으로 설치되지는 않습니다",
3995
+ "guide.visual.localCaption": "내 컴퓨터에서 먼저 사용",
3996
+ "guide.visual.localBody": "로컬 대시보드, MCP는 선택. 계정 불필요.",
3997
+ "guide.visual.hostedCaption": "여러 기기를 한곳에서 확인",
3998
+ "guide.visual.hostedBody": "내 계정에 기기를 연결하고 암호화 중계를 사용하세요.",
3999
+ "guide.visual.next": "복사한 다음에는?",
4000
+ "guide.visual.pasteTitle": "연결할 컴퓨터로 이동",
4001
+ "guide.visual.pasteBody": "그 컴퓨터의 Agent에 안내를 붙여넣으세요.",
4002
+ "guide.visual.installTitle": "Agent에게 설치 요청",
4003
+ "guide.visual.installBody": "환경 확인, Driver 설치, 로컬 MCP 설정을 진행합니다.",
4004
+ "guide.visual.bindTitle": "호스팅 모드: 직접 연결 승인",
4005
+ "guide.visual.bindBody": "프로그램이 자동으로 계속합니다. Agent에 승인했다고 답할 필요가 없습니다.",
4006
+ "guide.visual.trust": "개인 키는 기기에 보관 · 로그 접근은 별도 허용 필요",
4007
+ "guide.visual.details": "자세한 안내",
4008
+ "guide.visual.pairDetails": "설치 및 연결의 자세한 단계",
4009
+ "guide.visual.copiedLocal": "복사했습니다. 연결할 컴퓨터의 Agent에 붙여넣으세요. 로컬 모드는 로그인 없이 사용합니다.",
4010
+ "guide.visual.copiedHosted": "복사했습니다. 연결할 컴퓨터의 Agent에 붙여넣으세요. 연결 승인은 직접 확인해야 합니다.",
4011
+ "guide.visual.localReady": "로컬 모드: 사용 시작",
4012
+ "guide.visual.localReadyBody": "로그인 없이 로컬에서 자원을 확인하고 Agent가 MCP를 사용하도록 하세요.",
4013
+ "guide.visual.heroLine1": "컴퓨터 전환도,",
4014
+ "guide.visual.heroLine2": "로그 복사도 줄이세요.",
4015
+ "guide.visual.viewFlow": "연결 과정 보기",
4016
+ "guide.visual.pauseMotion": "애니메이션 일시 정지",
4017
+ "guide.visual.playMotion": "애니메이션 재생",
4018
+ "guide.visual.dashboard": "기기 목록",
4019
+ "guide.focus.overview": "제품 소개",
4020
+ "guide.focus.example": "작동 방식 예시 · 조작 불필요",
4021
+ "guide.focus.firstTry": "처음이라면 로컬로 시작하세요. 계정이 필요 없습니다.",
4022
+ "guide.focus.alreadyInstalled": "이미 연결했나요?",
4023
+ "guide.focus.start": "여기서 시작",
4024
+ "guide.focus.startTitle": "첫 컴퓨터 연결하기",
4025
+ "guide.focus.startBody": "사용 방식을 고른 뒤 Agent 설치 또는 수동 설치를 선택하세요. 대상 기기에 AI Agent가 없어도 연결할 수 있습니다.",
4026
+ "guide.focus.select": "사용 방식 선택",
4027
+ "guide.focus.useSelfHosted": "내 자체 서버 사용",
4028
+ "guide.focus.copyHint": "Agent용 안내입니다. 터미널이 아닌 Agent 대화에 붙여넣으세요.",
4029
+ "guide.focus.paste": "대상 컴퓨터에서 Agent에게 붙여넣기",
4030
+ "guide.focus.pasteBefore": "위 안내를 복사한 뒤, 연결할 컴퓨터에서 Agent 대화를 여세요.",
4031
+ "guide.focus.pasteAfter": "연결할 컴퓨터에서 Agent 대화를 열고 복사한 안내를 붙여넣은 다음, 안내에 따라 진행하세요.",
4032
+ "guide.focus.whatNext": "그다음에는 어떻게 되나요?",
4033
+ "guide.focus.openHosted": "설치 후 패널에서 직접 페어링 승인 ↗",
4034
+ "guide.focus.copied": "복사했습니다. 다음: 대상 컴퓨터의 Agent에게 붙여넣으세요.",
4035
+ "pair.title": "이 컴퓨터 연결",
4036
+ "pair.step": "본인 승인",
4037
+ "pair.intro": "이 컴퓨터에서 방금 시작한 요청만 승인하세요. 요청은 자동 입력됩니다.",
4038
+ "pair.fingerprint": "터미널 또는 Agent에 표시된 전체 공개 키 지문과 비교하세요:",
4039
+ "pair.scope": "기본 보고는 이름, OS, 메모리, 디스크뿐입니다. 원격 작업 권한은 부여하지 않습니다.",
4040
+ "pair.approve": "지문이 일치합니다 — 연결",
4041
+ "pair.cancel": "취소",
4042
+ "pair.loading": "요청을 불러오는 중",
4043
+ "pair.wait": "필요하면 먼저 로그인합니다.",
4044
+ "pair.bound": "연결 승인됨. 통신 확인 중",
4045
+ "pair.reporting": "이 컴퓨터의 첫 리소스 보고를 기다리는 중…",
4046
+ "pair.noReply": "프로그램이 자동으로 계속합니다. Agent에 승인했다고 답할 필요가 없습니다.",
4047
+ "pair.done": "이 컴퓨터가 연결되었습니다",
4048
+ "pair.doneBody": "클라우드가 리소스 보고를 받았습니다. 패널에서 이름, 용도, 태그를 추가하세요.",
4049
+ "pair.reportTimeout": "연결은 승인되었지만 첫 보고는 미확인입니다. 절전 상태, 로컬 서비스, 네트워크를 확인하세요. 다시 연결하지 마세요.",
4050
+ "pair.cancelled": "취소됨",
4051
+ "pair.cancelledBody": "기기를 승인하지 않았습니다. 요청은 자동 만료됩니다.",
4052
+ "pair.missing": "요청이 만료되었거나 사용할 수 없습니다",
4053
+ "pair.missingBody": "대상 컴퓨터에서 다시 시작하세요. 다른 사람이 보낸 연결 링크를 열지 마세요. 이미 연결된 컴퓨터는 재등록이 필요 없습니다.",
4054
+ "pair.start": "설치 안내로 돌아가기",
4055
+ "pair.dashboard": "기기 패널 열기",
4056
+ "pair.boundary": "개인 키는 기기에 보관 · 원격 작업은 별도 권한 필요",
4057
+ "pair.manual": "브라우저가 없거나 이미 터미널 코드가 있나요?",
4058
+ "pair.manualHint": "브라우저 없는 서버 또는 구버전 전용: 대상 터미널에서 수동 명령 실행 후 코드를 입력하세요.",
4059
+ "pair.browserHint": "연결 페이지를 자동으로 엽니다. 로그인, 지문 확인, 한 번 승인하면 됩니다. 보고는 자동 확인하며 Agent 답변이 필요 없습니다.",
4060
+ "pair.approvalUnknown": "승인 결과 미확인",
4061
+ "pair.approvalUnknownBody": "네트워크 중단 또는 처리된 요청입니다. 대상 컴퓨터의 접속 프로세스와 패널을 먼저 확인하세요. 이미 연결되었다면 재등록하지 마세요.",
4062
+ "guide.method.title": "설치 방법 선택",
4063
+ "guide.method.agent": "Agent에게 맡기기",
4064
+ "guide.method.manual": "수동 설치",
4065
+ "guide.manual.prerequisites": "Node.js 24+ · 새 설치 전용. 기존 설치는 보존하고 중단합니다.",
4066
+ "guide.manual.browserQuestion": "대상 기기에서 브라우저를 열 수 있나요?",
4067
+ "guide.manual.hasBrowser": "브라우저 있음",
4068
+ "guide.manual.noBrowser": "브라우저 없음 / 서버",
4069
+ "guide.manual.copy": "터미널 설치 스크립트 복사",
4070
+ "guide.manual.copyHint": "Shell 스크립트입니다. 대상 기기 터미널에 붙여넣고 실행하세요. AI Agent는 필요 없습니다.",
4071
+ "guide.manual.preview": "스크립트 보기 또는 직접 복사",
4072
+ "guide.manual.scriptLabel": "터미널 설치 스크립트",
4073
+ "guide.manual.pasteTitle": "대상 기기 터미널에서 실행",
4074
+ "guide.manual.pasteBefore": "스크립트를 복사한 뒤 대상 기기의 터미널을 여세요. Mac은 터미널 앱, Linux는 터미널 또는 기존 SSH 세션을 사용하세요.",
4075
+ "guide.manual.pasteAfter": "대상 기기 터미널에 붙여넣고 실행하세요. 환경을 확인한 뒤 Driver와 사용자 백그라운드 서비스를 설치합니다.",
4076
+ "guide.manual.copied": "스크립트를 복사했습니다. 다음: 대상 기기 터미널에 붙여넣고 실행하세요.",
4077
+ "guide.manual.installBody": "로그인할 때 시작되는 사용자 서비스를 설치합니다. 대상 기기에 AI Agent나 MCP 설정은 필요 없습니다. 관리 컴퓨터의 Agent로 사용할 때 MCP를 추가하세요.",
4078
+ "guide.manual.localBody": "로그인 없이 대상 기기의 로컬 대시보드에서 리소스를 확인하세요. MCP 설정은 Agent를 사용할 관리 컴퓨터에만 필요합니다. 서버의 루프백 주소는 원격 URL이 아닙니다.",
4079
+ "guide.manual.browserBody": "대상 기기의 브라우저가 열립니다. 본인 계정으로 로그인하고 터미널의 전체 공개 키 지문과 대조해 한 번 승인하면 기기가 자동으로 상태를 보고합니다.",
4080
+ "guide.manual.headlessBody": "대상 터미널을 열어 두세요. 다른 컴퓨터의 브라우저에서 제어판에 로그인한 뒤 “내 컴퓨터 연결”을 선택하고 터미널의 5분 유효 페어링 코드를 입력하세요. 전체 공개 키 지문을 확인하고 승인하세요. Agent에 답할 필요는 없습니다.",
4081
+ "guide.manual.openPanel": "제어판에서 페어링 완료 ↗",
4082
+ "guide.manual.openGuide": "기기에 Agent가 없나요? 수동 설치 안내 ↗",
4083
+ "walk.title": "복사한 뒤 그림을 따라 진행하세요",
4084
+ "walk.disclaimer": "아래는 조작 예시입니다. 표시된 컴퓨터의 실제 창에서 진행하세요.",
4085
+ "walk.terminalTitle": "대상 컴퓨터의 터미널에 붙여넣기",
4086
+ "walk.terminalBody": "연결할 컴퓨터에서 터미널을 열고 전체 스크립트를 붙여넣은 뒤 Enter를 누르세요. 오류가 나오면 멈추고 확인하세요.",
4087
+ "walk.agentTitle": "대상 컴퓨터의 Agent 대화에 붙여넣기",
4088
+ "walk.agentBody": "해당 컴퓨터를 조작할 수 있는 Agent 대화를 열고 설치 안내를 붙여넣어 보내세요. Agent가 설치를 진행합니다.",
4089
+ "walk.headlessTitle": "브라우저가 있는 다른 컴퓨터에서 연결 승인",
4090
+ "walk.headlessBody": "대상 터미널을 열어 두세요. 다른 컴퓨터의 관리 화면에 로그인하고 터미널의 페어링 코드를 입력한 뒤 공개 키 지문 전체를 비교하고 승인하세요.",
4091
+ "walk.browserTitle": "자동으로 열린 브라우저에서 연결 승인",
4092
+ "walk.browserBody": "스크립트가 이번 연결 요청을 엽니다. 본인 계정으로 로그인한 뒤 터미널 또는 Agent의 공개 키 지문 전체를 비교하고 한 번 승인하세요.",
4093
+ "walk.installTitle": "설치가 끝날 때까지 기다리고 오류 확인",
4094
+ "walk.installBody": "스크립트가 로컬 Driver와 사용자 백그라운드 서비스를 설치합니다. AI Agent는 필요하지 않습니다. 오류 메시지가 나오면 확인하세요.",
4095
+ "walk.agentInstallBody": "Agent가 Driver와 사용자 백그라운드 서비스를 설치하고 MCP를 연결한 뒤 실제 동작을 확인합니다.",
4096
+ "walk.checkTitle": "기기 목록에서 실제 보고 확인",
4097
+ "walk.cloudCheckBody": "클라우드 기기 목록에서 이 컴퓨터를 찾으세요. 실제 메모리, 디스크, 갱신된 보고 시간을 확인하면 완료입니다. 연결 승인만으로 보고까지 성공한 것은 아닙니다.",
4098
+ "walk.localCheckBody": "설치한 컴퓨터의 브라우저에서 그림의 로컬 관리 주소를 여세요. 127.0.0.1은 그 컴퓨터 자체를 가리킵니다.",
4099
+ "walk.copyFirst": "먼저 위의 복사 버튼을 누른 다음 표시된 창으로 이동하세요.",
4100
+ "walk.openMac": "Mac: ⌘ Space → “터미널” 검색",
4101
+ "walk.openLinux": "Linux: 앱 메뉴 → 터미널 또는 기존 SSH 세션",
4102
+ "walk.autoBrowser": "실행 후 브라우저가 열립니다. 열리지 않으면 터미널 안내에 따라 수동으로 페어링하세요",
4103
+ "walk.sameComputer": "설치한 컴퓨터에서 이 주소를 여세요",
4104
+ "walk.steps": "설치 단계 그림",
4105
+ "walk.pasteTab": "붙여넣기·실행",
4106
+ "walk.bindTab": "로그인·승인",
4107
+ "walk.installTab": "설치 대기",
4108
+ "walk.checkTab": "기기 확인",
4109
+ "walk.copiedContent": "클립보드",
4110
+ "walk.terminal": "터미널",
4111
+ "walk.chat": "Agent 대화",
4112
+ "walk.browser": "웹페이지",
4113
+ "walk.fullFingerprint": "여기에 공개 키 지문 전체 표시",
4114
+ "walk.approve": "일치 확인 · 이 컴퓨터 연결",
4115
+ "walk.targetTerminal": "대상 컴퓨터 · 터미널",
4116
+ "walk.pasteScript": "여기에 전체 스크립트 붙여넣기",
4117
+ "walk.pressEnter": "붙여넣은 뒤",
4118
+ "walk.targetChat": "대상 컴퓨터 · Agent 대화",
4119
+ "walk.pastePrompt": "여기에 설치 안내 붙여넣기",
4120
+ "walk.send": "보내기",
4121
+ "walk.pairCode": "터미널의 페어링 코드",
4122
+ "walk.otherBrowser": "다른 컴퓨터 · 브라우저",
4123
+ "walk.signIn": "본인 계정으로 로그인",
4124
+ "walk.pasteCode": "여기에 터미널 코드 입력",
4125
+ "walk.compare": "두 곳의 공개 키 지문 전체 비교",
4126
+ "walk.driver": "로컬 Driver 설치",
4127
+ "walk.service": "사용자 백그라운드 서비스 시작",
4128
+ "walk.mcp": "현재 Agent의 MCP 연결",
4129
+ "walk.yourDevice": "내 기기",
4130
+ "walk.awaitReport": "실제 보고 대기 중",
4131
+ "walk.reportTime": "보고 시간이 방금 갱신됐는지 확인",
4132
+ "walk.previous": "← 이전",
4133
+ "walk.restart": "붙여넣을 위치 다시 보기",
4134
+ "walk.next": "다음 단계 →",
4135
+ "walk.counter": "{current} / {total}",
4136
+ "walk.openDevices": "기기 목록 열기 ↗",
4137
+ "walk.openPairing": "“{action}” 선택 → 페어링 코드",
4138
+ "guide.os.title": "대상 컴퓨터의 OS",
4139
+ "guide.windowsCandidate": "Windows 11 미리 보기 · PowerShell에서 설치하고 그림에 따라 페어링과 백그라운드 상태를 확인하세요.",
4140
+ "guide.windowsPrerequisites": "Windows 11 · PowerShell 5.1+ · Node.js 24+ · 일반 사용자 창. AD나 AI Agent가 필요하지 않습니다. 기존 설치가 있으면 중단합니다.",
4141
+ "walk.windowsTitle": "Windows PowerShell에 붙여넣고 Enter",
4142
+ "walk.windowsBody": "대상 컴퓨터에서 일반 사용자 PowerShell을 여세요(CMD나 WSL 아님). 스크립트를 검토한 후 전체를 붙여넣고 Enter를 누르세요. 실패하면 창을 유지하세요.",
4143
+ "walk.openWindows": "시작 → PowerShell 검색 → 열기(관리자 불필요)",
4144
+ "prompt.windowsEnvironment": "Windows 11, PowerShell 5.1+, Node.js >=24, npm.cmd 및 Agent MCP 지원을 확인하세요. 일반 사용자 PowerShell을 사용하고 WSL이나 npm.ps1은 사용하지 마세요. 매 명령의 $LASTEXITCODE가 0이 아니면 중단하세요. 실행 정책이나 권한을 바꾸지 말고 공식 Node.js를 사용하세요.",
4145
+ "prompt.windowsBackground": "계획을 확인하고 현재 사용자 로그인 작업을 명시적으로 설치한 뒤 상태를 검증하세요. AD, 관리자, 비밀번호, 정책 변경이 필요 없습니다. 실패 상태를 유지하고 전경 모드를 제안하세요. 로컬 DPAPI와 NTFS ACL로 신원을 보호하며 신원 파일을 옮기지 마세요. 로그아웃, 절전, 오프라인 중에는 보고하지 못합니다."
3267
4146
  },
3268
4147
  "es": {
3269
4148
  "language": "Idioma",
3270
4149
  "guide.title": "Primeros pasos · Device Center",
3271
4150
  "guide.open": "Abrir panel de dispositivos ↗",
3272
- "guide.badge": "Beta pública · 0.2.0-beta.3 · MIT",
4151
+ "guide.badge": "Vista previa de desarrollo · 0.2.0-beta.5 · MIT",
3273
4152
  "guide.hero": "Conecta tus equipos disponibles a tu Agent.",
3274
4153
  "guide.lead": "Consulta los recursos y el uso de cada equipo, y lee registros específicos con autorización aparte. Deja la instalación a tu Agent local y empieza con un equipo.",
3275
- "guide.platform": "macOS / Linux · Node.js 24+ · Windows nativo aún no está disponible",
4154
+ "guide.platform": "macOS / Linux / candidato Windows 11 · Node.js 24+",
3276
4155
  "guide.install": "Elige un modo y copia las instrucciones a tu Agent local",
3277
4156
  "guide.local": "Uso local",
3278
4157
  "guide.localDesc": "Panel local y MCP sin cuenta. Empieza explorando tu ordenador y los recursos de tus dispositivos.",
@@ -3280,7 +4159,7 @@ export const messages = {
3280
4159
  "guide.hosted": "Servicio oficial",
3281
4160
  "guide.hostedDesc": "Gestiona dispositivos con tu cuenta y usa el relay cifrado oficial. El Driver y las claves privadas permanecen en tus equipos.",
3282
4161
  "guide.hostedCopy": "Copiar instalación con servicio",
3283
- "guide.paste": "Pega las instrucciones en un Agent del equipo de destino que pueda instalar software. Comprobará la configuración existente, instalará la versión fijada, configurará el servicio de usuario y MCP, y verificará el resultado. Esta página no instala software.",
4162
+ "guide.paste": "Para un Agent, copia las instrucciones. Para instalar manualmente, copia el script de shell y ejecútalo en la terminal del destino. Ambos instalan un Driver local. MCP solo hace falta en un equipo de gestión con AI Agent. La página solo copia, no instala.",
3284
4163
  "guide.custom": "¿Ya tienes tu propio plano de control?",
3285
4164
  "guide.address": "Dirección HTTPS de tu plano de control",
3286
4165
  "guide.customCopy": "Copiar conexión al servidor propio",
@@ -3288,9 +4167,9 @@ export const messages = {
3288
4167
  "guide.preview": "Ver o copiar las instrucciones completas",
3289
4168
  "guide.instructions": "Instrucciones para el Agent",
3290
4169
  "guide.pair": "Si usas hosting, inicia sesión y vincula tu equipo",
3291
- "guide.pair1": "Abre el panel siguiendo las indicaciones del Agent. Inicia sesión con tu cuenta de App Services / sitio personal o regístrate en la página de cuentas.",
4170
+ "guide.pair1": "Solo los modos alojados necesitan cuenta. Con navegador, el script abre la vinculación. Sin él, accede desde otro equipo e introduce el código de la terminal.",
3292
4171
  "guide.loginLink": "Abrir panel en la nube",
3293
- "guide.pair2": "Introduce en el panel el código de vinculación de cinco minutos que aparece en tu terminal. Verifica la huella completa de la clave pública antes de aprobar. No compartas contraseñas, claves privadas ni códigos ni los pegues en conversaciones con el Agent.",
4172
+ "guide.pair2": "Aprueba solo la solicitud que acabas de iniciar. Comprueba el nombre, el sistema y la huella completa de la clave pública de la terminal. No compartas el código.",
3294
4173
  "guide.pair3": "Repite la instalación en otro equipo tuyo y vincúlalo a la misma cuenta. Los dispositivos sin informes reales se muestran como desconocidos o sin reportar.",
3295
4174
  "guide.localHint": "Omite este paso en modo local. La vinculación solo permite los informes de recursos descritos; leer registros requiere autorización aparte en el equipo de destino.",
3296
4175
  "guide.try": "Comprueba estas cuatro cosas",
@@ -3306,9 +4185,9 @@ export const messages = {
3306
4185
  "guide.faqBody": "Comprueba Node.js 24+, que el Driver esté activo, el equipo despierto, la red y el reloj del sistema. Si un puerto está ocupado, elige otro puerto local libre sin detener programas. Sin reportar significa que no hay datos recientes, no que la clave privada haya caducado.",
3307
4186
  "guide.feedback": "Al informar de un problema, indica sistema, versión, modo, paso fallido y un error sin datos sensibles. No incluyas claves privadas, códigos, cookies ni contenido de registros.",
3308
4187
  "guide.scope": "Alcance de esta beta",
3309
- "guide.scopeBody": "Admite recursos reales, detalles de dispositivos, recogida manual y lectura final de registros autorizada aparte. Aún no permite comandos remotos arbitrarios, transferencias generales, Driver Windows nativo, exploración automática, autorización LAN sin conexión ni sincronización de detalles local/nube.",
4188
+ "guide.scopeBody": "Admite recursos reales, detalles de dispositivos, recogida manual y lectura final de registros autorizada aparte. Aún no permite comandos remotos arbitrarios, transferencias generales, exploración automática, autorización LAN sin conexión ni sincronización de detalles local/nube.",
3310
4189
  "guide.quota": "Límites del relay oficial de prueba: 100 MiB por cuenta y día UTC, 16 KiB/s por dirección. No es ancho de banda ilimitado. Los servicios y aplicaciones se registran manualmente, no se detectan.",
3311
- "guide.full": "Guía completa del Agent (chino)",
4190
+ "guide.full": "Guía completa de instalación (chino)",
3312
4191
  "guide.markdown": "Guía de prueba en texto (chino)",
3313
4192
  "guide.source": "Código fuente MIT en npm ↗",
3314
4193
  "guide.footer": "Instalación local · Claves en el equipo · Operaciones con autorización aparte",
@@ -3322,14 +4201,14 @@ export const messages = {
3322
4201
  "prompt.private": "Plano de control: {origin}. El Driver se ejecuta en este equipo. Las claves privadas de identidad permanecen en el dispositivo, no en la nube.",
3323
4202
  "prompt.background": "Servicio de usuario en segundo plano tras iniciar sesión en el sistema",
3324
4203
  "prompt.foreground": "Solo primer plano; no instalar servicio en segundo plano",
3325
- "prompt.environment": "Comprueba macOS/Linux, Node.js >=24, npm y la compatibilidad MCP del Agent actual. Windows nativo no está soportado: explícalo y detente en Windows. Usa fuentes oficiales para Node.js; déjame gestionar permisos del sistema o de administrador.",
4204
+ "prompt.environment": "Comprueba macOS/Linux, Node.js >=24, npm y MCP del Agent. Si el sistema no coincide con la elección, detente y pide elegir de nuevo. Usa Node.js oficial; deja permisos del sistema al usuario.",
3326
4205
  "prompt.existing": "Inspecciona primero CLI, vinculaciones, servicios de usuario y {url}/api/health; conserva la configuración. Si existe el CLI fijo, comprueba {status} y {service}. No abras claves privadas. Si el puerto está ocupado, elige un puerto loopback libre conocido y actualiza las direcciones sin detener programas. Reutiliza versión, servidor y modo coincidentes; consulta los conflictos sin sobrescribir, desvincular ni duplicar instalaciones.",
3327
4206
  "prompt.userInstall": "Para una instalación nueva, usa una ubicación fija del usuario, sin sudo:",
3328
4207
  "prompt.config": "No cambies la configuración global de npm ni archivos de inicio del shell. Usa la ruta absoluta del CLI en los siguientes comandos.",
3329
4208
  "prompt.bg": "Revisa el plan, confirma servicio de usuario y escucha solo en loopback, luego instala y verifica el estado. Ante fallos o conflictos conserva el estado, sin limpiar ni reinstalar. Linux requiere systemd --user; macOS requiere launchd del usuario conectado. Si no está disponible, explica y ofrece el modo en primer plano.",
3330
4209
  "prompt.fg": "Mantén activo el proceso en primer plano. Con hosting, connect en el siguiente paso inicia el Driver tras la aprobación; en modo local ejecuta start abajo. Cerrar la página no detiene el proceso; cerrar la terminal detiene los informes.",
3331
4210
  "prompt.pairBefore": "Revisa el alcance de los informes y solicita la vinculación:",
3332
- "prompt.pairAfter": "Pídeme iniciar sesión con mi cuenta en {origin}, comprobar la huella completa de la clave pública en mi terminal y aprobar manualmente. No apruebes por mí ni leas contraseñas, cookies o claves privadas. El código solo debe quedar en la terminal, nunca en chats, scripts ni enlaces. Si tus herramientas lo registran, deja que ejecute solo connect en mi terminal mientras completas las demás comprobaciones. Verifica informes reales tras aprobar; configured=true no demuestra conectividad.",
4211
+ "prompt.pairAfter": "Ejecuta --browser y mantén el proceso. Abre el navegador local sin imprimir credenciales temporales. Solo debo iniciar sesión en {origin}, comparar la huella pública completa y aprobar una vez. No apruebes por mí ni leas contraseñas, cookies, claves privadas o enlaces con credenciales. Observa el proceso, verifica firstReport.verified=true y continúa automáticamente. No me pidas ejecutar otra vez ni responder “aprobado”. configured=true no prueba la entrega. Solo sin navegador, pídeme ejecutar connect sin --browser en mi terminal; el código se queda allí. Un panel antiguo requiere actualización; no imprimas credenciales como alternativa.",
3333
4212
  "prompt.local": "No ejecutes connect, generes identidad ni registres cuentas. Si ya existe una vinculación cloud, explica que start o el servicio pueden reanudarla; no la presentes como modo exclusivamente local.",
3334
4213
  "prompt.mcp": "Lee {url}/api/connector/setup y configura Streamable HTTP MCP en {mcp} con la interfaz oficial soportada por el Agent. Reutiliza la configuración coincidente sin reemplazar otros MCP. Si no puedes configurarlo, pídeme pegar solo esa dirección; no inventes una conexión verificada.",
3335
4214
  "prompt.verify": "Verifica /api/health, memoria y disco locales reales en /api/overview y una llamada real del Agent a device_center_list_resources. Informa versión, URLs del panel/MCP, modo, resultado de vinculación y pasos pendientes.",
@@ -3344,14 +4223,17 @@ export const messages = {
3344
4223
  "login.submit": "Iniciar sesión",
3345
4224
  "login.unified": "Usa tu cuenta compartida de App Services / sitio personal.",
3346
4225
  "login.link": "Acceder con cuenta compartida ↗",
3347
- "login.help": "Accede con correo o Google en la nueva página. Vuelve aquí para entrar automáticamente al panel.",
3348
- "login.continue": "Ya inicié sesión, continuar",
4226
+ "login.help": "Si ya iniciaste sesión, entrarás automáticamente. Si no, abre la página de cuenta de abajo, accede y vuelve aquí.",
4227
+ "login.continue": "Entrar al panel",
3349
4228
  "login.return": "Vuelve a esta página tras acceder a tu cuenta compartida.",
3350
4229
  "login.first": "Primero accede con correo o Google en la página de cuentas y vuelve aquí.",
3351
4230
  "login.owner": "Esta cuenta no puede acceder al panel personal. Usa la cuenta de su propietario.",
3352
4231
  "login.rate": "Demasiados intentos. Reinténtalo en un minuto.",
3353
- "login.unavailable": "El servicio de cuentas no está disponible temporalmente. Inténtalo más tarde.",
3354
- "login.timeout": "Se agotó el tiempo de conexión al servicio de cuentas. Reinténtalo.",
4232
+ "login.unavailable": "No se pudo conectar con el servicio de cuentas. Reintenta aquí; no necesitas volver al sitio personal.",
4233
+ "login.timeout": "La verificación tardó demasiado. Reintenta aquí sin volver a introducir la contraseña.",
4234
+ "login.session": "No se guardó la sesión. Abre la cuenta y el panel en el mismo navegador y comprueba si se bloquean las cookies de este sitio.",
4235
+ "login.returned": "No se mantuvo la sesión del panel y se pausó la navegación automática. Reintenta aquí. Si vuelve a fallar, anota el mensaje y la hora.",
4236
+ "login.checking": "Comprobando sesión…",
3355
4237
  "login.optionsError": "No se pudieron cargar las opciones de acceso. Actualiza y reintenta.",
3356
4238
  "login.credentials": "Usuario o contraseña incorrectos.",
3357
4239
  "login.multi": "Dispositivos aislados por cuenta · HTTPS",
@@ -3585,7 +4467,7 @@ export const messages = {
3585
4467
  "panel.224": "Copiar para el Agent",
3586
4468
  "panel.225": "Ver instrucciones completas",
3587
4469
  "panel.226": "Instrucciones de instalación para el Agent",
3588
- "panel.227": "macOS / Linux con Node.js 24. Usa la versión fija 0.2.0-beta.3. Aquí solo copias instrucciones; el Agent las ejecuta localmente.",
4470
+ "panel.227": "macOS / Linux / Windows 11 con Node.js 24. Usa la versión fija 0.2.0-beta.5. Aquí solo copias instrucciones; el Agent las ejecuta localmente.",
3589
4471
  "panel.228": "Copiado. Pégalo en el Agent del destino; inicia sesión y verifica personalmente si necesita vincularse.",
3590
4472
  "panel.229": "Copia manualmente las instrucciones seleccionadas.",
3591
4473
  "panel.230": "No se puede confirmar el administrador",
@@ -3704,7 +4586,7 @@ export const messages = {
3704
4586
  "panel.343": "Solo si la red es inaccesible se usa la nube. Los errores de certificado, identidad o permisos detienen el acceso. Ambas rutas requieren el plano en línea para comprobar revocaciones.",
3705
4587
  "panel.344": "El destino puede ejecutar",
3706
4588
  "panel.345": "device-center access revoke --peer MANAGEMENT_FINGERPRINT --confirm",
3707
- "panel.346": " para revocar cuando quiera. Privadas y rutas autorizadas quedan locales; la nube solo reenvía TLS cifrado. Aún no hay Agent nativo de Windows.",
4589
+ "panel.346": "para revocar cuando quiera. Privadas y rutas autorizadas quedan locales; la nube solo reenvía TLS cifrado. Vista previa de Windows 11 · Instala en PowerShell y sigue los diagramas para verificar el vínculo y el segundo plano.",
3708
4590
  "panel.347": "Procesando…",
3709
4591
  "panel.348": "Buscar solicitud",
3710
4592
  "panel.349": "Compartir hasta 15 nombres SSH y estados en caché (sin direcciones, usuarios, rutas, configuración ni privadas)",
@@ -3780,7 +4662,7 @@ export const messages = {
3780
4662
  "panel.419": "Puedes cerrar la web sin detener el servicio. Lo habitual: instalar una vez y ejecutarlo automáticamente al iniciar sesión.",
3781
4663
  "panel.420": "Instalación local · recomendada",
3782
4664
  "panel.421": "Scripts de servicio de usuario: launchd en macOS y systemd en Linux. Revisa el plan antes de instalar tú mismo.",
3783
- "panel.422": "Detén manualmente la vista previa del mismo puerto antes de instalar. Requiere Node.js 24 y directorio estable. Registra servicio de usuario, registros y datos sin privilegios de administrador. Windows en segundo plano aún no; usa primer plano o Docker.",
4665
+ "panel.422": "Detén manualmente la vista previa del mismo puerto antes de instalar. Requiere Node.js 24 y directorio estable. Registra servicio de usuario, registros y datos sin privilegios de administrador. Vista previa de Windows 11 · Instala en PowerShell y sigue los diagramas para verificar el vínculo y el segundo plano.",
3784
4666
  "panel.423": "¿Cómo conectar el Agent local con Docker?",
3785
4667
  "panel.424": "Docker solo ejecuta Device Center. Codex sigue local y accede mediante",
3786
4668
  "panel.425": "http://127.0.0.1:PORT/mcp",
@@ -3788,7 +4670,7 @@ export const messages = {
3788
4670
  "panel.427": "Compose solo expone bucle local y conserva volumen y reinicios. AI local → dirección local → contenedor. No montes socket Docker, configuración Codex ni directorios del host.",
3789
4671
  "panel.428": "Requiere Docker activo. Un contenedor no obtiene permisos locales automáticamente. Solo muestra el contenedor, no memoria, disco ni SSH del host. Ejecuta el Driver nativo en el host.",
3790
4672
  "panel.429": "Solo se facilitan scripts y configuración; no se ha instalado un servicio ni iniciado Docker. Este proceso es una vista previa local.",
3791
- "panel.430": "Instalar con el Agent",
4673
+ "panel.430": "Instalar Device Center",
3792
4674
  "panel.431": "Autorizar registros remotos",
3793
4675
  "panel.432": "Conectar Codex local",
3794
4676
  "panel.433": "Panel en la nube · opcional",
@@ -3916,16 +4798,189 @@ export const messages = {
3916
4798
  "notice.notConfig": "No es configuración SSH; ignorado.",
3917
4799
  "notice.candidateLimit": "Límite de candidatos alcanzado.",
3918
4800
  "notice.match": "Condiciones Match: solo alias; sin evaluar ni ejecutar comandos.",
3919
- "notice.conditional": "Include condicional en Host / Match omitido; candidatos incompletos."
4801
+ "notice.conditional": "Include condicional en Host / Match omitido; candidatos incompletos.",
4802
+ "guide.visual.hero": "Menos cambiar de equipo. Menos copiar registros.",
4803
+ "guide.visual.lead": "Tu Agent local puede ver otros dispositivos y leer los registros que autorices.",
4804
+ "guide.visual.begin": "Empezar",
4805
+ "guide.visual.example": "Ejemplo de uso",
4806
+ "guide.visual.yourDevices": "Aprovecha tus propios dispositivos",
4807
+ "guide.visual.request": "«Revisa los registros de mi servidor en casa».",
4808
+ "guide.visual.myAgent": "Agent local",
4809
+ "guide.visual.myComputer": "El equipo que utilizas",
4810
+ "guide.visual.authorized": "Acceso autorizado",
4811
+ "guide.visual.otherDevice": "Tu dispositivo",
4812
+ "guide.visual.homeServer": "Por ejemplo: tu servidor en casa",
4813
+ "guide.visual.log": "Registros autorizados",
4814
+ "guide.visual.scenarios": "Casos de uso",
4815
+ "guide.visual.debug": "Si falla un servicio",
4816
+ "guide.visual.debugBody": "Tu Agent lee los registros autorizados",
4817
+ "guide.visual.save": "Antes de alquilar un servidor",
4818
+ "guide.visual.saveBody": "Revisa los recursos que ya tienes",
4819
+ "guide.visual.away": "Cuando estás fuera",
4820
+ "guide.visual.awayBody": "Consulta equipos conectados en el panel alojado",
4821
+ "guide.visual.startSmall": "Empieza con un equipo",
4822
+ "guide.visual.choose": "Elige un modo y cópialo a tu Agent",
4823
+ "guide.visual.noInstall": "Copiar no instala nada",
4824
+ "guide.visual.localCaption": "Pruébalo en tu equipo",
4825
+ "guide.visual.localBody": "Panel local y MCP opcional. Sin cuenta.",
4826
+ "guide.visual.hostedCaption": "Varios dispositivos en un solo lugar",
4827
+ "guide.visual.hostedBody": "Vincula dispositivos a tu cuenta y usa el enlace cifrado.",
4828
+ "guide.visual.next": "¿Qué sigue después de copiar?",
4829
+ "guide.visual.pasteTitle": "Ve al equipo que vas a conectar",
4830
+ "guide.visual.pasteBody": "Pega las instrucciones en el Agent de ese equipo.",
4831
+ "guide.visual.installTitle": "Deja que tu Agent lo instale",
4832
+ "guide.visual.installBody": "Comprueba el entorno, instala el Driver y configura MCP local.",
4833
+ "guide.visual.bindTitle": "Modo alojado: aprueba el vínculo",
4834
+ "guide.visual.bindBody": "El programa continúa automáticamente. No necesitas avisar al Agent de la aprobación.",
4835
+ "guide.visual.trust": "Las claves privadas quedan en el dispositivo · Los registros requieren permiso aparte",
4836
+ "guide.visual.details": "Más detalles",
4837
+ "guide.visual.pairDetails": "Instalación y vinculación paso a paso",
4838
+ "guide.visual.copiedLocal": "Copiado. Ve al equipo de destino y pega las instrucciones en su Agent. El modo local no requiere iniciar sesión.",
4839
+ "guide.visual.copiedHosted": "Copiado. Ve al equipo de destino y pega las instrucciones en su Agent. Debes revisar la vinculación personalmente.",
4840
+ "guide.visual.localReady": "Modo local: empieza a usarlo",
4841
+ "guide.visual.localReadyBody": "Sin iniciar sesión. Consulta los recursos locales y permite que tu Agent use MCP.",
4842
+ "guide.visual.heroLine1": "Menos cambios.",
4843
+ "guide.visual.heroLine2": "Menos copiar logs.",
4844
+ "guide.visual.viewFlow": "Cómo funciona",
4845
+ "guide.visual.pauseMotion": "Pausar animación",
4846
+ "guide.visual.playMotion": "Reproducir animación",
4847
+ "guide.visual.dashboard": "Dispositivos",
4848
+ "guide.focus.overview": "Presentación",
4849
+ "guide.focus.example": "Cómo funciona · solo ilustración",
4850
+ "guide.focus.firstTry": "¿Primera vez? Prueba el modo local sin cuenta.",
4851
+ "guide.focus.alreadyInstalled": "¿Ya conectado?",
4852
+ "guide.focus.start": "Empieza aquí",
4853
+ "guide.focus.startTitle": "Conecta tu primer equipo",
4854
+ "guide.focus.startBody": "Elige un modo de uso y después instala con un Agent o manualmente. El dispositivo de destino no necesita un AI Agent.",
4855
+ "guide.focus.select": "Elige cómo usarlo",
4856
+ "guide.focus.useSelfHosted": "Usar mi propio servidor de control",
4857
+ "guide.focus.copyHint": "Son instrucciones para un Agent. Pégalas en su chat, no en una terminal.",
4858
+ "guide.focus.paste": "En el equipo de destino, pega en el chat del Agent",
4859
+ "guide.focus.pasteBefore": "Copia las instrucciones de arriba y abre un chat con el Agent en el equipo que quieres conectar.",
4860
+ "guide.focus.pasteAfter": "Abre el chat del Agent en el equipo que quieres conectar, pega las instrucciones y sigue sus indicaciones.",
4861
+ "guide.focus.whatNext": "¿Qué ocurre después?",
4862
+ "guide.focus.openHosted": "Tras instalar, abre el panel y aprueba tú el emparejamiento ↗",
4863
+ "guide.focus.copied": "Copiado. Siguiente paso: pega en el chat del Agent del equipo de destino.",
4864
+ "pair.title": "Vincular este equipo",
4865
+ "pair.step": "Tu aprobación",
4866
+ "pair.intro": "Aprueba solo una solicitud que acabas de iniciar en este equipo. Se rellena automáticamente.",
4867
+ "pair.fingerprint": "Compara la huella completa de la clave pública con tu terminal o Agent:",
4868
+ "pair.scope": "Solo informa del nombre, SO, memoria y disco. No concede operaciones remotas.",
4869
+ "pair.approve": "Las huellas coinciden — vincular",
4870
+ "pair.cancel": "Cancelar",
4871
+ "pair.loading": "Cargando la solicitud",
4872
+ "pair.wait": "Si es necesario, primero iniciarás sesión.",
4873
+ "pair.bound": "Vinculado. Comprobando la conexión",
4874
+ "pair.reporting": "Esperando el primer informe de recursos…",
4875
+ "pair.noReply": "El programa continúa automáticamente. No necesitas avisar al Agent de la aprobación.",
4876
+ "pair.done": "Este equipo está conectado",
4877
+ "pair.doneBody": "La nube recibió el informe. Añade nombre, propósito y etiquetas en el panel.",
4878
+ "pair.reportTimeout": "Vinculación completada, primer informe sin confirmar. Revisa suspensión, servicio local y red. No vuelvas a vincular.",
4879
+ "pair.cancelled": "Cancelado",
4880
+ "pair.cancelledBody": "No se aprobó ningún dispositivo. La solicitud caducará automáticamente.",
4881
+ "pair.missing": "Solicitud caducada o no disponible",
4882
+ "pair.missingBody": "Empieza de nuevo en el equipo de destino. No abras enlaces de vinculación enviados por otros. Un equipo vinculado no necesita volver a registrarse.",
4883
+ "pair.start": "Volver a la guía",
4884
+ "pair.dashboard": "Abrir panel de dispositivos",
4885
+ "pair.boundary": "Las claves privadas quedan en el equipo · Acceso remoto con permiso separado",
4886
+ "pair.manual": "¿Sin navegador o ya tienes un código?",
4887
+ "pair.manualHint": "Solo para servidores sin navegador o clientes antiguos: ejecuta el comando manual en el destino e introduce su código.",
4888
+ "pair.browserHint": "Abre la solicitud automáticamente. Inicia sesión, compara la huella y aprueba una vez. El informe se verifica automáticamente, sin responder al Agent.",
4889
+ "pair.approvalUnknown": "Resultado de aprobación sin confirmar",
4890
+ "pair.approvalUnknownBody": "La red falló o la solicitud ya se procesó. Revisa el proceso del equipo y el panel antes de empezar de nuevo. Si está vinculado, no repitas.",
4891
+ "guide.method.title": "Elige cómo instalar",
4892
+ "guide.method.agent": "Usar un Agent",
4893
+ "guide.method.manual": "Instalación manual",
4894
+ "guide.manual.prerequisites": "Node.js 24+ · Solo instalaciones nuevas. Las existentes se conservan y el script se detiene.",
4895
+ "guide.manual.browserQuestion": "¿El dispositivo puede abrir un navegador?",
4896
+ "guide.manual.hasBrowser": "Con navegador",
4897
+ "guide.manual.noBrowser": "Sin navegador / servidor",
4898
+ "guide.manual.copy": "Copiar script de instalación",
4899
+ "guide.manual.copyHint": "Es un script de shell. Pégalo y ejecútalo en la terminal del dispositivo de destino. No necesitas un AI Agent.",
4900
+ "guide.manual.preview": "Ver o copiar el script manualmente",
4901
+ "guide.manual.scriptLabel": "Script de instalación para terminal",
4902
+ "guide.manual.pasteTitle": "Ejecuta en la terminal del destino",
4903
+ "guide.manual.pasteBefore": "Copia el script y abre la terminal del dispositivo de destino. En Mac usa Terminal; en Linux, una terminal o una sesión SSH existente.",
4904
+ "guide.manual.pasteAfter": "Pega y ejecuta en la terminal del destino. El script comprueba los requisitos e instala el Driver y un servicio de usuario en segundo plano.",
4905
+ "guide.manual.copied": "Script copiado. Ahora pégalo y ejecútalo en la terminal del dispositivo de destino.",
4906
+ "guide.manual.installBody": "El script instala un servicio de usuario que arranca al iniciar sesión. El destino no necesita AI Agent ni configurar MCP. Añade MCP en el equipo de gestión cuando quieras usar su Agent.",
4907
+ "guide.manual.localBody": "Sin iniciar sesión, consulta los recursos en el panel local del destino. Solo configura MCP en un equipo cuyo Agent vaya a usarlo. La dirección de bucle local del servidor no es una URL remota.",
4908
+ "guide.manual.browserBody": "El script abre el navegador del destino. Accede a tu cuenta, compara la huella completa de la clave pública con la terminal y aprueba una vez. El dispositivo empezará a informar automáticamente.",
4909
+ "guide.manual.headlessBody": "Mantén abierta la terminal del destino. Desde otro equipo con navegador, accede al panel, elige “Conectar mi equipo”, introduce el código de 5 minutos de la terminal, compara la huella completa de la clave pública y aprueba. No hace falta responder al Agent.",
4910
+ "guide.manual.openPanel": "Abrir el panel para completar la vinculación ↗",
4911
+ "guide.manual.openGuide": "¿El dispositivo no tiene Agent? Instalación manual ↗",
4912
+ "walk.title": "Después de copiar, sigue las imágenes",
4913
+ "walk.disclaimer": "Son ilustraciones. Realiza las acciones en las ventanas reales del equipo indicado.",
4914
+ "walk.terminalTitle": "Pega en la terminal del equipo que vas a conectar",
4915
+ "walk.terminalBody": "Abre una terminal en ese equipo, pega el script completo y pulsa Enter. Si aparece un error, detente y revísalo.",
4916
+ "walk.agentTitle": "Pega en el chat del Agent del equipo de destino",
4917
+ "walk.agentBody": "Abre un chat con un Agent que pueda operar ese equipo. Pega y envía las instrucciones; el Agent se encarga de instalar.",
4918
+ "walk.headlessTitle": "Vincula desde otro equipo con navegador",
4919
+ "walk.headlessBody": "Deja abierta la terminal de destino. Inicia sesión en el panel desde otro equipo, introduce el código de la terminal, compara la huella completa de la clave pública y aprueba.",
4920
+ "walk.browserTitle": "Vincula en el navegador que se abre",
4921
+ "walk.browserBody": "El script abre esta solicitud. Inicia sesión con tu cuenta, compara la huella completa de la clave pública con la terminal o el Agent y aprueba una vez.",
4922
+ "walk.installTitle": "Espera la instalación y revisa los errores",
4923
+ "walk.installBody": "El script instala el Driver local y un servicio de usuario en segundo plano. No hace falta un Agent de IA. Revisa cualquier error indicado.",
4924
+ "walk.agentInstallBody": "El Agent instala el Driver y el servicio de usuario, conecta MCP y comprueba que funcionan.",
4925
+ "walk.checkTitle": "Comprueba un informe real en la lista de dispositivos",
4926
+ "walk.cloudCheckBody": "Busca este equipo en la lista de dispositivos de la nube. La memoria, el disco y una hora de informe actualizada confirman el resultado. Vincular no confirma que ya se esté informando.",
4927
+ "walk.localCheckBody": "En el equipo recién instalado, abre en el navegador la dirección local del panel que aparece en la imagen. 127.0.0.1 se refiere a ese mismo equipo.",
4928
+ "walk.copyFirst": "Primero usa el botón de copiar de arriba y cambia a la ventana indicada.",
4929
+ "walk.openMac": "Mac: ⌘ Espacio → busca “Terminal”",
4930
+ "walk.openLinux": "Linux: menú de aplicaciones → Terminal, o sesión SSH existente",
4931
+ "walk.autoBrowser": "El navegador se abre al ejecutar; si falla, sigue las instrucciones de vinculación manual de la terminal",
4932
+ "walk.sameComputer": "Abre esta dirección en el equipo recién instalado",
4933
+ "walk.steps": "Pasos ilustrados de instalación",
4934
+ "walk.pasteTab": "Pegar y ejecutar",
4935
+ "walk.bindTab": "Entrar y vincular",
4936
+ "walk.installTab": "Instalación",
4937
+ "walk.checkTab": "Ver dispositivo",
4938
+ "walk.copiedContent": "Portapapeles",
4939
+ "walk.terminal": "Terminal",
4940
+ "walk.chat": "Chat del Agent",
4941
+ "walk.browser": "Página web",
4942
+ "walk.fullFingerprint": "Aquí aparece la huella pública completa",
4943
+ "walk.approve": "Coincide: vincular este equipo",
4944
+ "walk.targetTerminal": "Equipo de destino · Terminal",
4945
+ "walk.pasteScript": "Pega aquí el script completo",
4946
+ "walk.pressEnter": "Después pulsa",
4947
+ "walk.targetChat": "Equipo de destino · Chat del Agent",
4948
+ "walk.pastePrompt": "Pega aquí las instrucciones",
4949
+ "walk.send": "Enviar",
4950
+ "walk.pairCode": "Código de la terminal",
4951
+ "walk.otherBrowser": "Otro equipo · Navegador",
4952
+ "walk.signIn": "Inicia sesión en tu cuenta",
4953
+ "walk.pasteCode": "Introduce aquí el código de la terminal",
4954
+ "walk.compare": "Compara ambas huellas públicas completas",
4955
+ "walk.driver": "Instalar el Driver local",
4956
+ "walk.service": "Iniciar el servicio de usuario",
4957
+ "walk.mcp": "Conectar el MCP de este Agent",
4958
+ "walk.yourDevice": "Tu dispositivo",
4959
+ "walk.awaitReport": "Esperando un informe real",
4960
+ "walk.reportTime": "Comprueba que la hora del informe se actualizó",
4961
+ "walk.previous": "← Anterior",
4962
+ "walk.restart": "Volver a ver dónde pegar",
4963
+ "walk.next": "Siguiente →",
4964
+ "walk.counter": "{current} / {total}",
4965
+ "walk.openDevices": "Abrir lista de dispositivos ↗",
4966
+ "walk.openPairing": "Elige “{action}” → código",
4967
+ "guide.os.title": "Sistema del equipo de destino",
4968
+ "guide.windowsCandidate": "Vista previa de Windows 11 · Instala en PowerShell y sigue los diagramas para verificar el vínculo y el segundo plano.",
4969
+ "guide.windowsPrerequisites": "Windows 11 · PowerShell 5.1+ · Node.js 24+ · Usuario normal; no requiere AD ni AI Agent. Se detiene si ya está instalado.",
4970
+ "walk.windowsTitle": "Pega en Windows PowerShell y pulsa Enter",
4971
+ "walk.windowsBody": "Abre PowerShell como usuario normal en el equipo de destino (no CMD ni WSL). Revisa y pega el script completo, y pulsa Enter. Conserva la ventana si falla.",
4972
+ "walk.openWindows": "Inicio → buscar PowerShell → Abrir (sin administrador)",
4973
+ "prompt.windowsEnvironment": "Comprueba Windows 11, PowerShell 5.1+, Node.js >=24, npm.cmd y MCP del Agent. Usa PowerShell normal, no WSL ni npm.ps1. Comprueba $LASTEXITCODE tras cada comando y detente si no es cero. No cambies políticas ni eleves privilegios. Node.js debe ser oficial.",
4974
+ "prompt.windowsBackground": "Revisa el plan, instala explícitamente la tarea de inicio de sesión del usuario y verifica su estado. Sin AD, administrador, contraseña ni cambios de políticas. Conserva los fallos y ofrece primer plano. DPAPI local y ACL NTFS protegen la identidad; no muevas sus archivos. No informa al cerrar sesión, suspender o perder conexión."
3920
4975
  },
3921
4976
  "fr": {
3922
4977
  "language": "Langue",
3923
4978
  "guide.title": "Bien démarrer · Device Center",
3924
4979
  "guide.open": "Ouvrir le tableau de bord ↗",
3925
- "guide.badge": "Bêta publique · 0.2.0-beta.3 · MIT",
4980
+ "guide.badge": "Aperçu de développement · 0.2.0-beta.5 · MIT",
3926
4981
  "guide.hero": "Donnez à votre Agent accès à vos ordinateurs disponibles.",
3927
4982
  "guide.lead": "Consultez les ressources et le rôle de chaque ordinateur, puis lisez des journaux précis après une autorisation distincte. Confiez l’installation à votre Agent local et commencez avec un ordinateur.",
3928
- "guide.platform": "macOS / Linux · Node.js 24+ · Windows natif n’est pas encore pris en charge",
4983
+ "guide.platform": "macOS / Linux / candidat Windows 11 · Node.js 24+",
3929
4984
  "guide.install": "Choisissez un mode et copiez les instructions pour votre Agent local",
3930
4985
  "guide.local": "Utilisation locale",
3931
4986
  "guide.localDesc": "Tableau de bord local et MCP sans compte. Découvrez d’abord votre ordinateur et les ressources de vos appareils.",
@@ -3933,7 +4988,7 @@ export const messages = {
3933
4988
  "guide.hosted": "Hébergement officiel",
3934
4989
  "guide.hostedDesc": "Gérez vos appareils avec votre compte et le relais chiffré officiel. Le Driver et les clés privées restent sur vos appareils.",
3935
4990
  "guide.hostedCopy": "Copier l’installation hébergée",
3936
- "guide.paste": "Collez les instructions dans un Agent exécuté sur l’ordinateur cible et autorisé à installer des logiciels. Il vérifiera les réglages existants, installera la version fixée, configurera le service utilisateur et MCP, puis vérifiera le résultat. Cette page n’installe aucun logiciel.",
4991
+ "guide.paste": "Pour un Agent, copiez les instructions. Pour une installation manuelle, exécutez le script shell dans le terminal cible. Les deux installent un Driver local. MCP est nécessaire uniquement sur un ordinateur de gestion utilisant un AI Agent. La page ne fait que copier.",
3937
4992
  "guide.custom": "Vous avez déjà votre propre serveur de contrôle ?",
3938
4993
  "guide.address": "Adresse HTTPS de votre serveur de contrôle",
3939
4994
  "guide.customCopy": "Copier les instructions d’auto-hébergement",
@@ -3941,9 +4996,9 @@ export const messages = {
3941
4996
  "guide.preview": "Afficher ou copier les instructions complètes",
3942
4997
  "guide.instructions": "Instructions pour l’Agent",
3943
4998
  "guide.pair": "En mode hébergé, connectez-vous et associez votre ordinateur",
3944
- "guide.pair1": "Ouvrez le tableau de bord selon les indications de l’Agent. Utilisez votre compte App Services / site personnel ou inscrivez-vous sur la page de compte.",
4999
+ "guide.pair1": "Seuls les modes hébergés nécessitent un compte. Avec un navigateur, le script ouvre l’association. Sans navigateur, connectez-vous sur un autre ordinateur et saisissez le code du terminal.",
3945
5000
  "guide.loginLink": "Ouvrir le tableau cloud",
3946
- "guide.pair2": "Saisissez le code d’association valable cinq minutes affiché dans votre terminal. Vérifiez l’empreinte complète de la clé publique avant d’approuver. Ne partagez pas les mots de passe, clés privées ou codes et ne les collez pas dans une conversation avec l’Agent.",
5001
+ "guide.pair2": "Approuvez uniquement la demande que vous venez de lancer. Vérifiez le nom, le système et l’empreinte complète de la clé publique du terminal. Ne partagez pas le code.",
3947
5002
  "guide.pair3": "Répétez l’installation sur un autre ordinateur vous appartenant et associez-le au même compte. Sans données réelles, un appareil apparaît comme inconnu ou sans rapport récent.",
3948
5003
  "guide.localHint": "Ignorez cette étape en mode local. L’association permet uniquement les rapports de ressources indiqués ; la lecture des journaux nécessite une autorisation distincte sur l’appareil cible.",
3949
5004
  "guide.try": "Quatre points à vérifier pendant l’essai",
@@ -3961,7 +5016,7 @@ export const messages = {
3961
5016
  "guide.scope": "Périmètre de cette bêta",
3962
5017
  "guide.scopeBody": "Prend en charge les ressources réelles, les détails des appareils, la collecte manuelle et la fin des journaux avec autorisation distincte. Pas encore de commandes distantes arbitraires, transfert général de fichiers, Driver Windows natif, scan automatique, autorisation LAN hors ligne ni synchronisation locale/cloud des détails.",
3963
5018
  "guide.quota": "Limites du relais d’essai officiel : 100 MiB par compte et jour UTC, 16 KiB/s par direction. La bande passante n’est pas illimitée. Services et applications sont renseignés manuellement, sans détection automatique.",
3964
- "guide.full": "Guide complet de l’Agent (chinois)",
5019
+ "guide.full": "Guide complet d’installation (chinois)",
3965
5020
  "guide.markdown": "Guide d’essai en texte (chinois)",
3966
5021
  "guide.source": "Sources MIT sur npm ↗",
3967
5022
  "guide.footer": "Installation locale · Clés sur l’appareil · Opérations autorisées séparément",
@@ -3975,14 +5030,14 @@ export const messages = {
3975
5030
  "prompt.private": "Serveur de contrôle : {origin}. Le Driver s’exécute sur cet appareil. Les clés privées d’identité restent sur l’appareil, sans être confiées au cloud.",
3976
5031
  "prompt.background": "Service utilisateur en arrière-plan après connexion au système",
3977
5032
  "prompt.foreground": "Premier plan uniquement ; ne pas installer de service en arrière-plan",
3978
- "prompt.environment": "Vérifiez macOS/Linux, Node.js >=24, npm et la prise en charge MCP de l’Agent actuel. Le Driver Windows natif n’est pas pris en charge : expliquez-le et arrêtez-vous sous Windows. Utilisez les sources officielles pour Node.js ; confiez-moi les demandes de droits administrateur ou système.",
5033
+ "prompt.environment": "Vérifiez macOS/Linux, Node.js >=24, npm et MCP de l’Agent. Si l’OS diffère du choix, arrêtez-vous et demandez un nouveau choix. Node.js doit être officiel ; laissez les autorisations au propriétaire.",
3979
5034
  "prompt.existing": "Inspectez d’abord le CLI existant, les associations, les services utilisateur et {url}/api/health ; conservez les réglages. Si le CLI fixe existe, vérifiez {status} et {service}. N’ouvrez jamais de clé privée. Si le port est occupé, choisissez un port loopback libre connu et actualisez les adresses sans arrêter d’autres programmes. Réutilisez une version, un serveur et un mode compatibles ; demandez-moi en cas de conflit, sans écraser, dissocier ou réinstaller en double.",
3980
5035
  "prompt.userInstall": "Pour une nouvelle installation, utilisez un emplacement fixe accessible à l’utilisateur, sans sudo :",
3981
5036
  "prompt.config": "Ne modifiez pas les réglages globaux npm ni les fichiers de démarrage du shell. Utilisez ensuite le chemin absolu du CLI ci-dessus.",
3982
5037
  "prompt.bg": "Examinez le plan, confirmez la portée utilisateur et l’écoute loopback uniquement, puis installez et vérifiez l’état. En cas d’échec ou de conflit, conservez l’état, sans nettoyer et réinstaller. Linux nécessite systemd --user ; macOS nécessite launchd pour l’utilisateur connecté. Sinon, expliquez et proposez le premier plan.",
3983
5038
  "prompt.fg": "Gardez le processus au premier plan actif. En mode hébergé, connect à l’étape suivante lance le Driver après approbation ; en local, exécutez start ci-dessous. Fermer la page n’arrête pas le processus ; fermer le terminal interrompt les rapports.",
3984
5039
  "prompt.pairBefore": "Vérifiez le périmètre des rapports, puis demandez l’association :",
3985
- "prompt.pairAfter": "Demandez-moi de me connecter à mon compte sur {origin}, de vérifier l’empreinte complète de la clé publique dans mon terminal et d’approuver manuellement. N’approuvez pas à ma place et ne lisez pas mots de passe, cookies ou clés privées. Le code reste uniquement dans le terminal, jamais dans les conversations, scripts ou liens. Si vos outils le journalisent, laissez-moi exécuter seulement connect dans mon terminal et terminez les autres vérifications. Vérifiez des rapports réels après approbation ; configured=true ne prouve pas la connexion.",
5040
+ "prompt.pairAfter": "Exécutez --browser et gardez le processus actif. Il ouvre le navigateur local sans afficher de justificatifs temporaires. Je dois seulement me connecter sur {origin}, comparer l’empreinte publique complète et approuver une fois. N’approuvez pas à ma place ; ne lisez ni mots de passe, cookies, clés privées ni liens avec justificatifs. Observez le processus, vérifiez firstReport.verified=true puis continuez automatiquement. Ne me demandez ni de relancer la commande ni de répondre « approuvé ». configured=true ne prouve pas la transmission. Sans navigateur uniquement, demandez connect sans --browser dans mon terminal, où reste le code. Signalez la mise à jour nécessaire d’un ancien panneau.",
3986
5041
  "prompt.local": "N’exécutez pas connect, ne générez pas d’identité et ne créez pas de compte. Si une association cloud existe, expliquez que start ou le service peut la réactiver ; ne la présentez pas comme un mode exclusivement local.",
3987
5042
  "prompt.mcp": "Lisez {url}/api/connector/setup et configurez Streamable HTTP MCP à {mcp} avec l’interface officielle de l’Agent actuel. Réutilisez les réglages identiques sans écraser les autres MCP. Si vos outils ne le permettent pas, demandez-moi de coller seulement cette adresse ; n’inventez pas une connexion réussie.",
3988
5043
  "prompt.verify": "Vérifiez /api/health, la mémoire et le disque locaux réels de /api/overview, et un appel effectif de l’Agent à device_center_list_resources. Indiquez version, adresses du tableau de bord/MCP, mode, résultat d’association et étapes inachevées.",
@@ -3997,14 +5052,17 @@ export const messages = {
3997
5052
  "login.submit": "Se connecter",
3998
5053
  "login.unified": "Utilisez votre compte commun App Services / site personnel.",
3999
5054
  "login.link": "Connexion avec le compte commun ↗",
4000
- "login.help": "Connectez-vous par e-mail ou Google dans la nouvelle page. Revenez ici pour accéder automatiquement au tableau de bord.",
4001
- "login.continue": "Je suis connecté, continuer",
5055
+ "login.help": "Si vous êtes connecté, le panneau s’ouvre automatiquement. Sinon, ouvrez la page de compte ci-dessous, connectez-vous et revenez ici.",
5056
+ "login.continue": "Ouvrir le panneau",
4002
5057
  "login.return": "Revenez sur cette page après vous être connecté à votre compte commun.",
4003
5058
  "login.first": "Connectez-vous d’abord par e-mail ou Google sur la page de compte, puis revenez ici.",
4004
5059
  "login.owner": "Ce compte ne peut pas accéder à ce tableau de bord personnel. Utilisez le compte du propriétaire.",
4005
5060
  "login.rate": "Trop de tentatives. Réessayez dans une minute.",
4006
- "login.unavailable": "Le service de compte commun est temporairement indisponible. Réessayez plus tard.",
4007
- "login.timeout": "La connexion au service de compte a expiré. Réessayez.",
5061
+ "login.unavailable": "Le service de compte est inaccessible. Réessayez ici sans retourner sur le site personnel.",
5062
+ "login.timeout": "La vérification a expiré. Réessayez ici sans ressaisir votre mot de passe.",
5063
+ "login.session": "La session n’a pas été enregistrée. Ouvrez le compte et le panneau dans le même navigateur et vérifiez si les cookies de ce site sont bloqués.",
5064
+ "login.returned": "La connexion au panneau n’a pas été conservée, la navigation automatique est donc suspendue. Réessayez ici. En cas de nouvel échec, notez le message et l’heure.",
5065
+ "login.checking": "Vérification de la connexion…",
4008
5066
  "login.optionsError": "Impossible de charger les options de connexion. Actualisez et réessayez.",
4009
5067
  "login.credentials": "Nom d’utilisateur ou mot de passe incorrect.",
4010
5068
  "login.multi": "Appareils isolés par compte · HTTPS",
@@ -4238,7 +5296,7 @@ export const messages = {
4238
5296
  "panel.224": "Copier pour l’Agent",
4239
5297
  "panel.225": "Voir toutes les instructions",
4240
5298
  "panel.226": "Instructions d’installation pour l’Agent",
4241
- "panel.227": "macOS / Linux avec Node.js 24. Version fixe 0.2.0-beta.3. Cette page copie les instructions ; l’Agent les exécute localement.",
5299
+ "panel.227": "macOS / Linux / Windows 11 avec Node.js 24. Version fixe 0.2.0-beta.5. Cette page copie les instructions ; l’Agent les exécute localement.",
4242
5300
  "panel.228": "Copié. Collez dans l’Agent cible ; connectez-vous et vérifiez personnellement toute liaison nécessaire.",
4243
5301
  "panel.229": "Copiez manuellement les instructions sélectionnées.",
4244
5302
  "panel.230": "Ordinateur de gestion non confirmé",
@@ -4357,7 +5415,7 @@ export const messages = {
4357
5415
  "panel.343": "Relais cloud si réseau inaccessible seulement. Erreurs de certificat, d’identité ou de permission : arrêt. Les deux chemins exigent le plan en ligne pour vérifier les révocations.",
4358
5416
  "panel.344": "La cible peut exécuter",
4359
5417
  "panel.345": "device-center access revoke --peer MANAGEMENT_FINGERPRINT --confirm",
4360
- "panel.346": " pour révoquer à tout moment. Clés privées et chemins autorisés restent locaux ; seul le TLS chiffré transite. Aucun Agent Windows natif pour l’instant.",
5418
+ "panel.346": "pour révoquer à tout moment. Clés privées et chemins autorisés restent locaux ; seul le TLS chiffré transite. Aperçu Windows 11 · Installez dans PowerShell et suivez les schémas pour vérifier le jumelage et le service en arrière-plan.",
4361
5419
  "panel.347": "Traitement…",
4362
5420
  "panel.348": "Chercher la demande",
4363
5421
  "panel.349": "Partager jusqu’à 15 noms SSH et états en cache (sans adresses, utilisateurs, chemins, configuration ni clés privées)",
@@ -4433,7 +5491,7 @@ export const messages = {
4433
5491
  "panel.419": "Fermer la page n’arrête pas le service. Usage habituel : installer une fois, démarrage automatique après ouverture de session.",
4434
5492
  "panel.420": "Installation locale · recommandée",
4435
5493
  "panel.421": "Scripts utilisateur : launchd sur macOS, systemd sur Linux. Vérifiez le plan puis installez vous-même.",
4436
- "panel.422": "Arrêtez manuellement l’aperçu du même port avant installation. Node.js 24 et dossier stable requis. Service, journaux et données utilisateur, sans privilèges administrateur. Windows en arrière-plan non pris en charge ; utilisez premier plan ou Docker.",
5494
+ "panel.422": "Arrêtez manuellement l’aperçu du même port avant installation. Node.js 24 et dossier stable requis. Service, journaux et données utilisateur, sans privilèges administrateur. Aperçu Windows 11 · Installez dans PowerShell et suivez les schémas pour vérifier le jumelage et le service en arrière-plan.",
4437
5495
  "panel.423": "Comment connecter l’Agent local avec Docker ?",
4438
5496
  "panel.424": "Docker n’exécute que Device Center. Codex reste local et accède via",
4439
5497
  "panel.425": "http://127.0.0.1:PORT/mcp",
@@ -4441,7 +5499,7 @@ export const messages = {
4441
5499
  "panel.427": "Compose expose uniquement le bouclage et conserve volume et redémarrage. AI locale → adresse locale → conteneur. Aucun montage de socket Docker, configuration Codex ou dossiers hôte nécessaire.",
4442
5500
  "panel.428": "Docker doit fonctionner. Le conteneur n’obtient aucun droit local automatiquement. Il montre le conteneur, pas la mémoire, le disque ou SSH de l’hôte. Exécutez le Driver natif sur l’hôte.",
4443
5501
  "panel.429": "Scripts et configuration fournis seulement ; aucun service permanent installé ni Docker lancé. Ce processus reste un aperçu local.",
4444
- "panel.430": "Installer avec l’Agent",
5502
+ "panel.430": "Installer Device Center",
4445
5503
  "panel.431": "Autoriser les journaux distants",
4446
5504
  "panel.432": "Connecter Codex local",
4447
5505
  "panel.433": "Tableau cloud · facultatif",
@@ -4569,16 +5627,189 @@ export const messages = {
4569
5627
  "notice.notConfig": "Pas une configuration SSH ; ignoré.",
4570
5628
  "notice.candidateLimit": "Limite de candidats atteinte.",
4571
5629
  "notice.match": "Conditions Match : alias seuls ; aucune évaluation ni commande.",
4572
- "notice.conditional": "Include conditionnel dans Host / Match ignoré ; candidats incomplets possibles."
5630
+ "notice.conditional": "Include conditionnel dans Host / Match ignoré ; candidats incomplets possibles.",
5631
+ "guide.visual.hero": "Moins de changements de PC. Moins de logs à copier.",
5632
+ "guide.visual.lead": "Votre Agent local peut voir vos autres appareils et lire les logs autorisés.",
5633
+ "guide.visual.begin": "Commencer",
5634
+ "guide.visual.example": "Exemple d’utilisation",
5635
+ "guide.visual.yourDevices": "Profitez de vos propres appareils",
5636
+ "guide.visual.request": "« Vérifie les logs de mon serveur à la maison. »",
5637
+ "guide.visual.myAgent": "Agent local",
5638
+ "guide.visual.myComputer": "L’ordinateur que vous utilisez",
5639
+ "guide.visual.authorized": "Accès autorisé",
5640
+ "guide.visual.otherDevice": "Votre appareil",
5641
+ "guide.visual.homeServer": "Exemple : votre serveur à la maison",
5642
+ "guide.visual.log": "Logs autorisés",
5643
+ "guide.visual.scenarios": "Cas d’utilisation",
5644
+ "guide.visual.debug": "Si un service tombe en panne",
5645
+ "guide.visual.debugBody": "Votre Agent lit les logs autorisés",
5646
+ "guide.visual.save": "Avant de louer un serveur",
5647
+ "guide.visual.saveBody": "Vérifiez les ressources que vous possédez",
5648
+ "guide.visual.away": "Quand vous êtes dehors",
5649
+ "guide.visual.awayBody": "Consultez les appareils en ligne via l’interface hébergée",
5650
+ "guide.visual.startSmall": "Commencez avec un ordinateur",
5651
+ "guide.visual.choose": "Choisissez un mode, copiez pour votre Agent",
5652
+ "guide.visual.noInstall": "Copier ne lance aucune installation",
5653
+ "guide.visual.localCaption": "Essayez sur votre ordinateur",
5654
+ "guide.visual.localBody": "Interface locale, MCP facultatif. Sans compte.",
5655
+ "guide.visual.hostedCaption": "Plusieurs appareils au même endroit",
5656
+ "guide.visual.hostedBody": "Associez vos appareils à votre compte et utilisez le relais chiffré.",
5657
+ "guide.visual.next": "Que faire après la copie ?",
5658
+ "guide.visual.pasteTitle": "Allez sur l’ordinateur à connecter",
5659
+ "guide.visual.pasteBody": "Collez les instructions dans l’Agent de cet ordinateur.",
5660
+ "guide.visual.installTitle": "Laissez votre Agent l’installer",
5661
+ "guide.visual.installBody": "Il vérifie l’environnement, installe le Driver et configure le MCP local.",
5662
+ "guide.visual.bindTitle": "Mode hébergé : validez l’association",
5663
+ "guide.visual.bindBody": "Le programme continue automatiquement. Inutile de signaler votre accord à l’Agent.",
5664
+ "guide.visual.trust": "Les clés privées restent sur les appareils · Les logs nécessitent une autorisation distincte",
5665
+ "guide.visual.details": "Plus de détails",
5666
+ "guide.visual.pairDetails": "Installation et association, étape par étape",
5667
+ "guide.visual.copiedLocal": "Copié. Allez sur l’ordinateur cible et collez dans son Agent. Le mode local ne nécessite aucune connexion.",
5668
+ "guide.visual.copiedHosted": "Copié. Allez sur l’ordinateur cible et collez dans son Agent. Vous devez vérifier l’association vous-même.",
5669
+ "guide.visual.localReady": "Mode local : commencez à l’utiliser",
5670
+ "guide.visual.localReadyBody": "Sans connexion. Consultez les ressources locales et laissez votre Agent utiliser MCP.",
5671
+ "guide.visual.heroLine1": "Moins de PC.",
5672
+ "guide.visual.heroLine2": "Moins de logs copiés.",
5673
+ "guide.visual.viewFlow": "Voir les étapes",
5674
+ "guide.visual.pauseMotion": "Mettre l’animation en pause",
5675
+ "guide.visual.playMotion": "Lire l’animation",
5676
+ "guide.visual.dashboard": "Appareils",
5677
+ "guide.focus.overview": "Présentation",
5678
+ "guide.focus.example": "Fonctionnement · illustration uniquement",
5679
+ "guide.focus.firstTry": "Première fois ? Essayez en local, sans compte.",
5680
+ "guide.focus.alreadyInstalled": "Déjà connecté ?",
5681
+ "guide.focus.start": "À vous de jouer",
5682
+ "guide.focus.startTitle": "Connectez votre premier ordinateur",
5683
+ "guide.focus.startBody": "Choisissez un mode d’utilisation, puis une installation avec un Agent ou manuelle. L’appareil cible n’a pas besoin d’AI Agent.",
5684
+ "guide.focus.select": "Choisissez un mode",
5685
+ "guide.focus.useSelfHosted": "Utiliser mon propre serveur de contrôle",
5686
+ "guide.focus.copyHint": "Ces instructions sont destinées à un Agent. Collez-les dans sa conversation, pas dans un terminal.",
5687
+ "guide.focus.paste": "Sur l’ordinateur cible, collez dans la conversation de l’Agent",
5688
+ "guide.focus.pasteBefore": "Copiez les instructions ci-dessus, puis ouvrez une conversation avec l’Agent sur l’ordinateur à connecter.",
5689
+ "guide.focus.pasteAfter": "Ouvrez une conversation avec l’Agent sur l’ordinateur à connecter, collez les instructions et suivez ses indications.",
5690
+ "guide.focus.whatNext": "Que se passe-t-il ensuite ?",
5691
+ "guide.focus.openHosted": "Après l’installation, ouvrez le panneau et approuvez vous-même l’association ↗",
5692
+ "guide.focus.copied": "Copié. Étape suivante : collez dans la conversation de l’Agent sur l’ordinateur cible.",
5693
+ "pair.title": "Associer cet ordinateur",
5694
+ "pair.step": "Votre accord",
5695
+ "pair.intro": "Approuvez uniquement une demande lancée ici à l’instant. Elle est préremplie automatiquement.",
5696
+ "pair.fingerprint": "Comparez l’empreinte complète de la clé publique avec le terminal ou l’Agent :",
5697
+ "pair.scope": "Seuls le nom, le système, la mémoire et le disque sont rapportés. Aucune opération distante autorisée.",
5698
+ "pair.approve": "Empreintes identiques — associer",
5699
+ "pair.cancel": "Annuler",
5700
+ "pair.loading": "Chargement de la demande",
5701
+ "pair.wait": "Connectez-vous d’abord si nécessaire.",
5702
+ "pair.bound": "Associé. Vérification de la connexion",
5703
+ "pair.reporting": "En attente du premier rapport de ressources…",
5704
+ "pair.noReply": "Le programme continue automatiquement. Inutile de signaler votre accord à l’Agent.",
5705
+ "pair.done": "Cet ordinateur est connecté",
5706
+ "pair.doneBody": "Le cloud a reçu le rapport. Ajoutez un nom, un usage et des étiquettes dans le panneau.",
5707
+ "pair.reportTimeout": "Association réussie, premier rapport non confirmé. Vérifiez veille, service local et réseau. Ne réassociez pas l’appareil.",
5708
+ "pair.cancelled": "Annulé",
5709
+ "pair.cancelledBody": "Aucun appareil approuvé. La demande expirera automatiquement.",
5710
+ "pair.missing": "Demande expirée ou indisponible",
5711
+ "pair.missingBody": "Recommencez sur l’ordinateur cible. N’ouvrez pas de liens d’association envoyés par autrui. Un ordinateur associé n’a pas besoin de recommencer.",
5712
+ "pair.start": "Retour au guide",
5713
+ "pair.dashboard": "Ouvrir le panneau",
5714
+ "pair.boundary": "Clés privées sur l’appareil · Opérations distantes avec permission distincte",
5715
+ "pair.manual": "Sans navigateur, ou déjà un code du terminal ?",
5716
+ "pair.manualHint": "Uniquement pour serveur sans navigateur ou ancien client : exécutez la commande sur la cible et saisissez son code.",
5717
+ "pair.browserHint": "Ouvre la demande automatiquement. Connectez-vous, comparez l’empreinte et approuvez une fois. Le rapport est vérifié sans réponse à l’Agent.",
5718
+ "pair.approvalUnknown": "Résultat de l’accord non confirmé",
5719
+ "pair.approvalUnknownBody": "Réseau interrompu ou demande déjà traitée. Vérifiez le processus sur la cible et le panneau avant de recommencer. Un appareil associé ne doit pas être réassocié.",
5720
+ "guide.method.title": "Choisir comment installer",
5721
+ "guide.method.agent": "Avec un Agent",
5722
+ "guide.method.manual": "Installation manuelle",
5723
+ "guide.manual.prerequisites": "Node.js 24+ · Nouvelle installation uniquement. Les installations existantes sont conservées et le script s’arrête.",
5724
+ "guide.manual.browserQuestion": "L’appareil cible peut-il ouvrir un navigateur ?",
5725
+ "guide.manual.hasBrowser": "Avec navigateur",
5726
+ "guide.manual.noBrowser": "Sans navigateur / serveur",
5727
+ "guide.manual.copy": "Copier le script d’installation",
5728
+ "guide.manual.copyHint": "C’est un script shell. Collez-le et exécutez-le dans le terminal de l’appareil cible. Aucun AI Agent nécessaire.",
5729
+ "guide.manual.preview": "Voir ou copier le script manuellement",
5730
+ "guide.manual.scriptLabel": "Script d’installation pour terminal",
5731
+ "guide.manual.pasteTitle": "Exécuter dans le terminal de la cible",
5732
+ "guide.manual.pasteBefore": "Copiez le script, puis ouvrez le terminal de l’appareil cible. Sur Mac, utilisez Terminal ; sur Linux, un terminal ou une session SSH existante.",
5733
+ "guide.manual.pasteAfter": "Collez et exécutez dans le terminal cible. Le script vérifie les prérequis et installe le Driver et un service utilisateur en arrière-plan.",
5734
+ "guide.manual.copied": "Script copié. Collez-le et exécutez-le dans le terminal de l’appareil cible.",
5735
+ "guide.manual.installBody": "Le script installe un service utilisateur qui démarre à la connexion. La cible n’a besoin ni d’AI Agent ni de configuration MCP. Ajoutez MCP sur l’ordinateur de gestion lorsque vous souhaitez utiliser son Agent.",
5736
+ "guide.manual.localBody": "Sans connexion, consultez les ressources dans l’interface locale de la cible. Configurez MCP uniquement sur un ordinateur dont l’Agent l’utilisera. L’adresse de bouclage du serveur n’est pas une URL distante.",
5737
+ "guide.manual.browserBody": "Le script ouvre le navigateur cible. Connectez-vous à votre compte, comparez l’empreinte complète de la clé publique avec le terminal et approuvez une fois. L’appareil transmet ensuite son état automatiquement.",
5738
+ "guide.manual.headlessBody": "Gardez le terminal cible ouvert. Sur un autre ordinateur avec navigateur, connectez-vous à l’interface, choisissez « Connecter mon ordinateur », saisissez le code de 5 minutes du terminal, comparez l’empreinte complète de la clé publique et approuvez. Aucune réponse à l’Agent n’est nécessaire.",
5739
+ "guide.manual.openPanel": "Ouvrir l’interface pour terminer l’association ↗",
5740
+ "guide.manual.openGuide": "Pas d’Agent sur l’appareil ? Installation manuelle ↗",
5741
+ "walk.title": "Après la copie, suivez les images",
5742
+ "walk.disclaimer": "Ce sont des illustrations. Effectuez les actions dans les vraies fenêtres de l’ordinateur indiqué.",
5743
+ "walk.terminalTitle": "Collez dans le terminal de l’ordinateur à connecter",
5744
+ "walk.terminalBody": "Ouvrez un terminal sur cet ordinateur, collez le script complet et appuyez sur Entrée. En cas d’erreur, arrêtez-vous pour la vérifier.",
5745
+ "walk.agentTitle": "Collez dans le chat de l’Agent sur l’ordinateur cible",
5746
+ "walk.agentBody": "Ouvrez un chat avec un Agent capable d’agir sur cet ordinateur. Collez et envoyez les instructions ; l’Agent effectue l’installation.",
5747
+ "walk.headlessTitle": "Associez depuis un autre ordinateur avec navigateur",
5748
+ "walk.headlessBody": "Gardez le terminal cible ouvert. Connectez-vous au panneau depuis un autre ordinateur, saisissez le code du terminal, comparez l’empreinte complète de la clé publique, puis approuvez.",
5749
+ "walk.browserTitle": "Associez dans le navigateur qui s’ouvre",
5750
+ "walk.browserBody": "Le script ouvre cette demande. Connectez-vous à votre compte, comparez l’empreinte complète de la clé publique avec le terminal ou l’Agent, puis approuvez une fois.",
5751
+ "walk.installTitle": "Attendez la fin et vérifiez les erreurs",
5752
+ "walk.installBody": "Le script installe le Driver local et un service utilisateur en arrière-plan. Aucun Agent IA n’est nécessaire. Vérifiez les erreurs éventuelles.",
5753
+ "walk.agentInstallBody": "L’Agent installe le Driver et le service utilisateur, connecte MCP et vérifie leur fonctionnement réel.",
5754
+ "walk.checkTitle": "Vérifiez un vrai rapport dans la liste des appareils",
5755
+ "walk.cloudCheckBody": "Retrouvez cet ordinateur dans la liste des appareils du cloud. La mémoire, le disque et une heure de rapport actualisée confirment le résultat. L’association seule ne confirme pas la remontée de données.",
5756
+ "walk.localCheckBody": "Sur l’ordinateur que vous venez d’installer, ouvrez l’adresse locale du panneau affichée dans l’image. 127.0.0.1 désigne cet ordinateur lui-même.",
5757
+ "walk.copyFirst": "Utilisez d’abord le bouton de copie ci-dessus, puis ouvrez la fenêtre indiquée.",
5758
+ "walk.openMac": "Mac : ⌘ Espace → cherchez « Terminal »",
5759
+ "walk.openLinux": "Linux : menu des applications → Terminal, ou session SSH existante",
5760
+ "walk.autoBrowser": "Le navigateur s’ouvre après exécution ; sinon, suivez les instructions d’association manuelle du terminal",
5761
+ "walk.sameComputer": "Ouvrez cette adresse sur l’ordinateur que vous venez d’installer",
5762
+ "walk.steps": "Étapes d’installation illustrées",
5763
+ "walk.pasteTab": "Coller et lancer",
5764
+ "walk.bindTab": "Se connecter",
5765
+ "walk.installTab": "Installation",
5766
+ "walk.checkTab": "Voir l’appareil",
5767
+ "walk.copiedContent": "Presse-papiers",
5768
+ "walk.terminal": "Terminal",
5769
+ "walk.chat": "Chat de l’Agent",
5770
+ "walk.browser": "Page web",
5771
+ "walk.fullFingerprint": "Empreinte publique complète ici",
5772
+ "walk.approve": "Identique : associer cet ordinateur",
5773
+ "walk.targetTerminal": "Ordinateur cible · Terminal",
5774
+ "walk.pasteScript": "Collez le script complet ici",
5775
+ "walk.pressEnter": "Puis appuyez sur",
5776
+ "walk.targetChat": "Ordinateur cible · Chat de l’Agent",
5777
+ "walk.pastePrompt": "Collez les instructions ici",
5778
+ "walk.send": "Envoyer",
5779
+ "walk.pairCode": "Code du terminal",
5780
+ "walk.otherBrowser": "Autre ordinateur · Navigateur",
5781
+ "walk.signIn": "Connectez-vous à votre compte",
5782
+ "walk.pasteCode": "Saisissez le code du terminal ici",
5783
+ "walk.compare": "Comparez les deux empreintes publiques complètes",
5784
+ "walk.driver": "Installer le Driver local",
5785
+ "walk.service": "Démarrer le service utilisateur",
5786
+ "walk.mcp": "Connecter le MCP de cet Agent",
5787
+ "walk.yourDevice": "Votre appareil",
5788
+ "walk.awaitReport": "En attente d’un vrai rapport",
5789
+ "walk.reportTime": "Vérifiez que l’heure du rapport a été actualisée",
5790
+ "walk.previous": "← Précédent",
5791
+ "walk.restart": "Revoir où coller",
5792
+ "walk.next": "Étape suivante →",
5793
+ "walk.counter": "{current} / {total}",
5794
+ "walk.openDevices": "Ouvrir la liste des appareils ↗",
5795
+ "walk.openPairing": "Choisissez « {action} » → code",
5796
+ "guide.os.title": "OS de l’ordinateur cible",
5797
+ "guide.windowsCandidate": "Aperçu Windows 11 · Installez dans PowerShell et suivez les schémas pour vérifier le jumelage et le service en arrière-plan.",
5798
+ "guide.windowsPrerequisites": "Windows 11 · PowerShell 5.1+ · Node.js 24+ · Utilisateur normal, sans AD ni AI Agent. Arrêt si déjà installé.",
5799
+ "walk.windowsTitle": "Collez dans Windows PowerShell puis Entrée",
5800
+ "walk.windowsBody": "Ouvrez PowerShell en utilisateur normal sur la cible (pas CMD ni WSL). Vérifiez et collez tout le script, puis Entrée. Gardez la fenêtre en cas d’échec.",
5801
+ "walk.openWindows": "Démarrer → rechercher PowerShell → Ouvrir (sans administrateur)",
5802
+ "prompt.windowsEnvironment": "Vérifiez Windows 11, PowerShell 5.1+, Node.js >=24, npm.cmd et MCP de l’Agent. Utilisez PowerShell normal, pas WSL ni npm.ps1. Vérifiez chaque $LASTEXITCODE ; arrêtez si non nul. Ne changez pas la stratégie ni les privilèges. Utilisez Node.js officiel.",
5803
+ "prompt.windowsBackground": "Examinez le plan, installez explicitement la tâche à la connexion de l’utilisateur et vérifiez son état. Aucun AD, administrateur, mot de passe ou changement de stratégie. Conservez les échecs ; proposez le premier plan. DPAPI local et ACL NTFS protègent l’identité ; ne déplacez pas ces fichiers. Pas de rapport après déconnexion, en veille ou hors ligne."
4573
5804
  },
4574
5805
  "de": {
4575
5806
  "language": "Sprache",
4576
5807
  "guide.title": "Erste Schritte · Device Center",
4577
5808
  "guide.open": "Geräteübersicht öffnen ↗",
4578
- "guide.badge": "Öffentliche Beta · 0.2.0-beta.3 · MIT",
5809
+ "guide.badge": "Entwicklungsvorschau · 0.2.0-beta.5 · MIT",
4579
5810
  "guide.hero": "Mache deine freien Rechner für deinen Agent sichtbar.",
4580
5811
  "guide.lead": "Sieh dir Ressourcen und Einsatzzwecke an und lies bestimmte Protokolle nach gesonderter Freigabe. Lass deinen lokalen Agent die Einrichtung übernehmen und starte mit einem Rechner.",
4581
- "guide.platform": "macOS / Linux · Node.js 24+ · Native Windows-Unterstützung ist noch nicht verfügbar",
5812
+ "guide.platform": "macOS / Linux / Windows-11-Kandidat · Node.js 24+",
4582
5813
  "guide.install": "Wähle einen Modus und kopiere die Anleitung für deinen lokalen Agent",
4583
5814
  "guide.local": "Lokal nutzen",
4584
5815
  "guide.localDesc": "Lokale Übersicht und MCP ohne Konto. Erkunde zuerst deinen Rechner und vorhandene Geräteressourcen.",
@@ -4586,7 +5817,7 @@ export const messages = {
4586
5817
  "guide.hosted": "Offizieller Dienst",
4587
5818
  "guide.hostedDesc": "Verwalte Geräte mit deinem Konto und nutze die offizielle verschlüsselte Weiterleitung. Driver und private Schlüssel bleiben auf den Geräten.",
4588
5819
  "guide.hostedCopy": "Anleitung für Hosting kopieren",
4589
- "guide.paste": "Füge die Anleitung in einen Agent auf dem Zielrechner ein, der Software installieren darf. Er prüft vorhandene Einstellungen, installiert die festgelegte Version, richtet den Benutzerdienst und MCP ein und prüft das Ergebnis. Diese Webseite installiert keine Software.",
5820
+ "guide.paste": "Für einen Agent die Anleitung kopieren. Zur manuellen Installation das Shell-Skript im Zielterminal ausführen. Beide installieren einen lokalen Driver. MCP wird nur auf einem Verwaltungscomputer mit AI Agent benötigt. Die Webseite kopiert nur, sie installiert nicht.",
4590
5821
  "guide.custom": "Hast du bereits einen eigenen Kontrollserver?",
4591
5822
  "guide.address": "HTTPS-Adresse deines Kontrollservers",
4592
5823
  "guide.customCopy": "Anleitung für eigenen Server kopieren",
@@ -4594,9 +5825,9 @@ export const messages = {
4594
5825
  "guide.preview": "Vollständige Anleitung anzeigen oder kopieren",
4595
5826
  "guide.instructions": "Einrichtungsanleitung für den Agent",
4596
5827
  "guide.pair": "Beim Hosting anmelden und deinen Rechner zuordnen",
4597
- "guide.pair1": "Öffne die Übersicht nach Anweisung deines Agent. Melde dich mit deinem App-Services-/Persönliche-Website-Konto an oder registriere dich auf der Kontoseite.",
5828
+ "guide.pair1": "Nur gehostete Modi brauchen ein Konto. Mit Browser öffnet das Skript die Kopplungsseite. Ohne Browser auf einem anderen Computer anmelden und den Terminalcode eingeben.",
4598
5829
  "guide.loginLink": "Cloud-Dashboard öffnen",
4599
- "guide.pair2": "Gib den fünf Minuten gültigen Kopplungscode aus deinem lokalen Terminal in der Übersicht ein. Prüfe vor der Freigabe den vollständigen Fingerabdruck des öffentlichen Schlüssels. Teile keine Passwörter, privaten Schlüssel oder Codes und füge sie nicht in Agent-Chats ein.",
5830
+ "guide.pair2": "Nur die gerade selbst gestartete Anfrage bestätigen. Gerätenamen, Betriebssystem und vollständigen öffentlichen Schlüsselfingerabdruck aus dem Terminal prüfen. Den Code nicht teilen.",
4600
5831
  "guide.pair3": "Wiederhole die Einrichtung auf einem weiteren eigenen Rechner und ordne ihn demselben Konto zu. Geräte ohne echte Meldungen erscheinen als unbekannt oder ohne aktuelle Meldung.",
4601
5832
  "guide.localHint": "Im lokalen Modus entfällt dieser Schritt. Die Zuordnung erlaubt nur die beschriebenen Ressourcenmeldungen. Protokollzugriff muss am Zielgerät gesondert freigegeben werden.",
4602
5833
  "guide.try": "Prüfe diese vier Punkte beim Testen",
@@ -4612,9 +5843,9 @@ export const messages = {
4612
5843
  "guide.faqBody": "Prüfe Node.js 24+, den laufenden Driver, den Wachzustand des Rechners, Netzwerk und Systemzeit. Ist ein Port belegt, wähle einen freien lokalen Port, ohne andere Programme zu stoppen. Keine aktuelle Meldung bedeutet fehlende Daten, keinen abgelaufenen privaten Schlüssel.",
4613
5844
  "guide.feedback": "Nenne bei Fehlern Betriebssystem, Version, Modus, fehlgeschlagenen Schritt und eine bereinigte Fehlermeldung. Keine privaten Schlüssel, Kopplungscodes, Cookies oder Protokollinhalte anfügen.",
4614
5845
  "guide.scope": "Umfang dieser Beta",
4615
- "guide.scopeBody": "Unterstützt echte Ressourcen, Gerätedetails, manuelle Erfassung und gesondert freigegebene Protokollenden. Noch keine beliebigen Fernbefehle, allgemeinen Dateiübertragungen, nativen Windows-Driver, automatischen Netzwerkscans, Offline-LAN-Freigaben oder Synchronisierung lokaler und Cloud-Gerätedetails.",
5846
+ "guide.scopeBody": "Unterstützt echte Ressourcen, Gerätedetails, manuelle Erfassung und gesondert freigegebene Protokollenden. Noch keine beliebigen Fernbefehle, allgemeinen Dateiübertragungen, automatischen Netzwerkscans, Offline-LAN-Freigaben oder Synchronisierung lokaler und Cloud-Gerätedetails.",
4616
5847
  "guide.quota": "Testlimits der offiziellen Weiterleitung: 100 MiB pro Konto und UTC-Tag, 16 KiB/s je Richtung. Die Bandbreite ist nicht unbegrenzt. Dienste und Anwendungen werden manuell eingetragen, nicht automatisch erkannt.",
4617
- "guide.full": "Vollständige Agent-Anleitung (Chinesisch)",
5848
+ "guide.full": "Vollständige Installationsanleitung (Chinesisch)",
4618
5849
  "guide.markdown": "Testanleitung als Text (Chinesisch)",
4619
5850
  "guide.source": "MIT-Quellpaket auf npm ↗",
4620
5851
  "guide.footer": "Lokale Installation · Schlüssel bleiben auf dem Gerät · Gesonderte Freigaben",
@@ -4628,14 +5859,14 @@ export const messages = {
4628
5859
  "prompt.private": "Kontrollserver: {origin}. Der Driver läuft auf diesem Gerät. Private Identitätsschlüssel bleiben auf dem Gerät und werden nicht in der Cloud verwahrt.",
4629
5860
  "prompt.background": "Benutzerdienst im Hintergrund nach der Systemanmeldung",
4630
5861
  "prompt.foreground": "Nur im Vordergrund; keinen Hintergrunddienst installieren",
4631
- "prompt.environment": "Prüfe macOS/Linux, Node.js >=24, npm und die MCP-Unterstützung des aktuellen Agent. Der native Windows-Driver wird nicht unterstützt: Unter Windows erklären und stoppen. Fehlendes Node.js nur aus offiziellen Quellen beziehen; Administrator- oder Betriebssystemfreigaben übernehme ich.",
5862
+ "prompt.environment": "macOS/Linux, Node.js >=24, npm und Agent-MCP prüfen. Bei abweichendem Ziel-OS stoppen und erneut wählen lassen. Node.js nur aus offizieller Quelle; Systemfreigaben dem Benutzer überlassen.",
4632
5863
  "prompt.existing": "Prüfe zuerst vorhandene CLI, Bindungen, Benutzerdienste und {url}/api/health und erhalte die Einstellungen. Bei vorhandener fester CLI prüfe {status} und {service}. Private Schlüsseldateien nie öffnen. Bei belegtem Port einen bekannten freien Loopback-Port wählen und alle Adressen anpassen, ohne andere Programme zu stoppen. Passende Version, Kontrollserver und Betriebsart wiederverwenden; Konflikte mit mir klären, nichts überschreiben, entkoppeln oder doppelt installieren.",
4633
5864
  "prompt.userInstall": "Bei einer neuen Installation einen festen, beschreibbaren Benutzerpfad ohne sudo verwenden:",
4634
5865
  "prompt.config": "Keine globalen npm-Einstellungen oder Shell-Startdateien ändern. Für weitere Befehle den absoluten CLI-Pfad oben verwenden.",
4635
5866
  "prompt.bg": "Dienstplan prüfen, Benutzerbereich und ausschließliches Loopback-Listening bestätigen, dann installieren und Status prüfen. Bei Fehlern oder Konflikten Zustand erhalten, nicht bereinigen und neu installieren. Linux benötigt systemd --user, macOS launchd des angemeldeten Benutzers. Andernfalls erklären und Vordergrundbetrieb anbieten.",
4636
5867
  "prompt.fg": "Vordergrundprozess weiterlaufen lassen. Beim Hosting startet connect im nächsten Schritt den Driver nach Freigabe; lokal den folgenden start-Befehl verwenden. Das Schließen der Webseite stoppt den Prozess nicht, das Schließen des Terminals stoppt die Meldungen.",
4637
5868
  "prompt.pairBefore": "Umfang der Meldungen prüfen, dann Zuordnung beantragen:",
4638
- "prompt.pairAfter": "Lass mich mit meinem eigenen Konto unter {origin} anmelden, den vollständigen öffentlichen Schlüsselfingerabdruck im lokalen Terminal prüfen und selbst freigeben. Nicht für mich freigeben und keine Passwörter, Cookies oder privaten Schlüssel lesen. Der Kopplungscode bleibt nur im lokalen Terminal, nie in Chats, Skripten oder Links. Falls deine Tools ihn protokollieren, führe ich nur connect im Terminal aus, während du andere Prüfungen abschließt. Nach Freigabe echte Ressourcenmeldungen prüfen; configured=true allein beweist keine Cloud-Verbindung.",
5869
+ "prompt.pairAfter": "--browser selbst ausführen und Prozess aktiv halten. Er öffnet den lokalen Browser ohne temporäre Zugangsdaten auszugeben. Ich melde mich nur unter {origin} an, vergleiche den vollständigen öffentlichen Fingerabdruck und bestätige einmal. Nicht für mich bestätigen; keine Passwörter, Cookies, privaten Schlüssel oder Zugangsdatenlinks lesen. Prozess beobachten, firstReport.verified=true prüfen und automatisch fortfahren. Keine erneute Terminalausführung oder Antwort „bestätigt“ verlangen. configured=true beweist keine Übertragung. Nur ohne Browser connect ohne --browser in meinem Terminal ausführen lassen; Code bleibt dort. Ältere Kontrolloberflächen benötigen ein Upgrade, keine Zugangsdaten als Fallback ausgeben.",
4639
5870
  "prompt.local": "Kein connect ausführen, keine Geräteidentität erzeugen und kein Konto registrieren. Bei vorhandener Cloud-Bindung erklären, dass start oder der Hintergrunddienst sie fortsetzen kann; sie nicht als rein lokalen Modus darstellen.",
4640
5871
  "prompt.mcp": "Lies {url}/api/connector/setup und konfiguriere Streamable HTTP MCP unter {mcp} über die offiziell unterstützte Schnittstelle des Agent. Passende Einstellungen wiederverwenden, andere MCP-Server nicht überschreiben. Falls die Tools es nicht können, mich nur diese Adresse einfügen lassen; keine ungeprüfte Verbindung behaupten.",
4641
5872
  "prompt.verify": "Prüfe /api/health, echte lokale Speicher- und Datenträgerwerte aus /api/overview sowie einen tatsächlichen Agent-Aufruf von device_center_list_resources. Melde Version, Übersicht-/MCP-Adressen, Betriebsart, gegebenenfalls Cloud-Zuordnung und offene Schritte.",
@@ -4650,14 +5881,17 @@ export const messages = {
4650
5881
  "login.submit": "Anmelden",
4651
5882
  "login.unified": "Verwende dein gemeinsames App-Services-/Persönliche-Website-Konto.",
4652
5883
  "login.link": "Mit gemeinsamem Konto anmelden ↗",
4653
- "login.help": "Melde dich auf der neuen Seite per E-Mail oder Google an. Zurück hier gelangst du automatisch zur Geräteübersicht.",
4654
- "login.continue": "Ich bin angemeldet, weiter",
5884
+ "login.help": "Wenn du angemeldet bist, gelangst du automatisch weiter. Öffne sonst unten die Kontoseite, melde dich an und kehre hierher zurück.",
5885
+ "login.continue": "Übersicht öffnen",
4655
5886
  "login.return": "Kehre nach der Anmeldung mit deinem gemeinsamen Konto hierher zurück.",
4656
5887
  "login.first": "Melde dich zuerst auf der Kontoseite per E-Mail oder Google an und kehre dann zurück.",
4657
5888
  "login.owner": "Dieses Konto hat keinen Zugriff auf die persönliche Übersicht. Verwende das Konto des Eigentümers.",
4658
5889
  "login.rate": "Zu viele Versuche. Bitte in einer Minute erneut versuchen.",
4659
- "login.unavailable": "Der gemeinsame Kontodienst ist vorübergehend nicht erreichbar. Später erneut versuchen.",
4660
- "login.timeout": "Zeitüberschreitung beim Kontodienst. Bitte erneut versuchen.",
5890
+ "login.unavailable": "Der Kontodienst ist nicht erreichbar. Versuche es hier erneut; du musst nicht zur persönlichen Website zurückkehren.",
5891
+ "login.timeout": "Die Kontoprüfung hat zu lange gedauert. Versuche es hier erneut, ohne dein Passwort nochmals einzugeben.",
5892
+ "login.session": "Die Sitzung wurde nicht gespeichert. Öffne Konto und Übersicht im selben Browser und prüfe, ob Cookies für diese Website blockiert sind.",
5893
+ "login.returned": "Die Anmeldung blieb nicht bestehen. Die automatische Weiterleitung wurde angehalten. Versuche es hier erneut und notiere bei erneutem Fehler Meldung und Uhrzeit.",
5894
+ "login.checking": "Anmeldung wird geprüft…",
4661
5895
  "login.optionsError": "Anmeldeoptionen konnten nicht geladen werden. Neu laden und erneut versuchen.",
4662
5896
  "login.credentials": "Benutzername oder Passwort falsch.",
4663
5897
  "login.multi": "Geräte pro Konto getrennt · HTTPS-geschützt",
@@ -4891,7 +6125,7 @@ export const messages = {
4891
6125
  "panel.224": "Für Agent kopieren",
4892
6126
  "panel.225": "Vollständige Anleitung anzeigen",
4893
6127
  "panel.226": "Installationsanleitung für den Agent",
4894
- "panel.227": "macOS / Linux mit Node.js 24. Feste Version 0.2.0-beta.3. Diese Seite kopiert nur Anweisungen; der Agent führt sie lokal aus.",
6128
+ "panel.227": "macOS / Linux / Windows 11 mit Node.js 24. Feste Version 0.2.0-beta.5. Diese Seite kopiert nur Anweisungen; der Agent führt sie lokal aus.",
4895
6129
  "panel.228": "Kopiert. Beim Ziel-Agent einfügen; nötige Verknüpfung persönlich anmelden und prüfen.",
4896
6130
  "panel.229": "Ausgewählte Anleitung manuell kopieren.",
4897
6131
  "panel.230": "Verwaltungscomputer nicht bestätigt",
@@ -5010,7 +6244,7 @@ export const messages = {
5010
6244
  "panel.343": "Cloud-Relay nur bei unerreichbarem Netz. Zertifikat-, Identitäts- oder Rechtefehler stoppen den Zugriff. Beide Pfade benötigen die Steuerung online zur Widerrufsprüfung.",
5011
6245
  "panel.344": "Das Ziel kann ausführen:",
5012
6246
  "panel.345": "device-center access revoke --peer MANAGEMENT_FINGERPRINT --confirm",
5013
- "panel.346": " und jederzeit widerrufen. Private Schlüssel und freigegebene Pfade bleiben lokal; Cloud leitet nur TLS-Chiffretext weiter. Kein nativer Windows-Agent verfügbar.",
6247
+ "panel.346": "und jederzeit widerrufen. Private Schlüssel und freigegebene Pfade bleiben lokal; Cloud leitet nur TLS-Chiffretext weiter. Windows 11 Vorschau · In PowerShell installieren und anhand der Grafiken Kopplung und Hintergrundstatus prüfen.",
5014
6248
  "panel.347": "Verarbeitung…",
5015
6249
  "panel.348": "Anfrage suchen",
5016
6250
  "panel.349": "Bis zu 15 SSH-Namen und Cache-Zustände teilen (ohne Adressen, Benutzer, Pfade, Konfiguration oder private Schlüssel)",
@@ -5086,7 +6320,7 @@ export const messages = {
5086
6320
  "panel.419": "Das Schließen der Seite stoppt den Dienst nicht. Üblich: einmal installieren und nach Anmeldung automatisch im Hintergrund starten.",
5087
6321
  "panel.420": "Lokale Installation · empfohlen",
5088
6322
  "panel.421": "Benutzerdienst-Skripte: launchd auf macOS, systemd auf Linux. Plan prüfen, dann selbst installieren.",
5089
- "panel.422": "Vordergrundvorschau am selben Port vorher manuell stoppen. Node.js 24 und stabiles Quellverzeichnis nötig. Benutzerweite Dienste, Logs und Daten ohne Administratorrechte. Windows-Hintergrundbetrieb fehlt; Vordergrund oder Docker nutzen.",
6323
+ "panel.422": "Vordergrundvorschau am selben Port vorher manuell stoppen. Node.js 24 und stabiles Quellverzeichnis nötig. Benutzerweite Dienste, Logs und Daten ohne Administratorrechte. Windows 11 Vorschau · In PowerShell installieren und anhand der Grafiken Kopplung und Hintergrundstatus prüfen.",
5090
6324
  "panel.423": "Lokalen Agent mit Docker verbinden?",
5091
6325
  "panel.424": "Docker führt nur Device Center aus. Codex bleibt lokal und nutzt",
5092
6326
  "panel.425": "http://127.0.0.1:PORT/mcp",
@@ -5094,7 +6328,7 @@ export const messages = {
5094
6328
  "panel.427": "Compose bindet nur Loopback und behält Datenvolume und Neustarts. Lokale AI → lokale Adresse → Container. Kein Docker-Socket, Codex-Konfiguration oder Hostverzeichnis einzubinden.",
5095
6329
  "panel.428": "Docker muss laufen. Container erhalten keine lokalen Aktionsrechte automatisch. Liste zeigt nur Container, nicht Hostspeicher, Datenträger oder SSH. Nativen Driver auf dem Host ausführen.",
5096
6330
  "panel.429": "Nur Skripte und Konfiguration bereitgestellt; kein dauerhafter Dienst installiert oder Docker gestartet. Dieser Prozess ist eine lokale Vorschau.",
5097
- "panel.430": "Mit Agent installieren",
6331
+ "panel.430": "Device Center installieren",
5098
6332
  "panel.431": "Remote-Protokolle freigeben",
5099
6333
  "panel.432": "Lokales Codex verbinden",
5100
6334
  "panel.433": "Cloud-Dashboard · optional",
@@ -5222,16 +6456,189 @@ export const messages = {
5222
6456
  "notice.notConfig": "Keine SSH-Konfiguration; ignoriert.",
5223
6457
  "notice.candidateLimit": "Kandidatenlimit erreicht.",
5224
6458
  "notice.match": "Match-Bedingungen: nur Aliasse, keine Auswertung oder Befehlsausführung.",
5225
- "notice.conditional": "Bedingtes Include in Host / Match übersprungen; Kandidaten eventuell unvollständig."
6459
+ "notice.conditional": "Bedingtes Include in Host / Match übersprungen; Kandidaten eventuell unvollständig.",
6460
+ "guide.visual.hero": "Weniger PC-Wechsel. Weniger Logs kopieren.",
6461
+ "guide.visual.lead": "Dein lokaler Agent sieht andere Geräte und liest freigegebene Logs.",
6462
+ "guide.visual.begin": "Loslegen",
6463
+ "guide.visual.example": "Anwendungsbeispiel",
6464
+ "guide.visual.yourDevices": "Nutze deine eigenen Geräte",
6465
+ "guide.visual.request": "„Prüfe die Logs meines Servers zu Hause.“",
6466
+ "guide.visual.myAgent": "Lokaler Agent",
6467
+ "guide.visual.myComputer": "Dein aktueller Computer",
6468
+ "guide.visual.authorized": "Freigegebener Zugriff",
6469
+ "guide.visual.otherDevice": "Dein eigenes Gerät",
6470
+ "guide.visual.homeServer": "Zum Beispiel: dein Heimserver",
6471
+ "guide.visual.log": "Freigegebene Logs",
6472
+ "guide.visual.scenarios": "Anwendungsfälle",
6473
+ "guide.visual.debug": "Wenn ein Dienst ausfällt",
6474
+ "guide.visual.debugBody": "Dein Agent liest freigegebene Logs",
6475
+ "guide.visual.save": "Bevor du einen Server mietest",
6476
+ "guide.visual.saveBody": "Prüfe die vorhandenen Ressourcen",
6477
+ "guide.visual.away": "Wenn du unterwegs bist",
6478
+ "guide.visual.awayBody": "Online-Geräte im gehosteten Dashboard ansehen",
6479
+ "guide.visual.startSmall": "Starte mit einem Computer",
6480
+ "guide.visual.choose": "Modus wählen, für den Agent kopieren",
6481
+ "guide.visual.noInstall": "Kopieren installiert nichts",
6482
+ "guide.visual.localCaption": "Auf deinem Computer ausprobieren",
6483
+ "guide.visual.localBody": "Lokale Oberfläche, MCP optional. Ohne Konto.",
6484
+ "guide.visual.hostedCaption": "Mehrere Geräte an einem Ort",
6485
+ "guide.visual.hostedBody": "Verbinde Geräte mit deinem Konto und nutze die verschlüsselte Weiterleitung.",
6486
+ "guide.visual.next": "Was kommt nach dem Kopieren?",
6487
+ "guide.visual.pasteTitle": "Zum Zielcomputer wechseln",
6488
+ "guide.visual.pasteBody": "Füge die Anleitung beim Agent auf diesem Computer ein.",
6489
+ "guide.visual.installTitle": "Deinen Agent installieren lassen",
6490
+ "guide.visual.installBody": "Er prüft die Umgebung, installiert den Driver und richtet lokales MCP ein.",
6491
+ "guide.visual.bindTitle": "Gehostet: Kopplung selbst bestätigen",
6492
+ "guide.visual.bindBody": "Das Programm fährt automatisch fort. Sie müssen dem Agent die Freigabe nicht melden.",
6493
+ "guide.visual.trust": "Private Schlüssel bleiben auf den Geräten · Logs benötigen eine eigene Freigabe",
6494
+ "guide.visual.details": "Weitere Details",
6495
+ "guide.visual.pairDetails": "Installation und Kopplung Schritt für Schritt",
6496
+ "guide.visual.copiedLocal": "Kopiert. Wechsle zum Zielcomputer und füge die Anleitung beim Agent ein. Lokal ist keine Anmeldung nötig.",
6497
+ "guide.visual.copiedHosted": "Kopiert. Wechsle zum Zielcomputer und füge die Anleitung beim Agent ein. Die Kopplung musst du selbst prüfen.",
6498
+ "guide.visual.localReady": "Lokaler Modus: loslegen",
6499
+ "guide.visual.localReadyBody": "Ohne Anmeldung. Ressourcen lokal ansehen und deinen Agent MCP nutzen lassen.",
6500
+ "guide.visual.heroLine1": "Weniger PC-Wechsel.",
6501
+ "guide.visual.heroLine2": "Weniger Logkopien.",
6502
+ "guide.visual.viewFlow": "So funktioniert es",
6503
+ "guide.visual.pauseMotion": "Animation pausieren",
6504
+ "guide.visual.playMotion": "Animation abspielen",
6505
+ "guide.visual.dashboard": "Geräte",
6506
+ "guide.focus.overview": "Überblick",
6507
+ "guide.focus.example": "So funktioniert es · nur Illustration",
6508
+ "guide.focus.firstTry": "Zum Einstieg: lokal testen, ohne Konto.",
6509
+ "guide.focus.alreadyInstalled": "Bereits verbunden?",
6510
+ "guide.focus.start": "Hier starten",
6511
+ "guide.focus.startTitle": "Den ersten Computer verbinden",
6512
+ "guide.focus.startBody": "Wähle einen Nutzungsmodus und dann die Installation per Agent oder manuell. Auf dem Zielgerät ist kein AI Agent nötig.",
6513
+ "guide.focus.select": "Nutzungsart wählen",
6514
+ "guide.focus.useSelfHosted": "Meinen eigenen Steuerungsserver verwenden",
6515
+ "guide.focus.copyHint": "Diese Anleitung ist für einen Agent. Füge sie in dessen Chat ein, nicht ins Terminal.",
6516
+ "guide.focus.paste": "Auf dem Zielcomputer in den Agent-Chat einfügen",
6517
+ "guide.focus.pasteBefore": "Kopiere die Anleitung oben und öffne dann einen Agent-Chat auf dem Computer, den du verbinden möchtest.",
6518
+ "guide.focus.pasteAfter": "Öffne auf dem Zielcomputer einen Agent-Chat, füge die Anleitung ein und folge seinen Hinweisen.",
6519
+ "guide.focus.whatNext": "Was passiert danach?",
6520
+ "guide.focus.openHosted": "Nach der Installation im Panel die Kopplung selbst bestätigen ↗",
6521
+ "guide.focus.copied": "Kopiert. Nächster Schritt: auf dem Zielcomputer in den Agent-Chat einfügen.",
6522
+ "pair.title": "Diesen Computer verbinden",
6523
+ "pair.step": "Ihre Freigabe",
6524
+ "pair.intro": "Nur eine gerade auf diesem Computer gestartete Anfrage bestätigen. Sie wird automatisch ausgefüllt.",
6525
+ "pair.fingerprint": "Vollständigen öffentlichen Schlüsselfingerabdruck mit Terminal oder Agent vergleichen:",
6526
+ "pair.scope": "Gemeldet werden nur Name, System, Speicher und Datenträger. Keine Freigabe für Fernaktionen.",
6527
+ "pair.approve": "Fingerabdrücke stimmen — verbinden",
6528
+ "pair.cancel": "Abbrechen",
6529
+ "pair.loading": "Anfrage wird geladen",
6530
+ "pair.wait": "Falls nötig, zuerst anmelden.",
6531
+ "pair.bound": "Verbunden. Verbindung wird geprüft",
6532
+ "pair.reporting": "Erste Ressourcenmeldung wird erwartet…",
6533
+ "pair.noReply": "Das Programm fährt automatisch fort. Sie müssen dem Agent die Freigabe nicht melden.",
6534
+ "pair.done": "Dieser Computer ist verbunden",
6535
+ "pair.doneBody": "Die Cloud hat die Meldung erhalten. Name, Zweck und Tags lassen sich im Dashboard ergänzen.",
6536
+ "pair.reportTimeout": "Zuordnung erfolgreich, erste Meldung unbestätigt. Ruhezustand, lokalen Dienst und Netzwerk prüfen. Nicht erneut zuordnen.",
6537
+ "pair.cancelled": "Abgebrochen",
6538
+ "pair.cancelledBody": "Kein Gerät freigegeben. Die Anfrage läuft automatisch ab.",
6539
+ "pair.missing": "Anfrage abgelaufen oder nicht verfügbar",
6540
+ "pair.missingBody": "Auf dem Zielcomputer neu starten. Keine Verbindungslinks von anderen öffnen. Bereits verbundene Computer müssen nicht erneut gekoppelt werden.",
6541
+ "pair.start": "Zur Anleitung",
6542
+ "pair.dashboard": "Geräteübersicht öffnen",
6543
+ "pair.boundary": "Private Schlüssel bleiben lokal · Fernaktionen brauchen eigene Freigabe",
6544
+ "pair.manual": "Kein Browser oder bereits ein Terminalcode?",
6545
+ "pair.manualHint": "Nur für Server ohne Browser oder ältere Clients: manuellen Befehl auf dem Ziel ausführen und Code eingeben.",
6546
+ "pair.browserHint": "Öffnet die Anfrage automatisch. Anmelden, Fingerabdruck vergleichen und einmal freigeben. Meldung wird automatisch geprüft, ohne Antwort an den Agent.",
6547
+ "pair.approvalUnknown": "Freigabeergebnis unbestätigt",
6548
+ "pair.approvalUnknownBody": "Netzwerkfehler oder bereits bearbeitete Anfrage. Verbindungsprozess auf dem Ziel und Dashboard prüfen. Bereits zugeordnete Geräte nicht erneut koppeln.",
6549
+ "guide.method.title": "Installationsweg wählen",
6550
+ "guide.method.agent": "Per Agent",
6551
+ "guide.method.manual": "Manuell installieren",
6552
+ "guide.manual.prerequisites": "Node.js 24+ · Nur Neuinstallationen. Vorhandene Installationen bleiben erhalten; das Skript stoppt.",
6553
+ "guide.manual.browserQuestion": "Kann das Zielgerät einen Browser öffnen?",
6554
+ "guide.manual.hasBrowser": "Mit Browser",
6555
+ "guide.manual.noBrowser": "Ohne Browser / Server",
6556
+ "guide.manual.copy": "Installationsskript kopieren",
6557
+ "guide.manual.copyHint": "Dies ist ein Shell-Skript. Im Terminal des Zielgeräts einfügen und ausführen. Kein AI Agent nötig.",
6558
+ "guide.manual.preview": "Skript ansehen oder manuell kopieren",
6559
+ "guide.manual.scriptLabel": "Installationsskript für das Terminal",
6560
+ "guide.manual.pasteTitle": "Im Terminal des Zielgeräts ausführen",
6561
+ "guide.manual.pasteBefore": "Kopiere das Skript und öffne das Terminal des Zielgeräts. Auf dem Mac Terminal nutzen, unter Linux ein Terminal oder eine bestehende SSH-Sitzung.",
6562
+ "guide.manual.pasteAfter": "Im Terminal des Zielgeräts einfügen und ausführen. Das Skript prüft die Voraussetzungen und installiert den Driver und einen Benutzerdienst im Hintergrund.",
6563
+ "guide.manual.copied": "Skript kopiert. Jetzt im Terminal des Zielgeräts einfügen und ausführen.",
6564
+ "guide.manual.installBody": "Das Skript installiert einen Benutzerdienst, der bei der Anmeldung startet. Das Ziel benötigt weder AI Agent noch MCP-Einrichtung. MCP später auf dem Verwaltungscomputer hinzufügen, wenn dessen Agent Device Center nutzen soll.",
6565
+ "guide.manual.localBody": "Ohne Anmeldung Ressourcen in der lokalen Oberfläche des Zielgeräts ansehen. MCP ist nur auf einem Computer nötig, dessen Agent es nutzen soll. Die Loopback-Adresse eines Servers ist keine entfernte URL.",
6566
+ "guide.manual.browserBody": "Das Skript öffnet den Browser des Zielgeräts. Mit deinem Konto anmelden, den vollständigen Fingerabdruck des öffentlichen Schlüssels mit dem Terminal vergleichen und einmal bestätigen. Danach meldet das Gerät seinen Status automatisch.",
6567
+ "guide.manual.headlessBody": "Das Zielterminal geöffnet lassen. Auf einem anderen Computer im Browser anmelden, „Meinen Computer verbinden“ wählen, den 5 Minuten gültigen Code aus dem Terminal eingeben, den vollständigen Fingerabdruck des öffentlichen Schlüssels vergleichen und bestätigen. Keine Antwort an den Agent nötig.",
6568
+ "guide.manual.openPanel": "Oberfläche öffnen und Kopplung abschließen ↗",
6569
+ "guide.manual.openGuide": "Kein Agent auf dem Gerät? Zur manuellen Installation ↗",
6570
+ "walk.title": "Nach dem Kopieren den Bildern folgen",
6571
+ "walk.disclaimer": "Dies sind Abbildungen. Führe die Schritte in den echten Fenstern des angegebenen Computers aus.",
6572
+ "walk.terminalTitle": "Im Terminal des Zielcomputers einfügen",
6573
+ "walk.terminalBody": "Öffne dort ein Terminal, füge das gesamte Skript ein und drücke Enter. Bei Fehlern anhalten und die Meldung prüfen.",
6574
+ "walk.agentTitle": "Im Agent-Chat des Zielcomputers einfügen",
6575
+ "walk.agentBody": "Öffne einen Agent-Chat, der diesen Computer bedienen kann. Füge die Installationsanleitung ein und sende sie. Der Agent übernimmt die Installation.",
6576
+ "walk.headlessTitle": "Auf einem anderen Computer mit Browser verknüpfen",
6577
+ "walk.headlessBody": "Lass das Zielterminal geöffnet. Melde dich auf einem anderen Computer im Dashboard an, gib den Code aus dem Terminal ein, vergleiche den vollständigen Fingerabdruck des öffentlichen Schlüssels und bestätige.",
6578
+ "walk.browserTitle": "Im automatisch geöffneten Browser verknüpfen",
6579
+ "walk.browserBody": "Das Skript öffnet diese Anfrage. Melde dich mit deinem Konto an, vergleiche den vollständigen Fingerabdruck des öffentlichen Schlüssels mit Terminal oder Agent und bestätige einmal.",
6580
+ "walk.installTitle": "Installation abwarten und Fehler prüfen",
6581
+ "walk.installBody": "Das Skript installiert den lokalen Driver und einen Hintergrunddienst für deinen Benutzer. Ein KI-Agent ist nicht nötig. Prüfe mögliche Fehlermeldungen.",
6582
+ "walk.agentInstallBody": "Der Agent installiert Driver und Benutzerdienst, verbindet MCP und prüft die tatsächliche Funktion.",
6583
+ "walk.checkTitle": "Echte Meldungen in der Geräteliste prüfen",
6584
+ "walk.cloudCheckBody": "Suche diesen Computer in der Cloud-Geräteliste. Echte Speicher- und Festplattendaten sowie eine aktualisierte Meldezeit bestätigen den Erfolg. Verknüpft bedeutet noch nicht, dass Daten eintreffen.",
6585
+ "walk.localCheckBody": "Öffne die abgebildete lokale Dashboard-Adresse im Browser des gerade eingerichteten Computers. 127.0.0.1 bezeichnet diesen Computer selbst.",
6586
+ "walk.copyFirst": "Klicke zuerst oben auf Kopieren und wechsle dann zum angegebenen Fenster.",
6587
+ "walk.openMac": "Mac: ⌘ Leertaste → „Terminal“ suchen",
6588
+ "walk.openLinux": "Linux: Anwendungsmenü → Terminal oder bestehende SSH-Sitzung",
6589
+ "walk.autoBrowser": "Nach dem Ausführen öffnet sich der Browser; andernfalls die Anleitung im Terminal zur manuellen Kopplung nutzen",
6590
+ "walk.sameComputer": "Diese Adresse auf dem gerade eingerichteten Computer öffnen",
6591
+ "walk.steps": "Bebilderte Installationsschritte",
6592
+ "walk.pasteTab": "Einfügen",
6593
+ "walk.bindTab": "Anmelden",
6594
+ "walk.installTab": "Installation",
6595
+ "walk.checkTab": "Gerät prüfen",
6596
+ "walk.copiedContent": "Zwischenablage",
6597
+ "walk.terminal": "Terminal",
6598
+ "walk.chat": "Agent-Chat",
6599
+ "walk.browser": "Webseite",
6600
+ "walk.fullFingerprint": "Vollständiger Schlüsselfingerabdruck hier",
6601
+ "walk.approve": "Stimmt überein: Computer verknüpfen",
6602
+ "walk.targetTerminal": "Zielcomputer · Terminal",
6603
+ "walk.pasteScript": "Gesamtes Skript hier einfügen",
6604
+ "walk.pressEnter": "Danach drücken",
6605
+ "walk.targetChat": "Zielcomputer · Agent-Chat",
6606
+ "walk.pastePrompt": "Installationsanleitung hier einfügen",
6607
+ "walk.send": "Senden",
6608
+ "walk.pairCode": "Code aus dem Terminal",
6609
+ "walk.otherBrowser": "Anderer Computer · Browser",
6610
+ "walk.signIn": "Mit deinem Konto anmelden",
6611
+ "walk.pasteCode": "Code aus dem Terminal hier eingeben",
6612
+ "walk.compare": "Beide vollständigen Schlüsselfingerabdrücke vergleichen",
6613
+ "walk.driver": "Lokalen Driver installieren",
6614
+ "walk.service": "Benutzerdienst starten",
6615
+ "walk.mcp": "MCP dieses Agents verbinden",
6616
+ "walk.yourDevice": "Dein Gerät",
6617
+ "walk.awaitReport": "Wartet auf eine echte Meldung",
6618
+ "walk.reportTime": "Prüfen, ob die Meldezeit gerade aktualisiert wurde",
6619
+ "walk.previous": "← Zurück",
6620
+ "walk.restart": "Einfügeort erneut ansehen",
6621
+ "walk.next": "Weiter →",
6622
+ "walk.counter": "{current} / {total}",
6623
+ "walk.openDevices": "Geräteliste öffnen ↗",
6624
+ "walk.openPairing": "„{action}“ → Kopplungscode",
6625
+ "guide.os.title": "Betriebssystem des Zielcomputers",
6626
+ "guide.windowsCandidate": "Windows 11 Vorschau · In PowerShell installieren und anhand der Grafiken Kopplung und Hintergrundstatus prüfen.",
6627
+ "guide.windowsPrerequisites": "Windows 11 · PowerShell 5.1+ · Node.js 24+ · Normales Benutzerfenster; kein AD oder AI Agent nötig. Stoppt bei vorhandener Installation.",
6628
+ "walk.windowsTitle": "In Windows PowerShell einfügen, dann Enter",
6629
+ "walk.windowsBody": "Auf dem Zielcomputer PowerShell als normaler Benutzer öffnen (nicht CMD oder WSL). Das gesamte Skript prüfen, einfügen und Enter drücken. Bei Fehlern das Fenster offen lassen.",
6630
+ "walk.openWindows": "Start → PowerShell suchen → Öffnen (ohne Administrator)",
6631
+ "prompt.windowsEnvironment": "Windows 11, PowerShell 5.1+, Node.js >=24, npm.cmd und MCP des Agent prüfen. Normale PowerShell nutzen, nicht WSL oder npm.ps1. Jeden $LASTEXITCODE prüfen, bei ungleich null stoppen. Keine Richtlinien oder Berechtigungen ändern. Node.js nur aus offizieller Quelle.",
6632
+ "prompt.windowsBackground": "Plan prüfen, Anmeldeaufgabe des aktuellen Benutzers ausdrücklich installieren und Status prüfen. Kein AD, Administrator, Passwort oder Richtlinienwechsel. Fehlerzustand erhalten, Vordergrund anbieten. Lokales DPAPI und NTFS-ACLs schützen die Identität; Dateien nicht verschieben. Keine Meldungen bei Abmeldung, Ruhezustand oder ohne Netz."
5226
6633
  },
5227
6634
  "pt-BR": {
5228
6635
  "language": "Idioma",
5229
6636
  "guide.title": "Começar · Device Center",
5230
6637
  "guide.open": "Abrir painel de dispositivos ↗",
5231
- "guide.badge": "Beta público · 0.2.0-beta.3 · MIT",
6638
+ "guide.badge": "Prévia de desenvolvimento · 0.2.0-beta.5 · MIT",
5232
6639
  "guide.hero": "Conecte seus computadores disponíveis ao seu Agent.",
5233
6640
  "guide.lead": "Veja os recursos e a finalidade de cada computador e leia logs específicos após autorização separada. Deixe a instalação com seu Agent local e comece com um computador.",
5234
- "guide.platform": "macOS / Linux · Node.js 24+ · Windows nativo ainda não está disponível",
6641
+ "guide.platform": "macOS / Linux / candidato Windows 11 · Node.js 24+",
5235
6642
  "guide.install": "Escolha um modo e copie as instruções para seu Agent local",
5236
6643
  "guide.local": "Uso local",
5237
6644
  "guide.localDesc": "Painel local e MCP sem conta. Explore primeiro seu computador e os recursos dos seus dispositivos.",
@@ -5239,7 +6646,7 @@ export const messages = {
5239
6646
  "guide.hosted": "Hospedagem oficial",
5240
6647
  "guide.hostedDesc": "Gerencie dispositivos com sua conta e use o relay criptografado oficial. O Driver e as chaves privadas ficam nos dispositivos.",
5241
6648
  "guide.hostedCopy": "Copiar instalação hospedada",
5242
- "guide.paste": "Cole as instruções em um Agent no computador de destino com permissão para instalar software. Ele verificará as configurações, instalará a versão fixada, configurará o serviço do usuário e MCP e verificará o resultado. Esta página não instala software.",
6649
+ "guide.paste": "Para um Agent, copie as instruções. Para instalar manualmente, execute o script de shell no terminal do destino. Ambos instalam um Driver local. MCP só é necessário no computador de gerenciamento com AI Agent. A página só copia, não instala.",
5243
6650
  "guide.custom": "Já tem seu próprio servidor de controle?",
5244
6651
  "guide.address": "Endereço HTTPS do seu servidor de controle",
5245
6652
  "guide.customCopy": "Copiar instruções do servidor próprio",
@@ -5247,9 +6654,9 @@ export const messages = {
5247
6654
  "guide.preview": "Ver ou copiar as instruções completas",
5248
6655
  "guide.instructions": "Instruções para o Agent",
5249
6656
  "guide.pair": "No modo hospedado, entre e vincule seu computador",
5250
- "guide.pair1": "Abra o painel conforme indicado pelo Agent. Entre com sua conta do App Services / site pessoal ou cadastre-se na página da conta.",
6657
+ "guide.pair1": "Só os modos hospedados precisam de conta. Com navegador, o script abre o pareamento. Sem navegador, entre em outro computador e digite o código do terminal.",
5251
6658
  "guide.loginLink": "Abrir painel na nuvem",
5252
- "guide.pair2": "Insira no painel o código de pareamento de cinco minutos exibido no terminal local. Verifique a impressão digital completa da chave pública antes de aprovar. Não compartilhe senhas, chaves privadas ou códigos nem os cole em conversas com o Agent.",
6659
+ "guide.pair2": "Aprove apenas a solicitação que acabou de iniciar. Confira o nome, o sistema e a impressão digital completa da chave pública no terminal. Não compartilhe o código.",
5253
6660
  "guide.pair3": "Repita a instalação em outro computador seu e vincule-o à mesma conta. Dispositivos sem dados reais aparecem como desconhecidos ou sem relatório recente.",
5254
6661
  "guide.localHint": "Pule esta etapa no modo local. O vínculo permite apenas os relatórios de recursos descritos; a leitura de logs exige autorização separada no dispositivo de destino.",
5255
6662
  "guide.try": "Verifique estes quatro pontos no teste",
@@ -5265,9 +6672,9 @@ export const messages = {
5265
6672
  "guide.faqBody": "Verifique Node.js 24+, Driver em execução, computador ativo, rede e relógio do sistema. Se uma porta estiver ocupada, escolha outra porta local livre sem parar outros programas. Sem relatório recente significa falta de dados novos, não chave privada expirada.",
5266
6673
  "guide.feedback": "Ao relatar um problema, informe sistema, versão, modo, etapa que falhou e erro sem dados sensíveis. Nunca inclua chaves privadas, códigos, cookies ou conteúdo dos logs.",
5267
6674
  "guide.scope": "Escopo deste beta",
5268
- "guide.scopeBody": "Suporta recursos reais, detalhes dos dispositivos, coleta manual e leitura do final de logs com autorização separada. Ainda não oferece comandos remotos arbitrários, transferência geral de arquivos, Driver Windows nativo, varredura automática, autorização LAN offline ou sincronização de detalhes local/nuvem.",
6675
+ "guide.scopeBody": "Suporta recursos reais, detalhes dos dispositivos, coleta manual e leitura do final de logs com autorização separada. Ainda não oferece comandos remotos arbitrários, transferência geral de arquivos, varredura automática, autorização LAN offline ou sincronização de detalhes local/nuvem.",
5269
6676
  "guide.quota": "Limites do relay oficial de teste: 100 MiB por conta por dia UTC, 16 KiB/s por direção. A banda não é ilimitada. Serviços e aplicativos são registrados manualmente, sem detecção automática.",
5270
- "guide.full": "Guia completo do Agent (chinês)",
6677
+ "guide.full": "Guia completo de instalação (chinês)",
5271
6678
  "guide.markdown": "Guia de teste em texto (chinês)",
5272
6679
  "guide.source": "Pacote de código MIT no npm ↗",
5273
6680
  "guide.footer": "Instalação local · Chaves no dispositivo · Operações com autorização separada",
@@ -5281,14 +6688,14 @@ export const messages = {
5281
6688
  "prompt.private": "Servidor de controle: {origin}. O Driver é executado neste dispositivo. As chaves privadas de identidade ficam no dispositivo, não na nuvem.",
5282
6689
  "prompt.background": "Serviço do usuário em segundo plano após login no sistema",
5283
6690
  "prompt.foreground": "Apenas em primeiro plano; não instalar serviço em segundo plano",
5284
- "prompt.environment": "Verifique macOS/Linux, Node.js >=24, npm e o suporte MCP do Agent atual. O Driver Windows nativo não é suportado: explique e pare no Windows. Use fontes oficiais para instalar Node.js; deixe comigo solicitações de administrador ou permissões do sistema.",
6691
+ "prompt.environment": "Confira macOS/Linux, Node.js >=24, npm e MCP do Agent. Se o sistema não corresponder à escolha, pare e peça nova seleção. Use Node.js oficial; deixe permissões do sistema com o usuário.",
5285
6692
  "prompt.existing": "Inspecione primeiro CLI, vínculos, serviços do usuário e {url}/api/health; preserve as configurações. Se o CLI fixo existir, verifique {status} e {service}. Nunca abra arquivos de chave privada. Se a porta estiver ocupada, escolha uma porta loopback livre conhecida e atualize os endereços sem parar outros programas. Reutilize versão, servidor e modo compatíveis; consulte conflitos, sem sobrescrever, desvincular ou duplicar instalações.",
5286
6693
  "prompt.userInstall": "Para uma nova instalação, use um local fixo gravável pelo usuário, sem sudo:",
5287
6694
  "prompt.config": "Não altere configurações globais do npm nem arquivos de inicialização do shell. Use o caminho absoluto do CLI nas próximas etapas.",
5288
6695
  "prompt.bg": "Revise o plano, confirme o escopo do usuário e escuta apenas em loopback, depois instale e verifique o estado. Em falhas ou conflitos, preserve o estado, sem limpar e reinstalar. Linux exige systemd --user; macOS exige launchd do usuário conectado. Se indisponível, explique e ofereça o modo em primeiro plano.",
5289
6696
  "prompt.fg": "Mantenha o processo em primeiro plano ativo. No modo hospedado, connect na próxima etapa inicia o Driver após aprovação; no modo local execute start abaixo. Fechar a página não encerra o processo; fechar o terminal interrompe os relatórios.",
5290
6697
  "prompt.pairBefore": "Revise o escopo dos relatórios e solicite o vínculo:",
5291
- "prompt.pairAfter": "Peça que eu entre com minha conta em {origin}, confira a impressão digital completa da chave pública no terminal local e aprove manualmente. Não aprove por mim nem leia senhas, cookies ou chaves privadas. O código fica apenas no terminal, nunca em conversas, scripts ou links. Se suas ferramentas o registrarem, deixe que eu execute somente connect no terminal enquanto você conclui as outras verificações. Após aprovar, confira relatórios reais; configured=true sozinho não prova conectividade.",
6698
+ "prompt.pairAfter": "Execute --browser e mantenha o processo. Ele abre o navegador local sem imprimir credenciais temporárias. Eu só entro em {origin}, comparo a impressão pública completa e aprovo uma vez. Não aprove por mim nem leia senhas, cookies, chaves privadas ou links com credenciais. Observe o processo, verifique firstReport.verified=true e continue automaticamente. Não peça para executar novamente nem responder “aprovado”. configured=true não prova a entrega. Só sem navegador, peça connect sem --browser no meu terminal; o código fica lá. Um painel antigo precisa de atualização; não imprima credenciais como alternativa.",
5292
6699
  "prompt.local": "Não execute connect, gere identidade nem cadastre conta. Se já existir um vínculo cloud, explique que start ou o serviço pode retomá-lo; não o apresente como modo exclusivamente local.",
5293
6700
  "prompt.mcp": "Leia {url}/api/connector/setup e configure Streamable HTTP MCP em {mcp} pela interface oficial suportada pelo Agent atual. Reutilize configurações iguais sem substituir outros MCPs. Se as ferramentas não puderem configurar, peça que eu cole apenas esse endereço; não afirme uma conexão não verificada.",
5294
6701
  "prompt.verify": "Verifique /api/health, memória e disco locais reais em /api/overview e uma chamada real do Agent a device_center_list_resources. Informe versão, URLs do painel/MCP, modo, resultado do vínculo cloud e etapas pendentes.",
@@ -5303,14 +6710,17 @@ export const messages = {
5303
6710
  "login.submit": "Entrar",
5304
6711
  "login.unified": "Use sua conta unificada do App Services / site pessoal.",
5305
6712
  "login.link": "Entrar com a conta unificada ↗",
5306
- "login.help": "Entre com e-mail ou Google na nova página. Ao voltar, você será levado automaticamente ao painel.",
5307
- "login.continue": "Já entrei, continuar",
6713
+ "login.help": "Se você já entrou, o painel abre automaticamente. Caso contrário, abra a página de conta abaixo, entre e volte aqui.",
6714
+ "login.continue": "Abrir painel",
5308
6715
  "login.return": "Volte a esta página após entrar na conta unificada.",
5309
6716
  "login.first": "Primeiro entre com e-mail ou Google na página da conta e depois volte aqui.",
5310
6717
  "login.owner": "Esta conta não pode acessar este painel pessoal. Use a conta do proprietário.",
5311
6718
  "login.rate": "Muitas tentativas. Tente novamente em um minuto.",
5312
- "login.unavailable": "O serviço de conta unificada está temporariamente indisponível. Tente mais tarde.",
5313
- "login.timeout": "A conexão com o serviço de conta expirou. Tente novamente.",
6719
+ "login.unavailable": "Não foi possível acessar o serviço de contas. Tente novamente aqui; não é preciso voltar ao site pessoal.",
6720
+ "login.timeout": "A verificação da conta demorou demais. Tente novamente aqui sem digitar a senha outra vez.",
6721
+ "login.session": "A sessão não foi salva. Abra a conta e o painel no mesmo navegador e verifique se os cookies deste site estão bloqueados.",
6722
+ "login.returned": "O acesso ao painel não foi mantido e a navegação automática foi pausada. Tente novamente aqui. Se falhar de novo, anote a mensagem e o horário.",
6723
+ "login.checking": "Verificando acesso…",
5314
6724
  "login.optionsError": "Não foi possível carregar as opções de login. Atualize e tente novamente.",
5315
6725
  "login.credentials": "Nome de usuário ou senha incorretos.",
5316
6726
  "login.multi": "Dispositivos isolados por conta · HTTPS",
@@ -5544,7 +6954,7 @@ export const messages = {
5544
6954
  "panel.224": "Copiar para o Agent",
5545
6955
  "panel.225": "Ver instruções completas",
5546
6956
  "panel.226": "Instruções de instalação para o Agent",
5547
- "panel.227": "macOS / Linux com Node.js 24. Versão fixa 0.2.0-beta.3. A página só copia instruções; o Agent executa localmente.",
6957
+ "panel.227": "macOS / Linux / Windows 11 com Node.js 24. Versão fixa 0.2.0-beta.5. A página só copia instruções; o Agent executa localmente.",
5548
6958
  "panel.228": "Copiado. Cole no Agent de destino; faça login e confira pessoalmente qualquer vínculo necessário.",
5549
6959
  "panel.229": "Copie manualmente as instruções selecionadas.",
5550
6960
  "panel.230": "Administrador não confirmado",
@@ -5663,7 +7073,7 @@ export const messages = {
5663
7073
  "panel.343": "Nuvem só se a rede for inacessível. Erros de certificado, identidade ou permissão interrompem o acesso. Ambos os caminhos exigem plano online para verificar revogações.",
5664
7074
  "panel.344": "Destino pode executar",
5665
7075
  "panel.345": "device-center access revoke --peer MANAGEMENT_FINGERPRINT --confirm",
5666
- "panel.346": " para revogar a qualquer momento. Privadas e caminhos permitidos ficam locais; nuvem só encaminha TLS cifrado. Agent Windows nativo ainda não disponível.",
7076
+ "panel.346": "para revogar a qualquer momento. Privadas e caminhos permitidos ficam locais; nuvem só encaminha TLS cifrado. Prévia do Windows 11 · Instale no PowerShell e siga os diagramas para verificar o pareamento e a execução em segundo plano.",
5667
7077
  "panel.347": "Processando…",
5668
7078
  "panel.348": "Buscar solicitação",
5669
7079
  "panel.349": "Compartilhar até 15 nomes SSH e estados em cache (sem endereços, usuários, caminhos, configurações ou privadas)",
@@ -5739,7 +7149,7 @@ export const messages = {
5739
7149
  "panel.419": "Fechar a página não exige parar o serviço. Uso comum: instalar uma vez e iniciar automaticamente após login no sistema.",
5740
7150
  "panel.420": "Instalação local · recomendada",
5741
7151
  "panel.421": "Scripts de usuário: launchd no macOS e systemd no Linux. Revise o plano e depois instale você mesmo.",
5742
- "panel.422": "Pare manualmente a prévia na mesma porta antes de instalar. Node.js 24 e diretório estável necessários. Serviço, logs e dados do usuário sem privilégios administrativos. Windows em segundo plano pendente; use primeiro plano ou Docker.",
7152
+ "panel.422": "Pare manualmente a prévia na mesma porta antes de instalar. Node.js 24 e diretório estável necessários. Serviço, logs e dados do usuário sem privilégios administrativos. Prévia do Windows 11 · Instale no PowerShell e siga os diagramas para verificar o pareamento e a execução em segundo plano.",
5743
7153
  "panel.423": "Como conectar o Agent local ao Docker?",
5744
7154
  "panel.424": "Docker só executa Device Center. Codex fica local e acessa por",
5745
7155
  "panel.425": "http://127.0.0.1:PORT/mcp",
@@ -5747,7 +7157,7 @@ export const messages = {
5747
7157
  "panel.427": "Compose expõe apenas loopback e mantém volume e reinícios. AI local → endereço local → contêiner. Não precisa montar socket Docker, configuração Codex ou pastas do host.",
5748
7158
  "panel.428": "Docker precisa estar ativo. Contêiner não obtém permissões locais automaticamente. Mostra só o contêiner, não memória, disco ou SSH do host. Execute Driver nativo no host.",
5749
7159
  "panel.429": "Só scripts e configuração fornecidos; nenhum serviço persistente instalado ou Docker iniciado. Este processo é uma prévia local.",
5750
- "panel.430": "Instalar com Agent",
7160
+ "panel.430": "Instalar Device Center",
5751
7161
  "panel.431": "Autorizar logs remotos",
5752
7162
  "panel.432": "Conectar Codex local",
5753
7163
  "panel.433": "Painel na nuvem · opcional",
@@ -5875,6 +7285,179 @@ export const messages = {
5875
7285
  "notice.notConfig": "Não é configuração SSH; ignorado.",
5876
7286
  "notice.candidateLimit": "Limite de candidatos atingido.",
5877
7287
  "notice.match": "Condições Match: só aliases; sem avaliar ou executar comandos.",
5878
- "notice.conditional": "Include condicional em Host / Match ignorado; candidatos podem estar incompletos."
7288
+ "notice.conditional": "Include condicional em Host / Match ignorado; candidatos podem estar incompletos.",
7289
+ "guide.visual.hero": "Menos troca de computador. Menos logs copiados.",
7290
+ "guide.visual.lead": "Seu Agent local pode ver outros dispositivos e ler os logs que você autorizar.",
7291
+ "guide.visual.begin": "Começar",
7292
+ "guide.visual.example": "Exemplo de uso",
7293
+ "guide.visual.yourDevices": "Aproveite seus próprios dispositivos",
7294
+ "guide.visual.request": "“Verifique os logs do meu servidor em casa.”",
7295
+ "guide.visual.myAgent": "Agent local",
7296
+ "guide.visual.myComputer": "O computador que você usa",
7297
+ "guide.visual.authorized": "Acesso autorizado",
7298
+ "guide.visual.otherDevice": "Seu dispositivo",
7299
+ "guide.visual.homeServer": "Por exemplo: seu servidor em casa",
7300
+ "guide.visual.log": "Logs autorizados",
7301
+ "guide.visual.scenarios": "Casos de uso",
7302
+ "guide.visual.debug": "Quando um serviço falha",
7303
+ "guide.visual.debugBody": "Seu Agent lê os logs autorizados",
7304
+ "guide.visual.save": "Antes de alugar um servidor",
7305
+ "guide.visual.saveBody": "Confira os recursos que você já tem",
7306
+ "guide.visual.away": "Quando estiver fora",
7307
+ "guide.visual.awayBody": "Veja os dispositivos online no painel hospedado",
7308
+ "guide.visual.startSmall": "Comece com um computador",
7309
+ "guide.visual.choose": "Escolha um modo e copie para seu Agent",
7310
+ "guide.visual.noInstall": "Copiar não instala nada",
7311
+ "guide.visual.localCaption": "Experimente no seu computador",
7312
+ "guide.visual.localBody": "Painel local, MCP opcional. Sem conta.",
7313
+ "guide.visual.hostedCaption": "Vários dispositivos em um só lugar",
7314
+ "guide.visual.hostedBody": "Vincule os dispositivos à sua conta e use a retransmissão criptografada.",
7315
+ "guide.visual.next": "O que fazer depois de copiar?",
7316
+ "guide.visual.pasteTitle": "Vá ao computador que vai conectar",
7317
+ "guide.visual.pasteBody": "Cole as instruções no Agent desse computador.",
7318
+ "guide.visual.installTitle": "Deixe seu Agent instalar",
7319
+ "guide.visual.installBody": "Ele verifica o ambiente, instala o Driver e configura o MCP local.",
7320
+ "guide.visual.bindTitle": "Modo hospedado: aprove a vinculação",
7321
+ "guide.visual.bindBody": "O programa continua automaticamente. Não é preciso avisar o Agent que você aprovou.",
7322
+ "guide.visual.trust": "Chaves privadas ficam nos dispositivos · Logs exigem permissão separada",
7323
+ "guide.visual.details": "Mais detalhes",
7324
+ "guide.visual.pairDetails": "Instalação e vinculação passo a passo",
7325
+ "guide.visual.copiedLocal": "Copiado. Vá ao computador de destino e cole no Agent dele. O modo local não exige login.",
7326
+ "guide.visual.copiedHosted": "Copiado. Vá ao computador de destino e cole no Agent dele. Você precisa conferir a vinculação pessoalmente.",
7327
+ "guide.visual.localReady": "Modo local: comece a usar",
7328
+ "guide.visual.localReadyBody": "Sem login. Veja os recursos locais e deixe seu Agent usar MCP.",
7329
+ "guide.visual.heroLine1": "Menos trocas.",
7330
+ "guide.visual.heroLine2": "Menos logs copiados.",
7331
+ "guide.visual.viewFlow": "Veja como funciona",
7332
+ "guide.visual.pauseMotion": "Pausar animação",
7333
+ "guide.visual.playMotion": "Reproduzir animação",
7334
+ "guide.visual.dashboard": "Dispositivos",
7335
+ "guide.focus.overview": "Visão geral",
7336
+ "guide.focus.example": "Como funciona · apenas ilustração",
7337
+ "guide.focus.firstTry": "Primeira vez? Teste localmente, sem conta.",
7338
+ "guide.focus.alreadyInstalled": "Já conectado?",
7339
+ "guide.focus.start": "Comece aqui",
7340
+ "guide.focus.startTitle": "Conecte seu primeiro computador",
7341
+ "guide.focus.startBody": "Escolha um modo de uso e depois instale com um Agent ou manualmente. O dispositivo de destino não precisa de um AI Agent.",
7342
+ "guide.focus.select": "Escolha como usar",
7343
+ "guide.focus.useSelfHosted": "Usar meu próprio servidor de controle",
7344
+ "guide.focus.copyHint": "São instruções para um Agent. Cole na conversa com ele, não no terminal.",
7345
+ "guide.focus.paste": "No computador de destino, cole na conversa com o Agent",
7346
+ "guide.focus.pasteBefore": "Copie as instruções acima e abra uma conversa com o Agent no computador que deseja conectar.",
7347
+ "guide.focus.pasteAfter": "Abra uma conversa com o Agent no computador que deseja conectar, cole as instruções e siga as orientações.",
7348
+ "guide.focus.whatNext": "O que acontece depois?",
7349
+ "guide.focus.openHosted": "Após instalar, abra o painel e aprove o pareamento pessoalmente ↗",
7350
+ "guide.focus.copied": "Copiado. Próximo passo: cole na conversa com o Agent no computador de destino.",
7351
+ "pair.title": "Vincular este computador",
7352
+ "pair.step": "Sua aprovação",
7353
+ "pair.intro": "Aprove apenas uma solicitação iniciada agora neste computador. Ela é preenchida automaticamente.",
7354
+ "pair.fingerprint": "Compare a impressão digital completa da chave pública com o terminal ou Agent:",
7355
+ "pair.scope": "Informa apenas nome, sistema, memória e disco. Nenhuma operação remota é autorizada.",
7356
+ "pair.approve": "Impressões conferem — vincular",
7357
+ "pair.cancel": "Cancelar",
7358
+ "pair.loading": "Carregando a solicitação",
7359
+ "pair.wait": "Entre na conta primeiro, se necessário.",
7360
+ "pair.bound": "Vinculado. Verificando a conexão",
7361
+ "pair.reporting": "Aguardando o primeiro relatório de recursos…",
7362
+ "pair.noReply": "O programa continua automaticamente. Não é preciso avisar o Agent que você aprovou.",
7363
+ "pair.done": "Este computador está conectado",
7364
+ "pair.doneBody": "A nuvem recebeu o relatório. Adicione nome, finalidade e etiquetas no painel.",
7365
+ "pair.reportTimeout": "Vínculo concluído, mas primeiro relatório não confirmado. Verifique suspensão, serviço local e rede. Não vincule novamente.",
7366
+ "pair.cancelled": "Cancelado",
7367
+ "pair.cancelledBody": "Nenhum dispositivo aprovado. A solicitação expirará automaticamente.",
7368
+ "pair.missing": "Solicitação expirada ou indisponível",
7369
+ "pair.missingBody": "Recomece no computador de destino. Não abra links de vínculo enviados por outras pessoas. Computadores vinculados não precisam repetir.",
7370
+ "pair.start": "Voltar ao guia",
7371
+ "pair.dashboard": "Abrir painel de dispositivos",
7372
+ "pair.boundary": "Chaves privadas ficam no dispositivo · Operações remotas exigem permissão separada",
7373
+ "pair.manual": "Sem navegador ou já tem um código do terminal?",
7374
+ "pair.manualHint": "Só para servidores sem navegador ou clientes antigos: execute o comando manual no destino e insira o código.",
7375
+ "pair.browserHint": "Abre a solicitação automaticamente. Entre, compare a impressão e aprove uma vez. O relatório é verificado sem responder ao Agent.",
7376
+ "pair.approvalUnknown": "Resultado da aprovação não confirmado",
7377
+ "pair.approvalUnknownBody": "Falha de rede ou solicitação já processada. Verifique o processo no destino e o painel antes de recomeçar. Se já vinculado, não repita.",
7378
+ "guide.method.title": "Escolha como instalar",
7379
+ "guide.method.agent": "Usar um Agent",
7380
+ "guide.method.manual": "Instalar manualmente",
7381
+ "guide.manual.prerequisites": "Node.js 24+ · Somente novas instalações. Instalações existentes são preservadas e o script para.",
7382
+ "guide.manual.browserQuestion": "O destino pode abrir um navegador?",
7383
+ "guide.manual.hasBrowser": "Com navegador",
7384
+ "guide.manual.noBrowser": "Sem navegador / servidor",
7385
+ "guide.manual.copy": "Copiar script de instalação",
7386
+ "guide.manual.copyHint": "É um script de shell. Cole e execute no terminal do dispositivo de destino. Não precisa de AI Agent.",
7387
+ "guide.manual.preview": "Ver ou copiar o script manualmente",
7388
+ "guide.manual.scriptLabel": "Script de instalação para terminal",
7389
+ "guide.manual.pasteTitle": "Execute no terminal do destino",
7390
+ "guide.manual.pasteBefore": "Copie o script e abra o terminal do dispositivo de destino. No Mac, use o Terminal; no Linux, um terminal ou uma sessão SSH existente.",
7391
+ "guide.manual.pasteAfter": "Cole e execute no terminal do destino. O script verifica os requisitos e instala o Driver e um serviço de usuário em segundo plano.",
7392
+ "guide.manual.copied": "Script copiado. Agora cole e execute no terminal do dispositivo de destino.",
7393
+ "guide.manual.installBody": "O script instala um serviço de usuário iniciado ao fazer login. O destino não precisa de AI Agent nem de configuração MCP. Adicione MCP no computador de gerenciamento quando quiser usar seu Agent.",
7394
+ "guide.manual.localBody": "Sem login, veja os recursos no painel local do destino. MCP só é necessário no computador cujo Agent vai usá-lo. O endereço de loopback do servidor não é uma URL remota.",
7395
+ "guide.manual.browserBody": "O script abre o navegador do destino. Entre na sua conta, compare a impressão digital completa da chave pública com o terminal e aprove uma vez. O dispositivo passa a enviar seu estado automaticamente.",
7396
+ "guide.manual.headlessBody": "Mantenha o terminal do destino aberto. Em outro computador com navegador, entre no painel, escolha “Conectar meu computador”, digite o código de 5 minutos do terminal, compare a impressão digital completa da chave pública e aprove. Não precisa responder ao Agent.",
7397
+ "guide.manual.openPanel": "Abrir painel para concluir o pareamento ↗",
7398
+ "guide.manual.openGuide": "Sem Agent no dispositivo? Instalação manual ↗",
7399
+ "walk.title": "Depois de copiar, siga as imagens",
7400
+ "walk.disclaimer": "São ilustrações. Faça as ações nas janelas reais do computador indicado.",
7401
+ "walk.terminalTitle": "Cole no terminal do computador de destino",
7402
+ "walk.terminalBody": "Abra um terminal no computador que quer conectar, cole o script inteiro e pressione Enter. Se houver erro, pare e verifique.",
7403
+ "walk.agentTitle": "Cole no chat do Agent do computador de destino",
7404
+ "walk.agentBody": "Abra um chat com um Agent capaz de operar esse computador. Cole e envie as instruções; o Agent faz a instalação.",
7405
+ "walk.headlessTitle": "Vincule por outro computador com navegador",
7406
+ "walk.headlessBody": "Mantenha o terminal de destino aberto. Entre no painel por outro computador, digite o código do terminal, compare a impressão digital completa da chave pública e aprove.",
7407
+ "walk.browserTitle": "Vincule no navegador que abrir",
7408
+ "walk.browserBody": "O script abre esta solicitação. Entre na sua conta, compare a impressão digital completa da chave pública com o terminal ou o Agent e aprove uma vez.",
7409
+ "walk.installTitle": "Aguarde a instalação e confira os erros",
7410
+ "walk.installBody": "O script instala o Driver local e um serviço de usuário em segundo plano. Não precisa de Agent de IA. Verifique qualquer erro informado.",
7411
+ "walk.agentInstallBody": "O Agent instala o Driver e o serviço de usuário, conecta o MCP e verifica se funcionam de verdade.",
7412
+ "walk.checkTitle": "Confira um relatório real na lista de dispositivos",
7413
+ "walk.cloudCheckBody": "Encontre este computador na lista de dispositivos da nuvem. Memória, disco e um horário de relatório atualizado confirmam o resultado. Vincular não confirma que os dados já chegaram.",
7414
+ "walk.localCheckBody": "No computador recém-instalado, abra no navegador o endereço local do painel mostrado na imagem. 127.0.0.1 se refere ao próprio computador.",
7415
+ "walk.copyFirst": "Use primeiro o botão de copiar acima e vá para a janela indicada.",
7416
+ "walk.openMac": "Mac: ⌘ Espaço → busque “Terminal”",
7417
+ "walk.openLinux": "Linux: menu de aplicativos → Terminal ou sessão SSH existente",
7418
+ "walk.autoBrowser": "O navegador abre após executar; se falhar, siga as instruções de pareamento manual do terminal",
7419
+ "walk.sameComputer": "Abra este endereço no computador recém-instalado",
7420
+ "walk.steps": "Etapas ilustradas da instalação",
7421
+ "walk.pasteTab": "Colar e executar",
7422
+ "walk.bindTab": "Entrar e vincular",
7423
+ "walk.installTab": "Instalação",
7424
+ "walk.checkTab": "Ver dispositivo",
7425
+ "walk.copiedContent": "Área de transferência",
7426
+ "walk.terminal": "Terminal",
7427
+ "walk.chat": "Chat do Agent",
7428
+ "walk.browser": "Página web",
7429
+ "walk.fullFingerprint": "Impressão digital pública completa aqui",
7430
+ "walk.approve": "Confere: vincular este computador",
7431
+ "walk.targetTerminal": "Computador de destino · Terminal",
7432
+ "walk.pasteScript": "Cole o script inteiro aqui",
7433
+ "walk.pressEnter": "Depois pressione",
7434
+ "walk.targetChat": "Computador de destino · Chat do Agent",
7435
+ "walk.pastePrompt": "Cole as instruções aqui",
7436
+ "walk.send": "Enviar",
7437
+ "walk.pairCode": "Código do terminal",
7438
+ "walk.otherBrowser": "Outro computador · Navegador",
7439
+ "walk.signIn": "Entre na sua própria conta",
7440
+ "walk.pasteCode": "Digite o código do terminal aqui",
7441
+ "walk.compare": "Compare as duas impressões digitais públicas completas",
7442
+ "walk.driver": "Instalar o Driver local",
7443
+ "walk.service": "Iniciar o serviço de usuário",
7444
+ "walk.mcp": "Conectar o MCP deste Agent",
7445
+ "walk.yourDevice": "Seu dispositivo",
7446
+ "walk.awaitReport": "Aguardando um relatório real",
7447
+ "walk.reportTime": "Confira se o horário do relatório acabou de atualizar",
7448
+ "walk.previous": "← Anterior",
7449
+ "walk.restart": "Rever onde colar",
7450
+ "walk.next": "Próxima etapa →",
7451
+ "walk.counter": "{current} / {total}",
7452
+ "walk.openDevices": "Abrir lista de dispositivos ↗",
7453
+ "walk.openPairing": "Selecione “{action}” → código",
7454
+ "guide.os.title": "Sistema do computador de destino",
7455
+ "guide.windowsCandidate": "Prévia do Windows 11 · Instale no PowerShell e siga os diagramas para verificar o pareamento e a execução em segundo plano.",
7456
+ "guide.windowsPrerequisites": "Windows 11 · PowerShell 5.1+ · Node.js 24+ · Usuário normal; não exige AD nem AI Agent. Para se já estiver instalado.",
7457
+ "walk.windowsTitle": "Cole no Windows PowerShell e pressione Enter",
7458
+ "walk.windowsBody": "Abra o PowerShell como usuário normal no destino (não CMD ou WSL). Revise e cole todo o script, depois Enter. Mantenha a janela se falhar.",
7459
+ "walk.openWindows": "Iniciar → buscar PowerShell → Abrir (sem administrador)",
7460
+ "prompt.windowsEnvironment": "Confira Windows 11, PowerShell 5.1+, Node.js >=24, npm.cmd e MCP do Agent. Use PowerShell normal, não WSL ou npm.ps1. Confira cada $LASTEXITCODE; pare se diferente de zero. Não altere políticas nem eleve privilégios. Use Node.js oficial.",
7461
+ "prompt.windowsBackground": "Revise o plano, instale explicitamente a tarefa de logon do usuário e verifique o estado. Sem AD, administrador, senha ou alteração de políticas. Preserve falhas e ofereça primeiro plano. DPAPI local e ACLs NTFS protegem a identidade; não mova seus arquivos. Sem relatos após logoff, em suspensão ou offline."
5879
7462
  }
5880
7463
  };