Claude 시작하기

Claude 시작하기

Claude에게 첫 API 호출을 보내고 간단한 웹 검색 어시스턴트를 만들어 보아요. 아래 단계를 따라가면 모델에 메시지를 보내고 응답을 받는 기본 흐름을 금방 익힐 수 있어요.

출처: 문서

본문

준비사항 (Prerequisites)

API 호출하기

API 키를 환경 변수로 내보내세요. 아래 cURL 명령은 `$ANTHROPIC_API_KEY`에서 값을 읽어요.
    ```bash
    export ANTHROPIC_API_KEY="your-api-key-here"
    ```
  </Step>

  <Step title="첫 API 호출 보내기">
    Messages API로 `POST` 요청을 보내 보세요:

    ```bash cURL
    curl https://api.anthropic.com/v1/messages \
      -H "content-type: application/json" \
      -H "x-api-key: $ANTHR...KEY" \
      -H "anthropic-version: 2023-06-01" \
      -d '{
        "model": "claude-opus-5-5",
        "max_tokens": 1000,
        "messages": [
          {
            "role": "user",
            "content": "What should I search for to find the latest developments in renewable energy?"
          }
        ]
      }'
    ```

    Claude는 어시스턴트의 메시지가 담긴 JSON 응답을 돌려줘요:

    ```json Output
    {
      "model": "claude-opus-5-5",
      "id": "msg_013mHbppMPd2PrVJzGMZPt2D",
      "type": "message",
      "role": "assistant",
      "content": [
        {
          "type": "text",
          "text": "Here are some effective search strategies to find the latest developments in renewable energy:\n\n## General Search Terms\n- \"Renewable energy news 2025\"\n- ..."
        }
      ],
      "stop_reason": "end_turn",
      "stop_sequence": null,
      "stop_details": null,
      "usage": {
        "input_tokens": 21,
        "output_tokens": 305
      }
    }
    ```
  </Step>
