Skip to content

Commit 562fe1b

Browse files
committed
release: v5.38.5 — Windows Task Scheduler 支持
feat: schedule daemon install 支持 Windows (schtasks) fix: 跨平台调度: macOS LaunchAgent / Linux cron / Windows TaskScheduler
1 parent eb17d4e commit 562fe1b

2 files changed

Lines changed: 10 additions & 1 deletion

File tree

‎package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "speccore",
3-
"version": "5.38.4",
3+
"version": "5.38.5",
44
"description": "SpecCore - Code by Spec, Not by Vibe.",
55
"main": "dist/index.js",
66
"types": "dist/index.d.ts",

‎src/commands/schedule.ts‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -373,6 +373,15 @@ async function installSystemSchedule(): Promise<void> {
373373
require('child_process').execSync(`(echo "${cronEntry}") | crontab -`, { stdio: 'pipe' }).toString();
374374
logger.success('✅ 已安装 crontab 调度');
375375
logger.info(' 每5分钟检查到期任务');
376+
} else if (process.platform === 'win32') {
377+
const taskName = 'SpecCoreDaemon';
378+
const cmdEscaped = `"${process.execPath}" "${join(__dirname, '..', '..', 'dist', 'cli.js')}" schedule daemon --foreground`;
379+
// 每5分钟执行
380+
const schCmd = `schtasks /create /tn "${taskName}" /tr "${cmdEscaped}" /sc minute /mo 5 /f /ru "INTERACTIVE"`;
381+
require('child_process').execSync(schCmd, { stdio: 'pipe' });
382+
logger.success('✅ 已安装 Windows Task Scheduler');
383+
logger.info(` 任务名: ${taskName}`);
384+
logger.info(' 每5分钟检查到期任务');
376385
} else {
377386
logger.warn('⚠️ 当前平台不支持系统级调度');
378387
logger.info(' 请使用 speccore schedule daemon start 手动启动');

0 commit comments

Comments
 (0)