diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..bb6ae8a --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,71 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [1.0.0] - 2026-05-25 + +### Added + +#### v1.0 — Core (14 tools) +- `windows_execute` — Execute shell commands (PowerShell, cmd, bash) with timeout and background support +- `windows_process_list` — List running processes with PID, CPU, memory, window title +- `windows_audio_get` — Get master volume, mute state, and default audio device +- `windows_audio_set` — Set volume (0-100), mute/unmute/toggle +- `windows_system_info` — Comprehensive system info (OS, CPU, RAM, disk, network, uptime) +- `windows_terminal_start` — Start persistent interactive terminal sessions (pwsh, cmd, bash, python, node, wsl) +- `windows_terminal_send` — Send input to a running terminal session +- `windows_terminal_read` — Read output with line pagination (supports negative offset for tail) +- `windows_terminal_list` — List all active terminal sessions +- `windows_terminal_kill` — Terminate a terminal session by PID +- `windows_file_read` — Read files with line pagination, image base64, binary detection +- `windows_file_write` — Write/append to files, auto-create parent directories +- `windows_file_edit` — Surgical find/replace with near-match suggestions +- `windows_search` — Search files by name (glob) or content (regex), uses ripgrep when available + +#### v1.1 — System Control (9 tools) +- `windows_process_kill` — Terminate processes by PID or name with force option +- `windows_service_list` — List Windows services with status, startup type, description +- `windows_service_control` — Start, stop, restart, enable, disable services +- `windows_audio_app_volumes` — List per-application audio sessions +- `windows_power_get` — Battery level, power plan, screen/sleep timeouts +- `windows_power_action` — Sleep, hibernate, lock, shutdown, restart, switch power plan +- `windows_network_info` — Adapters, IPs, DNS, gateway, Wi-Fi SSID/signal, connectivity +- `windows_drives` — List drives with type, label, capacity, free space, usage bar +- `windows_file_search` — Search files by name or content using PowerShell + +#### v1.2 — Desktop Automation (8 tools) +- `windows_display_get` — Resolution, refresh rate, scaling, multi-monitor layout +- `windows_display_set` — Change resolution, brightness +- `windows_screenshot` — Capture screen, window, or region as base64 PNG or file +- `windows_window_list` — List visible windows with title, PID, position, size, state, z-order +- `windows_window_control` — Minimize, maximize, restore, close, focus, move, resize, topmost +- `windows_clipboard_get` — Read clipboard (text, files, image as base64) +- `windows_clipboard_set` — Set clipboard text, file list, or clear +- `windows_notification_send` — Send Windows toast notifications + +#### v1.3 — Admin Tools (9 tools) +- `windows_task_scheduler_list` — List scheduled tasks with status, last/next run, triggers +- `windows_task_scheduler_manage` — Create, delete, enable, disable, run scheduled tasks +- `windows_registry_read` — Read registry keys, values, subkeys (HKLM/HKCU/HKCR) +- `windows_registry_write` — Write registry values with HKLM safety gate +- `windows_env_get` — Get environment variables with PATH parsing (user/system scope) +- `windows_env_set` — Set/remove env vars, append/prepend to PATH persistently +- `windows_startup_list` — List startup items from registry, startup folder, and task scheduler +- `windows_startup_manage` — Add, remove, enable, disable startup items +- `windows_mcp_config` — Get/set MCP configuration (blocked commands, allowed dirs, limits) + +#### v1.4 — Advanced (4 tools) +- `windows_installed_apps` — List installed applications from registry and Store +- `windows_dialog` — Show message boxes, input prompts, file/folder pickers +- `windows_network_connections` — Active TCP connections (netstat) with process info +- `windows_recycle_bin` — List, restore, empty, or get size of Recycle Bin + +### Architecture +- `src/shell.ts` — PowerShell/cmd/bash executor with persistent terminal session manager +- Win32 P/Invoke via inline C# for audio COM, window management, display control +- STA subprocess pattern for clipboard/audio COM threading +- Ring buffer (5000 lines) for terminal session output overflow protection +- MCP SDK `@modelcontextprotocol/sdk` v1.12.1 with stdio transport