DEV Community

Cover image for วิธีใช้ CLI-Anything: ทำให้ซอฟต์แวร์ใดๆ ทำงานแบบ Agent-Native
Thanawat Wongchai
Thanawat Wongchai

Posted on • Originally published at apidog.com

วิธีใช้ CLI-Anything: ทำให้ซอฟต์แวร์ใดๆ ทำงานแบบ Agent-Native

CLI-Anything คือปลั๊กอินโอเพนซอร์สสำหรับเอเจนต์เขียนโค้ด AI (โดยเฉพาะ Claude Code) ที่ช่วยสร้าง CLI (Command Line Interface) สำหรับซอฟต์แวร์ใดๆ ที่มีโค้ดเบส คุณสามารถชี้ไปที่ GIMP, Blender, LibreOffice หรือแอปพลิเคชันอื่นๆ แล้วปลั๊กอินจะวิเคราะห์ซอร์สโค้ดและสร้าง CLI ที่มีโครงสร้างซึ่งเอเจนต์ AI สามารถควบคุมซอฟต์แวร์นั้นได้โดยตรง

ทดลองใช้ Apidog วันนี้

ปัญหา: เอเจนต์ AI ไม่สามารถใช้ซอฟต์แวร์ GUI ได้

ในปัจจุบัน ซอฟต์แวร์มีทั้งแบบ API-first (บริการคลาวด์, อีเมล, วิเคราะห์ข้อมูล ฯลฯ) ซึ่ง AI agent เรียกใช้ได้โดยตรง และซอฟต์แวร์ GUI แบบดั้งเดิม (GIMP, Blender, LibreOffice เป็นต้น) ที่ทำงานผ่านอินเทอร์เฟซกราฟิก ซึ่ง AI agent ไม่สามารถควบคุมได้ง่ายๆ

ทางเลือกในการเชื่อมต่อเอเจนต์กับซอฟต์แวร์ GUI คือการสร้าง wrapper ด้วยมือหรือใช้ RPA (Robotic Process Automation) ซึ่งทั้งคู่เปราะบางและซ่อมบำรุงยาก

CLI-Anything แก้ปัญหานี้ด้วยการวิเคราะห์ซอร์สโค้ดเพื่อหา API ภายใน และสร้าง CLI โดยตรงสำหรับซอฟต์แวร์นั้น เอเจนต์ AI สามารถควบคุมซอฟต์แวร์โดยไม่ต้องพึ่ง GUI หรือการคลิกเมนูใดๆ

💡หากเวิร์กโฟลว์ของเอเจนต์ของคุณจำเป็นต้องเรียกใช้ REST API ภายนอกควบคู่ไปกับซอฟต์แวร์ในเครื่อง Apidog สามารถจัดการด้านการทดสอบ API ได้ เป็นเครื่องมือฟรีสำหรับการส่ง, ตรวจสอบ และจัดระเบียบคำขอ API เพื่อให้คุณสามารถตรวจสอบการรวม API ก่อนที่จะสร้างมันในเวิร์กโฟลว์ของเอเจนต์

<!--kg-card-begin: html-->




<!--kg-card-end: html-->

CLI-Anything ทำอะไร

CLI-Anything เป็นปลั๊กอินโอเพนซอร์สโดย HKUDS (Hong Kong University Data Science Lab) มีผู้ให้ดาวมากกว่า 6,100 ดวงบน GitHub (ณ เวลาที่เขียน)

ปลั๊กอินนี้ทำงานบน Claude Code เป็นหลัก (ทดลองกับ Codex, OpenCode) โดยรัน pipeline 7 ขั้นตอน:

  1. วิเคราะห์ – สแกนซอร์สโค้ด, แมปการกระทำ GUI เป็น API, สร้าง SOP
  2. ออกแบบ – วางโครงสร้างกลุ่มคำสั่ง, โมเดลสถานะ, รูปแบบเอาต์พุต
  3. นำไปใช้ – สร้าง Python CLI (Click), โหมด REPL, รองรับ --json, undo/redo
  4. วางแผนการทดสอบ – สร้าง TEST.md สำหรับแผนการทดสอบ
  5. เขียนการทดสอบtest_core.py (unit), test_full_e2e.py (E2E)
  6. จัดทำเอกสาร – รัน pytest, รวมผลลัพธ์ลง TEST.md
  7. เผยแพร่ – สร้าง setup.py, กำหนด entry point, ติดตั้งลง PATH

เมื่อเสร็จ คุณจะได้ CLI พร้อมใช้งานทันทีบนระบบ สามารถตรวจสอบได้ด้วย which cli-anything-gimp และ cli-anything-gimp --help

CLI ที่สร้างขึ้นทุกตัวออกแบบให้สอดคล้องกัน: เอาต์พุตตารางอ่านง่าย, JSON ด้วย --json, undo/redo, โหมด REPL โครงสร้างนี้ทำให้เอเจนต์ AI ใช้งานข้ามซอฟต์แวร์ได้ง่าย

การติดตั้ง CLI-Anything

