---
url: https://docs.ogmabox.com/th/reference/cli.md
description: >-
  เรียกใช้ Ogma จากบรรทัดคำสั่งเป็นเซิร์ฟเวอร์พร็อกซีภายในเครื่อง กระบวนการ MCP
  คำสั่งทดสอบเจาะระบบที่ไม่มีส่วนติดต่อกราฟิก หรือแบ็กเอนด์สำหรับการพัฒนา
---

# เอกสารอ้างอิง CLI {#cli-reference}

แบ็กเอนด์ Rust ของ Ogma สามารถทำงานเป็นเซิร์ฟเวอร์พร็อกซีภายในเครื่อง กระบวนการ MCP แบบฝัง หรือคำสั่งทดสอบเจาะระบบที่ไม่มีส่วนติดต่อกราฟิกได้

ผู้ใช้แอปเดสก์ท็อปที่จัดแพ็กเกจไว้แล้วมักเปิด Ogma จากตัวแอป การใช้ CLI มีประโยชน์สำหรับการพัฒนา ระบบอัตโนมัติ และการทดสอบภายในเครื่องที่ต้องการให้ทำงานในรูปแบบเซิร์ฟเวอร์

## โหมดเซิร์ฟเวอร์ {#server-mode}

```bash
ogma \
  --listen 127.0.0.1:8080 \
  --api-port 127.0.0.1:8181 \
  --data-dir ./ogma-data
```

### แฟล็กที่ใช้บ่อย {#common-flags}

| แฟล็ก | ค่าเริ่มต้น | วัตถุประสงค์ |
| --- | --- | --- |
| `--listen` | `127.0.0.1:8080` | ที่อยู่ของตัวรับการเชื่อมต่อพร็อกซี |
| `--api-port` | `127.0.0.1:8181` | ที่อยู่ของ REST API และเซิร์ฟเวอร์ฟรอนต์เอนด์ |
| `--data-dir` | `./ogma-data` | ฐานข้อมูลโครงการ ใบรับรอง ปลั๊กอิน ข้อมูลส่งออก และสถานะภายในเครื่อง |
| `--max-plugin-size` | `52428800` | ขนาดแพ็กเกจปลั๊กอินสูงสุดเป็นไบต์ |
| `--intercept-queue-cap` | `1000` | จำนวนรายการดักรับในคิวสูงสุดก่อนที่จะส่งต่อทราฟฟิกใหม่ |
| `--ui-dir` | ไม่ได้ตั้งค่า | ไดเรกทอรีที่มีไฟล์ฟรอนต์เอนด์ที่บิลด์แล้วสำหรับให้บริการจากเซิร์ฟเวอร์ API |

## แฟล็ก OAST {#oast-flags}

| แฟล็ก | ค่าเริ่มต้น | วัตถุประสงค์ |
| --- | --- | --- |
| `--oast-http-port` | `8888` | ตัวรับการเรียกกลับผ่าน HTTP ใช้ `0` เพื่อปิดใช้งาน |
| `--oast-https-port` | `8443` | ตัวรับการเรียกกลับผ่าน HTTPS ใช้ `0` เพื่อปิดใช้งาน |
| `--oast-dns-port` | `5353` | ตัวรับการเรียกกลับผ่าน DNS ใช้ `0` เพื่อปิดใช้งาน |
| `--oast-smtp-port` | `2525` | ตัวรับการเรียกกลับผ่าน SMTP ใช้ `0` เพื่อปิดใช้งาน |
| `--oast-domain` | `oast.local` | โดเมนที่ใช้สำหรับชื่อโฮสต์การเรียกกลับที่สร้างขึ้น |
| `--oast-public-ip` | ไม่ได้ตั้งค่า | IP สาธารณะที่ส่งกลับในคำตอบระเบียน A ของ DNS สำหรับ OAST |

## โหมดทดสอบเจาะระบบแบบไม่มีส่วนติดต่อกราฟิก {#headless-pentest-mode}

คำสั่งย่อย `pentest` ดำเนินการค้นหา วิเคราะห์แบบพาสซีฟ และสแกนแบบแอกทีฟหากเลือกใช้ พร้อมสร้างรายงาน Markdown

```bash
ogma pentest https://example.com \
  --depth 3 \
  --concurrency 10 \
  --min-severity medium \
  --output report.md
```

### แฟล็กการทดสอบเจาะระบบ {#pentest-flags}

| แฟล็ก | ค่าเริ่มต้น | วัตถุประสงค์ |
| --- | --- | --- |
| `--depth` | `3` | ความลึกในการค้นหา `0` หมายถึงไม่จำกัด |
| `--concurrency` | `10` | จำนวนคำขอที่ทำงานพร้อมกันสูงสุด |
| `--no-active` | ปิดใช้งาน | ปิดการสแกนแบบแอกทีฟ โดยดำเนินการค้นหาและวิเคราะห์แบบพาสซีฟเท่านั้น |
| `--min-severity` | `medium` | ระดับความรุนแรงขั้นต่ำที่ทำให้คืนรหัสจบการทำงาน `1` ค่าที่ใช้ได้คือ `info`, `low`, `medium`, `high`, `critical` |
| `--output` | เอาต์พุตมาตรฐาน | เขียนรายงานลงไฟล์แทนเอาต์พุตมาตรฐาน |

รหัสจบการทำงาน:

