使用说明
🤖 ComputerMate
“你的AI的手和眼睛在任何机器上。”
(人工智能时代被禁止的MCP……)
ComputerMate 是一个强大的模型上下文协议(MCP)服务器,它赋予AI模型像人类一样与计算机交互的能力。从截图到点击按钮和键入文本,ComputerMate将您的本地机器(或沙盒Docker容器)作为LLM的一组工具公开。
✨ 特点和亮点
- 🖥️ 交叉平台的:统一支持 Linux, macOS,以及 视窗 通过单一
native模式。 - 🐳 Docker优先:在完全隔离的Linux桌面环境中运行,具有VNC访问和状态持久性。
- 🖱️ 虚拟光标:通过设置在Playwright中启用可视化鼠标光标
VIRTUAL_CURSOR=true. - 🌐 Web自动化:集成 剧作家 支持高性能、仅限浏览器的计算机使用。
- 📐 智能缩放:通过以下方式自动缩放屏幕截图和坐标以适应LLM上下文限制
MAX_SCALING_DIMENSION.
🛠️ 可用工具
ComputerMate向LLM公开以下工具:
| 工具 | AI友好描述 |
|---|---|
screenshot |
拍摄当前屏幕或浏览器视口的完整屏幕截图。 |
screenshot_region |
通过提供两个对角点来捕获特定的矩形区域。 |
click |
移动指针并单击(支持左、中、右)。 |
double_click |
在给定坐标处快速单击两次。 |
scroll |
按给定量滚动(x,y)处的窗口内容。 |
type |
将键盘文本输入发送到活动窗口。 |
keypress |
发送组合键(例如。 ["ctrl", "c"], ["alt", "tab"]). |
move |
移动鼠标指针而不单击。 |
drag |
从起点沿坐标路径拖动鼠标。 |
wait |
暂停执行一段设定的毫秒数。 |
get_dimensions |
检索屏幕或视口的宽度和高度。 |
get_environment |
返回当前平台(linux, macos, windows, browser). |
goto |
(仅限剧作家) 导航到特定的URL |
back |
(仅限剧作家) 回到历史。 |
forward |
(仅限剧作家) 在历史中前进。 |
get_current_url |
(仅限剧作家) 检索当前活动页面URL |
🚀 快速开始
📦 使用npx(本地)
直接运行服务器,无需安装:
# For local OS interaction (macOS, Windows, Linux)
npx @one710/computermate native
# For Playwright (Browser only)
npx @one710/computermate playwright
🐳 使用Docker(安全和持久)
建议使用ComputerMate的方式是通过Docker。这提供了一个沙盒环境和VNC访问。
# Clone the repository
git clone https://github.com/one710/computermate.git
cd computermate
# Start the server with persistence
docker-compose up --build
- MCP端点:
http://localhost:3000 - VNC视图:
localhost:5900(密码:one710)
🛠️ 先决条件和安装
🐧 Linux(Ubuntu/Debian桌面版)
sudo apt-get update
sudo apt-get install -y libxtst-dev libpng-dev xvfb xdotool
🍎 macOS
确保您已授予 无障碍 您的终端或IDE的权限(例如,游标、VS代码、iTerm2) 系统设置>隐私和安全>辅助功能.
🪟 视窗
不需要外部二进制文件!
⚙️ 配置
环境变量
| 变量 | 目的 | 默认值 |
|---|---|---|
COMPUTER_TYPE |
(Docker/HTTP) 设置计算机后端: native 或 playwright. |
native |
MAX_SCALING_DIMENSION |
限制屏幕截图的最大宽度或高度(例如。, 1024x768).缩放坐标。 |
无 |
VIRTUAL_CURSOR |
(剧作家) 在“鼠标”所在的位置显示一个视觉红点 | false |
HEADLESS |
(剧作家) 在无头模式下运行浏览器。 | false |
🏗️ 本地开发
要从源代码运行,请执行以下操作:
# 1. Install dependencies
npm install
# 2. Build the project
npm run build
# 3. Run the server
node dist/index.js native
⚠️ 重要警告
[!小心] 此工具赋予您对系统的重大控制权。 具有ComputerMate访问权限的LLM可以读取您的文件,访问您的浏览器,并以当前用户的身份执行命令。
- 慎用:不要在具有敏感数据或生产访问权限的计算机上运行此程序。
- 沙盒推荐:使用 码头工人 最大安全的环境。
- 密切监控:始终关注AI在做什么。
🛠️ MCP配置
将此添加到您的 claude_desktop_config.json (或等效的MCP客户端配置):
{
"mcpServers": {
"computermate": {
"command": "npx",
"args": ["-y", "@one710/computermate", "native"],
"env": {
"MAX_SCALING_DIMENSION": "1024x768"
}
}
}
}
🌉 标准到Docker桥(mcp-remote)
如果您的MCP客户端(如Cursor或旧版本的Claude Desktop)仅支持 stdio 您可以将其桥接到ComputerMate Docker容器:
{
"mcpServers": {
"computermate": {
"command": "npx",
"args": [
"-y",
"mcp-remote@latest",
"http://localhost:3000/mcp",
"--transport",
"http-only"
]
}
}
}
此命令启动本地 stdio 将所有请求透明地转发到在以下位置运行的ComputerMate容器的服务器 http://localhost:3000.
📄 许可证
该项目根据 MIT许可证。请参阅 许可证 文件以获取详细信息。
Built with ❤️ by the One710 Softworks Team.