CLI-Anything เป็นปลั๊กอิน Python (ไม่ใช่ npm) ติดตั้งลงในเอเจนต์ AI ของคุณ จากนั้น CLI ที่สร้างขึ้นติดตั้งด้วย pip install -e .

ความต้องการ:

  • Python 3.10+
  • ซอฟต์แวร์เป้าหมายติดตั้งในระบบ
  • เอเจนต์เขียนโค้ด AI ที่รองรับ (Claude Code แนะนำ)

Claude Code (แนะนำ)

/plugin marketplace add HKUDS/CLI-Anything
/plugin install cli-anything

จะทำให้ใช้คำสั่ง /cli-anything ได้ใน Claude Code

OpenCode

โคลน repo, คัดลอกไฟล์คำสั่งและ HARNESS.md ไปที่ ~/.config/opencode/commands/ จะเพิ่มคำสั่ง /cli-anything และชุด refine, test, validate, list

Codex

bash CLI-Anything/codex-skill/scripts/install.sh

Qodercli

bash CLI-Anything/qoder-plugin/setup-qodercli.sh

ข้อสังเกตสำหรับ Windows

ต้องใช้ Git for Windows (มี bash และ cygpath) หรือ WSL หากพบ cygpath: command not found ให้ติดตั้ง Git for Windows

การติดตั้ง CLI ที่สร้างขึ้น

cd <software>/agent-harness
pip install -e .

ใช้โหมด editable (-e) เพื่อให้แก้ซอร์สโค้ดได้โดยไม่ต้องติดตั้งใหม่

การสร้าง CLI แรกของคุณ

หลังติดตั้งปลั๊กอิน สร้าง CLI ได้ทันที

ใน Claude Code:

/cli-anything ./gimp

หรือจาก GitHub repo:

/cli-anything https://github.com/blender/blender

Pipeline 7 ขั้นตอนจะรันอัตโนมัติ (ขึ้นกับขนาดโค้ดเบสและจำนวน API)

โครงสร้างไดเรกทอรีที่ได้จะเป็น:

gimp/
  agent-harness/
    GIMP.md
    setup.py
    cli_anything/
      gimp/
        README.md
        gimp_cli.py
        core/
        utils/
        tests/
          test_core.py
          test_full_e2e.py
          TEST.md

CLI ทุกตัวจะอยู่ภายใต้ cli_anything.* namespace

การใช้งาน CLI ที่สร้างขึ้น

หลัง pip install -e . ที่ agent-harness คุณจะได้ CLI ใหม่:

cli-anything-gimp --help

ทุกเครื่องมือจะสร้าง CLI ชื่อ cli-anything-<software>

เอาต์พุตที่มนุษย์อ่านได้ (ค่าเริ่มต้น)

cli-anything-gimp project new --width 1920 --height 1080
cli-anything-gimp layer list
cli-anything-gimp layer add --name "Background" --type solid --color "#ffffff"
cli-anything-gimp filter apply --name "gaussian-blur" --radius 3
cli-anything-gimp export save --format png --output ./output.png

เอาต์พุต JSON สำหรับเอเจนต์ AI

cli-anything-gimp --json project new --width 1920 --height 1080
# {"status": "ok", "project_id": "proj_abc123", "width": 1920, "height": 1080}
cli-anything-gimp --json layer add -n "Background"
# {"status": "ok", "layer_id": "layer_001", "name": "Background"}

โหมด REPL แบบโต้ตอบ

cli-anything-gimp

จะเข้าสู่ shell โต้ตอบ มี prompt สีและประวัติคำสั่ง

เลิกทำ/ทำซ้ำ

cli-anything-gimp undo
cli-anything-gimp redo

การปรับแต่งและทดสอบ CLI ของคุณ

ใช้คำสั่ง /cli-anything:refine เพื่อเพิ่มคำสั่งที่ขาดหรืออัปเดต CLI

ปรับแต่งทั่วไป

/cli-anything:refine /home/user/gimp

ปรับแต่งเน้นฟีเจอร์

/cli-anything:refine /home/user/blender "particle systems and physics simulation"

รันทดสอบ

/cli-anything:test /home/user/gimp

ตรวจสอบความถูกต้อง

/cli-anything:validate /home/user/gimp

แสดง CLI ที่มี

/cli-anything:list
/cli-anything:list --json
/cli-anything:list --path /home

กรณีการใช้งานจริง

ไปป์ไลน์ประมวลผลภาพด้วย GIMP

cli-anything-gimp project open --file product.jpg
cli-anything-gimp layer add --name "Watermark" --type image --source watermark.png
cli-anything-gimp layer position --name "Watermark" --x 10 --y 10
cli-anything-gimp export save --format webp --output product-final.webp

สร้างเอกสารด้วย LibreOffice

cli-anything-libreoffice document open --template invoice-template.ods
cli-anything-libreoffice cell set --address "B5" --value "Acme Corp"
cli-anything-libreoffice cell set --address "C10" --value "1500.00"
cli-anything-libreoffice export pdf --output invoice-2026-001.pdf

