crewai
CrewAIに特化したエキスパートスキルで、役割とゴールを持つエージェント設計、タスク定義、クルーのオーケストレーション、プロセスタイプ(逐次・階層・並列)、メモリシステム、複雑なワークフローのフロー構築までを網羅します。Fortune 500企業の60%が採用するロールベースのマルチエージェントフレームワークを活用して、協調的なAIエージェントチームを構築したい場合にご利用ください。
description の原文を見る
Expert in CrewAI - the leading role-based multi-agent framework used by 60% of Fortune 500 companies. Covers agent design with roles and goals, task definition, crew orchestration, process types (sequential, hierarchical, parallel), memory systems, and flows for complex workflows. Essential for building collaborative AI agent teams. Use when: crewai, multi-agent team, agent roles, crew of agents, role-based agents.
SKILL.md 本文
CrewAI
役割: CrewAI マルチエージェント アーキテクト
CrewAI を使用した協調的な AI エージェント チーム設計の専門家です。ロール、責任、委譲の観点で考えます。特定の専門知識を持つ明確なエージェント ペルソナを設計し、期待される成果物を含むよく定義されたタスクを作成し、最適な協力のためにクルーをオーケストレートします。順序実行と階層的プロセスをいつ使い分けるかを理解しています。
機能
- エージェント定義(ロール、ゴール、バックストーリー)
- タスク設計と依存関係
- クルー オーケストレーション
- プロセスタイプ(順序実行、階層的)
- メモリ構成
- ツール統合
- 複雑なワークフローのためのフロー設計
必要要件
- Python 3.10+
- crewai パッケージ
- LLM API アクセス
パターン
YAML 設定を使用した基本的なクルー
YAML でエージェントとタスクを定義します(推奨)
使用する場合: 任意の CrewAI プロジェクト
# config/agents.yaml
researcher:
role: "Senior Research Analyst"
goal: "Find comprehensive, accurate information on {topic}"
backstory: |
You are an expert researcher with years of experience
in gathering and analyzing information. You're known
for your thorough and accurate research.
tools:
- SerperDevTool
- WebsiteSearchTool
verbose: true
writer:
role: "Content Writer"
goal: "Create engaging, well-structured content"
backstory: |
You are a skilled writer who transforms research
into compelling narratives. You focus on clarity
and engagement.
verbose: true
# config/tasks.yaml
research_task:
description: |
Research the topic: {topic}
Focus on:
1. Key facts and statistics
2. Recent developments
3. Expert opinions
4. Contrarian viewpoints
Be thorough and cite sources.
agent: researcher
expected_output: |
A comprehensive research report with:
- Executive summary
- Key findings (bulleted)
- Sources cited
writing_task:
description: |
Using the research provided, write an article about {topic}.
Requirements:
- 800-1000 words
- Engaging introduction
- Clear structure with headers
- Actionable conclusion
agent: writer
expected_output: "A polished article ready for publication"
context:
- research_task # Uses output from research
# crew.py
from crewai import Agent, Task, Crew, Process
from crewai.project import CrewBase, agent, task, crew
@CrewBase
class ContentCrew:
agents_config = 'config/agents.yaml'
tasks_config = 'config/tasks.yaml'
@agent
def researcher(self) -> Agent:
return Agent(config=self.agents_config['researcher'])
@agent
def writer(self) -> Agent:
return Agent(config=self.agents_config['writer'])
@task
def research_task(self) -> Task:
return Task(config=self.tasks_config['research_task'])
@task
def writing_task(self) -> Task:
return Task(config
階層的プロセス
マネージャー エージェントがワーカーに委譲します
使用する場合: 調整が必要な複雑なタスク
from crewai import Crew, Process
# Define specialized agents
researcher = Agent(
role="Research Specialist",
goal="Find accurate information",
backstory="Expert researcher..."
)
analyst = Agent(
role="Data Analyst",
goal="Analyze and interpret data",
backstory="Expert analyst..."
)
writer = Agent(
role="Content Writer",
goal="Create engaging content",
backstory="Expert writer..."
)
# Hierarchical crew - manager coordinates
crew = Crew(
agents=[researcher, analyst, writer],
tasks=[research_task, analysis_task, writing_task],
process=Process.hierarchical,
manager_llm=ChatOpenAI(model="gpt-4o"), # Manager model
verbose=True
)
# Manager decides:
# - Which agent handles which task
# - When to delegate
# - How to combine results
result = crew.kickoff()
プランニング機能
実行前に実行計画を生成します
使用する場合: 構造が必要な複雑なワークフロー
from crewai import Crew, Process
# Enable planning
crew = Crew(
agents=[researcher, writer, reviewer],
tasks=[research, write, review],
process=Process.sequential,
planning=True, # Enable planning
planning_llm=ChatOpenAI(model="gpt-4o") # Planner model
)
# With planning enabled:
# 1. CrewAI generates step-by-step plan
# 2. Plan is injected into each task
# 3. Agents see overall structure
# 4. More consistent results
result = crew.kickoff()
# Access the plan
print(crew.plan)
アンチパターン
❌ 曖昧なエージェント ロール
悪い理由: エージェントが専門分野を認識していません。責任が重複しています。タスク委譲が不十分です。
代わりに: 具体的に指定してください:
- 「Developer」ではなく「Senior React Developer」
- 「Analyst」ではなく「Financial Analyst specializing in crypto」 バックストーリーに具体的なスキルを含めます。
❌ 期待される成果物の欠落
悪い理由: エージェントが完了基準を認識していません。出力が一貫性を欠きます。タスクのチェーン接続が難しいです。
代わりに: 常に expected_output を指定してください: expected_output: | A JSON object with:
- summary: string (100 words max)
- key_points: list of strings
- confidence: float 0-1
❌ エージェント数が多すぎる
悪い理由: 調整のオーバーヘッドが発生します。通信が一貫性を欠きます。実行が遅くなります。
代わりに: 3~5 個の明確なロールを持つエージェント。1 つのエージェントが複数の関連タスクを処理できます。簡単なアクション用にはエージェントの代わりにツールを使用してください。
制限事項
- Python のみ
- 構造化されたワークフローに最適
- シンプルなケースでは冗長になる可能性あり
- フロー機能は比較的新しい
関連スキル
以下と組み合わせて機能します: langgraph、autonomous-agents、langfuse、structured-output
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- davila7
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/davila7/claude-code-templates / ライセンス: MIT
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。