r
c8efbc2a90
refactor(servers): 行操作移除删除按钮
...
Nexus CI/CD / test (push) Waiting to run
Nexus CI/CD / e2e (push) Blocked by required conditions
Nexus CI/CD / deploy (push) Blocked by required conditions
Nexus Pre-commit Checks / quick-check (push) Waiting to run
删除改由批量栏「批量删除」执行,降低误删风险。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 11:35:47 +08:00
r
2cb0b57281
fix(servers): 提高行操作与批量栏文字可读性
...
tonal/flat 实底按钮、加大字号字重,恢复一键登录全文。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 11:32:32 +08:00
r
80d6aad54b
style(servers): 行操作与批量栏分组图标化 UI
...
outlined 按钮组 + 批量栏运维/Agent/其他分区展示。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 11:29:27 +08:00
r
58843a1ef4
refactor(servers): 精简行操作并收拢批量诊断
...
一键登录文案、移除监测/站点行按钮,检测路径与诊断移至批量栏。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 11:23:39 +08:00
r
7add9384c1
feat: 终端路由保持会话 + 服务器列表按创建时间倒序
...
keep-alive 下终端切换不 dispose SSH;列表/推送/终端默认 newest first。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 11:11:00 +08:00
r
6720ca3474
feat(servers): 主列表宝塔登录 + 健康检查写心跳
...
主服务器列表操作列一键登录宝塔;SSH 健康检查写入 Redis 心跳并刷新在线状态。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 11:05:43 +08:00
r
2e797f86b7
feat(btpanel): 服务器列表增加在线状态列
...
批量读 Redis 心跳返回 status,前端与主服务器列表样式一致。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 10:54:04 +08:00
r
5ea5c3a411
fix(btpanel): 一键登录 URL 去掉安全入口路径
...
tmp_token 登录在 :port/login,非 :port/{admin}/login,后者 nginx 404。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 10:46:22 +08:00
r
3195787461
fix(btpanel): 非 root SSH bootstrap 自动 sudo 提权
...
ubuntu 等用户免密 sudo 下宝塔已装但脚本未提权导致 ssh_command_failed;附 ssh_timeout 运维清单。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 10:40:46 +08:00
r
97c47a120f
fix(btpanel): 面板登录 URL 使用宝塔 pyenv 执行 tools.py
...
系统 python3 缺 psutil 导致 SSH 回退失败;相对 tmp_token 自动拼安全入口。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 10:16:33 +08:00
r
028dc2c8b6
fix(btpanel): API base_url 不含安全入口路径
...
宝塔 API 走 :port/system,安全入口仅用于浏览器登录;修复代理 404。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 10:10:34 +08:00
r
51b6d0cdff
fix(btpanel): API 签名改为 md5(time+token)
...
与面板 common.py 一致;原双重 md5 导致密钥校验失败。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 10:05:39 +08:00
r
e5929694c3
fix(btpanel): bootstrap 写入 panel/config/api.json
...
宝塔读取 config/api.json 而非 data/api.json,错误路径导致白名单与 token 不生效。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 10:01:40 +08:00
r
b768da3ab8
fix(btpanel): bootstrap 误判 exit_code=0 为失败
...
Python 中 0 or 1 为 1,导致 SSH 成功仍报 ssh_command_failed。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:52:22 +08:00
r
45ca57bf3f
fix(ssh): 连接前从 preset_id 解析 SSH 密码
...
修复宝塔批量引导因仅关联密码预设、行内 password 为空而全部 ssh_command_failed。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:47:22 +08:00
r
14bbfc4ab7
fix(btpanel): 批量获取时跳过已配置 API 的服务器
...
前端仅提交未配置 ID;后端 batch 任务对已配置记为跳过。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:39:57 +08:00
r
770469c4aa
fix(btpanel): 批量勾选提交真实 server id
...
v-data-table 勾选值为 id 数组,修复误传 undefined 导致 422。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:37:04 +08:00
r
b4436143a6
feat(btpanel): 服务器列表批量 SSH 获取 API
...
支持全部未配置与多选批量引导;未配置 API 时禁用一键登录。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:34:02 +08:00
r
7c99298419
fix(btpanel): 连接配置页始终显示全局设置
...
未选服务器时不再隐藏整页内容,避免白屏。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:30:03 +08:00
r
461ac81221
fix(btpanel): 接受相对路径 tmp_token 登录链接
...
宝塔 tools.py 常返回 /login?tmp_token=...,现与 base_url 拼接为完整 URL。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:26:57 +08:00
r
1c4c5af0e4
feat(btpanel): 入口改为服务器列表
...
Nexus CI/CD / test (push) Waiting to run
Nexus CI/CD / e2e (push) Blocked by required conditions
Nexus CI/CD / deploy (push) Blocked by required conditions
Nexus Pre-commit Checks / quick-check (push) Waiting to run
面板登录页改为全量表格与行内一键登录,侧栏首项更名为服务器列表。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:23:26 +08:00
r
d00294c86d
docs(btpanel): 部署审计与 changelog
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:16:54 +08:00
r
82426b1941
feat(btpanel): 独立宝塔模块与 SSH 自动获取 API
...
新增侧栏「宝塔面板」菜单、代理 API 与连接配置页;通过 SSH 读写子机
api.json 自动写入凭据,5 分钟后台重试,含审计修复、检测缓存与并发锁。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 09:13:14 +08:00
r
ebab836554
docs: 审计文件清单补全 btpanel client
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 08:14:26 +08:00
r
ccc5419369
chore: 部署门控 — 今日 changelog/audit、bandit nosec、shell CRLF
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 08:14:05 +08:00
r
d8ec4f1af4
fix: 登录白名单校验改用 LOGIN_ALLOWED_IPS 单一数据源
...
多 worker 下订阅刷新后 UI 已更新但登录仍被拒;另修复刷新失败时前端误清空节点列表。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-21 08:12:52 +08:00
r
9c9a51263c
chore: 本地快照 — 终端 UI、服务器 site_url、后台任务与 Agent 导航
...
汇总未提交工作区:Servers 列表 site_url 链接、终端页与选机器 UI、SSH 连通性与 Telegram 通知、agent/offline/unset_path 后台调度与 gate_ai_review 门控;更新 AGENTS 与 agent-exploration 规则(仅本机 commit);同步 web/app 构建产物与相关文档。
2026-06-18 06:01:50 +08:00
Nexus Agent
1a79c0fbfb
feat(watch): Baota-style server detail drawer
...
Expose load/process counts, per-core CPU, memory MB breakdown, and
separate CPU/MEM top-5 processes from SSH probes in the detail drawer.
2026-06-14 06:23:45 +08:00
Nexus Agent
86a45612c8
fix(ops): writable Layer3 state dir for cron user
...
Fall back to ~/.nexus/layer3-health when deploy/var is root-owned.
2026-06-14 04:23:20 +08:00
Nexus Agent
05b0fde197
fix(ops): Layer3 health_monitor state dir and Telegram heredocs
...
Move fail counters under deploy/var/layer3-health, use docker_cmd with
sudo fallback, and refactor alert messages to avoid quote parse errors.
Also fix watch Sparkline rgba gradients, hide empty probe pagination,
and ship pending slot pause/menu UI polish.
2026-06-14 04:20:55 +08:00
Nexus Agent
c91cb1cd9e
fix(watch): polish paused slot UI and header action spacing
...
Replace the large dashed pause panel with dimmed rings and a resume CTA,
and add gap between the monitoring switch and remove button.
2026-06-14 03:34:17 +08:00
Nexus Agent
3faa7a4f1c
fix(watch): align four metric rings in one row
...
Move load ring beside CPU/mem/disk so the slot card matches Baota layout.
2026-06-14 03:25:10 +08:00
Nexus Agent
b5419cd2c0
feat(watch): SSH-first probe, drop IO metrics, Baota ring UI
...
Align live monitoring with Baota: always SSH psutil for CPU/mem/load,
remove network/disk IO rates, and show metrics as circular rings in slots.
2026-06-14 03:19:43 +08:00
Nexus Agent
5c508ed14c
fix(watch): eager probe on resume so metrics appear immediately
...
After pausing clears Redis snapshots, resuming or adding pins now triggers
an immediate probe before list_slots returns, with frontend refresh fallback.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-14 02:53:02 +08:00
Nexus Agent
825d0297c4
feat(watch): show centered enable switch when slot monitoring is paused
...
Paused slots now prompt with a large middle switch before showing CPU and memory metrics; header switch only appears while monitoring is on.
2026-06-14 00:38:44 +08:00
Nexus Agent
4bbc47faab
feat(watch): polish monitoring history UI with themed charts and empty states
...
Align watch metrics pages with dashboard fleet trends: theme-aware ECharts,
skeleton loaders, metric color thresholds, and compact I/O layout on slot cards.
2026-06-13 23:29:58 +08:00
Nexus Agent
ba7c790f38
feat(watch): show probe history in Beijing time and retire remote browser
...
Monitoring history charts and tables now format UTC timestamps as Asia/Shanghai.
Remove Playwright worker, global browser panel, and related API routes; open site URLs in a new tab instead. Fix chain test Redis pipeline mock.
2026-06-13 16:32:02 +08:00
Nexus Agent
adee25deb6
fix(watch): repair SSH probe script broken by embedded quote in os_release parse
...
Use chr(34) inside the bash-wrapped python -c probe so monitor slots work again after hardware detail rollout.
2026-06-13 16:10:32 +08:00
Nexus Agent
4acbf04322
feat(watch): show detailed CPU, memory, and disk specs on monitor slots
...
Expose used vs total capacity, CPU model, swap, OS uptime, and 1/5/15 load from SSH probes and agent heartbeats.
2026-06-13 14:12:09 +08:00
Nexus Agent
feb776616f
docs: add 2026-06-13 audit/changelog for files new-file fix deploy gate.
2026-06-13 09:09:01 +08:00
Nexus Agent
72042598b0
Fix files page new-file flow and SFTP parent directory creation.
...
Nexus CI/CD / test (push) Waiting to run
Nexus CI/CD / e2e (push) Blocked by required conditions
Nexus CI/CD / deploy (push) Blocked by required conditions
Nexus Pre-commit Checks / quick-check (push) Waiting to run
Show a clear prompt when no server is selected, wait for the editor workbench before openFile, and mkdir -p parent paths before SFTP writes.
2026-06-13 09:08:17 +08:00
Nexus Agent
e95e522d4d
docs(audit): gate checklist for Telegram group chat ID detection
2026-06-13 02:05:27 +08:00
Nexus Agent
40cba6a567
fix(settings): detect Telegram group chat IDs via my_chat_member
...
Extend getUpdates parsing for group joins and update settings UI hints so Chat ID detection works for supergroups, not only private DMs.
2026-06-13 02:04:59 +08:00
Nexus Agent
821cf12ade
fix(terminal,alerts): quick-cmd enter on send and offline Telegram channel
...
Append CR when executing quick commands (fixes trim stripping saved \r) and
allow optional dedicated Telegram bot for server offline alerts only.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-13 01:45:55 +08:00
Nexus Agent
deafd46a0e
docs(reports): 文件管理移除下载生产验证记录
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-12 06:52:47 +08:00
Nexus Agent
dbb6bc4a55
fix(browser): 门控 — Worker TLS verify 可配置、审计清单与 shell LF
...
默认校验 Worker HTTPS 证书;审计文件补全变更清单;docker-entrypoint.sh 改为 LF。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-12 06:50:06 +08:00
Nexus Agent
e833b923c8
feat(browser): 远程浏览器 Worker 桥接与顶栏固定悬浮窗
...
接入 Playwright Worker、会话 WebSocket 与全局浏览器面板(固定于 App Bar 下);
含验证码 stealth、设置项默认音与 URL 安全校验;附带 worker 部署与设计文档。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-12 06:49:20 +08:00
Nexus Agent
2b0413c43e
feat(files): 移除文件管理下载入口
...
去掉行内与右键下载;大文件提示改为使用终端。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-12 06:32:09 +08:00
Nexus Agent
a51a5c5341
fix(files): 修复下载流式 SFTP 并收紧列表行高
...
下载在独立 SFTP 会话中流式传输;文件/终端列表与服务器页一致的紧凑操作与行高。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-12 05:50:09 +08:00
Nexus Agent
80aaf855a3
feat(terminal): 右侧服务器列表增加搜索
...
侧栏复用 PickerSearch,按名称/域名筛选并支持搜索历史。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-12 05:46:34 +08:00