Skip to content

Commit 3d9314a

Browse files
yotsudaclaude
andcommitted
chore(release): v1.8.0
Bump csproj + psd1 to 1.8.0 and prepend the 1.8.0 entry to Staging/ReleaseNotes.md. The story for 1.8.0 is "the AI sees what the script does." Five output channels that pre-1.8 silently bypassed the AI's view — Write-Verbose, Write-Debug, [Console]::* direct writes, native exe stderr, What if: text and direct \$Host.UI.WriteLine — all reach the AI now, and Output / Error / Warning / Verbose / Debug interleave in a single chronological pipeline so an event's position in the run is preserved instead of collected at the end of a separate "=== ERRORS ===" section. Plus the busy-console auto-route folds the old "Pipeline NOT executed - verify and re-execute" round-trip into a single tool call, and a new LastExit: N status-line tag stops the green ✓ badge from hiding non-zero exits from native exes. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 02241b1 commit 3d9314a

4 files changed

Lines changed: 27 additions & 3 deletions

File tree

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.7.7.0</Version>
8+
<Version>1.8.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.7.7.0</Version>
7+
<Version>1.8.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.7.7'
15+
ModuleVersion = '1.8.0'
1616

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

Staging/ReleaseNotes.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,27 @@
1+
# Version: 1.8.0
2+
## New Features
3+
- **Hybrid stream capture: chronological pipeline replaces bucketed sections.** Output, Error, Warning, Verbose, and Debug records now interleave in a single time-ordered text block in the AI response — the AI sees each event in its actual position relative to surrounding output. Pre-1.8 the four separate `=== ERRORS ===` / `=== WARNINGS ===` etc. sections lost the "warning fired between step-A and step-B, then the error hit" context.
4+
- **Five output channels that used to bypass the AI's view are now captured:**
5+
- `Write-Verbose` (was the AI's blind spot that the tool description explicitly called out as "Verbose and Debug streams are NOT visible to you").
6+
- `Write-Debug` (same).
7+
- `[Console]::WriteLine` / `[Console]::Error.WriteLine` direct writes (and any .NET interop that writes to `System.Console` without going through PowerShell streams) → new `=== CONSOLE.OUT (direct) ===` / `=== CONSOLE.ERR (direct) ===` sections.
8+
- Native exe stderr (`cmd /c "..."`-style) → ErrorRecord in the chronological pipeline, in emit order alongside surrounding output.
9+
- `What if:` text from `$PSCmdlet.ShouldProcess` and direct `$Host.UI.WriteLine` calls → new `=== HOST.UI (direct) ===` section.
10+
- **Auto-route on busy console.** When `invoke_expression` finds the chosen PowerShell console busy with a user-typed or another AI command, the proxy now spawns a new console at the *source's cwd* and re-runs the pipeline there in the same tool call. Pre-1.8 the AI got `Pipeline NOT executed - verify location and re-execute` and had to re-send manually with whatever cwd they wanted, costing two MCP round-trips for every busy race.
11+
- **`LastExit: N` status-line tag** surfaces the case where a pipeline overall succeeded (`$?` is true) but a native exe within it returned non-zero. The green ✓ badge no longer silently hides those signals.
12+
13+
## Improvements
14+
- Real-time streaming preserved through the new capture wiring — items render to the visible console as they arrive, not collected and rendered after the pipeline finishes.
15+
- Color preserved on the visible console for every stream type: red `Write-Error`, yellow `WARNING:`, yellow `VERBOSE:` / `DEBUG:` prefixes, and `Write-Host`'s user-chosen `ForegroundColor`.
16+
- `Write-Progress` is suppressed during AI-initiated commands. Real-time bar text is unreadable to the AI as a snapshot, and ConPTY was leaking progress redraw bytes into subsequent commands' captured output. User-typed commands at the visible terminal keep their normal progress display.
17+
18+
## Internal
19+
- New `TeeTextWriter` for `[Console]::Out` / `[Console]::Error` tee, written to in parallel with the original streams so visible-console output is unaffected.
20+
- New `TeePSHostUserInterface` decorator wrapping `$Host.UI` (reflected swap on `_externalUI`) for host-UI-level capture of `Write/WriteLine` paths that bypass both PowerShell streams and `[Console]::Out`.
21+
- Stream merge map widened to `2>&1 3>&1 4>&1 5>&1`. Stream 6 (Information) remains unmerged so `Write-Host`'s user-chosen `ForegroundColor` survives to the visible console.
22+
23+
---
24+
125
# Version: 1.7.7
226
## New Features
327
- Authenticode-signed Windows binaries (`PowerShell.MCP.dll`, `bin/win-x64/PowerShell.MCP.Proxy.exe`) so the module is accepted on WDAC / Device Guard machines with a one-time trust of the signer. Closes #46.

0 commit comments

Comments
 (0)