WIP: v1 docs (#3626)

(cherry picked from commit d46e20fa09bcd2f5916282f5553ddeb7183bd92c)
This commit is contained in:
Tony Kipkemboi
2025-10-01 10:25:28 -04:00
committed by GitHub
parent 0fe9352149
commit c793c829ea
96 changed files with 4291 additions and 710 deletions

View File

@@ -273,14 +273,12 @@ crewai org switch <organization_id>
CLI를 사용하여 [CrewAI Enterprise](http://app.crewai.com)에 crew를 배포하는 단계별 시연은 아래 비디오 튜토리얼을 참조하십시오.
<iframe
width="100%"
height="400"
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/3EqSV-CYDZA"
title="CrewAI Deployment Guide"
frameborder="0"
style={{ borderRadius: '10px' }}
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
allowFullScreen
></iframe>
### 11. API 키
@@ -385,4 +383,4 @@ crewai config reset
<Note>
설정 값은 `~/.config/crewai/settings.json`에 저장됩니다. 조직 이름과 UUID와 같은 일부 설정 값은 읽기 전용이며 인증 및 조직 명령을 통해 관리됩니다. 도구 저장소 관련 설정은 숨겨져 있으며 사용자가 직접 설정할 수 없습니다.
</Note>
</Note>

View File

@@ -868,14 +868,13 @@ flow를 시각화하면 워크플로의 구조를 더욱 명확하게 이해할
또한, 아래의 CrewAI에서 flows를 사용하는 방법에 대한 YouTube 영상을 확인해보세요!
<iframe
width="560"
height="315"
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/MTb5my6VOT8"
title="YouTube video player"
frameborder="0"
title="CrewAI Flows 개요"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen
referrerPolicy="strict-origin-when-cross-origin"
allowFullScreen
></iframe>
## 플로우 실행하기
@@ -907,4 +906,4 @@ crewai run
crewai flow kickoff
```
하지만 `crewai run` 명령어가 이제 crew와 flow 모두에 작동하므로 더욱 선호되는 방법입니다.
하지만 `crewai run` 명령어가 이제 crew와 flow 모두에 작동하므로 더욱 선호되는 방법입니다.

View File

@@ -886,14 +886,13 @@ except RuntimeError as e:
아래 영상을 통해 CrewAI에서 구조화된 출력을 사용하는 방법을 확인하세요:
<iframe
width="560"
height="315"
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/dNpKQk5uxHw"
title="YouTube video player"
frameborder="0"
title="CrewAI에서 구조화된 출력 사용하기"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen
referrerPolicy="strict-origin-when-cross-origin"
allowFullScreen
></iframe>
## 결론

View File

@@ -0,0 +1,105 @@
---
title: "자동화"
description: "배포된 크루(자동화)를 한 곳에서 관리, 배포 및 모니터링하세요."
icon: "rocket"
mode: "wide"
---
## 개요
자동화는 배포된 크루를 운영하는 허브입니다. GitHub 또는 ZIP으로 배포하고, 환경 변수를 관리하고, 필요 시 재배포하며 각 자동화의 상태를 모니터링하세요.
<Frame>
![자동화 개요](/images/enterprise/automations-overview.png)
</Frame>
## 배포 방법
### GitHub로 배포
버전 관리 및 지속적 배포에 적합합니다.
<Steps>
<Step title="GitHub 연결">
<b>Configure GitHub</b>를 클릭하고 접근을 승인합니다.
</Step>
<Step title="리포지토리 & 브랜치 선택">
배포할 <b>리포지토리</b>와 <b>브랜치</b>를 선택합니다.
</Step>
<Step title="자동 배포 활성화(선택)">
<b>Automatically deploy new commits</b>를 켜면 푸시 시마다 자동 배포됩니다.
</Step>
<Step title="환경 변수 추가">
개별로 추가하거나 <b>Bulk View</b>를 사용해 여러 변수를 한 번에 추가합니다.
</Step>
<Step title="배포">
<b>Deploy</b>를 클릭해 라이브 자동화를 생성합니다.
</Step>
</Steps>
<Frame>
![GitHub 배포](/images/enterprise/deploy-from-github.png)
</Frame>
### ZIP으로 배포
Git 없이 빠르게 배포 — 프로젝트 ZIP 패키지를 업로드하세요.
<Steps>
<Step title="파일 선택">
컴퓨터에서 ZIP 파일을 선택합니다.
</Step>
<Step title="환경 변수 추가">
필요한 변수를 제공합니다.
</Step>
<Step title="배포">
<b>Deploy</b>를 클릭해 라이브 자동화를 생성합니다.
</Step>
</Steps>
<Frame>
![ZIP 배포](/images/enterprise/deploy-from-zip.png)
</Frame>
## 자동화 대시보드
테이블에는 모든 라이브 자동화가 다음 정보와 함께 표시됩니다:
- **CREW**: 자동화 이름
- **STATUS**: Online / Failed / In Progress
- **URL**: kickoff/status 엔드포인트
- **TOKEN**: 자동화 토큰
- **ACTIONS**: 재배포, 삭제 등
우측 상단 컨트롤로 필터 및 검색:
- 이름으로 검색
- <b>Status</b>로 필터
- <b>Source</b>로 필터 (GitHub / Studio / ZIP)
배포 후 **Options** 드롭다운에서 `chat with this crew`, `Export React Component`, `Export as MCP`를 사용할 수 있습니다.
<Frame>
![자동화 표](/images/enterprise/automations-table.png)
</Frame>
## 모범 사례
- 버전 관리 및 CI/CD를 위해 GitHub 배포를 권장
- 코드/구성 변경 후 재배포 사용 또는 푸시마다 자동 배포 설정
## 관련 문서
<CardGroup cols={3}>
<Card title="크루 배포" href="/ko/enterprise/guides/deploy-crew" icon="rocket">
GitHub 또는 ZIP 파일로 크루 배포
</Card>
<Card title="자동화 트리거" href="/ko/enterprise/guides/automation-triggers" icon="trigger">
웹훅 또는 API로 자동화 트리거
</Card>
<Card title="Webhook 자동화" href="/ko/enterprise/guides/webhook-automation" icon="webhook">
실시간 이벤트/업데이트 스트리밍
</Card>
</CardGroup>

View File

@@ -0,0 +1,90 @@
---
title: "Crew Studio"
description: "AI 보조, 비주얼 에디터, 통합 테스트로 새로운 자동화를 구축하세요."
icon: "pencil"
mode: "wide"
---
## 개요
Crew Studio는 자연어와 시각적 워크플로 에디터로 처음부터 자동화를 만드는 인터랙티브한 AI 보조 작업 공간입니다.
<Frame>
![Crew Studio 개요](/images/enterprise/crew-studio-overview.png)
</Frame>
## 프롬프트 기반 생성
- 원하는 자동화를 설명하면, AI가 에이전트/태스크/도구를 생성합니다.
- 마이크 아이콘으로 음성 입력을 사용할 수 있습니다.
- 공통 사용 사례용 프롬프트 템플릿으로 시작할 수 있습니다.
<Frame>
![프롬프트 빌더](/images/enterprise/crew-studio-prompt.png)
</Frame>
## 비주얼 에디터
캔버스는 노드/엣지 형태로 플로우를 표현하며, 세 개의 보조 패널로 코드 없이 쉽게 구성할 수 있습니다 (일명 "vibe coding AI Agents"):
- **AI Thoughts (좌측)**: 설계 중 스트리밍 추론
- **Canvas (중앙)**: 에이전트/태스크 노드와 연결
- **Resources (우측)**: 드래그앤드롭 컴포넌트 (에이전트, 태스크, 도구)
드래그앤드롭으로 캔버스를 구성하거나, 채팅 섹션으로 에이전트를 생성할 수 있으며 두 방식은 상태를 공유합니다.
<Frame>
![비주얼 캔버스](/images/enterprise/crew-studio-canvas.png)
</Frame>
## 실행 & 디버깅
<b>Execution</b> 뷰로 전환하여 실행을 관찰하세요:
- 이벤트 타임라인
- 상세 로그 (Details, Messages, Raw Data)
- 게시 전 로컬 실행
<Frame>
![실행 뷰](/images/enterprise/crew-studio-execution.png)
</Frame>
## 게시 & 내보내기
- <b>Publish</b>로 라이브 자동화 배포
- <b>Download</b>로 소스 ZIP 다운로드 (로컬 개발용)
<Frame>
![게시 & 다운로드](/images/enterprise/crew-studio-publish.png)
</Frame>
게시 후 **Options** 드롭다운에서 `chat with this crew`, `Export React Component`, `Export as MCP`를 사용할 수 있습니다.
<Frame>
![게시된 자동화](/images/enterprise/crew-studio-published.png)
</Frame>
## 모범 사례
- Studio에서 빠르게 반복하고, 안정화 후 게시
- 도구 권한은 최소한으로 제한
- Traces로 동작/성능 검증
## 관련 문서
<CardGroup cols={4}>
<Card title="Crew Studio 활성화" href="/ko/enterprise/guides/enable-crew-studio" icon="palette">
Crew Studio를 활성화하세요.
</Card>
<Card title="크루 빌드" href="/ko/enterprise/guides/build-crew" icon="paintbrush">
크루를 빌드하세요.
</Card>
<Card title="크루 배포" href="/ko/enterprise/guides/deploy-crew" icon="rocket">
GitHub 또는 ZIP 파일로 크루 배포.
</Card>
<Card title="React 컴포넌트 내보내기" href="/ko/enterprise/guides/react-component-export" icon="download">
React 컴포넌트를 내보내세요.
</Card>
</CardGroup>

View File

@@ -0,0 +1,47 @@
---
title: "마켓플레이스"
description: "엔터프라이즈 크루를 위한 재사용 가능한 자산을 탐색, 설치 및 관리하세요."
icon: "store"
mode: "wide"
---
## 개요
마켓플레이스는 통합, 내부 도구 및 재사용 가능한 자산을 탐색할 수 있는 큐레이션된 공간을 제공하여 크루 개발을 가속화합니다.
<Frame>
![마켓플레이스 개요](/images/enterprise/marketplace-overview.png)
</Frame>
## 탐색
- 카테고리 및 기능별로 탐색
- 이름 또는 키워드로 검색
## 설치 & 활성화
- 승인된 자산은 원클릭 설치 지원
- 크루별로 활성화/비활성화 가능
- 필요한 환경 변수 및 스코프 구성
<Frame>
![설치 & 구성](/images/enterprise/marketplace-install.png)
</Frame>
마켓플레이스에서 `Download` 버튼을 클릭해 템플릿을 직접 내려받아 로컬에서 사용하거나 필요에 맞게 수정할 수도 있습니다.
## 관련 문서
<CardGroup cols={3}>
<Card title="도구 & 통합" href="/ko/enterprise/features/tools-and-integrations" icon="wrench">
에이전트가 사용할 외부 앱 연결 및 내부 도구 관리.
</Card>
<Card title="도구 저장소" href="/ko/enterprise/features/tool-repository" icon="toolbox">
크루 기능을 확장할 수 있도록 도구를 게시하고 설치.
</Card>
<Card title="에이전트 저장소" href="/ko/enterprise/features/agent-repositories" icon="people-group">
팀과 프로젝트 전반에서 에이전트 정의 저장, 공유 및 재사용.
</Card>
</CardGroup>

View File

@@ -0,0 +1,236 @@
---
title: "도구 & 통합"
description: "외부 앱을 연결하고 에이전트가 사용할 내부 도구를 관리하세요."
icon: "wrench"
mode: "wide"
---
## 개요
도구 & 통합은 서드파티 애플리케이션을 연결하고 에이전트가 런타임에 사용할 내부 도구를 관리하는 중앙 허브입니다.
<Frame>
![도구 & 통합 개요](/images/enterprise/crew_connectors.png)
</Frame>
## 살펴보기
<Tabs>
<Tab title="통합" icon="plug">
## 에이전트 앱 (통합)
Gmail, Google Drive, HubSpot, Slack 등 OAuth 기반 서비스에 연결하여 에이전트 액션을 활성화하세요.
<Steps>
<Step title="연결">
원하는 앱에서 <b>Connect</b>를 클릭하고 OAuth를 완료합니다.
</Step>
<Step title="구성">
필요에 따라 스코프, 트리거, 사용 가능한 액션을 조정합니다.
</Step>
<Step title="에이전트에서 사용">
연결된 서비스는 에이전트 도구로 사용 가능합니다.
</Step>
</Steps>
<Frame>
![앱 그리드](/images/enterprise/agent-apps.png)
</Frame>
### 계정 연결하기
1. <Link href="https://app.crewai.com/crewai_plus/connectors">Integrations</Link>로 이동
2. 원하는 서비스에서 <b>Connect</b> 클릭
3. OAuth 플로우 완료 및 스코프 승인
4. <b>Integration</b> 탭에서 Enterprise Token 복사
<Frame>
![Enterprise Token](/images/enterprise/enterprise_action_auth_token.png)
</Frame>
### 통합 도구 설치
로컬에서 통합을 사용하려면 최신 `crewai-tools` 패키지를 설치하세요.
```bash
uv add crewai-tools
```
### 사용 예시
<Tip>
인증된 모든 서비스는 도구로 제공됩니다. 에이전트에 `CrewaiEnterpriseTools`를 추가하세요.
</Tip>
```python
from crewai import Agent, Task, Crew
from crewai_tools import CrewaiEnterpriseTools
enterprise_tools = CrewaiEnterpriseTools(
enterprise_token="your_enterprise_token"
)
print(enterprise_tools)
email_agent = Agent(
role="이메일 매니저",
goal="이메일 커뮤니케이션 관리",
backstory="이메일 관리에 특화된 AI 어시스턴트",
tools=enterprise_tools
)
email_task = Task(
description="프로젝트 업데이트에 대한 후속 이메일 작성 및 전송",
agent=email_agent,
expected_output="이메일 전송 성공 확인"
)
crew = Crew(agents=[email_agent], tasks=[email_task])
crew.kickoff()
```
### 도구 필터링
```python
from crewai_tools import CrewaiEnterpriseTools
enterprise_tools = CrewaiEnterpriseTools(
actions_list=["gmail_find_email"]
)
gmail_tool = enterprise_tools["gmail_find_email"]
gmail_agent = Agent(
role="Gmail 매니저",
goal="Gmail 커뮤니케이션 및 알림 관리",
backstory="Gmail 커뮤니케이션 조율 AI 어시스턴트",
tools=[gmail_tool]
)
notification_task = Task(
description="john@example.com에서 온 이메일 찾기",
agent=gmail_agent,
expected_output="john@example.com의 이메일을 찾았다는 확인"
)
crew = Crew(agents=[gmail_agent], tasks=[notification_task])
```
배포된 크루에서는 각 통합의 서비스 설정 페이지에서 사용 가능한 액션을 지정할 수 있습니다.
<Frame>
![액션 필터링](/images/enterprise/filtering_enterprise_action_tools.png)
</Frame>
### 범위 지정 배포 (다중 사용자 조직)
각 통합을 특정 사용자로 범위 지정할 수 있습니다 (예: 특정 사용자의 Gmail 계정 사용).
<Tip>
팀/사용자별 데이터 접근을 분리해야 할 때 유용합니다.
</Tip>
`user_bearer_token`을 사용해 요청 사용자로 인증을 범위 지정합니다. 사용자가 로그인하지 않은 경우 연결된 통합을 사용하지 않으며, 그렇지 않으면 배포에 설정된 기본 토큰을 사용합니다.
<Frame>
![사용자 토큰](/images/enterprise/user_bearer_token.png)
</Frame>
<div id="catalog"></div>
### 카탈로그
#### 커뮤니케이션 & 협업
- Gmail — 이메일 및 초안 관리
- Slack — 워크스페이스 알림 및 경보
- Microsoft — Office 365 및 Teams 통합
#### 프로젝트 관리
- Jira — 이슈 추적 및 프로젝트 관리
- ClickUp — 작업 및 생산성 관리
- Asana — 팀 작업 조율
- Notion — 페이지 및 데이터베이스 관리
- Linear — 버그/프로젝트 추적
- GitHub — 리포지토리 및 이슈 관리
#### CRM
- Salesforce — 계정 및 기회 관리
- HubSpot — 파이프라인/연락처 관리
- Zendesk — 고객 지원 티켓 관리
#### 비즈니스 & 금융
- Stripe — 결제 처리 및 고객 관리
- Shopify — 전자상거래 및 상품 관리
#### 생산성 & 스토리지
- Google Sheets — 스프레드시트 동기화
- Google Calendar — 일정/이벤트 관리
- Box — 파일 스토리지
…더 많은 통합이 추가될 예정입니다!
</Tab>
<Tab title="내부 도구" icon="toolbox">
## 내부 도구
로컬에서 도구를 만들고, CrewAI Enterprise 도구 저장소에 게시한 후, 에이전트에서 사용하세요.
<Tip>
아래 명령을 실행하기 전에 CrewAI Enterprise 계정에 로그인하세요:
```bash
crewai login
```
</Tip>
<Frame>
![내부 도구](/images/enterprise/tools-integrations-internal.png)
</Frame>
<Steps>
<Step title="생성">
로컬에서 새 도구 생성
```bash
crewai tool create your-tool
```
</Step>
<Step title="게시">
도구 저장소에 게시
```bash
crewai tool publish
```
</Step>
<Step title="설치">
도구 저장소에서 설치
```bash
crewai tool install your-tool
```
</Step>
</Steps>
관리:
- 이름 및 설명
- 가시성 (비공개 / 공개)
- 필요한 환경 변수
- 버전 이력 및 다운로드
- 팀/역할 접근 권한
<Frame>
![도구 설정](/images/enterprise/tool-configs.png)
</Frame>
</Tab>
</Tabs>
## 관련 문서
<CardGroup cols={2}>
<Card title="도구 저장소" href="/ko/enterprise/features/tool-repository" icon="toolbox">
크루 기능을 확장할 수 있도록 도구를 게시하고 설치하세요.
</Card>
<Card title="Webhook 자동화" href="/ko/enterprise/guides/webhook-automation" icon="bolt">
워크플로를 자동화하고 외부 플랫폼/서비스와 통합하세요.
</Card>
</CardGroup>

View File

@@ -1,75 +1,130 @@
---
title: "자동화 트리거"
description: "연결된 통합에서 특정 이벤트가 발생할 때 CrewAI 워크플로우를 자동으로 실행합니다"
title: "트리거 개요"
description: "CrewAI Enterprise 트리거의 동작 방식과 관리 방법, 그리고 통합별 플레이북을 한눈에 확인하세요"
icon: "bolt"
mode: "wide"
---
자동화 트리거를 사용하면 연결된 통합에서 특정 이벤트가 발생할 때 CrewAI 배포를 자동으로 실행할 수 있어, 비즈니스 시스템의 실시간 변화에 반응하는 강력한 이벤트 기반 워크플로우를 만들 수 있습니다.
CrewAI Enterprise 트리거는 팀이 이미 사용하고 있는 도구의 실시간 이벤트와 자동화를 연결합니다. 폴링이나 수동 실행 대신, 트리거는 새로운 이메일, 캘린더 업데이트, CRM 상태 변화 등을 감지하여 지정한 크루 또는 플로우를 즉시 실행합니다.
## 개요
<iframe
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/TpQ45lAZh48"
title="CrewAI 트리거 개요"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
></iframe>
자동화 트리거를 사용하면 다음을 수행할 수 있습니다:
### 통합 플레이북
- **실시간 이벤트에 응답** - 특정 조건이 충족될 때 워크플로우를 자동으로 실행
- **외부 시스템과 통합** - Gmail, Outlook, OneDrive, JIRA, Slack, Stripe 등의 플랫폼과 연결
- **자동화 확장** - 수동 개입 없이 대용량 이벤트 처리
- **컨텍스트 유지** - crew와 flow 내에서 트리거 데이터에 액세스
아래 가이드는 각 통합을 활성화하고 테스트하는 방법을 자세히 설명합니다.
## 자동화 트리거 관리
<CardGroup cols={2}>
<Card title="Gmail 트리거" icon="envelope">
<a href="/ko/enterprise/guides/gmail-trigger">새로운 이메일이나 스레드 업데이트에 맞춰 크루를 실행하세요.</a>
</Card>
<Card title="Google Calendar 트리거" icon="calendar-days">
<a href="/ko/enterprise/guides/google-calendar-trigger">캘린더 이벤트 생성, 수정, 취소에 대응하세요.</a>
</Card>
<Card title="Google Drive 트리거" icon="folder-open">
<a href="/ko/enterprise/guides/google-drive-trigger">Drive 파일 업로드, 수정, 삭제를 감시하세요.</a>
</Card>
<Card title="Outlook 트리거" icon="envelope-open">
<a href="/ko/enterprise/guides/outlook-trigger">Outlook의 새로운 메일이나 삭제된 이벤트에 대응하세요.</a>
</Card>
<Card title="OneDrive 트리거" icon="cloud">
<a href="/ko/enterprise/guides/onedrive-trigger">OneDrive 파일 활동 및 공유 변경 사항을 감사하세요.</a>
</Card>
<Card title="Microsoft Teams 트리거" icon="comments">
<a href="/ko/enterprise/guides/microsoft-teams-trigger">새로운 Teams 채팅이 생성될 때 워크플로우를 시작하세요.</a>
</Card>
<Card title="HubSpot 트리거" icon="hubspot">
<a href="/ko/enterprise/guides/hubspot-trigger">HubSpot 워크플로우와 라이프사이클 이벤트에서 자동화를 실행하세요.</a>
</Card>
<Card title="Salesforce 트리거" icon="salesforce">
<a href="/ko/enterprise/guides/salesforce-trigger">Salesforce 프로세스를 CrewAI 크루와 연결해 CRM 자동화를 구현하세요.</a>
</Card>
<Card title="Slack 트리거" icon="slack">
<a href="/ko/enterprise/guides/slack-trigger">Slack 슬래시 명령으로 크루를 바로 실행하세요.</a>
</Card>
<Card title="Zapier 트리거" icon="bolt">
<a href="/ko/enterprise/guides/zapier-trigger">CrewAI를 수천 개의 Zapier 지원 앱과 연동하세요.</a>
</Card>
</CardGroup>
## 트리거 기능
- **실시간 대응** 조건이 충족되면 자동으로 워크플로우 실행
- **외부 시스템 연동** Gmail, Outlook, OneDrive, JIRA, Slack, Stripe 등과 연결
- **자동화 확장성** 수동 개입 없이 대량 이벤트 처리
- **컨텍스트 유지** 트리거 데이터를 크루와 플로우에서 바로 활용
## 트리거 관리
### 사용 가능한 트리거 보기
자동화 트리거에 액세스하고 관리하려면:
1. CrewAI 대시보드에서 배포로 이동
2. **트리거** 탭을 클릭하여 사용 가능한 모든 트리거 통합 보기
1. CrewAI 대시보드에서 자동화를 선택합니다.
2. **Triggers** 탭을 클릭하여 사용 가능한 통합을 확인합니다.
<Frame>
<img src="/images/enterprise/list-available-triggers.png" alt="사용 가능한 자동화 트리거 목록" />
<img src="/images/enterprise/list-available-triggers.png" alt="사용 가능한 트리거 목록" />
</Frame>
이 보기는 배포에 사용 가능한 모든 트리거 통합과 현재 연결 상태를 보여줍니다.
### 트리거 활성화 및 비활성화
각 트리거는 토글 스위치를 사용하여 쉽게 활성화하거나 비활성화할 수 있습니다:
### 트리거 활성화/비활성화
<Frame>
<img src="/images/enterprise/trigger-selected.png" alt="토글로 트리거 활성화 또는 비활성화" />
<img src="/images/enterprise/trigger-selected.png" alt="트리거 토글" />
</Frame>
- **활성화됨 (파란색 토글)**: 트리거가 활성 상태이며 지정된 이벤트 발생할 때 배포를 자동으로 실행합니다
- **비활성화됨 (회색 토글)**: 트리거가 비활성 상태이며 이벤트에 응답하지 않습니다
- **파랑 (활성)** 이벤트 발생 자동 실행
- **회색 (비활성)** 이벤트 무시
토글을 클릭하기만 하면 트리거 상태를 변경할 수 있습니다. 변경 사항은 즉시 적용됩니다.
토글 버튼을 클릭하 즉시 적용됩니다.
### 트리거 실행 모니터링
트리거 실행의 성능과 기록을 추적합니다:
트리거 실행 내역과 상태를 대시보드에서 확인하세요.
<Frame>
<img src="/images/enterprise/list-executions.png" alt="자동화에 의해 트리거 실행 목록" />
<img src="/images/enterprise/list-executions.png" alt="트리거 실행 내역" />
</Frame>
## 자동화 구
## 트리거 기반 자동화 구
자동화를 구축하기 전에 crew와 flow가 받을 트리거 페이로드의 구조를 이해하는 것이 도움이 됩니다.
### 설정 체크리스트
### 페이로드 샘플 저장소
- **Tools & Integrations**에서 해당 서비스를 연결하고 OAuth 또는 API 설정을 완료했나요?
- 자동화에서 트리거 토글을 활성화했나요?
- 필요한 환경 변수(토큰, 테넌트 ID, 시크릿 등)를 설정했나요?
- 첫 번째 작업에서 트리거 payload를 파싱하도록 구성했나요?
- `allow_crewai_trigger_context` 옵션으로 컨텍스트 자동 주입 여부를 결정했나요?
- 웹훅 로그, CrewAI 실행 기록, 외부 알림 등 모니터링을 준비했나요?
자동화를 구축하고 테스트하는 데 도움이 되도록 다양한 트리거 소스의 샘플 페이로드가 포함된 포괄적인 저장소를 유지 관리하고 있습니다:
### Payload & Crew 예제 저장소
**🔗 [CrewAI Enterprise 트리거 페이로드 샘플](https://github.com/crewAIInc/crewai-enterprise-trigger-payload-samples)**
| 통합 | 동작 시점 | Payload 예제 | Crew 예제 |
| :-- | :-- | :-- | :-- |
| Gmail | 신규 메일, 스레드 업데이트 | [Gmail payload](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/gmail) | [`new-email-crew.py`, `gmail-alert-crew.py`](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/gmail) |
| Google Calendar | 이벤트 생성/수정/시작/종료/취소 | [Calendar payload](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/google_calendar) | [`calendar-event-crew.py`, `calendar-meeting-crew.py`, `calendar-working-location-crew.py`](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/google_calendar) |
| Google Drive | 파일 생성/수정/삭제 | [Drive payload](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/google_drive) | [`drive-file-crew.py`, `drive-file-deletion-crew.py`](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/google_drive) |
| Outlook | 새 이메일, 이벤트 제거 | [Outlook payload](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/outlook) | [`outlook-message-crew.py`, `outlook-event-removal-crew.py`](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/outlook) |
| OneDrive | 파일 작업(생성, 수정, 공유, 삭제) | [OneDrive payload](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/onedrive) | [`onedrive-file-crew.py`](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/onedrive) |
| HubSpot | 레코드 생성/업데이트(연락처, 회사, 딜) | [HubSpot payload](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/hubspot) | [`hubspot-company-crew.py`, `hubspot-contact-crew.py`, `hubspot-record-crew.py`](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/hubspot) |
| Microsoft Teams | 채팅 생성 | [Teams payload](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/microsoft-teams) | [`teams-chat-created-crew.py`](https://github.com/crewAIInc/crewai-enterprise-trigger-examples/tree/main/microsoft-teams) |
이 저장소에는 다음이 포함되어 있습니다:
예제 payload를 참고해 파싱 로직을 검증하고, 제공되는 crew를 복사해 실제 데이터로 교체하세요.
- **실제 페이로드 예제** - 다양한 트리거 소스(Gmail, Google Drive 등)에서 가져온 예제
- **페이로드 구조 문서** - 형식과 사용 가능한 필드를 보여주는 문서
### Crew와 트리거
기존 crew 정의는 트리거와 완벽하게 작동하며, 받은 페이로드를 분석하는 작업만 있으면 됩니다:
### 트리거와 Crew 연동
```python
@CrewBase
@@ -95,15 +150,9 @@ class MyAutomatedCrew:
)
```
crew는 자동으로 트리거 페이로드를 받고 표준 CrewAI 컨텍스트 메커니즘을 통해 액세스할 수 있습니다.
### 플로우와의 통합
### Flow와의 통합
flow의 경우 트리거 데이터 처리 방법을 더 세밀하게 제어할 수 있습니다:
#### 트리거 페이로드 액세스
flow의 모든 `@start()` 메서드는 `crewai_trigger_payload`라는 추가 매개변수를 허용합니다:
#### Payload 접근
```python
from crewai.flow import Flow, start, listen
@@ -111,62 +160,48 @@ from crewai.flow import Flow, start, listen
class MyAutomatedFlow(Flow):
@start()
def handle_trigger(self, crewai_trigger_payload: dict = None):
"""
이 start 메서드는 트리거 데이터를 받을 수 있습니다
"""
if crewai_trigger_payload:
# 트리거 데이터 처리
trigger_id = crewai_trigger_payload.get('id')
event_data = crewai_trigger_payload.get('payload', {})
# 다른 메서드에서 사용할 수 있도록 flow 상태에 저장
self.state.trigger_id = trigger_id
self.state.trigger_type = event_data
return event_data
# 수동 실행 처리
return None
@listen(handle_trigger)
def process_data(self, trigger_data):
"""
트리거 데이터 처리
"""
# ... 트리거 처리
```
#### Flow에서 Crew 트리거하기
트리거된 flow 내에서 crew를 시작할 때 트리거 페이로드를 전달합니다:
#### 플로우에서 Crew 실행
```python
@start()
def delegate_to_crew(self, crewai_trigger_payload: dict = None):
"""
전문 crew에 처리 위임
"""
crew = MySpecializedCrew()
# crew에 트리거 페이로드 전달
result = crew.crew().kickoff(
inputs={
'a_custom_parameter': "custom_value",
'custom_parameter': "custom_value",
'crewai_trigger_payload': crewai_trigger_payload
},
)
return result
```
## 문제 해결
**트리거가 작동하지 않는 경우:**
- 트리거가 활성화되어 있는지 확인
- 통합 연결 상태 확인
**트리거가 실행되지 않나요?**
- 트리거가 활성 상태인지 확인하세요.
- 통합 연결 상태 확인하세요.
**실행 실패:**
- 오류 세부 정보는 실행 로그 확인
- 개발 중인 경우 입력에 올바른 페이로드가 포함된 `crewai_trigger_payload` 매개변수가 포함되어 있는지 확인
**실행 중 오류가 발생하나요?**
- 실행 로그에서 오류 메시지를 확인하세요.
- 개발 중이라면 `crewai_trigger_payload`가 올바른 데이터로 전달되고 있는지 확인하세요.
자동화 트리거는 CrewAI 배포를 기존 비즈니스 프로세스 도구와 완벽하게 통합할 수 있는 반응형 이벤트 기반 시스템으로 변환합니다.
트리거를 활용하면 CrewAI 자동화를 이벤트 기반 시스템으로 전환하여 기존 비즈니스 프로세스 도구에 자연스럽게 녹여낼 수 있습니다.
<Callout icon="github" title="예제 저장소">
<a href="https://github.com/crewAIInc/crewai-enterprise-trigger-examples">
CrewAI Enterprise Trigger Examples
</a>
</Callout>

View File

@@ -12,14 +12,12 @@ mode: "wide"
## 시작하기
<iframe
width="100%"
height="400"
src="https://www.youtube.com/embed/-kSOTtYzgEw"
title="Building Crews with CrewAI CLI"
frameborder="0"
style={{ borderRadius: '10px' }}
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/-kSOTtYzgEw"
title="Building crews with the CrewAI CLI"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
></iframe>
### 설치 및 설정
@@ -41,4 +39,4 @@ Enterprise 전용 지원 또는 문의가 필요하신 경우, [support@crewai.c
<Card title="데모 예약" icon="calendar" href="mailto:support@crewai.com">
Enterprise 기능과 해당 기능이 귀사의 조직에 어떻게 도움이 될 수 있는지 알아보시려면 저희 팀과 상담 일정을 예약하세요.
</Card>
</Card>

View File

@@ -18,9 +18,14 @@ Salesforce는 기업이 영업, 서비스, 마케팅 운영을 효율화할 수
## 데모
<Frame>
<iframe width="100%" height="400" src="https://www.youtube.com/embed/oJunVqjjfu4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</Frame>
<iframe
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/oJunVqjjfu4"
title="CrewAI + Salesforce trigger demo"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
></iframe>
## 시작하기
@@ -42,4 +47,4 @@ Salesforce 트리거를 설정하려면:
## 다음 단계
자세한 설정 지침 및 고급 구성 옵션에 대해서는 CrewAI Enterprise 지원팀에 문의해 주시기 바랍니다. 지원팀은 귀하의 특정 Salesforce 환경과 비즈니스 요구에 맞는 맞춤형 안내를 제공해 드릴 수 있습니다.
자세한 설정 지침 및 고급 구성 옵션에 대해서는 CrewAI Enterprise 지원팀에 문의해 주시기 바랍니다. 지원팀은 귀하의 특정 Salesforce 환경과 비즈니스 요구에 맞는 맞춤형 안내를 제공해 드릴 수 있습니다.

View File

@@ -0,0 +1,109 @@
---
title: 도구 저장소
description: "도구 저장소를 사용하여 도구를 관리하기"
icon: "toolbox"
mode: "wide"
---
## 개요
Tool Repository는 CrewAI 도구를 위한 패키지 관리자입니다. 사용자는 CrewAI crew와 flow에 통합되는 도구를 게시, 설치 및 관리할 수 있습니다.
도구는 다음과 같이 분류됩니다:
- **비공개**: 조직 내에서만 접근할 수 있습니다(기본값)
- **공개**: `--public` 플래그로 게시하면 모든 CrewAI 사용자가 접근할 수 있습니다
이 저장소는 버전 관리 시스템이 아닙니다. 코드 변경 사항을 추적하고 협업을 활성화하려면 Git을 사용하십시오.
## 사전 요구 사항
Tool Repository를 사용하기 전에 다음이 준비되어 있어야 합니다:
- [CrewAI Enterprise](https://app.crewai.com) 계정
- [CrewAI CLI](https://docs.crewai.com/concepts/cli#cli) 설치됨
- uv>=0.5.0 이 설치되어 있어야 합니다. [업그레이드 방법](https://docs.astral.sh/uv/getting-started/installation/#upgrading-uv)을 참고하세요.
- [Git](https://git-scm.com) 설치 및 구성 완료
- CrewAI Enterprise 조직에서 도구를 게시하거나 설치할 수 있는 액세스 권한
## 도구 설치
도구를 설치하려면:
```bash
crewai tool install <tool-name>
```
이 명령은 도구를 설치하고 `pyproject.toml`에 추가합니다.
## 도구 생성 및 게시
새 도구 프로젝트를 생성하려면:
```bash
crewai tool create <tool-name>
```
이 명령은 로컬에 스캐폴딩된 도구 프로젝트를 생성합니다.
변경 사항을 적용한 후, Git 저장소를 초기화하고 코드를 커밋합니다:
```bash
git init
git add .
git commit -m "Initial version"
```
도구를 게시하려면:
```bash
crewai tool publish
```
기본적으로 도구는 비공개로 게시됩니다. 도구를 공개로 설정하려면:
```bash
crewai tool publish --public
```
도구 빌드에 대한 자세한 내용은 [나만의 도구 만들기](https://docs.crewai.com/concepts/tools#creating-your-own-tools)를 참고하세요.
## 도구 업데이트
공개된 도구를 업데이트하려면:
1. 로컬에서 도구를 수정합니다.
2. `pyproject.toml`에서 버전을 업데이트합니다(예: `0.1.0`에서 `0.1.1`로).
3. 변경 사항을 커밋하고 배포합니다.
```bash
git commit -m "Update version to 0.1.1"
crewai tool publish
```
## 도구 삭제
도구를 삭제하려면:
1. [CrewAI Enterprise](https://app.crewai.com)로 이동합니다.
2. **Tools**로 이동합니다.
3. 도구를 선택합니다.
4. **Delete**를 클릭합니다.
<Warning>
삭제는 영구적입니다. 삭제된 도구는 복구하거나 다시 설치할 수 없습니다.
</Warning>
## 보안 점검
모든 공개된 버전은 자동화된 보안 점검을 거치며, 통과한 후에만 설치할 수 있습니다.
도구의 보안 점검 상태는 다음에서 확인할 수 있습니다:
`CrewAI Enterprise > Tools > Your Tool > Versions`
<Card title="도움이 필요하신가요?" icon="headset" href="mailto:support@crewai.com">
API 통합 또는 문제 해결에 대한 지원이 필요하시면 지원팀에 문의해 주세요.
</Card>

View File

@@ -129,15 +129,14 @@ mode: "wide"
</Steps>
에이전트가 항상 구조화된 출력을 내도록 만드는 방법 관련 튜토리얼은 아래 영상을 참고하세요:
<Frame>
<iframe
height="400"
width="100%"
src="https://www.youtube.com/embed/dNpKQk5uxHw"
title="YouTube video player" frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen></iframe>
</Frame>
<iframe
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/dNpKQk5uxHw"
title="CrewAI 구조화된 출력"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
></iframe>
</Accordion>
<Accordion title="CrewAI 에이전트를 위한 커스텀 도구는 어떻게 만들 수 있습니까?">
@@ -149,4 +148,4 @@ mode: "wide"
<Accordion title="전체 crew가 수행할 수 있는 분당 최대 요청 수는 어떻게 제한할 수 있나요?">
`max_rpm` 속성을 설정하면 crew 전체가 분당 보낼 수 있는 최대 요청 수를 제한할 수 있습니다. 이를 설정하면 개별 에이전트의 `max_rpm` 값보다 우선적으로 적용됩니다.
</Accordion>
</AccordionGroup>
</AccordionGroup>

102
docs/ko/index.mdx Normal file
View File

@@ -0,0 +1,102 @@
---
title: "CrewAI 문서"
description: "협업형 AI 에이전트, 크루, 플로우를 설계하고 즉시 프로덕션에 배포하세요."
icon: "house"
mode: "wide"
---
<div
style={{
display: 'flex',
flexDirection: 'column',
alignItems: 'center',
gap: 20,
textAlign: 'center',
padding: '48px 24px',
borderRadius: 16,
background: 'linear-gradient(180deg, rgba(235,102,88,0.12) 0%, rgba(201,76,60,0.08) 100%)',
border: '1px solid rgba(235,102,88,0.18)'
}}
>
<img src="/images/crew_only_logo.png" alt="CrewAI" width="250" height="100" />
<div style={{ maxWidth: 720 }}>
<h1 style={{ marginBottom: 12 }}>신뢰할 수 있는 멀티에이전트 시스템 구축</h1>
<p style={{ color: 'var(--mint-text-2)' }}>
에이전트를 설계하고 크루를 오케스트레이션하며 guardrails, 메모리, 지식, Observability가 기본 내장된 플로우를 자동화하세요.
</p>
</div>
<div style={{ display: 'flex', flexWrap: 'wrap', gap: 12, justifyContent: 'center' }}>
<a className="button button-primary" href="/ko/quickstart">빠르게 시작하기</a>
<a className="button button-secondary" href="/ko/changelog">변경 로그 보기</a>
<a className="button button-secondary" href="/ko/api-reference/introduction">API 레퍼런스</a>
</div>
</div>
<div style={{ marginTop: 32 }} />
<CardGroup cols={3}>
<Card title="소개" href="/ko/introduction" icon="sparkles">
CrewAI의 핵심 개념, 아키텍처, 에이전트·크루·플로우로 만들 수 있는 것들을 빠르게 파악하세요.
</Card>
<Card title="설치" href="/ko/installation" icon="wrench">
`uv` 설치, API 키 설정, 로컬 개발을 위한 CLI 초기화까지 모든 단계를 안내합니다.
</Card>
<Card title="빠른 시작" href="/ko/quickstart" icon="rocket">
몇 분 만에 첫 크루를 실행하세요. 런타임, 프로젝트 구조, 개발 루프를 배울 수 있습니다.
</Card>
</CardGroup>
## 기본 구축
<CardGroup cols={3}>
<Card title="에이전트" href="/ko/concepts/agents" icon="users">
도구, 메모리, 지식, 구조화된 출력을 갖춘 에이전트를 구성하는 방법과 베스트 프랙티스를 배워보세요.
</Card>
<Card title="플로우" href="/ko/concepts/flows" icon="arrow-progress">
start/listen/router 단계, 상태 관리, 실행 저장 및 재개 등 복잡한 워크플로우를 설계하세요.
</Card>
<Card title="작업 & 프로세스" href="/ko/concepts/tasks" icon="check">
guardrails, 콜백, human-in-the-loop가 포함된 순차적·계층적 프로세스를 정의하세요.
</Card>
</CardGroup>
## 엔터프라이즈 여정
<CardGroup cols={3}>
<Card title="Automations" href="/ko/enterprise/features/automations" icon="server">
환경을 관리하고 안전하게 재배포하며, Enterprise 콘솔에서 실시간 실행을 모니터링하세요.
</Card>
<Card title="Triggers & Flows" href="/ko/enterprise/guides/automation-triggers" icon="bolt">
Gmail, Slack, Salesforce 등 다양한 서비스를 연결하고 trigger payload를 자동으로 크루와 플로우에 전달하세요.
</Card>
<Card title="팀 관리" href="/ko/enterprise/guides/team-management" icon="users-gear">
팀원을 초대하고 RBAC을 설정하며, 프로덕션 자동화에 대한 접근을 제어하세요.
</Card>
</CardGroup>
## 최신 소식
<CardGroup cols={2}>
<Card title="트리거 개요" href="/ko/enterprise/guides/automation-triggers" icon="sparkles">
Gmail, Drive, Outlook, Teams, OneDrive, HubSpot 등 다수의 통합을 하나의 문서에서 확인하고, payload/crew 예제를 살펴보세요.
</Card>
<Card title="통합 도구" href="/ko/tools/integration/overview" icon="plug">
기존 CrewAI 자동화 또는 Amazon Bedrock Agent를 크루에서 직접 호출하는 방법을 안내합니다.
</Card>
</CardGroup>
<Callout title="실전 예제를 살펴보세요" icon="github">
<a href="/ko/examples/cookbooks">examples & cookbooks</a> 섹션에서 에이전트, 플로우, Enterprise 자동화의 엔드-투-엔드 구현을 확인해 보세요.
</Callout>
## 커뮤니티
<CardGroup cols={2}>
<Card title="GitHub 스타 남기기" href="https://github.com/crewAIInc/crewAI" icon="star">
CrewAI가 도움이 되었다면 GitHub에서 별을 남기고 빌드를 공유해주세요.
</Card>
<Card title="커뮤니티 참여" href="https://community.crewai.com" icon="comments">
질문을 올리고, 워크플로우를 공유하며, 다른 빌더와 함께 새로운 기능을 제안하세요.
</Card>
</CardGroup>

View File

@@ -9,14 +9,12 @@ mode: "wide"
설치 과정을 단계별로 시연하는 비디오 튜토리얼을 시청하세요:
<iframe
width="100%"
height="400"
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/-kSOTtYzgEw"
title="CrewAI Installation Guide"
frameborder="0"
style={{ borderRadius: '10px' }}
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
allowFullScreen
></iframe>
## 텍스트 튜토리얼

View File

@@ -42,6 +42,15 @@ class LinkedinProfileCrew():
`@CrewBase` 어노테이션은 메인 crew 클래스를 데코레이트하는 데 사용됩니다. 이 클래스는 일반적으로 agent, task, 그리고 crew 자체를 생성하기 위한 구성과 메서드를 포함합니다.
<Tip>
`@CrewBase`는 단순히 클래스를 등록하는 것 이상을 처리합니다.
- **구성 부트스트래핑:** 클래스 파일과 동일한 경로에서 `agents_config`와 `tasks_config`(기본값은 각각 `config/agents.yaml`, `config/tasks.yaml`)을 찾아 인스턴스화 시점에 불러오며, 파일이 없으면 빈 딕셔너리로 안전하게 대체합니다.
- **데코레이터 오케스트레이션:** `@agent`, `@task`, `@before_kickoff`, `@after_kickoff`로 표시된 메서드를 메모이즈하여 crew마다 한 번만 인스턴스화하고 선언 순서를 보장합니다.
- **후크 연결:** 보존된 킥오프 훅을 `@crew` 메서드가 반환하는 `Crew` 객체에 자동으로 연결하여 `.kickoff()` 호출 전후에 실행되도록 합니다.
- **MCP 연동:** 클래스에 `mcp_server_params`가 정의되어 있으면 `get_mcp_tools()`가 MCP 서버 어댑터를 지연 생성해 도구를 로드하고, 내부 after-kickoff 훅이 킥오프 종료 후 어댑터를 정리합니다. 어댑터 구성 방법은 [MCP 개요](/ko/mcp/overview)를 참고하세요.
</Tip>
### 2. 도구 정의
```python
@@ -139,4 +148,4 @@ YAML 파일의 `llm`과 `tools`가 Python 클래스에서 `@llm` 및 `@tool`로
- **유연성**: agent와 task를 쉽게 추가 및 제거할 수 있도록 crew를 유연하게 설계하세요.
- **YAML-코드 일치**: YAML 파일의 이름과 구조가 Python 코드의 데코레이터가 적용된 메서드와 정확히 일치하는지 확인하세요.
이 지침을 따르고 주석을 올바르게 사용하면 CrewAI 프레임워크를 이용해 구조적이고 유지보수가 쉬운 crew를 만들 수 있습니다.
이 지침을 따르고 주석을 올바르게 사용하면 CrewAI 프레임워크를 이용해 구조적이고 유지보수가 쉬운 crew를 만들 수 있습니다.

View File

@@ -21,14 +21,12 @@ mode: "wide"
CrewAI와 MCP 통합에 대한 종합적인 안내를 위해 이 비디오 튜토리얼을 시청하세요:
<iframe
width="100%"
height="400"
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/TpQ45lAZh48"
title="CrewAI MCP Integration Guide"
frameborder="0"
style={{ borderRadius: '10px' }}
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
allowFullScreen
></iframe>
## 설치
@@ -175,6 +173,16 @@ class CrewWithMCP:
# ... 나머지 crew 설정 ...
```
<Tip>
`@CrewBase`로 데코레이션된 클래스에서는 어댑터 수명 주기가 자동으로 관리됩니다.
- `get_mcp_tools()`가 처음 호출될 때 공유 `MCPServerAdapter`가 지연 생성되며 crew 내 모든 에이전트가 이를 재사용합니다.
- `.kickoff()`가 끝나면 `@CrewBase`가 주입한 after-kickoff 훅이 어댑터를 종료하므로 별도의 정리 코드가 필요 없습니다.
- `mcp_server_params`를 지정하지 않으면 `get_mcp_tools()`는 빈 리스트를 반환하여 MCP 설정 여부와 상관없이 동일한 코드 경로를 사용할 수 있습니다.
따라서 여러 에이전트에서 `get_mcp_tools()`를 호출하거나 환경에 따라 MCP 사용을 토글하더라도 안전하게 동작합니다.
</Tip>
### 연결 타임아웃 구성
`mcp_connect_timeout` 클래스 속성을 설정하여 MCP 서버의 연결 타임아웃을 구성할 수 있습니다. 타임아웃을 지정하지 않으면 기본값으로 30초가 사용됩니다.

View File

@@ -85,10 +85,9 @@ GitHub에 따르면, Neatlogs는:
### 🔍 전체 데모 (4분)
<iframe
width="100%"
height="315"
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/8KDme9T2I7Q?si=b8oHteaBwFNs_Duk"
title="YouTube video player"
title="NeatLogs 개요"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
@@ -127,4 +126,4 @@ No setup overhead. Full trace transparency. Full team collaboration.
```
이제 몇 초 만에 CrewAI agent 실행을 캡처, 이해, 공유하고 바로 조치할 수 있습니다.
별도의 설정이 필요하지 않습니다. 완전한 트레이스 투명성. 전체 팀 협업 지원.
별도의 설정이 필요하지 않습니다. 완전한 트레이스 투명성. 전체 팀 협업 지원.

View File

@@ -345,14 +345,12 @@ production 환경에 crew를 배포하는 가장 쉬운 방법은 [CrewAI Enterp
CLI를 사용하여 [CrewAI Enterprise](http://app.crewai.com)에 crew를 배포하는 단계별 시연은 이 영상 튜토리얼을 참고하세요.
<iframe
width="100%"
height="400"
className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/3EqSV-CYDZA"
title="CrewAI Deployment Guide"
frameborder="0"
style={{ borderRadius: '10px' }}
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
allowFullScreen
></iframe>
<CardGroup cols={2}>
@@ -370,4 +368,4 @@ CLI를 사용하여 [CrewAI Enterprise](http://app.crewai.com)에 crew를 배포
>
오픈 소스 커뮤니티에 참여하여 아이디어를 나누고, 프로젝트를 공유하며, 다른 CrewAI 개발자들과 소통하세요.
</Card>
</CardGroup>
</CardGroup>

View File

@@ -0,0 +1,188 @@
---
title: Bedrock Invoke Agent Tool
description: Enables CrewAI agents to invoke Amazon Bedrock Agents and leverage their capabilities within your workflows
icon: aws
mode: "wide"
---
# `BedrockInvokeAgentTool`
The `BedrockInvokeAgentTool` enables CrewAI agents to invoke Amazon Bedrock Agents and leverage their capabilities within your workflows.
## Installation
```bash
uv pip install 'crewai[tools]'
```
## Requirements
- AWS credentials configured (either through environment variables or AWS CLI)
- `boto3` and `python-dotenv` packages
- Access to Amazon Bedrock Agents
## Usage
Here's how to use the tool with a CrewAI agent:
```python {2, 4-8}
from crewai import Agent, Task, Crew
from crewai_tools.aws.bedrock.agents.invoke_agent_tool import BedrockInvokeAgentTool
# Initialize the tool
agent_tool = BedrockInvokeAgentTool(
agent_id="your-agent-id",
agent_alias_id="your-agent-alias-id"
)
# Create a CrewAI agent that uses the tool
aws_expert = Agent(
role='AWS Service Expert',
goal='Help users understand AWS services and quotas',
backstory='I am an expert in AWS services and can provide detailed information about them.',
tools=[agent_tool],
verbose=True
)
# Create a task for the agent
quota_task = Task(
description="Find out the current service quotas for EC2 in us-west-2 and explain any recent changes.",
agent=aws_expert
)
# Create a crew with the agent
crew = Crew(
agents=[aws_expert],
tasks=[quota_task],
verbose=2
)
# Run the crew
result = crew.kickoff()
print(result)
```
## Tool Arguments
| Argument | Type | Required | Default | Description |
|:---------|:-----|:---------|:--------|:------------|
| **agent_id** | `str` | Yes | None | The unique identifier of the Bedrock agent |
| **agent_alias_id** | `str` | Yes | None | The unique identifier of the agent alias |
| **session_id** | `str` | No | timestamp | The unique identifier of the session |
| **enable_trace** | `bool` | No | False | Whether to enable trace for debugging |
| **end_session** | `bool` | No | False | Whether to end the session after invocation |
| **description** | `str` | No | None | Custom description for the tool |
## Environment Variables
```bash
BEDROCK_AGENT_ID=your-agent-id # Alternative to passing agent_id
BEDROCK_AGENT_ALIAS_ID=your-agent-alias-id # Alternative to passing agent_alias_id
AWS_REGION=your-aws-region # Defaults to us-west-2
AWS_ACCESS_KEY_ID=your-access-key # Required for AWS authentication
AWS_SECRET_ACCESS_KEY=your-secret-key # Required for AWS authentication
```
## Advanced Usage
### Multi-Agent Workflow with Session Management
```python {2, 4-22}
from crewai import Agent, Task, Crew, Process
from crewai_tools.aws.bedrock.agents.invoke_agent_tool import BedrockInvokeAgentTool
# Initialize tools with session management
initial_tool = BedrockInvokeAgentTool(
agent_id="your-agent-id",
agent_alias_id="your-agent-alias-id",
session_id="custom-session-id"
)
followup_tool = BedrockInvokeAgentTool(
agent_id="your-agent-id",
agent_alias_id="your-agent-alias-id",
session_id="custom-session-id"
)
final_tool = BedrockInvokeAgentTool(
agent_id="your-agent-id",
agent_alias_id="your-agent-alias-id",
session_id="custom-session-id",
end_session=True
)
# Create agents for different stages
researcher = Agent(
role='AWS Service Researcher',
goal='Gather information about AWS services',
backstory='I am specialized in finding detailed AWS service information.',
tools=[initial_tool]
)
analyst = Agent(
role='Service Compatibility Analyst',
goal='Analyze service compatibility and requirements',
backstory='I analyze AWS services for compatibility and integration possibilities.',
tools=[followup_tool]
)
summarizer = Agent(
role='Technical Documentation Writer',
goal='Create clear technical summaries',
backstory='I specialize in creating clear, concise technical documentation.',
tools=[final_tool]
)
# Create tasks
research_task = Task(
description="Find all available AWS services in us-west-2 region.",
agent=researcher
)
analysis_task = Task(
description="Analyze which services support IPv6 and their implementation requirements.",
agent=analyst
)
summary_task = Task(
description="Create a summary of IPv6-compatible services and their key features.",
agent=summarizer
)
# Create a crew with the agents and tasks
crew = Crew(
agents=[researcher, analyst, summarizer],
tasks=[research_task, analysis_task, summary_task],
process=Process.sequential,
verbose=2
)
# Run the crew
result = crew.kickoff()
```
## Use Cases
### Hybrid Multi-Agent Collaborations
- Create workflows where CrewAI agents collaborate with managed Bedrock agents running as services in AWS
- Enable scenarios where sensitive data processing happens within your AWS environment while other agents operate externally
- Bridge on-premises CrewAI agents with cloud-based Bedrock agents for distributed intelligence workflows
### Data Sovereignty and Compliance
- Keep data-sensitive agentic workflows within your AWS environment while allowing external CrewAI agents to orchestrate tasks
- Maintain compliance with data residency requirements by processing sensitive information only within your AWS account
- Enable secure multi-agent collaborations where some agents cannot access your organization's private data
### Seamless AWS Service Integration
- Access any AWS service through Amazon Bedrock Actions without writing complex integration code
- Enable CrewAI agents to interact with AWS services through natural language requests
- Leverage pre-built Bedrock agent capabilities to interact with AWS services like Bedrock Knowledge Bases, Lambda, and more
### Scalable Hybrid Agent Architectures
- Offload computationally intensive tasks to managed Bedrock agents while lightweight tasks run in CrewAI
- Scale agent processing by distributing workloads between local CrewAI agents and cloud-based Bedrock agents
### Cross-Organizational Agent Collaboration
- Enable secure collaboration between your organization's CrewAI agents and partner organizations' Bedrock agents
- Create workflows where external expertise from Bedrock agents can be incorporated without exposing sensitive data
- Build agent ecosystems that span organizational boundaries while maintaining security and data control

View File

@@ -0,0 +1,276 @@
---
title: CrewAI Run Automation Tool
description: Enables CrewAI agents to invoke CrewAI Platform automations and leverage external crew services within your workflows.
icon: robot
---
# `InvokeCrewAIAutomationTool`
The `InvokeCrewAIAutomationTool` provides CrewAI Platform API integration with external crew services. This tool allows you to invoke and interact with CrewAI Platform automations from within your CrewAI agents, enabling seamless integration between different crew workflows.
## Installation
```bash
uv pip install 'crewai[tools]'
```
## Requirements
- CrewAI Platform API access
- Valid bearer token for authentication
- Network access to CrewAI Platform automation endpoints
## Usage
Here's how to use the tool with a CrewAI agent:
```python {2, 4-9}
from crewai import Agent, Task, Crew
from crewai_tools import InvokeCrewAIAutomationTool
# Initialize the tool
automation_tool = InvokeCrewAIAutomationTool(
crew_api_url="https://data-analysis-crew-[...].crewai.com",
crew_bearer_token="your_bearer_token_here",
crew_name="Data Analysis Crew",
crew_description="Analyzes data and generates insights"
)
# Create a CrewAI agent that uses the tool
automation_coordinator = Agent(
role='Automation Coordinator',
goal='Coordinate and execute automated crew tasks',
backstory='I am an expert at leveraging automation tools to execute complex workflows.',
tools=[automation_tool],
verbose=True
)
# Create a task for the agent
analysis_task = Task(
description="Execute data analysis automation and provide insights",
agent=automation_coordinator,
expected_output="Comprehensive data analysis report"
)
# Create a crew with the agent
crew = Crew(
agents=[automation_coordinator],
tasks=[analysis_task],
verbose=2
)
# Run the crew
result = crew.kickoff()
print(result)
```
## Tool Arguments
| Argument | Type | Required | Default | Description |
|:---------|:-----|:---------|:--------|:------------|
| **crew_api_url** | `str` | Yes | None | Base URL of the CrewAI Platform automation API |
| **crew_bearer_token** | `str` | Yes | None | Bearer token for API authentication |
| **crew_name** | `str` | Yes | None | Name of the crew automation |
| **crew_description** | `str` | Yes | None | Description of what the crew automation does |
| **max_polling_time** | `int` | No | 600 | Maximum time in seconds to wait for task completion |
| **crew_inputs** | `dict` | No | None | Dictionary defining custom input schema fields |
## Environment Variables
```bash
CREWAI_API_URL=https://your-crew-automation.crewai.com # Alternative to passing crew_api_url
CREWAI_BEARER_TOKEN=your_bearer_token_here # Alternative to passing crew_bearer_token
```
## Advanced Usage
### Custom Input Schema with Dynamic Parameters
```python {2, 4-15}
from crewai import Agent, Task, Crew
from crewai_tools import InvokeCrewAIAutomationTool
from pydantic import Field
# Define custom input schema
custom_inputs = {
"year": Field(..., description="Year to retrieve the report for (integer)"),
"region": Field(default="global", description="Geographic region for analysis"),
"format": Field(default="summary", description="Report format (summary, detailed, raw)")
}
# Create tool with custom inputs
market_research_tool = InvokeCrewAIAutomationTool(
crew_api_url="https://state-of-ai-report-crew-[...].crewai.com",
crew_bearer_token="your_bearer_token_here",
crew_name="State of AI Report",
crew_description="Retrieves a comprehensive report on state of AI for a given year and region",
crew_inputs=custom_inputs,
max_polling_time=15 * 60 # 15 minutes timeout
)
# Create an agent with the tool
research_agent = Agent(
role="Research Coordinator",
goal="Coordinate and execute market research tasks",
backstory="You are an expert at coordinating research tasks and leveraging automation tools.",
tools=[market_research_tool],
verbose=True
)
# Create and execute a task with custom parameters
research_task = Task(
description="Conduct market research on AI tools market for 2024 in North America with detailed format",
agent=research_agent,
expected_output="Comprehensive market research report"
)
crew = Crew(
agents=[research_agent],
tasks=[research_task]
)
result = crew.kickoff()
```
### Multi-Stage Automation Workflow
```python {2, 4-35}
from crewai import Agent, Task, Crew, Process
from crewai_tools import InvokeCrewAIAutomationTool
# Initialize different automation tools
data_collection_tool = InvokeCrewAIAutomationTool(
crew_api_url="https://data-collection-crew-[...].crewai.com",
crew_bearer_token="your_bearer_token_here",
crew_name="Data Collection Automation",
crew_description="Collects and preprocesses raw data"
)
analysis_tool = InvokeCrewAIAutomationTool(
crew_api_url="https://analysis-crew-[...].crewai.com",
crew_bearer_token="your_bearer_token_here",
crew_name="Analysis Automation",
crew_description="Performs advanced data analysis and modeling"
)
reporting_tool = InvokeCrewAIAutomationTool(
crew_api_url="https://reporting-crew-[...].crewai.com",
crew_bearer_token="your_bearer_token_here",
crew_name="Reporting Automation",
crew_description="Generates comprehensive reports and visualizations"
)
# Create specialized agents
data_collector = Agent(
role='Data Collection Specialist',
goal='Gather and preprocess data from various sources',
backstory='I specialize in collecting and cleaning data from multiple sources.',
tools=[data_collection_tool]
)
data_analyst = Agent(
role='Data Analysis Expert',
goal='Perform advanced analysis on collected data',
backstory='I am an expert in statistical analysis and machine learning.',
tools=[analysis_tool]
)
report_generator = Agent(
role='Report Generation Specialist',
goal='Create comprehensive reports and visualizations',
backstory='I excel at creating clear, actionable reports from complex data.',
tools=[reporting_tool]
)
# Create sequential tasks
collection_task = Task(
description="Collect market data for Q4 2024 analysis",
agent=data_collector
)
analysis_task = Task(
description="Analyze collected data to identify trends and patterns",
agent=data_analyst
)
reporting_task = Task(
description="Generate executive summary report with key insights and recommendations",
agent=report_generator
)
# Create a crew with sequential processing
crew = Crew(
agents=[data_collector, data_analyst, report_generator],
tasks=[collection_task, analysis_task, reporting_task],
process=Process.sequential,
verbose=2
)
result = crew.kickoff()
```
## Use Cases
### Distributed Crew Orchestration
- Coordinate multiple specialized crew automations to handle complex, multi-stage workflows
- Enable seamless handoffs between different automation services for comprehensive task execution
- Scale processing by distributing workloads across multiple CrewAI Platform automations
### Cross-Platform Integration
- Bridge CrewAI agents with CrewAI Platform automations for hybrid local-cloud workflows
- Leverage specialized automations while maintaining local control and orchestration
- Enable secure collaboration between local agents and cloud-based automation services
### Enterprise Automation Pipelines
- Create enterprise-grade automation pipelines that combine local intelligence with cloud processing power
- Implement complex business workflows that span multiple automation services
- Enable scalable, repeatable processes for data analysis, reporting, and decision-making
### Dynamic Workflow Composition
- Dynamically compose workflows by chaining different automation services based on task requirements
- Enable adaptive processing where the choice of automation depends on data characteristics or business rules
- Create flexible, reusable automation components that can be combined in various ways
### Specialized Domain Processing
- Access domain-specific automations (financial analysis, legal research, technical documentation) from general-purpose agents
- Leverage pre-built, specialized crew automations without rebuilding complex domain logic
- Enable agents to access expert-level capabilities through targeted automation services
## Custom Input Schema
When defining `crew_inputs`, use Pydantic Field objects to specify the input parameters:
```python
from pydantic import Field
crew_inputs = {
"required_param": Field(..., description="This parameter is required"),
"optional_param": Field(default="default_value", description="This parameter is optional"),
"typed_param": Field(..., description="Integer parameter", ge=1, le=100) # With validation
}
```
## Error Handling
The tool provides comprehensive error handling for common scenarios:
- **API Connection Errors**: Network connectivity issues with CrewAI Platform
- **Authentication Errors**: Invalid or expired bearer tokens
- **Timeout Errors**: Tasks that exceed the maximum polling time
- **Task Failures**: Crew automations that fail during execution
- **Input Validation Errors**: Invalid parameters passed to automation endpoints
## API Endpoints
The tool interacts with two main API endpoints:
- `POST {crew_api_url}/kickoff`: Starts a new crew automation task
- `GET {crew_api_url}/status/{crew_id}`: Checks the status of a running task
## Notes
- The tool automatically polls the status endpoint every second until completion or timeout
- Successful tasks return the result directly, while failed tasks return error information
- Bearer tokens should be kept secure and not hardcoded in production environments
- Consider using environment variables for sensitive configuration like bearer tokens
- Custom input schemas must be compatible with the target crew automation's expected parameters

View File

@@ -0,0 +1,72 @@
---
title: "개요"
description: "CrewAI 에이전트를 외부 자동화 및 관리형 AI 서비스와 연결"
icon: "plug"
mode: "wide"
---
통합 도구를 사용하면 에이전트가 다른 자동화 플랫폼이나 관리형 AI 서비스에 작업을 위임할 수 있습니다. 이미 운영 중인 CrewAI Platform 자동화를 호출하거나 Amazon Bedrock과 같은 전문 제공업체에 태스크를 넘겨야 할 때 활용하세요.
## **사용 가능한 도구**
<CardGroup cols={2}>
<Card title="CrewAI 자동화 실행 도구" icon="robot" href="/ko/tools/integration/crewaiautomationtool">
실행 중인 CrewAI Platform 자동화를 호출하고 사용자 입력을 전달하며, 결과를 에이전트로 다시 수집합니다.
</Card>
<Card title="Bedrock Invoke Agent 도구" icon="aws" href="/ko/tools/integration/bedrockinvokeagenttool">
크루에서 Amazon Bedrock Agent를 호출하고 기존 AWS 가드레일을 재사용하며 응답을 현재 워크플로우로 되돌립니다.
</Card>
</CardGroup>
## **주요 사용 사례**
- **자동화 연결**: 한 크루 또는 플로우에서 다른 CrewAI 자동화를 연속 실행
- **엔터프라이즈 핸드오프**: 사내 정책과 가드레일을 담고 있는 Bedrock Agent에 태스크 위임
- **하이브리드 워크플로우**: CrewAI의 추론 능력과 외부의 에이전트 API를 결합
- **장기 실행 작업**: 외부 자동화를 폴링하고 최종 결과를 현재 실행에 병합
## **빠른 시작 예시**
```python
from crewai import Agent, Task, Crew
from crewai_tools import InvokeCrewAIAutomationTool
from crewai_tools.aws.bedrock.agents.invoke_agent_tool import BedrockInvokeAgentTool
# 외부 자동화
analysis_automation = InvokeCrewAIAutomationTool(
crew_api_url="https://analysis-crew.acme.crewai.com",
crew_bearer_token="YOUR_BEARER_TOKEN",
crew_name="Analysis Automation",
crew_description="프로덕션 분석 파이프라인을 실행",
)
# Bedrock 관리형 에이전트
knowledge_router = BedrockInvokeAgentTool(
agent_id="bedrock-agent-id",
agent_alias_id="prod",
)
automation_strategist = Agent(
role="자동화 전략가",
goal="외부 자동화를 조율하고 결과를 요약",
backstory="엔터프라이즈 워크플로우를 조정하고 전문 서비스에 태스크를 위임할 시점을 알고 있습니다.",
tools=[analysis_automation, knowledge_router],
verbose=True,
)
execute_playbook = Task(
description="분석 자동화를 실행하고 Bedrock 에이전트에게 경영진 브리핑용 핵심 포인트를 요청하세요.",
agent=automation_strategist,
)
Crew(agents=[automation_strategist], tasks=[execute_playbook]).kickoff()
```
## **모범 사례**
- **자격 증명 보호**: API 키와 토큰은 환경 변수 또는 비밀 관리 솔루션에 저장하세요
- **지연 시간 고려**: 외부 자동화는 시간이 더 걸릴 수 있으므로 폴링 주기와 타임아웃을 적절히 설정하세요
- **세션 재사용**: Bedrock Agent는 세션 ID를 지원하므로 여러 호출 간에 컨텍스트를 유지할 수 있습니다
- **응답 검증**: 후속 단계로 전달하기 전에 외부 출력(JSON, 텍스트, 상태 코드 등)을 정규화하세요
- **사용량 모니터링**: CrewAI Platform 로그나 AWS CloudWatch를 통해 할당량 초과와 실패를 조기에 감지하세요