---
url: https://docs.ogmabox.com/zh-Hant/reference/cli.md
description: 從命令列執行 Ogma，作為本機代理伺服器、MCP 程序、無頭滲透測試命令或開發後端。
---

# CLI 參考 {#cli-reference}

Ogma 的 Rust 後端可以作為本機代理伺服器、內嵌 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` | 未設定 | OAST DNS A 記錄回應傳回的公用 IP 位址。 |

## 無頭滲透測試模式 {#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}

可以從 Ogma 設定啟動 MCP，也可以透過獨立的 `ogma-mcp` 執行檔啟動。當 Ogma 啟動內部 MCP 程序時，隱藏的後端參數也支援內嵌 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` | 執行中的 Ogma 後端 API URL。 |
| `--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`，用以啟用對應能力。伺服器沒有每分鐘或每個工作階段的活動配額；個別工具的限制仍然適用。不接受已移除的配額參數。Stdio 參數會獨立設定該程序，不受內嵌 MCP 設定影響。

## 開發建置 {#development-builds}

存放庫根目錄提供本機建置指令碼：

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

測試封裝的 Electron 使用體驗時，請使用桌面版建置。測試 API 與網頁介面行為時，請使用後端/前端建置。
