Skip to content

Commit c7d2ff6

Browse files
committed
Bump to 1.11.0: a minor release per the RELEASE.md SemVer policy
The next release adds a new cmdlet (Restart-MCPServer) plus resume-safe new-session console handling and reuse-first acquisition: backward-compatible new behavior, which RELEASE.md classifies as MINOR, not a patch. 1.10.1 was never published (only the local psd1 value), so 1.10.0 -> 1.11.0 leaves no visible gap. - psd1 + both csproj -> 1.11.0 / 1.11.0.0 (version-consistency gate passes) - CHANGELOG: rename the section to 1.11.0 and add Behavior Changes for the new-session treatment and reuse-first acquisition Suite green: net9.0 341, net8.0 181.
1 parent ce71a48 commit c7d2ff6

4 files changed

Lines changed: 9 additions & 5 deletions

File tree

CHANGELOG.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,15 @@ without a matching section here fails the workflow on purpose. Add new version
1717
sections at the TOP of the file; keep older sections for history.
1818
-->
1919

20-
# Version: 1.10.1
20+
# Version: 1.11.0
2121

2222
## New Features
2323
- **`Restart-MCPServer` command** to retry starting the console engine in the affected console — no need to restart PowerShell.
2424

25+
## Behavior Changes
26+
- **Resume-safe console handling (new server session).** On the proxy's first console attach after a (re)start — the resume / cold-start boundary, where the runtime is fresh but the AI still carries cwd/variable/module assumptions from earlier in the conversation — `invoke_expression` normalizes the working directory to `$HOME` and announces a **new server session** (with a one-line restore hint for a reclaimed console's prior cwd), while `get_current_location` / `start_console` preserve the console's current cwd and only announce. This stops a resumed session from silently running at an unexpected cwd or relying on state that didn't carry over.
27+
- **Reuse-first console acquisition.** Without a `reason`, `start_console` now reclaims any available console — an owned standby **or** an unowned one (a prior session's released console, or a user-started one) — and only launches a new window when nothing is available. Previously an unowned console was reclaimed only when `start_location` was given; that guard is gone (the new-session normalization above handles the cwd concern), so the desktop no longer fills with console windows.
28+
2529
## Bug Fixes
2630
- **Reduced an AMSI / antivirus false positive that could block startup (#50).** The embedded polling engine no longer uses `Invoke-Expression`. Its three call sites only wrapped literal strings (cmdlet/type resolution is already deferred to runtime, and each was inside `try/catch`), so they added nothing but the single highest-weighted AMSI heuristic token — which helped the engine script get flagged as malicious at `Import-Module`. They are now direct calls; the engine contains zero `Invoke-Expression`.
2731
- **No more spurious "cwd changed" warnings caused by the AI's own work.** A directory change left by an AI command (including one harvested in the background via `wait_for_completion`) is now recorded, so the next command no longer misreads it as a user-typed `cd`. Paths that differ only by a trailing separator (`C:\proj` vs `C:\proj\`) no longer trip a false drift warning either.
@@ -36,7 +40,7 @@ sections at the TOP of the file; keep older sections for history.
3640
## Internal
3741
- **Hardened console launching:** the Windows init command is built from the shared helper (escaping the agent id like the other platforms), console-readiness checks go through a single `PipeStatus.IsReady` definition, and dead launcher code was removed.
3842
- **Release safety gates:** tagged releases now run the full unit suite (net8.0 + net9.0) and an `Import-Module` smoke test of the assembled package before publishing to PSGallery; a missing CHANGELOG section fails fast; PRs are gated and the polling engine is checked to stay free of `Invoke-Expression` (the #50 regression guard).
39-
- **Expanded automated tests:** multi-console identity/routing, per-agent isolation, cross-AI console visibility (via real named pipes), cwd-drift detection and normalization, and engine graceful-degradation.
43+
- **Expanded automated tests:** multi-console identity/routing, per-agent isolation, cross-AI console visibility (via real named pipes), cwd-drift detection and normalization, the resume / first-attach new-session treatment, and engine graceful-degradation.
4044

4145
# Version: 1.10.0
4246

PowerShell.MCP.Proxy/PowerShell.MCP.Proxy.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<TargetFramework>net9.0</TargetFramework>
66
<ImplicitUsings>enable</ImplicitUsings>
77
<Nullable>enable</Nullable>
8-
<Version>1.10.1.0</Version>
8+
<Version>1.11.0.0</Version>
99
<NoWarn>$(NoWarn);NETSDK1206</NoWarn>
1010

1111
<!-- Single File デプロイ設定 -->

PowerShell.MCP/PowerShell.MCP.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<TargetFrameworks>net8.0;net9.0</TargetFrameworks>
55
<ImplicitUsings>enable</ImplicitUsings>
66
<Nullable>enable</Nullable>
7-
<Version>1.10.1.0</Version>
7+
<Version>1.11.0.0</Version>
88
<NoWarn>$(NoWarn);NETSDK1206</NoWarn>
99
</PropertyGroup>
1010

Staging/PowerShell.MCP.psd1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
RootModule = 'PowerShell.MCP.psm1'
1313

1414
# Version number of this module.
15-
ModuleVersion = '1.10.1'
15+
ModuleVersion = '1.11.0'
1616

1717
# Supported PSEditions
1818
CompatiblePSEditions = @('Core')

0 commit comments

Comments
 (0)