# 명령줄 (Command-line)

> 터미널에서 proxyman-cli로 macOS용 Proxyman을 제어하세요. 규칙 내보내기와 가져오기, 디버깅 도구 및 시스템 프록시 켜기/끄기, 로그 내보내기, 인증서 관리를 할 수 있습니다.

macOS용 Proxyman에는 명령줄 도구인 `proxyman-cli`가 포함되어 있어, 터미널이나 직접 만든 스크립트에서 Proxyman을 제어할 수 있습니다 ✅.

이 도구는 `/Applications/Proxyman.app/Contents/MacOS/proxyman-cli`에 있습니다.

설치된 버전의 모든 명령을 보려면 다음 명령을 실행합니다:

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli --help
```

## 1. Proxyman 설정 내보내기 {#1-export-proxyman-config}

SSL Proxying List, Breakpoint, Map Local, Scripting, Block List, Allow List, Reverse Proxy, Network Conditions 등 모든 디버깅 도구의 규칙을 내보냅니다.

```bash
$ /Applications/Proxyman.app/Contents/MacOS/proxyman-cli export -h

OVERVIEW: Export all debugging tools rules (Breakpoint, SSL Pinning, Map Local, Map
Remote, Scripting, etc).

USAGE: proxyman-cli export [--mode <mode>] --output <output>

OPTIONS:
  -m, --mode <mode>       Export Mode (all = "All debugging tools's rules", enabledRules
                          = "Only enabled rules"). (default: all)
  -o, --output <output>   A Output file to save the config to.
  --version               Show the version.
  -h, --help              Show help information.
```

> **노트:** 기본적으로 `export` 명령은 모든 규칙을 내보냅니다. 특정 규칙을 제외하려면 각 디버깅 도구에서 "Enabled" 열의 체크를 해제하고 `-m enabledRules` 옵션을 사용하세요.

### 예시: {#for-example}

* 모든 디버깅 도구 규칙 내보내기:

`$ /Applications/Proxyman.app/Contents/MacOS/proxyman-cli export -o ~/Desktop/data.json`

* 활성화된 규칙만 내보내기:

`$ /Applications/Proxyman.app/Contents/MacOS/proxyman-cli export -m enabledRules -o ~/Desktop/data.json`

## 2. Proxyman 설정 가져오기 {#2-import-proxyman-config}

`export` 명령으로 내보낸 Proxyman 디버깅 도구 규칙을 가져옵니다.

```bash
$ /Applications/Proxyman.app/Contents/MacOS/proxyman-cli import -h

OVERVIEW: Import config to Proxyman.

USAGE: proxyman-cli import [--mode <mode>] --input <input>

OPTIONS:
  -m, --mode <mode>       Import Mode (append = "Append to the existing rules"),
                          override = "Import and Replace all existing rules". (default:
                          append)
  -i, --input <input>     A input file to import.
  --version               Show the version.
  -h, --help              Show help information.
```

> **노트:** 기본적으로 가져온 새 규칙은 기존 디버깅 규칙에 추가됩니다. 모든 규칙을 덮어쓰려면 `-m override` 옵션을 사용하세요.

### 예시: {#for-example-1}

* 모든 디버깅 규칙을 추가하여 가져오기:

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli import -i ~/Desktop/data.json
```

* 기존 규칙을 모두 덮어쓰고 가져오기:

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli import -m override -i ~/Desktop/data.json
```

## 3. 라이선스 활성화/연결 해제 {#3-activateunlink-license}

라이선스를 활성화하거나 연결 해제하는 명령은 라이선스 페이지를 참고하세요.

- [라이선스](https://proxyman.com/docs/ko/license)

## 4. HTTP 시스템 프록시 켜기/끄기 {#4-toggle-http-system-proxy}

Proxyman 4.8.0 이상에서는 명령줄로 macOS 시스템 프록시를 켜거나 끌 수 있습니다. [Raycast 확장 프로그램](https://proxyman.com/docs/ko/raycast)도 이 기능을 사용합니다.

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli proxy on
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli proxy off
```

