A cross-platform automation tool for controlling system inputs and UI elements from the command line.

Install

mkdir -p .claude/skills/skills-whuanle && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/15415" && unzip -o skill.zip -d .claude/skills/skills-whuanle && rm skill.zip

Installs to .claude/skills/skills-whuanle

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

- Node.js >= 18(npm 安装场景) - 或直接使用编译产物: - Windows: zig-out/bin/et.exe - Linux/macOS: zig-out/bin/et - 建议系统:Windows(能力最完整)
120 chars · catalog descriptionno explicit “when” trigger
Intermediate

Key capabilities

  • Get system information like OS, CPU, and memory
  • Control mouse position and clicks
  • Manage windows by listing, finding, activating, and closing them
  • Read and write clipboard content
  • Simulate keyboard input and hotkeys
  • Capture screen displays and pixel colors

How it works

EasyTouch provides CLI commands to automate UI interactions by controlling mouse, keyboard, and windows, and querying system information.

Inputs & outputs

You give it
mouse move command with x and y coordinates
You get back
mouse cursor moved to the specified coordinates

When to use skills

  • Automate UI interactions
  • Move mouse or click elements
  • Read/write clipboard content
  • Manage windows and applications

About this skill

EasyTouch Skills

1. 环境要求

  • Node.js >= 18(npm 安装场景)
  • 或直接使用编译产物:
    • Windows: zig-out/bin/et.exe
    • Linux/macOS: zig-out/bin/et
  • 建议系统:Windows(能力最完整)

2. 安装方式

npm 安装

# 推荐:自动匹配当前平台
npm install -g @whuanle/easytouch

# Windows
npm install -g easytouch-windows

# Linux
npm install -g easytouch-linux

# macOS
npm install -g easytouch-macos

安装后直接使用:

et help

仓库内构建

zig build

3. CLI 命令

核心命令

  • et help
  • et status
  • et platforms
  • et interfaces
  • et requirements
  • et mcp-stdio
  • et mcp-stdio --output json

自动化命令

  • system os-info
  • system cpu-info
  • system memory-info
  • system disk-list
  • system process-list
  • system hardware-info
  • system network-info
  • mouse position
  • mouse move --x <x> --y <y> [--duration-ms <ms>] [--jitter-px <px>] [--step-delay-ms <ms>]
  • mouse click [--button <left|right|middle>] [--count <n>]
  • mouse scroll --delta <amount>
  • window list [--include-hidden] [--pid <pid>]
  • window foreground
  • window find --title <text> [--match <contains|exact>] [--include-hidden] [--pid <pid>]
  • window activate --handle <handle>
  • window close --handle <handle>
  • app launch --target <path-or-uri>
  • clipboard get-text
  • clipboard set-text --text <value>
  • clipboard get-files
  • clipboard set-files --paths <path1;path2;...>
  • clipboard set-image --path <image-file>
  • keyboard key --key <name>
  • keyboard hotkey --keys <combo>
  • keyboard type --text <value>
  • keyboard type-keys --text <value> [--key-delay-ms <ms>]
  • keyboard ime-switch [--strategy <win-space|alt-shift|ctrl-shift>]
  • keyboard caps-lock [--state <toggle|on|off>]
  • keyboard paste [--expect-title <text>] [--match <contains|exact>]
  • screen displays
  • screen pixel-color --x <x> --y <y>
  • screen capture [--path <file>]
  • wait window --title <text> [--timeout-ms <ms>] [--match <contains|exact>] [--foreground-only]
  • wait focus --title <text> [--timeout-ms <ms>] [--match <contains|exact>]
  • wait activate --handle <handle> [--expect-active <true|false>] [--timeout-ms <ms>]
  • wait pixel --x <x> --y <y> --hex <RRGGBB> [--timeout-ms <ms>]
  • wait clipboard [--expect-text <value>] [--timeout-ms <ms>] [--match <contains|exact>]
  • wait process [--name <text>|--pid <pid>] [--expect-running <true|false>] [--timeout-ms <ms>] [--match <contains|exact>]

等待器说明:

  • wait 系列用于“动作后确认状态”,避免页面/窗口未就绪就继续执行下一步。
  • 典型场景:点击后等待窗口出现、切换后等待焦点、输入后等待像素或剪贴板变化、启动后等待进程状态。

4. MCP 接入

查看工具清单(manifest)

et mcp-stdio --output json

启动 MCP stdio 服务

et mcp-stdio

配置示例

{
	"mcpServers": {
		"easytouch": {
			"command": "et",
			"args": ["mcp-stdio"]
		}
	}
}

5. 注意事项

  • 推荐流程:观察 -> 动作 -> 等待确认
  • 不要连续盲操作(点击/输入后必须确认)
  • 建议统一使用 --output json,便于程序解析
  • 标题匹配模式统一:contains|exact
  • wait 默认超时:timeout_ms=2000
  • wait_process 支持 expect_running=true|false
  • 高风险动作(鼠标、键盘、窗口激活/关闭、剪贴板写)前后都要做观察或等待
  • Linux/macOS 能力存在未覆盖路径,上生产前必须逐项实测
  • 失败时优先看 failure.code / failure.message / failure.detail

When not to use it

  • When the target system is Linux or macOS for full capability
  • When continuous blind operations are performed without confirmation
  • When high-risk actions are executed without observation or waiting

Prerequisites

Node.js >= 18zig-out/bin/et.exe (Windows)zig-out/bin/et (Linux/macOS)

Limitations

  • Linux/macOS capabilities may have uncovered paths
  • High-risk actions (mouse, keyboard, window activation/closing, clipboard write) require observation or waiting
  • Continuous blind operations are not recommended

How it compares

This skill offers cross-platform UI automation via CLI, enabling programmatic control over system interactions, unlike manual user input.

Compared to similar skills

skills side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
skills (this skill)04moReviewIntermediate
raw-app02moReviewBeginner
app_runner06moReviewBeginner
webapp-testing3533moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry