Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Safety-gated computer use for AI agents: screen OCR and vision, mouse, keyboard, window control.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ผู้ทำยังไม่ได้ใส่วิธีติดตั้งใน registry ให้ดู README ของผู้ทำด้านล่าง
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub Xeakaes ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.0.0) เข้า registry 2 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Draugr
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Security scanning for AI agents: SAST, SCA, secrets, IaC, DAST, ranked by real risk.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
A local remote-control system for AI agents: watch your computer's screen
live and send mouse/keyboard commands to it. Everything runs on your
own machine — no data ever leaves it, no cloud middleman.
Every keystroke and every screenshot in this GIF went through the API — the agent never touched a physical keyboard.
Read [AGENT_GUIDE.md](AGENT_GUIDE.md) first — it is written for you:
endpoints, safety gates and working recipes. This README is the human-facing
reference.
First ask the server what it is — GET /api/capabilities → platform. Windows: follow the whole guide as written. Linux: check echo $XDG_SESSION_TYPE — X11 is supported (guide → Linux (X11) Usage); Wayland is unsupported: the server refuses to start, HTTP 501 UNSUPPORTED_DISPLAY_SERVER (switch to an X11 session). Full routing lives in AGENT_GUIDE.md → Find Your Environment First.
AI agents today can write code and call APIs — but they can't *see* or *touch* your desktop. Screen Control gives any agent general-purpose computer use over a clean, safety-gated HTTP/MCP interface:
One process, zero configuration, works with any language that can speak HTTP — or natively through MCP in Claude Desktop, Cursor, VS Code and cloud agents.
Screen Control is the perception and actuation layer — the eyes and hands. The effective speed and capability of any agent using it are bounded by that agent itself and by the environment it runs in:
In practice this means: the same repo makes a fast reasoning model fast and capable, and makes a slow model slow — the toolchain is not the bottleneck. Real-time or action-heavy tasks need an agent with fast inference and tight tool-loop latency; slower agents should prefer deliberate, verification-heavy tasks.
| Feature | Description |
|---|---|
| 🖼️ Live screen feed | Continuously refreshing screenshot in the browser |
| 🖱️ Mouse control | Click, right-click, double-click, scroll, drag & drop via live screenshot |
| ⌨️ Keyboard control | Text typing (Unicode/Turkish included, layout-independent), keys and shortcuts (Ctrl+C, Alt+Tab…) |
| 👁️ OCR | Converts on-screen text to machine-readable format |
| 📷 Vision access | Raw-pixel paths for image-capable models: single frames, MJPEG stream, text-based motion detection |
| 🪟 Window management | List, focus, safe close (WM_CLOSE), kill (task-manager style) |
| 🖥️ Focus-free control | Read/write background windows via PostMessage without stealing focus |
| 🎮 Game mode | Camera look via relative mouse movement, hold-to-move keys |
| 🔐 Token auth | Every request requires X-Auth-Token (CSRF protection) |
| 🦺 Stuck-input watchdog | Auto-releases held keys after 30 s of inactivity |
| 🛟 Failsafe | Cursor to top-left corner aborts all commands (disabled in game mode) |
┌─────────────────────────────────────────────────────────┐
│ Browser (Web UI) │ │ ┌──────────┐ ┌──────────┐ ┌────────────────────────┐ │ │ │ Live │ │ Control │ │ Windows / Game Mode │ │ │ │ View │ │ Panel │ │ Panel │ │ │ └────┬─────┘ └────┬─────┘ └───────────┬────────────┘ │ │ │ │ │ │ └───────┼──────────────┼─────────────────────┼──────────────┘ │ │ │ ▼ ▼ ▼ ┌─────────────────────────────────────────────────────────┐ │ HTTP API (Flask) │ │ 127.0.0.1:8745 │ │ │ │ /api/screenshot /api/mouse /api/key │ │ /api/vision/* /api/ocr /api/window │ │ /api/game /api/held /api/release_all │ │ /api/windows /api/desktops /api/desktop │ │ │ │ ┌─────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ Auth Layer │ │ Watchdog │ │ OCR Engine │ │ │ │ (token) │ │ (30s auto) │ │ (RapidOCR) │ │ │ └─────────────┘ └──────────────┘ └──────────────┘ │ └─────────────────────────────────────────────────────────┘ │ │ │ ▼ ▼ ▼ ┌─────────────────────────────────────────────────────────┐ │ control.py (Core) │ │ │ │ Screen: mss (fast capture), PIL (processing) │ │ Mouse: pyautogui (absolute), SendInput (relative) │ │ Keyboard: pyautogui + SendInput+KEYEVENTF_UNICODE │ │ Windows: Win32 API (EnumWindows, SetForegroundWindow) │ │ Background: PrintWindow (capture), PostMessage (input) │ │ Virtual Desktops: pyvda │ │ Game Mode: ClipCursor + MOUSE_MOVE_RELATIVE │ └─────────────────────────────────────────────────────────┘ ┌──────────────────────────────────────────────┐ │ backends/ (pluggable) │ │ WindowsBackend │ LinuxBackend │ MacOSBackend│ │ (full) │ (X11) │ (stub) │ └──────────────────────────────────────────────┘
Per-Monitor DPI awareness. control.py calls SetProcessDpiAwarenessContext(PER_MONITOR_AWARE_V2) at import time — before the pyautogui import, because pyautogui touches coordinate APIs during import and would otherwise lock the process to the interpreter manifest's default (system-aware). With PMv2 active, every coordinate in the system is a physical pixel end to end: mss capture, OCR bounding boxes, pyautogui/SendInput clicks, ClipCursor. On High-DPI displays (125%/150% scaling) nothing drifts between what OCR reports and where the mouse clicks.
Lock architecture. The server uses two independent locks instead of one global lock:
| Lock | Protects | Endpoints |
|---|---|---|
_input_lock | mouse, keyboard, game mode, window ops | /api/mouse, /api/key, /api/game, /api/window/post, ... |
_read_lock | capture, OCR, vision, enumeration | /api/screenshot, /api/ocr, /api/vision/*, /api/windows, ... |
A slow OCR (3–5 s on a busy screen) no longer freezes concurrent screenshot or vision reads — reads queue behind reads, inputs behind inputs.
This system is designed for a live perceive-act loop, not pre-written command chains:
This is enforced by the expect_hwnd guard: typing is refused (409) if the foreground window doesn't match the target.
Pick the version that fits how your agent works:
| You are... | Version | Install |
|---|---|---|
| An AI agent user (Claude Code, Cursor, skills-capable agents) | Skill | Skill version — copy skills/computer-use/ into the agent's skills folder |
| An MCP-capable app (Claude Desktop, VS Code, cloud agents) | MCP | MCP Support — mcp_server.py over stdio or streamable-HTTP |
| A developer / API client | REST | this page — pip install -r requirements.txt + python server.py |
The portable agent skill lives in skills/computer-use/ (SKILL.md plus a full API reference). It teaches any skills-capable agent the perceive-act-verify loop, the safety rules and the endpoint catalogue — the agent then drives a running server.
# Claude Code — user-level (available in every project)
cp -r skills/computer-use ~/.claude/skills/
mkdir -p .claude/skills && cp -r skills/computer-use .claude/skills/
For other skill-capable agents, copy the folder in
ตัดมาแค่ช่วงต้น อ่านต่อใน repo