참고: [https://github.com/ProxymanApp/Proxyman/issues/1626#issuecomment-1545862020](https://github.com/ProxymanApp/Proxyman/issues/1626#issuecomment-1545862020)

## 5. 세션 지우기 {#5-clear-session}

* 명령줄에서 현재 Session을 지울 수 있습니다. Proxyman 4.12.0 이상에서 사용할 수 있습니다.

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli clear-session
```

## 6. 디버깅 도구 켜기/끄기 {#6-toggle-debugging-tools}

* 명령줄로 Breakpoint, Map Local, Scripting 도구를 켜거나 끌 수 있습니다. Proxyman 4.12.0 이상에서 사용할 수 있습니다.

```bash
# Scripting
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli scripting on
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli scripting off

# Map Local
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli maplocal on
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli maplocal off

# Breakpoint
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli breakpoint on
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli breakpoint off
```

* Proxyman macOS 6.3.0 이상에서는 같은 방식으로 `map-remote`, `block-list`, `allow-list`, `reverse-proxy`, `network-condition`, `no-caching`, `dns-spoofing` 도구도 켜거나 끌 수 있습니다.
* `on` 또는 `off` 대신 `open`을 사용하면 도구 창을 열 수 있습니다. 예: `proxyman-cli map-remote open`. `no-caching`은 `on`과 `off`만 지원합니다.
* 이 명령들이 작동하려면 Proxyman이 실행 중이어야 합니다.

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli map-remote on
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli block-list off
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli network-condition open
```

## 7. 명령줄로 프록시 헬퍼 도구 설치 {#7-install-the-proxy-helper-tool-by-command-line}

Proxyman macOS 4.12.0 이상에서는 GUI 없이 헬퍼 도구를 설치할 수 있습니다.

```bash
sudo /Applications/Proxyman.app/Contents/MacOS/proxyman --install-privileged-components
```

## 8. Proxyman 로그 내보내기 {#8-export-proxyman-log}

**Proxyman macOS v5.11.0 이상에서 다음을 지원합니다:**

* 모두 내보내기 (ProxymanSession 형식)

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli export-log -m all -o "~/desktop/output"
```

* 특정 도메인 내보내기 (호스트만 입력하며, 스킴, 포트, 경로, 쿼리는 포함하지 않음)

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli export-log -m domains -o "~/desktop/output" --domains 'api.twitter.com' --domains 'www.producthunt.com'
```

**Proxyman macOS 5.20.0 이상에서는 Raw 또는 HAR 형식으로 내보낼 수 있습니다.**

* 모두 내보내기 - RAW 요청/응답 형식

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli export-log -m all -o "~/desktop/output" --format raw
```

* 모두 내보내기 - HAR 형식

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli export-log -m all -o "~/desktop/output" --format har
```

* 특정 도메인 내보내기 - RAW 요청/응답 형식

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli export-log -m domains -o "~/desktop/output" --domains 'api.twitter.com' --domains 'www.producthunt.com' --format raw
```

* 특정 도메인 내보내기 - HAR 형식

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli export-log -m domains -o "~/desktop/output" --domains 'api.twitter.com' --domains 'www.producthunt.com' --format har
```

**Proxyman macOS 6.2.0 이상에서는 `--since <flow_id>` 옵션을 추가하여 해당 flow ID부터의 flow만 내보낼 수 있습니다(해당 ID의 flow 포함). 모든 내보내기 형식에서 동작합니다.**

`--format`에서 지원하는 형식은 `proxymansession`(기본값), `har`, `raw`입니다.

## 9. 사용자 지정 루트 인증서 가져오기 {#9-import-custom-root-certificate}

* ✅ Proxyman에 사용자 지정 p12 루트 인증서 가져오기
* 시스템 키체인에서 인증서를 자동으로 신뢰(sudo 필요)
* Proxyman macOS 5.15.0 이상에서 사용할 수 있습니다

### 설치 및 신뢰 {#install-and-trust}

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli install-root-cert <certificate_path> --password <your_cert_password> --trust
```

### 설치만 하고 신뢰하지 않기 (키체인에서 직접 신뢰해야 할 수 있음) {#install-but-not-trust-you-might-need-to-trust-it-manually-in-the-keychain}

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli install-root-cert <certificate_path> --password <your_cert_password>
```

## 10. 현재 IP 및 포트 내보내기 {#10-export-current-ip-and-port}

* Proxyman macOS 6.7.0 이상에서 사용할 수 있습니다
* JSON 형식으로 현재 수신 중인 IP 및 포트 가져오기

<pre class="language-bash"><code class="lang-bash"><strong>/Applications/Proxyman.app/Contents/MacOS/proxyman-cli proxy-host
</strong></code></pre>

출력에는 `ip` 필드와 `port` 필드가 포함됩니다(예: `{"ip":"192.168.1.10","port":9090}`). Proxyman이 localhost에서만 수신하는 경우 IP는 `127.0.0.1`입니다.

## 11. 사용자 지정 인증서(클라이언트 및 서버) 추가, 제거, 교체  {#11-add-remove-replace-the-custom-certificates-client-and-server-}

* Proxyman macOS 6.10.0 이상에서 사용할 수 있습니다 ✅
* 비밀번호가 있는 P12 인증서를 지원합니다
* 클라이언트 인증서의 경우 `--port`의 기본값은 `443`입니다

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli custom-cert add server ~/Desktop/mycert.p12 --password 123

/Applications/Proxyman.app/Contents/MacOS/proxyman-cli custom-cert add client ~/Desktop/mycert.p12 --password 123 --host myserver.com --port 443

/Applications/Proxyman.app/Contents/MacOS/proxyman-cli custom-cert replace server ~/Desktop/mycert.p12 --password 123 --name mycert.p12

/Applications/Proxyman.app/Contents/MacOS/proxyman-cli custom-cert replace client ~/Desktop/mycert.p12 --password 123 --host myserver.com --port 443

/Applications/Proxyman.app/Contents/MacOS/proxyman-cli custom-cert remove server --name mycert.p12

/Applications/Proxyman.app/Contents/MacOS/proxyman-cli custom-cert remove client --host myserver.com --port 443
```

## 12. External Proxy CLI {#12-external-proxy-cli}

* Proxyman macOS 6.12.0 이상 ✅

### 활성화 {#enable}

저장된 설정을 변경하지 않고 External Proxy를 활성화합니다:

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy enable
```

* 프록시 모드를 활성화하고 설정하기:

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy enable http --host proxy.example.com --port 8080
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy enable https --host proxy.example.com --port 8443
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy enable socks --host proxy.example.com --port 1080
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy enable pac --url https://example.com/proxy.pac
```

### 비활성화 {#disable}

External Proxy 기능 전체를 비활성화합니다:

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy disable
```

* 프록시 모드 하나만 비활성화하기:

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy disable http
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy disable https
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy disable socks
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy disable pac
```

### 설정 열기 {#open-the-settings}

Proxyman에서 External Proxy 설정 창을 엽니다:

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli external-proxy open
```

## 13. 모든 디버깅 도구의 CRUD {#13-crud-for-all-debugging-tools}

> **팁:** Proxyman macOS 6.14.0 이상에서만 사용할 수 있습니다

### 지원되는 도구 {#supported-tools}

지원되는 도구는 `block-list`, `allow-list`, `ssl-proxying`, `map-local`, `map-remote`, `breakpoint`, `scripting`, `network-condition`, `reverse-proxy`, `protobuf`, `dns-spoofing`입니다.

### 공통 명령 {#common-commands}

`<tool>` 자리에는 지원되는 도구 중 하나를, `<id>` 자리에는 `list` 또는 `get`에서 확인한 규칙 ID를 입력하세요.

```bash
# Read rules
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> list
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> list --enabled true
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> get <id>

# Change one rule
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> update <id> --name "New name"
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> delete <id>

# Turn a whole tool on or off
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> enable
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> disable

# Turn one rule on or off
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> enable <id>
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> disable <id>
```

`enable <id>` 명령도 필요한 경우 해당 도구를 함께 켭니다. 도구를 끄면 각 규칙의 활성화 설정은 그대로 유지됩니다. `update` 명령은 보낸 필드만 변경하고, `delete` 명령은 규칙을 즉시 삭제합니다.

`map-local`, `map-remote`, `breakpoint`, `scripting`에는 규칙 폴더를 관리하는 `folders` 명령도 있습니다. 이들의 `list`와 `create` 명령은 `--folder <name or id>` 옵션을 받습니다. 옵션을 확인하려면 `/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules map-local folders --help` 명령을 실행하세요.

### 규칙 만들기 {#create-a-rule}

다음은 가장 간단한 생성 명령입니다. 선택 플래그를 사용하면 더 많은 필드를 설정할 수 있습니다. 옵션을 확인하려면 `/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> create --help` 명령을 실행하세요.

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules block-list create https://ads.example.com/*
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules allow-list create https://api.example.com/*
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules ssl-proxying create '*.example.com' --list include
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules map-local create https://api.example.com/* --path ./response.json
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules map-remote create https://old.example.com/* https://new.example.com/
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules breakpoint create https://api.example.com/* --phase both
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules scripting create https://api.example.com/* --script-file ./rule.js
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules network-condition create --profile 3g
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules reverse-proxy create https://upstream.example.com --local-port 8080
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules protobuf create https://api.example.com/* --request-type package.Request
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules dns-spoofing create example.com 127.0.0.1
```

공통 규칙 플래그에는 `--name`, `--enabled true|false`, `--method`, `--match wildcard|regex`, `--include-subpaths true|false`(도구가 지원하는 경우)가 있습니다. 이름은 선택 사항입니다. 선택 값을 생략하면 Proxyman은 해당 도구의 기본값을 사용합니다.

### JSON 입력 {#json-input}

생성과 업데이트에서는 `--input <file>` 옵션으로 JSON 객체를 보낼 수 있습니다. `--input -` 옵션을 사용하면 표준 입력(standard input)에서 JSON을 읽습니다. `--input` 옵션은 필드 플래그와 함께 사용하지 마세요.

```bash
printf '%s' '{"url":"https://api.example.com/*","name":"Local API","enabled":true}' \
  | /Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules map-local create --input -

/Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules map-local update <id> --input ./map-local-change.json
```

Proxyman이 종료되어 있으면 명령은 `ok: false`와 `app_not_running` 오류 코드가 포함된 JSON을 반환합니다. 입력 오류는 종료 코드 `2`, 그 밖의 오류는 `1`을 사용합니다.

## 14. 회사 정책 {#14-company-policy}

### MCP (Proxyman macOS 6.15.0 이상) {#mcp-proxyman-macos-6150}

* Proxyman이 종료된 상태에서도 [MCP](https://proxyman.com/docs/ko/mcp) 기능을 켜거나 끌 수 있습니다
* 명령줄에서 MCP를 끄면 사용자는 Settings에서 다시 켤 수 없습니다

MCP를 끄고 Settings 토글을 잠급니다:

```
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli mcp off
```

MCP를 켜고 토글 잠금을 해제합니다:

```
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli mcp on
```

## 15. HTTP 버전 {#15-http-version}

전역 [HTTP/2](https://proxyman.com/docs/ko/basic-features/http2) 정책을 조회하거나 변경합니다. Proxyman을 실행한 상태로 두세요. 이 명령들은 MCP가 꺼져 있어도 작동합니다.

```bash
# Read the current policy
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli http-version status

# Prefer HTTP/2, with HTTP/1.1 fallback
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli http-version set prefer_http2

# Turn the HTTP/2 preference off
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli http-version set http1_only
```

HTTP/2는 기본적으로 꺼져 있습니다. 정책을 변경하면 활성 HTTP, WebSocket, Server-Sent Events 연결이 닫히고 Compose 클라이언트가 새로 고쳐집니다. 현재 정책을 다시 설정하면 연결은 그대로 유지됩니다.

이 정책으로는 요청이 어떤 프로토콜을 사용했는지 알 수 없습니다. 캡처한 요청과 업스트림 연결을 확인하세요. Network Extension 캡처를 사용하는 경우, `h2`만 제공하는 클라이언트는 `http1_only` 설정에서도 HTTP/2를 유지합니다.

두 명령 모두 JSON을 반환합니다. `status` 결과에는 `httpVersionMode`와 `http2Enabled`가 포함되고, `set` 결과에는 `previousMode`와 `changed`도 포함됩니다. 예를 들어 HTTP/1에서 HTTP/2 선호 설정으로 바꾸면 다음을 반환합니다:

```json
{
  "success": true,
  "data": {
    "httpVersionMode": "prefer_http2",
    "http2Enabled": true,
    "previousMode": "http1_only",
    "changed": true
  }
}
```

## 16. Network Extension {#16-network-extension}

명령줄에서 [Network Extension](https://proxyman.com/docs/ko/advanced-features/network-extension)의 설치와 캡처를 관리합니다. Proxyman을 실행한 상태로 두세요. MCP를 켤 필요는 없습니다.

> **노트:** Network Extension은 직접 배포판 Proxyman과 macOS 26 이상이 필요합니다. 설치와 캡처에는 Proxyman PRO가 필요합니다. 상태 확인과 제거는 PRO 없이도 사용할 수 있습니다. Setapp은 Network Extension을 지원하지 않습니다.

```bash
# Read installation and capture status without changing either
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli network-extension status

# Install or update the bundled extension without enabling capture
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli network-extension install

# Enable capture, installing the extension if necessary
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli network-extension enable

# Stop capture and keep the extension installed
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli network-extension disable

# Retry requested installation or capture after resolving an error
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli network-extension retry

# Stop capture and remove the extension and its saved network configurations
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli network-extension uninstall
```

`install` 명령은 캡처가 꺼져 있다면 그 상태를 유지합니다. `enable` 명령은 캡처를 시작하고 헬퍼 기반 시스템 프록시를 끕니다. Network Extension 캡처가 켜져 있는 동안에는 시스템 프록시를 켤 수 없습니다.

`disable`과 `uninstall`은 provider를 통해 기존 연결을 닫습니다(직접 TCP 연결 포함). 이후 시스템 프록시는 **Auto Override System Proxy Settings at Launch** 설정을 따릅니다.

macOS가 승인이나 재시작을 요구할 수 있습니다. 해당 단계를 완료한 뒤 `network-extension status`를 다시 실행하세요. 명령이 성공했다는 것은 요청이 접수되었다는 뜻이며, 설치나 캡처가 완료되었다는 뜻은 아닙니다. 작업이 진행 중이거나 시간 초과되면 다시 시도하기 전에 status를 먼저 확인하세요.

HTTPS 복호화에는 여전히 신뢰할 수 있는 Proxyman 인증서와 일치하는 SSL Proxying 규칙이 필요합니다. 새로 열린 연결을 캡처하려면 클라이언트를 다시 연결하세요.

### JSON 상태 읽기 {#read-the-json-status}

| 필드 | 의미 |
| --- | --- |
| `supported` | 이 앱과 macOS 버전이 Network Extension을 지원하는지 여부입니다. 지원하지 않는 호스트는 `false`를 반환하고 변경 요청을 거부합니다. |
| `installed`, `installedBuild`, `bundledBuild` | macOS가 보고한 설치 상태와 실행 중인 앱에 포함된 빌드입니다. |
| `systemExtensionEnabled` | macOS가 설치된 확장 프로그램을 활성화된 상태로 보고하는지 여부입니다. |
| `proAvailable` | 설치와 캡처에 Proxyman PRO를 사용할 수 있는지 여부입니다. |
| `captureEnabled` | 캡처가 요청되었는지 여부입니다. |
| `captureActive` | provider가 캡처 세션을 확인했는지 여부입니다. |
| `state`, `message` | 현재 앱 상태와 이해하기 쉬운 설명입니다. |
| `operationPending` | 설치, 제거 또는 캡처 시작 작업이 진행 중인지 여부입니다. |
| `approvalRequired`, `restartRequired` | 승인 또는 재시작이 필요한지 여부입니다. |
| `removalPending` | 앱을 다시 실행한 뒤에도 포함하여, macOS에 제거 대기 중인 확장 프로그램 기록이 남아 있는지 여부입니다. |
| `systemProxyEnabled` | Proxyman이 현재 macOS 시스템 프록시가 켜져 있다고 보고하는지 여부입니다. |

지원되는 호스트는 이 필드들을 `data` 아래에 반환합니다. `disable` 명령은 설치 상태 조회를 기다리지 않으므로 응답의 `installed` 값은 `null`입니다. 최신 설치 상태를 확인하려면 `status`를 사용하세요.

### JSON 출력 및 종료 코드 {#json-output-and-exit-codes}

`http-version` 및 `network-extension` 명령 그룹은 JSON 응답을 반환합니다. 응답에는 `success`, 가능한 경우 `data`, 실패 시 `error`가 포함됩니다.

* `0`: 조회가 성공했거나 변경이 접수되었습니다. 완료 여부는 Network Extension 상태에서 확인하세요.
* `1`: 명령이 실패했거나, Proxyman이 종료되어 있거나, 명령 시간이 초과되었습니다.
* `64`: 잘못된 명령줄 인수입니다. 파서 오류와 도움말은 일반 텍스트로 출력됩니다.

설치된 앱이 지원하는 문법은 다음 명령으로 확인하세요:

```bash
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli http-version --help
/Applications/Proxyman.app/Contents/MacOS/proxyman-cli network-extension --help
```