</Steps>
Homebrew로 Anthropic CLI를 설치하세요:
    ```bash
    brew install anthropics/tap/ant
    ```

    다른 설치 방법은 CLI 퀵스타트의 [설치 (Installation)](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/quickstart#installation)를 참고하세요.
  </Step>

  <Step title="인증하기">
    Anthropic 계정으로 로그인하세요:

    ```bash
    ant auth login
    ```

    그러면 브라우저 기반 OAuth 흐름이 열려요. 인증을 마친 뒤, 다음 명령으로 자격 증명을 확인하세요:

    ```bash
    ant auth status
    ```

    브라우저가 없는 원격 호스트에서는 `--no-browser`를 넘기면 다른 기기에서 열 수 있는 URL이 나오고, 반환된 코드를 다시 터미널에 붙여넣으면 돼요. 환경에 `ANTHROPIC_API_KEY`가 설정돼 있으면 로그인 자격 증명보다 우선해요. CI처럼 상호작용이 없는 환경에서는 [CLI 인증 옵션](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication)을 참고하세요.
  </Step>

  <Step title="첫 API 호출 보내기">
    터미널에서 `ant messages create`를 실행하세요:

    ```bash CLI
    ant messages create \
      --model claude-opus-5-5 \
      --max-tokens 1000 \
      --message '{
        role: user,
        content: "What should I search for to find the latest developments in renewable energy?"
      }'
    ```

    CLI가 JSON 응답을 출력해요:

    ```json Output
    {
      "model": "claude-opus-5-5",
      "id": "msg_01N1ycuCkM5Mzd7WhTU4fwST",
      "type": "message",
      "role": "assistant",
      "content": [
        {
          "type": "text",
          "text": "Here are some effective search strategies to find the latest developments in renewable energy:\n\n## General Search Terms\n- \"Renewable energy news 2025\"\n- ..."
        }
      ],
      "stop_reason": "end_turn",
      "stop_sequence": null,
      "stop_details": null,
      "usage": { "input_tokens": 21, "output_tokens": 305 }
    }
    ```
  </Step>
</Steps>
API 키를 환경 변수로 내보내세요. SDK는 `ANTHROPIC_API_KEY`를 자동으로 읽어요.
    ```bash
    export ANTHROPIC_API_KEY="your-api-key-here"
    ```
  </Step>

  <Step title="프로젝트 만들고 SDK 설치하기">
    ```bash
    mkdir claude-quickstart && cd claude-quickstart
    python3 -m venv .venv && source .venv/bin/activate
    pip install anthropic
    ```
  </Step>

  <Step title="코드 작성하기">
    `quickstart.py`라는 파일을 만드세요:

    ```python Python
    import anthropic

    client = anthropic.Anthropic()

    message = client.messages.create(
        model="claude-opus-5-5",
        max_tokens=1000,
        messages=[
            {
                "role": "user",
                "content": "What should I search for to find the latest developments in renewable energy?",
            }
        ],
    )

    for block in message.content:
        if block.type == "text":
            print(block.text)
    ```
  </Step>

  <Step title="코드 실행하기">
    ```bash
    python quickstart.py
    ```

    ```text Output wrap
    Here are some effective search strategies to find the latest developments in renewable energy:

    ## General Search Terms
    - "Renewable energy news 2025"
    - ...
    ```
  </Step>
</Steps>
API 키를 환경 변수로 내보내세요. SDK는 `ANTHROPIC_API_KEY`를 자동으로 읽어요.
    ```bash
    export ANTHROPIC_API_KEY="your-api-key-here"
    ```
  </Step>

  <Step title="프로젝트 만들고 SDK 설치하기">
    ```bash
    mkdir claude-quickstart && cd claude-quickstart
    npm init -y
    npm pkg set type=module
    npm install @anthropic-ai/sdk
    ```
  </Step>

  <Step title="코드 작성하기">
    `quickstart.ts`라는 파일을 만드세요:

    ```typescript TypeScript
    import Anthropic from "@anthropic-ai/sdk";

    const client = new Anthropic();

    const message = await client.messages.create({
      model: "claude-opus-5-5",
      max_tokens: 1000,
      messages: [
        {
          role: "user",
          content: "What should I search for to find the latest developments in renewable energy?"
        }
      ]
    });

    for (const block of message.content) {
      if (block.type === "text") {
        console.log(block.text);
      }
    }
    ```
  </Step>

  <Step title="코드 실행하기">
    ```bash
    npx tsx quickstart.ts
    ```

    ```text Output wrap
    Here are some effective search strategies to find the latest developments in renewable energy:

    ## General Search Terms
    - "Renewable energy news 2025"
    - ...
    ```
  </Step>
</Steps>
API 키를 환경 변수로 내보내세요. SDK는 `ANTHROPIC_API_KEY`를 자동으로 읽어요.
    ```bash
    export ANTHROPIC_API_KEY="your-api-key-here"
    ```
  </Step>

  <Step title="프로젝트 만들고 SDK 설치하기">
    새 콘솔 프로젝트를 만들고 Anthropic 패키지를 추가하세요:

    ```bash
    dotnet new console -n ClaudeQuickstart
    cd ClaudeQuickstart
    dotnet add package Anthropic
    ```
  </Step>

  <Step title="코드 작성하기">
    `Program.cs`의 내용을 바꿔 넣으세요:

    ```csharp C#
    using Anthropic;
    using Anthropic.Models.Messages;

    var client = new AnthropicClient();

    var message = await client.Messages.Create(new MessageCreateParams
    {
        Model = Model.ClaudeOpus5_5,
        MaxTokens = 1000,
        Messages =
        [
            new()
            {
                Role = Role.User,
                Content = "What should I search for to find the latest developments in renewable energy?",
            },
        ],
    });

    foreach (var block in message.Content)
    {
        if (block.TryPickText(out var textBlock))
        {
            Console.WriteLine(textBlock.Text);
        }
    }
    ```
  </Step>

  <Step title="코드 실행하기">
    ```bash
    dotnet run
    ```

    ```text Output wrap
    Here are some effective search strategies to find the latest developments in renewable energy:

    ## General Search Terms
    - "Renewable energy news 2025"
    - ...
    ```
  </Step>
</Steps>
API 키를 환경 변수로 내보내세요. SDK는 `ANTHROPIC_API_KEY`를 자동으로 읽어요.
    ```bash
    export ANTHROPIC_API_KEY="your-api-key-here"
    ```
  </Step>

  <Step title="프로젝트 만들고 SDK 설치하기">
    새 모듈을 만들고 Anthropic SDK를 추가하세요:

    ```bash
    mkdir claude-quickstart && cd claude-quickstart
    go mod init claude-quickstart
    go get github.com/anthropics/anthropic-sdk-go
    ```
  </Step>

  <Step title="코드 작성하기">
    `main.go`라는 파일을 만드세요:

    ```go Go
    package main

    import (
    	"context"
    	"fmt"
    	"log"

    	"github.com/anthropics/anthropic-sdk-go"
    )

    func main() {
    	client := anthropic.NewClient()

    	message, err := client.Messages.New(context.Background(), anthropic.MessageNewParams{
    		Model:     anthropic.ModelClaudeOpus5_5,
    		MaxTokens: 1000,
    		Messages: []anthropic.MessageParam{
    			anthropic.NewUserMessage(anthropic.NewTextBlock("What should I search for to find the latest developments in renewable energy?")),
    		},
    	})
    	if err != nil {
    		log.Fatal(err)
    	}

    	for _, block := range message.Content {
    		if textBlock, ok := block.AsAny().(anthropic.TextBlock); ok {
    			fmt.Println(textBlock.Text)
    		}
    	}
    }
    ```
  </Step>

  <Step title="코드 실행하기">
    ```bash
    go run .
    ```

    ```text Output wrap
    Here are some effective search strategies to find the latest developments in renewable energy:

    ## General Search Terms
    - "Renewable energy news 2025"
    - ...
    ```
  </Step>
</Steps>
API 키를 환경 변수로 내보내세요. SDK는 `ANTHROPIC_API_KEY`를 자동으로 읽어요.
    ```bash
    export ANTHROPIC_API_KEY="your-api-key-here"
    ```
  </Step>

  <Step title="프로젝트 설정하기">
    JDK(25 이상)와 `PATH`에 [Gradle](https://gradle.org/install/) 또는 [Maven](https://maven.apache.org/install.html)이 필요해요. 프로젝트 디렉터리와 그 안의 Java 소스 디렉터리를 만드세요:

    ```bash
    mkdir -p claude-quickstart/src/main/java && cd claude-quickstart
    ```

    그런 다음 빌드 파일을 추가하세요. 현재 SDK 버전은 [Maven Central](https://central.sonatype.com/artifact/com.anthropic/anthropic-java)에서 찾을 수 있어요.

    <Tabs>
      <Tab title="Gradle">
        이 내용을 `build.gradle.kts`로 저장하세요:

        ```kotlin
        plugins {
            application
        }

        repositories {
            mavenCentral()
        }

        java {
            toolchain {
                languageVersion = JavaLanguageVersion.of(25)
            }
        }

        dependencies {
            implementation("com.anthropic:anthropic-java:2.65.0")
        }

        application {
            mainClass = "QuickStart"
        }
        ```
      </Tab>

      <Tab title="Maven">
        이 내용을 `pom.xml`로 저장하세요:

        ```xml
        <project xmlns="http://maven.apache.org/POM/4.0.0">
          <modelVersion>4.0.0</modelVersion>
          <groupId>com.example</groupId>
          <artifactId>quickstart</artifactId>
          <version>1.0-SNAPSHOT</version>
          <properties>
            <maven.compiler.release>25</maven.compiler.release>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
          </properties>
          <dependencies>
            <dependency>
              <groupId>com.anthropic</groupId>
              <artifactId>anthropic-java</artifactId>
              <version>2.65.0</version>
            </dependency>
          </dependencies>
        </project>
        ```
      </Tab>
    </Tabs>
  </Step>

  <Step title="코드 작성하기">
    프로젝트의 Java 소스 디렉터리(보통 `src/main/java/`)에 `QuickStart.java`로 저장하세요:

    ```java Java
    import com.anthropic.client.okhttp.AnthropicOkHttpClient;
    import com.anthropic.models.messages.Message;
    import com.anthropic.models.messages.MessageCreateParams;
    import com.anthropic.models.messages.Model;

    static void main() {
        var client = AnthropicOkHttpClient.fromEnv();

        var params = MessageCreateParams.builder()
            .model(Model.CLAUDE_OPUS_5_5)
            .maxTokens(1000)
            .addUserMessage(
                "What should I search for to find the latest developments in renewable energy?"
            )
            .build();

        Message message = client.messages().create(params);
        for (var block : message.content()) {
            block.text().ifPresent(textBlock -> IO.println(textBlock.text()));
        }
    }
    ```
  </Step>

  <Step title="코드 실행하기">
    <Tabs>
      <Tab title="Gradle">
        ```bash
        gradle run
        ```
      </Tab>

      <Tab title="Maven">
        ```bash
        mvn compile exec:java -Dexec.mainClass=QuickStart
        ```
      </Tab>
    </Tabs>

    ```text Output wrap
    Here are some effective search strategies to find the latest developments in renewable energy:

    ## General Search Terms
    - "Renewable energy news 2025"
    - ...
    ```
  </Step>
</Steps>
API 키를 환경 변수로 내보내세요. SDK는 `ANTHROPIC_API_KEY`를 자동으로 읽어요.
    ```bash
    export ANTHROPIC_API_KEY="your-api-key-here"
    ```
  </Step>

  <Step title="프로젝트 만들고 SDK 설치하기">
    ```bash
    mkdir claude-quickstart && cd claude-quickstart
    composer require "anthropic-ai/sdk" "guzzlehttp/guzzle:^7"
    ```
  </Step>

  <Step title="코드 작성하기">
    `quickstart.php`라는 파일을 만드세요:

    ```php PHP
    <?php
    require 'vendor/autoload.php';

    use Anthropic\Client;
    use Anthropic\Messages\Model;
    use Anthropic\Messages\TextBlock;

    $client = new Client();

    $message = $client->messages->create(
        model: Model::CLAUDE_OPUS_5_5,
        maxTokens: 1000,
        messages: [
            [
                'role' => 'user',
                'content' => 'What should I search for to find the latest developments in renewable energy?',
            ],
        ],
    );

    foreach ($message->content as $block) {
        if ($block instanceof TextBlock) {
            echo $block->text . PHP_EOL;
        }
    }
    ```
  </Step>

  <Step title="코드 실행하기">
    ```bash
    php quickstart.php
    ```

    ```text Output wrap
    Here are some effective search strategies to find the latest developments in renewable energy:

    ## General Search Terms
    - "Renewable energy news 2025"
    - ...
    ```
  </Step>
</Steps>
API 키를 환경 변수로 내보내세요. SDK는 `ANTHROPIC_API_KEY`를 자동으로 읽어요.
    ```bash
    export ANTHROPIC_API_KEY="your-api-key-here"
    ```
  </Step>

  <Step title="프로젝트 만들고 SDK 설치하기">
    ```bash
    mkdir claude-quickstart && cd claude-quickstart
    bundle init
    bundle add anthropic
    ```
  </Step>

  <Step title="코드 작성하기">
    `quickstart.rb`라는 파일을 만드세요:

    ```ruby Ruby
    require "anthropic"

    client = Anthropic::Client.new

    message = client.messages.create(
      model: Anthropic::Model::CLAUDE_OPUS_5_5,
      max_tokens: 1000,
      messages: [
        {
          role: "user",
          content: "What should I search for to find the latest developments in renewable energy?"
        }
      ]
    )

    message.content.each do |block|
      puts block.text if block.type == :text
    end
    ```
  </Step>

  <Step title="코드 실행하기">
    ```bash
    bundle exec ruby quickstart.rb
    ```

    ```text Output wrap
    Here are some effective search strategies to find the latest developments in renewable energy:

    ## General Search Terms
    - "Renewable energy news 2025"
    - ...
    ```
  </Step>
</Steps>

다음 단계

첫 API 호출을 보냈어요. 다음으로 모든 Claude 통합에서 쓰게 될 Messages API 패턴을 배워 보세요.

다중 턴 대화, 시스템 프롬프트, stop reasons, 그리고 다른 핵심 패턴을 배워요.

기본에 익숙해졌다면, 더 깊이 탐구해 보세요:

기능과 비용으로 Claude 모델들을 비교해요. 모든 Claude 기능을 둘러봐요: 도구, 컨텍스트 관리, 구조화된 출력 등. Python, TypeScript, C# 그리고 다른 클라이언트 라이브러리의 레퍼런스 문서예요. API 키와 Workload Identity Federation을 비교하고, 키 만료를 설정해요.

더 알아보기 (Learn more)