전역 브랜치에서 에이전트 개발하기
코드 기반 에이전트는 Global Branching과 연동하여 분기된 온톨로지 데이터와 애플리케이션 변경에 맞춰 개발할 수 있습니다. 이 기능은 베타이며, 인스턴스에 Global Branching과 에이전트 브랜치 지원이 활성화되어 있어야 합니다. 접근이 필요하면 Palantir 지원팀에 요청합니다.
브랜치가 적용되는 범위
| 대상 | 동작 |
|---|---|
| 템플릿의 OSDK·OMCP 읽기와 쓰기 | 선택한 전역 브랜치의 데이터를 대상으로 함 |
| OSDK 생성 타입과 OMCP 도구의 온톨로지 스키마 | main의 스키마를 사용. 브랜치에만 있는 타입 변경은 반영되지 않음 |
| 플랫폼 API 요청 | 전역 브랜치 문맥을 적용하지 않음 |
| Palantir MCP | 전역 브랜치 문맥을 지원하지 않음. 전역 브랜치의 리소스를 조사하거나 수정하는 데 사용하면 안 됨 |
사전 요건
- 인스턴스에서 Global Branching과 에이전트 브랜치 기능이 활성화되어 있어야 합니다.
- 에이전트 저장소를 편집할 권한이 필요합니다. 프로젝트의 기본
Editor또는Owner역할이 예입니다. - 저장소 템플릿 버전이 전역 브랜치를 지원해야 합니다. 추가할 때 오래된 저장소라는 안내가 나오면 저장소를 업그레이드한 뒤 다시 시도합니다.
저장소를 브랜치에 추가
- 에이전트의 코드 저장소 또는 코드 작업 공간을 엽니다.
- 브랜치 선택기에서 전역 브랜치를 만들거나 선택합니다.
- 추가 안내가 나오면 Add를 선택합니다.
Foundry는 전역 브랜치와 연결된 저장소 브랜치를 만들고 작업 공간에서 체크아웃합니다. 에이전트 코드 변경은 이 저장소 브랜치에 커밋합니다.
브랜치에서 시험
작업 공간에서 템플릿의 npm run start로 실행하면 현재 체크아웃한 저장소 브랜치에 연결된 전역 브랜치를 해석합니다. 템플릿이 제공하는 OSDK 클라이언트는 호출의 전역 브랜치 문맥을 자동으로 이어받습니다.
템플릿 이외의 방법으로 만든 OSDK 클라이언트가 해당 전역 브랜치에서 작업하게 하려면 브랜치 문맥을 직접 설정해야 합니다.
액션을 호출하려면 같은 전역 브랜치에서 대상 객체 유형을 먼저 색인해야 합니다.
- Ontology Manager에서 전역 브랜치를 선택합니다.
- 액션의 대상 객체 유형을 엽니다.
- 배너의 Index object type을 선택합니다.
- 색인이 끝난 뒤 에이전트를 실행합니다.
게시한 에이전트 함수도 같은 전역 브랜치의 리소스에서 호출하면 해당 브랜치 문맥을 받습니다. 이 경로의 함수와 쓰기 데이터는 main 및 다른 전역 브랜치와 분리됩니다.
브랜치에 게시
- 게시할 에이전트 변경을 커밋합니다.
- 저장소 화면에서 Tag version을 선택합니다.
- 전역 브랜치와 안정 버전 목표를 선택합니다. 이 목표는 브랜치를 병합할 때
main에 게시할 버전입니다. - Tag and release를 선택합니다.
Foundry가 브랜치용 사전 릴리스 버전을 만들고 함수를 해당 전역 브랜치에 게시합니다. 전역 브랜치 게시에는 Git 명령으로 직접 태그를 만들지 않습니다. 저장소 화면이 필요한 브랜치 버전을 생성해야 합니다.
반복 개발 중에는 같은 버전 목표에 다시 게시할 수 있습니다. 그 목표를 참조하는 브랜치의 리소스는 최신 브랜치 사전 릴리스를 자동으로 사용합니다. 함수는 main이나 다른 전역 브랜치에서는 사용할 수 없습니다.
다른 전역 브랜치에도 함수가 게시되어 있다면 Agent API name과 Ontology binding을 변경하지 않습니다. 두 값이 브랜치 간 동일한 함수를 식별합니다.
기본 브랜치로 병합
에이전트와 의존 리소스가 준비되면 전역 브랜치 변경 제안을 만들고 병합합니다. Foundry가 저장소 변경을 병합하고 선택한 안정 버전 목표를 main에 게시합니다. 브랜치 버전 목표를 사용하던 리소스는 이후 main의 안정 버전을 사용합니다.
병합 전에 그 버전 목표가 main에서 아직 사용 가능한지 확인하고 Global Branching에 표시된 검사를 해결해야 합니다.