| รหัส | ความหมาย |
| --- | --- |
| `0` | ทำงานเสร็จแล้วและไม่มีประเด็นที่ตรวจพบถึงเกณฑ์ความรุนแรง |
| `1` | ทำงานเสร็จแล้วและมีประเด็นที่ตรวจพบอย่างน้อยหนึ่งรายการถึงเกณฑ์ความรุนแรง |
| `2` | ข้อผิดพลาดขณะทำงานหรือในการกำหนดค่า |

## โหมด MCP {#mcp-mode}

สามารถเริ่ม MCP จาก **การตั้งค่า** ของ Ogma หรือผ่านไบนารี `ogma-mcp` แบบแยกต่างหากได้ แฟล็กแบ็กเอนด์ที่ซ่อนไว้ยังรองรับโหมด MCP แบบฝังเมื่อ Ogma เริ่มกระบวนการ MCP ภายในด้วย

สำหรับการตั้งค่าตามปกติ ให้ใช้ [การตั้งค่า MCP](../mcp-setup.md)

### แฟล็กของ `ogma-mcp` แบบแยกต่างหาก {#standalone-ogma-mcp-flags}

```bash
ogma-mcp \
  --api-url http://127.0.0.1:8181 \
  --body-preview-bytes 2048
```

| แฟล็ก | ตัวแปรสภาพแวดล้อม | ค่าเริ่มต้น | วัตถุประสงค์ |
| --- | --- | --- | --- |
| `--api-url` | `OGMA_API_URL` | `http://127.0.0.1:8181` | URL ของ API แบ็กเอนด์ Ogma ที่กำลังทำงาน |
| `--body-preview-bytes` | ไม่ได้ตั้งค่า | `512` | จำนวนไบต์สูงสุดของตัวอย่างเนื้อหาที่เครื่องมืออ่านส่งกลับ |
| `--allow-write-findings` | `OGMA_MCP_ALLOW_WRITE_FINDINGS` | ปิดใช้งาน | เปิดใช้งานการสร้างและอัปเดตประเด็นที่ตรวจพบ การติดแท็ก และการเชื่อมโยงหลักฐาน |
| `--allow-export-data` | `OGMA_MCP_ALLOW_EXPORT_DATA` | ปิดใช้งาน | เปิดใช้งานการสร้างงานส่งออก |
| `--allow-read-secrets` | `OGMA_MCP_ALLOW_READ_SECRETS` | ปิดใช้งาน | ส่งกลับค่าตัวแปรสภาพแวดล้อมโดยไม่ปกปิด |
| `--allow-send-requests` | `OGMA_MCP_ALLOW_SEND_REQUESTS` | ปิดใช้งาน | เปิดใช้งานเครื่องมือที่ส่งทราฟฟิก ควบคุมเบราว์เซอร์ รวบรวมข้อมูลด้วยการไล่ตามหน้า ส่งคำขอทดสอบ ตรวจสอบการยืนยันตัวตน หรือเชื่อมต่อ WebSocket |
| `--allow-run-workflows` | `OGMA_MCP_ALLOW_RUN_WORKFLOWS` | ปิดใช้งาน | เปิดใช้งานเครื่องมือดูตัวอย่าง เรียกใช้ และยกเลิกเวิร์กโฟลว์ |
| `--allow-intercept-control` | `OGMA_MCP_ALLOW_INTERCEPT_CONTROL` | ปิดใช้งาน | เปิดใช้งานการควบคุมคิวดักรับ การส่งต่อ การทิ้ง และการแก้ไข |
| `--tool-profile` | `OGMA_MCP_TOOL_PROFILE` | `full` | แฟล็กสำหรับความเข้ากันได้กับรุ่นเก่า เครื่องมือทั้งหมดจะแสดงเสมอ แม้คำสั่งรุ่นเก่าจะส่ง `core` หรือ `discovery` ก็ตาม `--mcp-tool-profile` เป็นชื่อเรียกอีกแบบหนึ่ง |

MCP เขียนข้อความโปรโตคอลไปยังเอาต์พุตมาตรฐาน ดังนั้นบันทึกขณะทำงานจะส่งไปยังเอาต์พุตข้อผิดพลาดมาตรฐาน

ตัวแปรสภาพแวดล้อมแบบบูลีนที่กำหนดสิทธิ์ยอมรับ `true` เพื่อเปิดใช้งานความสามารถนั้น เซิร์ฟเวอร์ไม่มีโควตากิจกรรมต่อนาทีหรือต่อเซสชัน แต่ยังใช้ขีดจำกัดของแต่ละเครื่องมือ แฟล็กโควตาที่ถูกนำออกแล้วจะไม่ถูกยอมรับ แฟล็กอินพุตและเอาต์พุตมาตรฐานกำหนดค่ากระบวนการนั้นแยกจากการตั้งค่า MCP แบบฝัง

## บิลด์สำหรับการพัฒนา {#development-builds}

สคริปต์บิลด์ภายในเครื่องมีอยู่ที่รากของรีโพซิทอรี:

```bash
./build-local.sh
./build-desktop-local.sh
```

ใช้บิลด์เดสก์ท็อปเมื่อทดสอบการใช้งาน Electron ที่จัดแพ็กเกจแล้ว ใช้บิลด์แบ็กเอนด์และฟรอนต์เอนด์เมื่อทดสอบพฤติกรรมของ API และ UI บนเว็บ
