@Vinkyu567: https://x.com/Vinkyu567/status/2079475456290816050
摘要
这篇文章指导Windows用户将默认终端从Windows PowerShell 5.1升级到PowerShell 7,以提升与AI agent的兼容性,减少编码和命令执行错误。
查看缓存全文
缓存时间: 2026/07/21 18:48
升级你的 Windows,做 AI 的上等公民
用过 Windows 和 mac 的都知道这两个操作系统在 agent 使用上的体感天差地别
最大的根源在于,windows 的命令行工具powershell 对于 AI 不够友好,因为 AI 大模型训练语料里面的命令行操作大部分都是Linux和macos风格的
导致我们经常在windows 上使用agent 的时候会经常报错,平白无故浪费了token
这篇文章就教你如何升级自己的 windows 也让我们windows用户感受下mac电脑上使用 agent 的丝滑操作
先认清三个名字:
名称它是什么启动命令你该怎么用Windows PowerShell 5.1Windows 自带的旧版 Shellpowershell 或 powershell.exe留给旧模块和系统兼容PowerShell 7建立在现代 .NET 上的新版本pwsh 或 pwsh.exe日常 AI、开发和自动化优先使用Windows Terminal装载不同 Shell 的终端窗口wt把 PowerShell 7 设为默认配置文件
对于我们绝大多数人来说,我们的电脑上安装的都是 Windows PowerShell 5.1,一套 2016 年发布、建立在旧版 .NET Framework 上的命令环境。
PowerShell 5.1 是 Windows 的系统组件,承担着老模块兼容任务。但拿它运行今天的 AI CLI、npm 脚本和新教程,环境摩擦会明显增加。Windows PowerShell 5.1 的多个命令保留了不同的旧式默认编码。文件、管道、日志和外部程序混在一起时,中文内容可能出现乱码,JSON 或配置文件也可能被写成下游工具不接受的编码。
PowerShell 7 把更多默认场景统一到 UTF-8 No BOM。它不能消灭所有编码问题,但能减少一批常见冲突。
因此我们需要把日常终端升级到 PowerShell 7。
首先来检查一下,我们电脑上面的 powershell 到底是那个版本的,win+R 快捷键唤醒运行窗口,然后输入 powershell 打开对应窗口
在powershell里面输入:
$PSVersionTable.PSVersion
可以清楚看到我们目前还是PowerShell 5.1 的版本
接下来我们将正式安装 PowerShell 7
1️⃣ 检查 WinGet
打开 Windows Terminal、命令提示符或现有 PowerShell,执行:
winget –version
能返回版本号,就可以继续。
如果系统提示找不到 winget,先在 Microsoft Store 更新或安装微软的“应用安装程序(App Installer)
2️⃣ 安装 PowerShell 7
先确认 WinGet 找到的是微软官方包:
winget search –id Microsoft.PowerShell –exact
然后安装:
winget install –id Microsoft.PowerShell –source winget
安装过程可能弹出用户账户控制窗口。确认发布者与包 ID 后再继续。
已经安装过 PowerShell 7,可以用下面的命令检查并升级:
winget list –id Microsoft.PowerShell –upgrade-available winget upgrade –id Microsoft.PowerShell
3️⃣ 用 pwsh 启动新版本
安装完成后,关闭当前终端窗口,重新打开一个窗口,输入:
pwsh
再检查:
$PSVersionTable.PSVersion $PSVersionTable.PSEdition $PSHOME
可以看三个信号:
-
主版本显示 7。
-
PSEdition 显示 Core。
-
$PSHOME 指向 PowerShell 7 的安装目录,例如 Program Files\PowerShell\7 或 WindowsApps 下的 PowerShell 包目录。
如果 pwsh 提示找不到命令,先重启 Windows Terminal、VS Code、Cursor 或正在使用的 AI 客户端。安装程序更新了 PATH,旧进程通常看不到新的环境变量。
仍然找不到时运行:
where.exe pwsh Get-Command pwsh -All
到此为止,PowerShell 7 的安装已经全部搞定了
4️⃣ 把 PowerShell 7 设成默认终端
这里以 codex 为例子,直接告诉codex,让其检查
请执行以下命令,告诉我当前 PowerShell 的版本和可执行文件路径: $PSVersionTable.PSVersion (Get-Process -Id $PID).Path
如果 Codex 仍然显示 PowerShell 5.1
在你的全局 AGENTS.md 中加入:
Windows Shell 规则
-
当前系统已经安装 PowerShell 7。
-
所有 PowerShell 命令必须使用
pwsh.exe执行。 -
不要使用旧版
powershell.exe。 -
执行 PowerShell 命令时,使用以下形式:
pwsh.exe -NoLogo -NoProfile -Command “<命令>”
-
第一次执行命令前,先运行:
pwsh.exe -NoLogo -NoProfile -Command “$PSVersionTable.PSVersion”
-
如果 PowerShell 7 不可用,停止执行并告知用户,不要自动退回 Windows PowerShell 5.1。
相似文章
@ChrisWangwy: https://x.com/ChrisWangwy/status/2064589910485684254
微软发布了 Coreutils for Windows,将 78 个类 Unix 命令引入 Windows 原生终端,方便 AI Agent(如 Hermes、Claude Code)在 Windows 下直接使用 grep、ls 等命令,减少翻译开销。文章详细介绍了安装步骤、别名冲突和验收方法。
@SaitoWu: https://x.com/SaitoWu/status/2069076084495438186
文章介绍了使用 Codex AI agent 自动将终端 shell 配置从 Oh My Zsh 迁移到 Zinit + Starship + Rust 工具链的过程,展示了 AI 在执行备份、密钥隔离、性能分析等工程化步骤中的能力,最终实现了启动速度的数量级提升。
@GitHub_Daily: 微软最近开源一个 AI 终端:Intelligent Terminal,基于 Windows Terminal 开发,在终端里内置 AI 助手。 可以自动感知命令行的输出,报错时一键把上下文丢给 AI 分析,不用手动复制粘贴,还能直接帮执…
Microsoft open-sourced Intelligent Terminal, an AI-powered terminal based on Windows Terminal that integrates AI assistants to help with command-line errors and tasks.
@Chenzeze777: Windows 要慌了 有人写了一个开源 PowerShell 脚本,51 K+ stars,把 Windows 自带的所有垃圾——预装应用、广告追踪、Copilot、Recall、Bing 搜索——一条命令全清干净 微软往你电脑里塞 C…
Win11Debloat 是一个开源的 PowerShell 脚本,可一键移除 Windows 11 的预装应用、广告追踪、Copilot、Recall 等,恢复系统纯净度。
@wsl8297: 微软开源了一个更顺手的 VS Code 插件:AI Toolkit,把 Agent 应用开发从搭环境到评估上线,一口气打通。 一个界面就够:模型挑选、Playground 试跑、Agent 搭建、批量对比、指标评测,全都集成在一起。 Gi…
微软开源了 VS Code 插件 AI Toolkit,将模型选择、Playground、Agent 搭建、批量测试和评估集成在一个界面中,简化 AI Agent 开发流程。