温赖特
](https://github.com/civyk-official/civyk-winwright/releases)   
Windows自动化服务器 模型上下文协议. 约59个用于桌面(WPF、WinForms、Win32)、浏览器(通过CDP的Chrome/Edge)的整合工具, 以及系统管理——所有这些都可以通过MCP由AI代理访问。
用简单的英语描述测试——剩下的由AI代理完成
你用简单的英语编写测试用例。AI代理使用WinWright的MCP工具 发现UI控件,执行操作,并将所有内容记录为可移植的JSON脚本。
回放录制的脚本——不需要AI代理
一旦记录,脚本就会以确定性的方式运行 winwright run --没有AI代理, 无LLM调用,无令牌成本。每次的结果都是一样的。
如果UI布局发生变化,WinWright可以 自愈 自动断开选择器 (winwright heal).对于更大的UI重新设计,请AI代理更新脚本-- 仍然比从头开始重写测试快。
为什么这很重要:
- 节省人工智能成本 --代理记录一次,脚本免费回放
- 确定性结果 --每次运行都会产生相同的、可重复的结果
- 易于维护 --自愈选择器和人工智能辅助脚本修复
目录
快速开始
安装、配置MCP客户端,然后让代理执行以下操作:
启动记事本,键入“来自WinWright的Hello”,然后读回您键入的内容
代理调用WinWright工具并返回结果:
ww_launch → { "processId": 12840, "mainWindowTitle": "Untitled - Notepad" }
ww_type → { "success": true }
ww_get_value → { "value": "Hello from WinWright" }每个工具都返回结构化的JSON。代理决定调用哪些工具以及调用顺序-- 你用通俗易懂的语言描述目标。
安装
Claude代码插件
在Claude Code内部,添加市场并安装:
/plugin marketplace add civyk-official/civyk-winwright
/plugin install winwright@civyk-winwright插件的安装脚本会自动下载最新的二进制文件。
注: WinWright已提交到官方的Claude Code插件目录,正在等待审查。在获得批准之前,请使用上述市场命令进行安装。
二进制下载
下载自 :
| 资产 | 架构 |
|---|---|
winwright-*-win-x64.zip | 英特尔/AMD 64位 |
winwright-*-win-arm64.zip | ARM64(Surface Pro等) |
MCP客户端配置
克劳德代码/VCode(stdio)
{
"servers": {
"winwright": {
"type": "stdio",
"command": "C:/path/to/Civyk.WinWright.Mcp.exe",
"args": ["mcp"]
}
}
}克劳德代码/VCode(HTTP)
先启动服务器: Civyk.WinWright.Mcp.exe serve --port 8765
{
"servers": {
"winwright": {
"type": "http",
"url": "http://localhost:8765/mcp"
}
}
}克劳德桌面版
{
"mcpServers": {
"winwright": {
"command": "C:/path/to/Civyk.WinWright.Mcp.exe",
"args": ["mcp"]
}
}
}用例
每张卡片都链接到一个详细的演练, 以及示例输出。浏览所有指南 文档/用例/.
CI的脚本化UI测试自动化
记录一次AI会话——代理发现UI、执行操作、嵌入断言-- 然后导出一个可移植的JSON脚本,该脚本在没有AI代理的情况下在CI中回放。描述你的应用程序 或者粘贴您现有的手动测试套件;代理会自动编写脚本。
自主桌面自动化
让AI代理访问您的桌面。它启动应用程序,在它们之间移动数据, 填写表单,并截取屏幕截图进行验证——无需编写或维护脚本。
遗留应用程序数据提取
许多企业应用程序没有API。如果Windows UI自动化可以看到控件, WinWright可以读取它的值。从从未为集成而构建的应用程序中提取数据。
用于重复任务的脚本化桌面自动化
记录一次重复的日常工作流程。导出为RPA脚本并按需回放-- 录制后不需要AI代理。非常适合报告导出、数据导入、, 以及任何每次都以相同方式运行的多步骤任务。
AI驱动的UI测试
AI代理会探索您的WinForms或WPF应用程序,查找元素并断言状态。 无需维护脆弱的XPath选择器——代理会在UI更改时进行调整。
批量数据验证
自动通过50多条记录驱动应用程序。将每个显示的值与 参考表,并获得包含差异详细信息的结构化通过/失败报告。
跨应用程序工作流
自动化跨桌面应用程序和浏览器的工作流程——从会计应用程序读取, 提交到门户网站,截图确认。
应用程序健康监控
验证正在运行的应用程序是否处于活动状态且响应迅速——进程正在运行,连接状态显示 “已连接”,服务健康。与Windows任务计划程序配对以进行计划检查。
远程管理
通过HTTP管理远程计算机上的进程、服务、注册表和计划任务。 五层安全:IP分配列表、Windows协商身份验证、AD组授权、, 速率限制和每用户会话限制。
可访问性审计
遍历完整的UIA元素树。检查控件是否有名称,按钮是否有标签, 并且存在键盘路径。AI代理生成合规报告。
对话和模态处理
检测意外的确认对话框、文件保存提示和Win32 MessageBox弹出窗口 每次点击后。在不破坏自动化流程的情况下处理或解雇它们。
工具
五类约59个整合工具(通过动作/模式参数从110个合并而来):
| 类别 | 工具 | 功能 |
|---|---|---|
| 桌面自动化 | ~30 | 启动应用程序、单击、键入、读取值、屏幕截图、树导航、对话框、测试用例记录、CI脚本导出(UIA3) |
| 系统 | ~12 | 进程、注册表、环境变量、文件系统、网络、服务、计划任务 |
| 浏览器 | 4 | 通过CDP访问Chrome/Edge——会话、页面、元素、高级(eval/forms/对话框)。无硒依赖性 |
| AI 代理 | ~10 | 快照、状态差异、事件观察、动作记录, ww_get_schema 用于工具发现 |
| 安全 | -- | 具有AD组覆盖、JSONL审核日志记录的运行时权限保护 |
每个工具都支持通过 action 参数(例如。, ww_service(action="list"), ww_service(action="start")),在保持完整功能的同时减少工具总数。
配置
创建 winwright.json 二进制文件旁边(或 %APPDATA%\WinWright\winwright.json):
{
"permissions": {
"allowShell": false,
"allowRegistryWrite": false,
"allowProcessKill": false,
"allowFileWrite": false,
"allowServiceControl": false,
"allowTaskScheduler": false,
"allowEnvironmentWrite": false,
"allowBrowserEval": false,
"allowNetworkProbe": true
},
"audit": {
"enabled": true,
"logPath": "audit.jsonl"
}
}默认情况下禁用所有危险操作。只启用你需要的东西。
命令行界面
winwright mcp Start MCP server (stdio)
winwright serve --port N Start MCP server (HTTP, default 8765)
winwright run [--format text|junit] [--output ]
Replay a recorded automation script
winwright heal [--app
|--pid ] [--output ] [--min-confidence ]
Probe broken selectors against a live UI and repair them
winwright inspect
Dump UIA element tree for a process
winwright doctor Verify environment prerequisites需求
- Windows 10或11(x64或ARM64)
- 不。下载二进制文件需要.NET运行时——它是自包含的
这是给谁的
合身:
- 测试WinForms、WPF或Win32应用程序的QA工程师,他们需要人工智能辅助的测试创建
- 开发人员构建需要与Windows桌面交互的AI代理
- 从没有API的遗留企业应用程序中提取数据的团队
- 任何人都可以在Windows上自动化重复的多应用程序工作流
不太合适:
- Linux或macOS自动化-WinWright仅适用于Windows(UIA是Windows API)
- 仅限Web测试——使用 剧作家 相反;WinWright的浏览器工具适用于混合桌面和浏览器工作流程
- 高吞吐量数据管道——UIA一次读取一个控件;如果您需要大容量数据传输,一个正确的API或数据库连接会更好
如何比较
|| WinWright | UiPath | Power Automation Desktop |剧作家| | - | --------- | ------ | ---------------------- | ---------- | | 它自动化了什么 |桌面+浏览器+系统|桌面+浏览器-系统|桌面-浏览器+云|仅限浏览器| | 你如何使用它 |通过MCP(自然语言)的AI代理|可视化工作流设计器|可视化工作流设计者|代码(JS/Python/C#)| | 桌面支持 |WPF、WinForms、Win32(UIA3)| WPF、Win窗体、Win32、Java、SAP | WPF、WinForms、Win32 |无| | 浏览器支持 |通过CDP访问Chrome/Edge | Chrome、Edge、Firefox | Chrome、边缘、Firefox |铬、边缘、火狐、Safari| | 选择器型号 |AI按名称/类型选择元素|视觉选择器记录器|视觉选择器记录仪|CSS/XPath选择器| | 成本 |免费|许可(每个用户/机器人)|免费(桌面),许可(云)|免费| | 设置 |单二进制,无运行时|完整安装+工作室| Windows商店应用程序| npm安装| | 专为 |AI代理和MCP客户端|企业RPA |业务用户自动化|开发人员测试|
WinWright不是RPA平台。它是一个工具服务器,允许AI代理访问Windows。 如果您需要可视化工作流构建器或企业编排,UiPath或Power Automation 是更好的选择。如果你只需要浏览器测试,Playwright更成熟。
WinWright适用于那些工具不适用的地方——当人工智能代理需要查看和操作时 Windows桌面,或者当您在一个MCP会话中需要桌面+浏览器时。
支持
帮助保持这个项目的活力和发展!
如果WinWright帮助了您的开发工作流程,请考虑支持其继续开发。您的贡献有助于:
- 持续维护和错误修复
- 新功能开发
- 基础设施成本
50%的捐款直接捐给儿童慈善机构 帮助那些有需要的人。剩余资金用于支持项目维护和功能升级。
 
每一份贡献,无论大小,都会产生影响。
- 问题:
- 变更日志:
许可证
免费用于任何目的——个人、学术、商业。 看 许可证 完整条款。重新分发时需要署名。
______________________________________________________________________
建立在信任之上,由价值驱动 — 希维克
