> ## Documentation Index
> Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CometAPI와 함께 OpenClaw 사용하기

> 이 가이드를 사용해 base URL, API key, model 또는 provider 옵션을 설정하여 OpenClaw에서 CometAPI를 구성하세요.

[CometAPI](https://www.cometapi.com)를 [OpenClaw](https://openclaw.ai)의 모델 provider로 사용하세요 — 하나의 API로 500개 이상의 모델을 사용할 수 있습니다.

## 사전 요구 사항

* Node.js ≥ 22 — [nvm](https://github.com/nvm-sh/nvm)을 통한 설치 권장
* 활성 API key가 있는 CometAPI 계정 — [여기에서 발급](https://www.cometapi.com/console/token)

## 설치

<Steps>
  <Step title="CometAPI API key 받기">
    [CometAPI 콘솔](https://www.cometapi.com/console/token)에 로그인하세요. **Add API Key**를 클릭하고 CometAPI API key를 복사하세요.

    <Frame>
      <img src="https://mintcdn.com/cometapi/SZhlxZhCnMLn__BW/images/overview/810968_364191.png?fit=max&auto=format&n=SZhlxZhCnMLn__BW&q=85&s=aef81a83f29f8eb16655ed4060425f50" alt="Add API Key 버튼이 표시된 CometAPI 대시보드" width="3824" height="1892" data-path="images/overview/810968_364191.png" />
    </Frame>

    <Frame>
      <img src="https://mintcdn.com/cometapi/HhtmQffktazbxUvS/images/overview/810968_364193.png?fit=max&auto=format&n=HhtmQffktazbxUvS&q=85&s=d893f659267150d0faf45f99eb5dffc1" alt="base URL이 포함된 CometAPI API key 세부 정보" width="2434" height="1232" data-path="images/overview/810968_364193.png" />
    </Frame>
  </Step>

  <Step title="OpenClaw 설치 또는 업데이트">
    **권장** — 공식 설치 프로그램을 사용하세요:

    ```bash theme={null}
    curl -fsSL https://openclaw.ai/install.sh | bash
    ```

    또는 npm으로 설치하세요:

    ```bash theme={null}
    npm install -g openclaw@latest
    ```

    그런 다음 설정 마법사를 한 번 실행하세요:

    ```bash theme={null}
    openclaw onboard --install-daemon
    ```

    온보딩 중 CometAPI를 수동으로 구성하려면 Model/Auth 단계에서 **Skip**을 선택하세요. 온보딩이 끝나면 gateway가 실행 중인지 확인하세요:

    ```bash theme={null}
    openclaw gateway status
    openclaw dashboard
    ```
  </Step>
</Steps>

## 구성

<Steps>
  <Step title="CometAPI 키 저장">
    config 파일에 하드코딩하지 않고 daemon이 사용할 수 있도록 키를 `~/.openclaw/.env`에 작성하세요:

    ```bash theme={null}
    printf 'COMETAPI_KEY=%s\n' "$COMETAPI_KEY" >> ~/.openclaw/.env
    chmod 600 ~/.openclaw/.env
    ```

    <Note>
      이미 shell, 서비스 관리자 또는 secrets 워크플로를 통해 `COMETAPI_KEY`를 주입하고 있다면 이 단계는 건너뛰세요 — 아래 config는 변수가 어떻게 설정되었는지와 관계없이 `$\{COMETAPI_KEY\}`를 사용합니다.
    </Note>
  </Step>

  <Step title="CometAPI provider 구성">
    CometAPI는 **네 가지 API 형식**을 지원합니다. `~/.openclaw/openclaw.json`에 하나 이상의 provider 블록을 추가하세요:

    | Provider                    | API 형식                 | 호출되는 엔드포인트                  | Base URL                          |
    | --------------------------- | ---------------------- | --------------------------- | --------------------------------- |
    | `cometapi-openai`           | `openai-completions`   | `POST /v1/chat/completions` | `https://api.cometapi.com/v1`     |
    | `cometapi-openai-responses` | `openai-responses`     | `POST /v1/responses`        | `https://api.cometapi.com/v1`     |
    | `cometapi-claude`           | `anthropic-messages`   | `POST /messages`            | `https://api.cometapi.com`        |
    | `cometapi-google`           | `google-generative-ai` | `POST /v1beta/...`          | `https://api.cometapi.com/v1beta` |

    ```json theme={null}
    {
      "agents": {
        "defaults": {
          "model": {
            "primary": "cometapi-claude/your-claude-model-id"
          }
        }
      },
      "models": {
        "mode": "merge",
        "providers": {
          "cometapi-openai": {
            "baseUrl": "https://api.cometapi.com/v1",
            "apiKey": "${COMETAPI_KEY}",
            "api": "openai-completions",
            "models": [{ "id": "your-chat-model-id", "name": "OpenAI-compatible text model" }]
          },
          "cometapi-openai-responses": {
            "baseUrl": "https://api.cometapi.com/v1",
            "apiKey": "${COMETAPI_KEY}",
            "api": "openai-responses",
            "models": [{ "id": "your-responses-model-id", "name": "Responses API model" }]
          },
          "cometapi-claude": {
            "baseUrl": "https://api.cometapi.com",
            "apiKey": "${COMETAPI_KEY}",
            "api": "anthropic-messages",
            "models": [{ "id": "your-claude-model-id", "name": "Claude family model" }]
          },
          "cometapi-google": {
            "baseUrl": "https://api.cometapi.com/v1beta",
            "apiKey": "${COMETAPI_KEY}",
            "api": "google-generative-ai",
            "models": [{ "id": "your-gemini-model-id", "name": "Gemini family model" }]
          }
        }
      }
    }
    ```

    필요한 provider만 유지해도 되고, `provider/model` 참조를 사용해 형식 간 라우팅을 하도록 네 가지를 모두 유지해도 됩니다.

    각 `your-...-model-id` 플레이스홀더는 provider 블록과 일치하는 [CometAPI Models page](https://www.cometapi.com/models/)의 현재 model ID로 바꾸세요.

    <Note>
      OpenAI Responses API가 필요한 모델에는 `cometapi-openai-responses` (`api: "openai-responses"`)를 사용하세요. 기존 채팅 완성 경로의 모델에는 `cometapi-openai` (`api: "openai-completions"`)를 사용하세요. 두 형식은 동일한 `baseUrl` (`https://api.cometapi.com/v1`)을 공유하며, 차이점은 OpenClaw가 어떤 다운스트림 엔드포인트를 호출하느냐뿐입니다.
    </Note>

    <Note>
      이 설정에는 `auth-profiles.json` 파일이 **필수는 아닙니다**. provider 키는 `$\{COMETAPI_KEY\}` env var를 통해 `models.providers.*.apiKey`에서 확인됩니다. `auth-profiles.json`은 여러 키에 대해 profile별 자격 증명 순환을 원할 때만 필요합니다.
    </Note>
  </Step>
</Steps>

## 검증

<Steps>
  <Step title="재시작 및 확인">
    `.env`를 추가하거나 provider 구성을 변경한 후 게이트웨이를 재시작하세요:

    ```bash theme={null}
    openclaw gateway restart
    ```

    그런 다음 진단을 실행하세요:

    ```bash theme={null}
    openclaw models status
    openclaw models list --provider cometapi-claude
    openclaw doctor
    ```

    설정이 성공적으로 완료되면 다음과 같이 표시됩니다:

    * `openclaw models status`는 기본 모델을 `cometapi-claude/your-claude-model-id`로 확인하며 CometAPI provider에 대한 누락된 인증 경고가 없습니다
    * `openclaw models list --provider cometapi-claude`는 구성된 모델을 나열합니다
    * `openclaw doctor`는 CometAPI provider에 대해 config 또는 인증 오류가 없다고 보고합니다

    <Frame>
      <img src="https://mintcdn.com/cometapi/3HbSFe0pH45ETcjq/images/integrations/810968_371721.png?fit=max&auto=format&n=3HbSFe0pH45ETcjq&q=85&s=928b6faed91c5c2cb2eceea6bfac630d" alt="CometAPI provider가 인증된 것으로 표시되는 OpenClaw models status" width="1906" height="296" data-path="images/integrations/810968_371721.png" />
    </Frame>
  </Step>
</Steps>

## 모델 전환

<Steps>
  <Step title="모델 전환">
    ```bash theme={null}
    # Set the default model in config
    openclaw models set cometapi-claude/your-claude-model-id

    # Switch for the current chat session
    /model cometapi-openai/your-chat-model-id
    /model cometapi-openai-responses/your-responses-model-id
    /model cometapi-claude/your-claude-model-id
    /model cometapi-google/your-gemini-model-id
    ```
  </Step>
</Steps>

## 문제 해결

<AccordionGroup>
  <Accordion title="클린 재설치(선택 사항)">
    손상된 이전 설정을 복구하는 경우, gateway를 중지하고 `~/.openclaw`를 제거한 다음 CometAPI 구성을 적용하기 전에 온보딩을 다시 실행하세요:

    ```bash theme={null}
    openclaw gateway stop
    rm -rf ~/.openclaw
    openclaw onboard --install-daemon
    ```

    이렇게 하면 모든 로컬 구성, 세션, 로그, 인증 상태 및 워크스페이스가 제거됩니다. 그런 다음 3–5단계를 다시 따르세요.
  </Accordion>
</AccordionGroup>

<script type="application/ld+json">
  {`
    {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "HowTo",
        "@id": "https://apidoc.cometapi.com/integrations/openclaw#howto",
        "name": "CometAPI와 함께 OpenClaw 사용하기",
        "description": "이 가이드를 사용해 base URL, API key, model 또는 provider 옵션을 설정하여 CometAPI와 함께 OpenClaw를 구성하세요.",
        "step": [
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/openclaw#step-1",
            "position": 1,
            "name": "CometAPI API key 가져오기",
            "text": "CometAPI 계정을 생성하거나 열고, 대시보드에서 활성 API key를 복사하세요."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/openclaw#step-2",
            "position": 2,
            "name": "OpenClaw 설치 또는 업데이트",
            "text": "CometAPI와 함께 OpenClaw 사용하기 가이드의 OpenClaw 설치 또는 업데이트 단계를 완료하세요."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/openclaw#step-3",
            "position": 3,
            "name": "CometAPI key 저장",
            "text": "CometAPI와 함께 OpenClaw 사용하기 가이드의 CometAPI key 저장 단계를 완료하세요."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/openclaw#step-4",
            "position": 4,
            "name": "CometAPI provider 구성",
            "text": "CometAPI와 함께 OpenClaw 사용하기 가이드의 CometAPI provider 구성 단계를 완료하세요."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/openclaw#step-5",
            "position": 5,
            "name": "재시작 및 확인",
            "text": "CometAPI와 함께 OpenClaw 사용하기 가이드의 재시작 및 확인 단계를 완료하세요."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/openclaw#step-6",
            "position": 6,
            "name": "model 전환",
            "text": "CometAPI와 함께 OpenClaw 사용하기 가이드의 model 전환 단계를 완료하세요."
          }
        ]
      },
      {
        "@type": "BreadcrumbList",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "CometAPI 문서",
            "item": "https://apidoc.cometapi.com/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "통합",
            "item": "https://apidoc.cometapi.com/integrations"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "CometAPI와 함께 OpenClaw 사용하기",
            "item": "https://apidoc.cometapi.com/integrations/openclaw"
          }
        ]
      }
    ]
    }
    `}
</script>
