# Changelog — 脚本执行内置分批

**日期**: 2026-05-22  
**类型**: 功能  
**上级索引**: [2026-05-22-script-execution-platform.md](./2026-05-22-script-execution-platform.md)  
**SSOT**: [docs/project/script-execution.md](../project/script-execution.md)

## 变更摘要

一次可选全站服务器；超过 `batch_size` 时后端按批顺序执行，前端多轮 `POST /exec` 合并为一条页顶状态卡。

## 配置

| 项 | 默认 | 位置 |
|----|------|------|
| `NEXUS_SCRIPT_EXEC_BATCH_SIZE` | 50 | `.env` / `server/config.py` |
| `NEXUS_SCRIPT_EXEC_CONCURRENCY` | 10 | 同上 |

## API / 前端

- `GET /api/scripts/exec-config` → `{ batch_size, concurrency }`
- `ScriptService.execute_command` 按批执行，批内 `Semaphore(concurrency)`
- `scripts.html`：全选、分批提示、「第 x/y 批」、长任务勾选

## 涉及文件

- `server/config.py`
- `server/application/services/script_service.py`
- `server/api/scripts.py`
- `web/app/scripts.html`

## 用法

- 一次可全选所有服务器；超过 50 台自动分多批
- 长任务：`timeout` 仅限制点火命令（建议 60～120s）
