

# 코드로 하네스 내보내기
<a name="harness-export"></a>

코드로 하네스 내보내기는 관리형 하네스 구성을 사용하며 Strands 프레임워크를 사용하여 편집 가능한 Python 소스 코드와 동등한 에이전트를 생성합니다. 생성된 에이전트는 일반 AgentCore 런타임 에이전트입니다. 코드를 소유하고 자유롭게 수정할 수 있으며 다른 에이전트처럼 배포할 수 있습니다. 생성된 에이전트는 하네스의 모델, 도구, 기술, 메모리, 실행 제한 및 파일 시스템 마운트를 미러링합니다.

## 내보내기를 사용해야 하는 경우
<a name="_when_to_use_export"></a>

작동하는 하네스가 있고 다음을 수행하려는 경우 내보내기를 사용합니다.
+  **하네스 구성에서 허용하는 것 이상으로 사용자 지정** - 사용자 지정 도구 로직 추가, 에이전트 루프 변경, 미들웨어/후크 삽입 또는 하네스가 노출하지 않는 라이브러리 통합
+  **코드 소유** - 선언적 구성에서 제어, 검토 및 나머지 애플리케이션과 같은 버전의 소스 코드로 이동합니다.
+  **프로토타입 졸업** - 하네스로 빠르게 시작한 다음 수동 유지 관리 에이전트에 투자할 준비가 되면 내보냅니다.

하네스 구성이 이미 필요한 모든 것을 수행하는 경우 내보낼 필요가 없습니다. 하네스로 계속 실행합니다.

## 현재 지원되는 항목
<a name="_what_is_supported_today"></a>
+  **프레임워크** - Claude Agents SDK와 같은 다른 프레임워크가 곧 제공될 예정인 Strands
+  **언어** - Python 전용
+  **빌드 유형** - CodeZip(기본값) 및 컨테이너

생성된 에이전트로 전달되는 하네스 기능:
+ 모델 공급자 및 구성(Bedrock, OpenAI, Gemini - 모델 ID 및 API 키 참조 포함)
+ 도구 - 원격 MCP 도구, 게이트웨이, 인라인 함수 도구, AgentCore 브라우저, AgentCore 코드 해석기, 내장 `shell` 및 `file_operations` 도구
+ Memory
+ 실행 제한
+ 대화 잘림
+ 기술(경로, S3, Git)
+ VPC 하네스용 파일 시스템 탑재(세션 스토리지, EFS, S3)
+ 권한 부여자 구성

## CLI 사용
<a name="_cli_usage"></a>

### 명령 구문
<a name="_command_syntax"></a>

**Example**  

```
agentcore export harness --arn <arn> [options]
```

### 옵션
<a name="_options"></a>


| 플래그 | 설명 | 기본값 | 
| --- | --- | --- | 
|  `--arn <arn>`  | 내보낼 하네스의 ARN(현재 CLI 프로젝트 외부에서 생성된 하네스를 내보낼 때 사용) |  `arn` 또는 `name` 필수 | 
|  `--name <name>`  | 내보낼 하네스의 이름(동일한 CLI 프로젝트에서 생성된 하네스를 내보낼 때 사용) |  `arn` 또는 `name` 필수 | 
|  `--target-agent-name <name>`  | 생성된 런타임 에이전트의 이름 |  `<harnessName>Agent`  | 
|  `--build <type>`  | 빌드 유형: `CodeZip` 또는 `Container`  |  `CodeZip`  | 
|  `--json`  | 결과를 JSON으로 출력 | False | 

### 예제
<a name="_examples"></a>

기본값을 사용한 기본 내보내기:

**Example**  

```
# Export harness with ARN - generates MyHarnessAgent using CodeZip
agentcore export harness --arn arn:aws:bedrock-agentcore:us-east-1:123456789012:harness/MyHarness
# Export harness created within CLI project - generates MyHarnessAgent using CodeZip
agentcore export harness --name MyHarness
# Export with a custom agent name
agentcore export harness --name MyHarness --target-agent-name MyProductionAgent
# Export as a Container build (generates Dockerfile)
agentcore export harness --name MyHarness --build Container
```
`agentcore export harness`를 없이 실행`--name`하여 대화형 내보내기 마법사를 시작합니다.  

1. 프로젝트에 두 개 이상의 하네스가 있는 경우 내보낼 하네스를 선택합니다. (단일 하네스를 사용하면 마법사가이 단계를 건너뜁니다.)  
![내보낼 하네스 선택](http://docs.aws.amazon.com/ko_kr/bedrock-agentcore/latest/devguide/images/tui/harness-export-01-select.png)

1. 생성된 런타임 에이전트의 이름을 입력하거나 기본 `<harness>Agent`를 수락합니다.  
![생성된 런타임 에이전트의 이름 지정](http://docs.aws.amazon.com/ko_kr/bedrock-agentcore/latest/devguide/images/tui/harness-export-02-name.png)

1. **CodeZip**(Package Python source as a zip, 기본값) 또는 **Container**(ECR 및 CodeBuild를 통해 도커 이미지 빌드) 중에서 빌드 유형을 선택합니다.  
![빌드 유형 선택](http://docs.aws.amazon.com/ko_kr/bedrock-agentcore/latest/devguide/images/tui/harness-export-03-build.png)

1. 내보내기 구성을 검토하고 확인합니다.  
![내보내기 검토 및 확인](http://docs.aws.amazon.com/ko_kr/bedrock-agentcore/latest/devguide/images/tui/harness-export-04-confirm.png)
내보내기 후 `EXPORT_NOTES.md`를 검토한 다음를 실행`agentcore deploy`하여 생성된 에이전트를 배포합니다.

### 내보내기 후
<a name="_after_export"></a>

AgentCore CLI를 사용하여 생성된 런타임 에이전트를 배포합니다.

**Example**  

```
agentcore deploy
```

내보낸 에이전트는 일반 런타임으로 추가되므로 AgentCore CLI 프로젝트의 나머지 부분과 함께 배포됩니다.

## EXPORT\_NOTES.md
<a name="_export_notes_md"></a>

모든 내보내기 후 `EXPORT_NOTES.md`는 수동 후속 조치가 필요한 항목을 나열하여 작성됩니다. 각 항목, 주의가 필요한 이유 및 정확히 수행할 작업을 나열하는 에이전트 디렉터리의 EXPORT\_NOTES.md로 쓰기 메모를 내보냅니다. 배포하기 전에 항상 EXPORT\_NOTES.md를 읽으십시오.

## 배포 옵션
<a name="_deployment_options"></a>

내보내기 후 에이전트를 여러 호스팅 환경에 배포할 수 있습니다.
+  **AgentCore 런타임(관리형)** - 인프라, 규모 조정 및 자격 증명 프로비저닝을 자동으로 관리하는 AgentCore 런타임에서를 호스팅하는 `agentcore deploy` 데 사용합니다.
+  **자체 호스팅 -** Python 3.12 이상을 지원하는 위치에 생성된 Python 에이전트를 배포합니다.
  +  AWS 서비스: Lambda, ECS/Fargate, EC2
  + Kubernetes 클러스터
  + 온프레미스 서버
  + 컨테이너화된 환경