mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-07-01 13:18:10 +00:00
* feat: adopt directory-based docs versioning with Edge channel Switch docs.crewai.com from navigation-only versioning (every version selector entry rendered the same docs/<lang>/* source files) to Mintlify's directory-based versioning so each version selector entry renders its own snapshot. Add an "Edge" channel under docs/edge/<lang>/* that always reflects main HEAD for unreleased work, eliminating pre-release leakage onto frozen release labels. External links to canonical /<lang>/* URLs are preserved via wildcard redirects that always land on the current default version. Layout: - docs/edge/<lang>/* rolling source (you edit here) - docs/edge/enterprise-api.*.yaml - docs/v<X.Y.Z>/<lang>/* frozen, immutable snapshots - docs/v<X.Y.Z>/enterprise-api.*.yaml - docs/images/ shared, append-only - docs/docs.json nav + redirects URLs follow the Mintlify-idiomatic shape: /edge/<lang>/<page> for Edge, /v<X.Y.Z>/<lang>/<page> for every frozen snapshot. The wildcard redirects /<lang>/:slug* -> /<default>/<lang>/:slug* keep stale links working, and every freeze rewrites them (plus all per-section/per-page redirects) so destinations always resolve to the current default without depending on a second redirect hop. Release flow integration (devtools release): - New module crewai_devtools.docs_versioning.freeze() materialises docs/v<X.Y.Z>/ from docs/edge/, rewrites openapi: refs inside the snapshot, inserts the version into every language block in docs.json, and refreshes all redirect destinations. - _update_docs_and_create_pr() in cli.py now calls that freeze during Phase 2 of devtools release. Edge changelogs are updated first (so the snapshot freeze picks them up), then the snapshot is staged alongside docs.json, branched as docs/freeze-v<X.Y.Z>, and the PR is titled [docs-freeze] docs: snapshot and changelog for v<X.Y.Z> — the title prefix the new CI guard reads. - The PR still gates tag, GitHub release, PyPI publish, and the enterprise release as before; no new PRs are added. - Pre-releases (1.X.YaN, 1.X.YbN, ...) skip the snapshot — they ride Edge — and the docs PR title omits the [docs-freeze] prefix. - docs_check (AI-generated docs scaffolding) writes to docs/edge/<lang>/* so newly-generated unreleased docs land in Edge and never accidentally touch a frozen snapshot. Migration scripts (one-shot): - scripts/docs/freeze_historical_versions.py reconstructs all 16 historical snapshots (v1.10.0 .. v1.14.7) from git tags via git archive | tar, rewriting openapi: MDX refs so each snapshot reads its own enterprise-api YAML rather than the live one. - scripts/docs/prefix_version_paths.py one-shot-migrates docs.json: rewrites every page path in 16 versioned blocks to point under docs/v<X.Y.Z>/, inserts a new Edge entry per language, tags v1.14.7 as Latest (default), prunes pages whose target file doesn't exist in the snapshot (e.g. docs/ar/ didn't exist before v1.12.0), and writes the wildcard + per-section redirects. - scripts/docs/freeze_current_edge.py is now a thin CLI wrapper around docs_versioning.freeze for manual one-off freezes (e.g. retroactively snapshotting a forgotten release). CI guards (.github/workflows/docs-snapshots.yml): - Frozen snapshots under docs/v[0-9]*/ are immutable; only PRs whose title contains [docs-freeze] (i.e. release-cut PRs generated by devtools release or the manual wrapper) may modify them. - Images under docs/images/ are append-only since snapshots share a single image directory. Deleting or renaming an image breaks every historical snapshot that still references it. Restored docs/images/crewai-otel-export.png from PR #3673; it was deleted in PR #4908 but v1.10.0 / v1.10.1 snapshots still reference it. Restoring instead of editing the snapshots preserves historical rendering fidelity and validates the new append-only rule retroactively. Tests: - lib/devtools/tests/test_docs_versioning.py covers the freeze: file copy, openapi rewrite, version insertion, default demotion, redirect upserts, per-section redirect rewriting, idempotency, and invalid inputs. Verified locally with mintlify broken-links: 0 broken links across the full site (Edge + 16 frozen versions, 4 locales). AGENTS.md (repo root) is the contributor guide for the new model; RELEASING.md is the release-cut runbook; README's Contribution section links to both. Co-authored-by: Cursor <cursoragent@cursor.com> * style: resolve linter issues --------- Co-authored-by: Cursor <cursoragent@cursor.com>
210 lines
7.5 KiB
Plaintext
210 lines
7.5 KiB
Plaintext
---
|
|
title: 설치
|
|
description: CrewAI 시작하기 - 설치, 구성, 그리고 첫 번째 AI crew 구축하기
|
|
icon: wrench
|
|
mode: "wide"
|
|
---
|
|
|
|
### 영상: 코딩 에이전트 스킬을 활용한 CrewAI Agents & Flows 구축
|
|
|
|
코딩 에이전트 스킬(Claude Code, Codex 등)을 설치하여 CrewAI로 코딩 에이전트를 빠르게 시작하세요.
|
|
|
|
`npx skills add crewaiinc/skills` 명령어로 설치할 수 있습니다
|
|
|
|
<iframe src="https://www.loom.com/embed/befb9f68b81f42ad8112bfdd95a780af" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen style={{width: "100%", height: "400px"}}></iframe>
|
|
|
|
## 비디오 튜토리얼
|
|
|
|
설치 과정을 단계별로 시연하는 비디오 튜토리얼을 시청하세요:
|
|
|
|
<iframe
|
|
className="w-full aspect-video rounded-xl"
|
|
src="https://www.youtube.com/embed/-kSOTtYzgEw"
|
|
title="CrewAI Installation Guide"
|
|
frameBorder="0"
|
|
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
|
allowFullScreen
|
|
></iframe>
|
|
|
|
## 텍스트 튜토리얼
|
|
|
|
<Note>
|
|
**Python 버전 요구 사항**
|
|
|
|
CrewAI는 `Python >=3.10 및 <3.14`가 필요합니다. 버전을 확인하는 방법은 다음과 같습니다:
|
|
|
|
```bash
|
|
python3 --version
|
|
```
|
|
|
|
Python을 업데이트해야 하는 경우, [python.org/downloads](https://python.org/downloads)를 방문하세요.
|
|
|
|
</Note>
|
|
|
|
CrewAI는 의존성 관리와 패키지 처리를 위해 `uv`를 사용합니다. 프로젝트 설정과 실행을 간소화하여 원활한 경험을 제공합니다.
|
|
|
|
아직 `uv`를 설치하지 않았다면 **1단계**를 따라 빠르게 시스템에 설치할 수 있습니다. 이미 설치되어 있다면 **2단계**로 건너뛸 수 있습니다.
|
|
|
|
<Steps>
|
|
<Step title="uv 설치하기">
|
|
- **macOS/Linux에서:**
|
|
|
|
`curl`을 이용해 스크립트를 다운로드하고 `sh`로 실행하세요:
|
|
|
|
```shell
|
|
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
```
|
|
시스템에 `curl`이 없다면, `wget`을 사용할 수 있습니다:
|
|
|
|
```shell
|
|
wget -qO- https://astral.sh/uv/install.sh | sh
|
|
```
|
|
|
|
- **Windows에서:**
|
|
|
|
`irm`으로 스크립트를 다운로드하고 `iex`로 실행하세요:
|
|
|
|
```shell
|
|
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
```
|
|
문제가 발생하면 [UV 설치 가이드](https://docs.astral.sh/uv/getting-started/installation/)를 참고하세요.
|
|
</Step>
|
|
|
|
<Step title="CrewAI 설치 🚀">
|
|
- 다음 명령어를 실행하여 `crewai` CLI를 설치하세요:
|
|
```shell
|
|
uv tool install crewai
|
|
```
|
|
<Warning>
|
|
`PATH` 경고가 발생하면 쉘을 업데이트하기 위해 아래 명령어를 실행하세요:
|
|
```shell
|
|
uv tool update-shell
|
|
```
|
|
</Warning>
|
|
|
|
<Warning>
|
|
Windows에서 `chroma-hnswlib==0.7.6` 빌드 오류(`fatal error C1083: Cannot open include file: 'float.h'`)가 발생하면, [Visual Studio Build Tools](https://visualstudio.microsoft.com/downloads/)에서 *C++를 사용한 데스크톱 개발*을 설치하세요.
|
|
</Warning>
|
|
|
|
- `crewai`가 정상적으로 설치되었는지 확인하려면 다음을 실행하세요:
|
|
```shell
|
|
uv tool list
|
|
```
|
|
- 다음과 같이 표시되어야 합니다:
|
|
```shell
|
|
crewai v0.102.0
|
|
- crewai
|
|
```
|
|
- `crewai`를 업데이트해야 하는 경우, 다음을 실행하세요:
|
|
```shell
|
|
uv tool install crewai --upgrade
|
|
```
|
|
<Check>설치가 완료되었습니다! 이제 첫 번째 crew를 만들 준비가 되었습니다! 🎉</Check>
|
|
</Step>
|
|
|
|
</Steps>
|
|
|
|
# CrewAI 프로젝트 생성하기
|
|
|
|
`crewai create crew`는 이제 JSON-first crew 프로젝트를 생성합니다. 에이전트는 `agents/*.jsonc`에, 태스크와 crew 수준 설정은 `crew.jsonc`에 두며, `crewai run`은 이 JSON 정의를 직접 로드합니다.
|
|
|
|
<Steps>
|
|
<Step title="프로젝트 스캐폴딩 생성">
|
|
- `crewai` CLI 명령어를 실행하세요:
|
|
```shell
|
|
crewai create crew <your_project_name>
|
|
```
|
|
|
|
- 이 명령어를 실행하면 다음과 같은 구조로 새로운 프로젝트가 생성됩니다:
|
|
```
|
|
my_project/
|
|
├── .gitignore
|
|
├── .env
|
|
├── agents/
|
|
│ └── researcher.jsonc
|
|
├── crew.jsonc
|
|
├── knowledge/
|
|
├── pyproject.toml
|
|
├── README.md
|
|
├── skills/
|
|
└── tools/
|
|
```
|
|
|
|
- `crew.py`, `config/agents.yaml`, `config/tasks.yaml`을 사용하는 기존 Python/YAML 스캐폴드가 필요하다면 다음을 실행하세요:
|
|
```shell
|
|
crewai create crew <your_project_name> --classic
|
|
```
|
|
|
|
</Step>
|
|
|
|
<Step title="프로젝트 커스터마이즈">
|
|
- 프로젝트에는 다음과 같은 주요 파일들이 포함되어 있습니다:
|
|
| 파일 | 용도 |
|
|
| --- | --- |
|
|
| `crew.jsonc` | crew, 태스크 순서, 프로세스, 기본 입력값 설정 |
|
|
| `agents/*.jsonc` | 각 에이전트의 역할, 목표, backstory, LLM, 도구, 동작 정의 |
|
|
| `.env` | API 키 및 환경 변수 저장 |
|
|
| `tools/` | `custom:<name>` 도구를 위한 선택적 Python 파일 |
|
|
| `knowledge/` | 에이전트용 선택적 지식 파일 |
|
|
| `skills/` | crew에 적용할 선택적 skill 파일 |
|
|
|
|
- `crew.jsonc`와 `agents/` 안의 파일을 편집하여 crew 동작을 정의하세요.
|
|
- 에이전트와 태스크 텍스트에 `{placeholder}`를 사용하고, `crew.jsonc`의 `inputs`에 기본값을 넣으세요. `crewai run` 실행 시 빠진 값은 CLI가 묻습니다.
|
|
- API 키와 같은 민감한 정보는 `.env` 파일에 보관하세요.
|
|
|
|
</Step>
|
|
|
|
<Step title="Crew 실행하기">
|
|
- crew를 실행하기 전에 아래 명령을 먼저 실행하세요:
|
|
```bash
|
|
crewai install
|
|
```
|
|
- 추가 패키지를 설치해야 하는 경우 다음을 사용하세요:
|
|
```shell
|
|
uv add <package-name>
|
|
```
|
|
- crew를 실행하려면 프로젝트 루트에서 아래 명령을 실행하세요:
|
|
```bash
|
|
crewai run
|
|
```
|
|
</Step>
|
|
</Steps>
|
|
|
|
## 엔터프라이즈 설치 옵션
|
|
|
|
<Note type="info">
|
|
팀과 조직을 위해, CrewAI는 설치 복잡성을 없애는 엔터프라이즈 배포 옵션을 제공합니다:
|
|
|
|
### CrewAI AMP (SaaS)
|
|
|
|
- 설치가 전혀 필요하지 않습니다 - [app.crewai.com](https://app.crewai.com)에서 무료로 가입하세요
|
|
- 자동 업데이트 및 유지 보수
|
|
- 관리형 인프라 및 확장성 지원
|
|
- 코딩 없이 Crew 생성
|
|
|
|
### CrewAI Factory (자가 호스팅)
|
|
|
|
- 귀하의 인프라를 위한 컨테이너화된 배포
|
|
- 온프레미스 배포를 포함하여 모든 하이퍼스케일러 지원
|
|
- 기존 보안 시스템과의 통합
|
|
|
|
<Card title="엔터프라이즈 옵션 살펴보기" icon="building" href="https://share.hsforms.com/1Ooo2UViKQ22UOzdr7i77iwr87kg">
|
|
CrewAI의 엔터프라이즈 서비스에 대해 알아보고 데모를 예약하세요
|
|
</Card>
|
|
</Note>
|
|
|
|
## 다음 단계
|
|
|
|
<CardGroup cols={2}>
|
|
<Card title="퀵스타트: Flow + 에이전트" icon="code" href="/ko/quickstart">
|
|
Flow를 만들고 에이전트 한 명짜리 crew를 실행해 보고서까지 만드는 방법을 따라 해 보세요.
|
|
</Card>
|
|
<Card
|
|
title="커뮤니티 참여하기"
|
|
icon="comments"
|
|
href="https://community.crewai.com"
|
|
>
|
|
다른 개발자들과 소통하고, 도움을 받으며, CrewAI 경험을 공유하세요.
|
|
</Card>
|
|
</CardGroup>
|