What's Changed
Quick Launcher
- Cold-start flash fixed. The "white card" that briefly appeared under the search field on first open is gone — pre-warmed the system text-input service at app launch + tightened the reveal timing.
- ⌘O opens the selected task in the main window.
- ⌘, opens Settings.
- Three-way "Show tasks" filter: All / Scheduled only / Manual only.
- Quick Launcher gets its own Settings tab.
Menu Bar
- Status item icon now indicates running state — outline checkmark badge → filled checkmark when scripts are running. Same SF Symbol family means zero icon drift on state change.
- Icon size bumped slightly for better visual weight.
- Scheduled tasks: max 3 shown. Manual scripts: max 5 shown.
- Footer: dividers replaced with hover backgrounds matching the task rows. Whole row clickable to start/stop with pointer cursor.
- Manually-executed tasks bump to the top of the lists in sidebar / Quick Launcher / menu bar. Long-running dev servers surface immediately on play. Scheduled cron runs don't churn the order.
- Live "已运行 5m 23s" indicator in Quick Launcher row + detail-page schedule card while a task is running.
- Sidebar "X days ago" timestamp now follows actual run activity (was stuck on creation date).
Log Streaming (Manual Tasks)
- Manual task output streams to
~/Library/Logs/TaskTick/<task-name>.log(truncate per run).tail -Fit from a terminal or drop it into Console.app for live monitoring. - ANSI color codes stripped before writing for clean output.
- Toggleable from Settings → Logs. Detail page exposes Reveal-in-Finder / Open-in-Console / Copy-Path actions.
Lifecycle Hardening
- No more orphan processes. Quitting TaskTick (or
pkill, Ctrl+C) now cleanly terminates every running script and its descendants. Confirmation dialog warns before killing in-flight work. - Each spawned script gets its own process group — per-task stop and global quit both reach grandchildren (npm → node, make → cc, etc.).
- Signal handlers (SIGTERM / SIGINT / SIGHUP) added so
pkilland Ctrl+C trigger the same graceful shutdown as the menu bar Quit button.
更新内容
快速访问(Quick Launcher)
- 修复冷启动闪屏。 第一次打开时搜索框下面那张"白卡片"已消除 —— 提前在 App 启动时唤醒系统文本输入服务,配合显示时序优化。
- ⌘O 在主窗口中打开选中任务。
- ⌘, 打开设置。
- 任务范围三选一过滤器:全部 / 仅自动 / 仅手动。
- 快速访问独立成 Settings 一个 tab。
菜单栏
- 状态栏图标会随运行状态变化 —— 运行时角标从描线变为实心。同系列 SF Symbol,切换时图标位置完全不动。
- 图标尺寸稍微放大,视觉权重更协调。
- 列表上限:自动任务最多 3 个,手动脚本最多 5 个。
- 底部按钮去除分割线,改用悬浮高亮(和任务行风格一致)。整行可点击启动/停止,鼠标悬浮时显示小手光标。
- 手动执行的任务自动排到第一位(侧边栏、快速访问、菜单栏三处一致)。长跑 dev server 一点运行就立刻冒到顶。自动调度任务不会扰乱顺序。
- 任务运行时显示"已运行 5m 23s"实时计时(快速访问行 + 详情页调度配置)。
- 侧边栏"X 天前"时间戳现在跟随实际运行活动(之前一直显示创建时间)。
日志流式写文件(手动任务)
- 手动任务输出流式写入
~/Library/Logs/TaskTick/<任务名>.log(每次运行覆盖)。可在终端tail -F实时查看,也可拖进控制台 (Console.app) 监听。 - 写入前自动剥离 ANSI 颜色码,输出干净。
- 在 设置 → 日志 中可关闭。详情页提供"在 Finder 显示"/"在控制台打开"/"复制路径"按钮。
生命周期加固
- 不再产生孤儿进程。 退出 TaskTick(或
pkill/ Ctrl+C)时会干净地终止所有运行中的脚本及其子进程。如有正在运行的任务会弹出确认对话框。 - 每个脚本启动时独立进程组 —— 单任务停止和全局退出都能触达孙进程(npm → node, make → cc 等)。
- 添加 SIGTERM / SIGINT / SIGHUP 信号处理 ——
pkill和 Ctrl+C 与菜单栏退出按钮走同样的优雅关闭流程。
Full Changelog: v1.7.0...v1.7.1