เรนเดอร์ 3D ด้วย Blender

cli-anything-blender scene open --file product-scene.blend
cli-anything-blender render set --samples 256 --output /renders/product
cli-anything-blender render start --format png

ระบบอัตโนมัติสำหรับ OBS Studio

cli-anything-obs scene set --name "Main Camera"
cli-anything-obs recording start
cli-anything-obs scene set --name "Screen Share"
cli-anything-obs recording stop --output session.mp4

รวม CI/CD

สามารถผสาน CLI ที่สร้างจาก CLI-Anything เข้ากับ pipeline CI/CD เช่น สั่ง render Blender หรือสร้าง PDF LibreOffice อัตโนมัติทุก commit

สร้างเวิร์กโฟลว์เอเจนต์ด้วย Apidog

CLI-Anything ใช้กับซอฟต์แวร์ในเครื่อง ขณะที่เวิร์กโฟลว์จริงมักต้องใช้งาน API ภายนอกด้วย เช่น อัปโหลดไฟล์ไป CDN, ส่ง PDF ไป document management, หรืออัปโหลดวิดีโอไปรีวิวแพลตฟอร์ม

Apidog คือไคลเอนต์ API ฟรีสำหรับทดสอบ, จัดทำเอกสาร, และอัตโนมัติ REST API

ตัวอย่าง: สร้าง agent ที่ process ภาพด้วย GIMP และอัปโหลดไป cloud storage API ใช้ CLI-Anything ควบคุม GIMP และใช้ Apidog ทดสอบ/validate API:

  1. กำหนด environment และ API credentials ใน Apidog
  2. ทดสอบ endpoint upload ด้วยไฟล์ตัวอย่าง
  3. เช็คการตอบสนองว่า URL ของไฟล์ถูกต้อง
  4. ส่งออกเป็น curl หรือโค้ดสไนป์เพ็ตสำหรับใช้ในสคริปต์ agent

Apidog ช่วยให้คุณมั่นใจว่า API ทำงานถูกต้องก่อนเขียนโค้ดจริง ลดเวลา debug และยังสามารถเพิ่ม test automation ได้ใน pipeline

ข้อจำกัดที่ควรรู้

Windows ต้องใช้ Git Bash หรือ WSL

CLI ที่สร้างใช้ Python และ bash path handling ต้องใช้ Git for Windows หรือ WSL ไม่รองรับ PowerShell native

ต้องติดตั้งซอฟต์แวร์เป้าหมาย

CLI-Anything ไม่ได้ bundle ซอฟต์แวร์เป้าหมายมาให้ เช่น GIMP, Blender, LibreOffice ต้องติดตั้งในเครื่องก่อน

เอาต์พุต CLI เฉพาะ Python

CLI ที่สร้างทุกตัวเป็น Python Click app ไม่มีตัวเลือกสร้าง CLI ภาษาอื่น หากต้องการ Node.js, Go หรืออื่นๆ ต้องสร้างเอง

Claude Code เป็นแพลตฟอร์มเสถียร

Claude Code เป็น environment หลักและเสถียรที่สุด Codex, OpenCode ยังเป็น experimental

คุณภาพขึ้นกับโค้ดเบส

ปลั๊กอินวิเคราะห์ซอร์สโค้ด ถ้าโค้ดเบสซับซ้อน/ปิด/ผูกกับ GUI มาก อาจได้ CLI ที่ไม่สมบูรณ์หรือขาดฟังก์ชัน ต้อง refine เพิ่มเอง

คำถามที่พบบ่อย

CLI-Anything ใช้กับซอฟต์แวร์ใดๆ ได้หรือไม่?

หลักการคือได้กับซอฟต์แวร์ที่มีโค้ดเบสเข้าถึงได้ โดยเฉพาะโอเพนซอร์สที่แมป GUI กับ API ชัดเจน

ฟรีหรือไม่? ใช่ เป็น MIT License โอเพนซอร์สที่ github.com/HKUDS/CLI-Anything

จำเป็นต้องรู้ Python ไหม? ไม่จำเป็น เพียงแค่ติดตั้ง Python 3.10+ ในระบบ

ใช้ CLI ที่สร้างกับโค้ด/shell script ของตัวเองได้ไหม? ได้ CLI ที่สร้างรันจาก shell, Makefile, Python subprocess ฯลฯ

HARNESS.md คืออะไร? เป็นข้อกำหนดโครงสร้าง CLI ตรวจสอบกับขั้นตอน validate

สร้าง CLI สำหรับเครื่องมือ internal ได้ไหม? ได้ ชี้ไปที่โค้ดเบสในเครื่อง ปลั๊กอินรัน local ไม่ส่งโค้ดออกไป

ต่างจาก Model Context Protocol (MCP) ยังไง? MCP คือโปรโตคอลเชื่อมต่อ AI agent กับบริการ cloud ส่วน CLI-Anything ห่อซอฟต์แวร์ GUI ให้กลายเป็น CLI ใช้คู่กันได้

แหล่งข้อมูลเพิ่มเติม

Top comments (0)