跳转到主要内容
自 0.140.0 版本发布以来,CrewAI AMP 开始迁移其登录提供商。因此,通过 CLI 的认证流程已更新。使用 Google 登录的用户,或在 2025 年 7 月 3 日之后创建账户的用户将无法使用旧版 crewai 库登录。

概述

CrewAI CLI 提供了一组与 CrewAI 交互的命令,允许您创建、训练、运行和管理 crew 和 flow。

安装

要使用 CrewAI CLI,请确保您已安装 CrewAI
终端
pip install crewai

基本用法

CrewAI CLI 命令的基本结构是
终端
crewai [COMMAND] [OPTIONS] [ARGUMENTS]

可用命令

1. Create

创建一个新的 crew 或 flow。
终端
crewai create [OPTIONS] TYPE NAME
  • TYPE:在“crew”或“flow”之间选择
  • NAME:crew 或 flow 的名称
示例
终端
crewai create crew my_new_crew
crewai create flow my_new_flow

2. Version

显示已安装的 CrewAI 版本。
终端
crewai version [OPTIONS]
  • --tools:(可选)显示已安装的 CrewAI 工具版本
示例
终端
crewai version
crewai version --tools

3. Train

对 crew 进行指定次数的迭代训练。
终端
crewai train [OPTIONS]
  • -n, --n_iterations INTEGER:训练 crew 的迭代次数(默认:5)
  • -f, --filename TEXT:用于训练的自定义文件路径(默认:“trained_agents_data.pkl”)
示例
终端
crewai train -n 10 -f my_training_data.pkl

4. Replay

从特定任务重播 crew 执行。
终端
crewai replay [OPTIONS]
  • -t, --task_id TEXT:从此任务 ID 重播 crew,包括所有后续任务
示例
终端
crewai replay -t task_123456

5. Log-tasks-outputs

检索您最近的 crew.kickoff() 任务输出。
终端
crewai log-tasks-outputs

6. Reset-memories

重置 crew 记忆(长期、短期、实体、最近的 crew_kickoff_outputs)。
终端
crewai reset-memories [OPTIONS]
  • -l, --long:重置长期记忆
  • -s, --short:重置短期记忆
  • -e, --entities:重置实体记忆
  • -k, --kickoff-outputs:重置最近的 KICKOFF 任务输出
  • -kn, --knowledge:重置知识存储
  • -akn, --agent-knowledge:重置智能体知识存储
  • -a, --all:重置所有记忆
示例
终端
crewai reset-memories --long --short
crewai reset-memories --all

7. Test

测试 crew 并评估结果。
终端
crewai test [OPTIONS]
  • -n, --n_iterations INTEGER:测试 crew 的迭代次数(默认:3)
  • -m, --model TEXT:在 Crew 上运行测试的 LLM 模型(默认:“gpt-4o-mini”)
示例
终端
crewai test -n 5 -m gpt-3.5-turbo

8. Run

运行 crew 或 flow。
终端
crewai run
从版本 0.103.0 开始,crewai run 命令可用于运行标准 crew 和 flow。对于 flow,它会自动从 pyproject.toml 检测类型并运行相应的命令。现在推荐使用此方式运行 crew 和 flow。
请确保在设置了 CrewAI 项目的目录中运行这些命令。某些命令可能需要在您的项目结构中进行额外的配置或设置。

9. Chat

0.98.0 版本开始,当您运行 crewai chat 命令时,您将与您的 crew 开始一个交互式会话。AI 助手将通过询问执行 crew 所需的输入来引导您。一旦提供了所有输入,crew 将执行其任务。 收到结果后,您可以继续与助手互动以获取进一步的指示或问题。
终端
crewai chat
确保您从 CrewAI 项目的根目录执行这些命令。
重要提示:在您的 crew.py 文件中设置 chat_llm 属性以启用此命令。
@crew
def crew(self) -> Crew:
    return Crew(
        agents=self.agents,
        tasks=self.tasks,
        process=Process.sequential,
        verbose=True,
        chat_llm="gpt-4o",  # LLM for chat orchestration
    )

10. Deploy

将 crew 或 flow 部署到 CrewAI AMP
  • 身份验证:您需要进行身份验证才能部署到 CrewAI AMP。您可以使用以下命令登录或创建账户
    终端
    crewai login
    
  • 创建部署:一旦您通过身份验证,就可以从本地项目的根目录为您的 crew 或 flow 创建部署。
    终端
    crewai deploy create
    
    • 读取您的本地项目配置。
    • 提示您确认本地找到的环境变量(如 OPENAI_API_KEY, SERPER_API_KEY)。这些将安全地存储在企业平台上的部署中。在运行此命令之前,请确保您的敏感密钥已在本地正确配置(例如,在 .env 文件中)。

11. 组织管理

管理您的 CrewAI AMP 组织。
终端
crewai org [COMMAND] [OPTIONS]

命令

  • list:列出您所属的所有组织
终端
crewai org list
  • current:显示您当前活动的组织
终端
crewai org current
  • switch:切换到特定组织
终端
crewai org switch <organization_id>
您必须通过 CrewAI AMP 的身份验证才能使用这些组织管理命令。
  • 创建部署(续)
    • 将部署链接到相应的远程 GitHub 仓库(通常会自动检测)。
  • 部署 Crew:一旦您通过身份验证,就可以将您的 crew 或 flow 部署到 CrewAI AMP。
    终端
    crewai deploy push
    
    • 在 CrewAI AMP 平台上启动部署过程。
    • 成功启动后,它将输出 `Deployment created successfully!` 消息,以及部署名称和一个唯一的部署 ID (UUID)。
  • 部署状态:您可以使用以下命令检查部署状态
    终端
    crewai deploy status
    
    这将获取您最近一次部署尝试的最新部署状态(例如,Building Images for Crew, Deploy Enqueued, Online)。
  • 部署日志:您可以使用以下命令检查部署日志
    终端
    crewai deploy logs
    
    这将把部署日志流式传输到您的终端。
  • 列出部署:您可以使用以下命令列出所有部署
    终端
    crewai deploy list
    
    这将列出您的所有部署。
  • 删除部署:您可以使用以下命令删除部署
    终端
    crewai deploy remove
    
    这将从 CrewAI AMP 平台删除该部署。
  • 帮助命令:您可以使用以下命令获取 CLI 的帮助信息
    终端
    crewai deploy --help
    
    这将显示 CrewAI Deploy CLI 的帮助消息。
观看此视频教程,了解如何使用 CLI 将您的 crew 部署到 CrewAI AMP 的分步演示。

11. Login

使用安全的设备代码流程向 CrewAI AMP进行身份验证(无需输入电子邮件)。
终端
crewai login
会发生什么
  • 您的终端会显示一个验证 URL 和一个短代码
  • 您的浏览器会打开该验证 URL
  • 输入/确认代码以完成身份验证
注意
  • OAuth2 提供商和域通过 crewai config 配置(默认使用 login.crewai.com
  • 成功登录后,CLI 还会自动尝试向工具库进行身份验证
  • 如果您重置了配置,请再次运行 crewai login 以重新进行身份验证

12. API 密钥

当运行 crewai create crew 命令时,CLI 会显示一个可用的 LLM 提供商列表供您选择,然后为您选择的提供商选择模型。 一旦您选择了 LLM 提供商和模型,系统将提示您输入 API 密钥。

可用的 LLM 提供商

以下是 CLI 建议的最受欢迎的 LLM 提供商列表
  • OpenAI
  • Groq
  • Anthropic
  • Google Gemini
  • SambaNova
当您选择一个提供商时,CLI 将会显示该提供商可用的模型,并提示您输入 API 密钥。

其他选项

如果您选择“other”,您将能够从 LiteLLM 支持的提供商列表中进行选择。 当您选择一个提供商时,CLI 会提示您输入密钥名称和 API 密钥。 请参阅以下链接了解每个提供商的密钥名称:

13. 配置管理

管理 CrewAI 的 CLI 配置设置。
终端
crewai config [COMMAND] [OPTIONS]

命令

  • list:显示所有 CLI 配置参数
终端
crewai config list
  • set:设置一个 CLI 配置参数
终端
crewai config set <key> <value>
  • reset:将所有 CLI 配置参数重置为默认值
终端
crewai config reset

可用配置参数

  • enterprise_base_url:CrewAI AMP 实例的基础 URL
  • oauth2_provider:用于身份验证的 OAuth2 提供商(例如,workos, okta, auth0)
  • oauth2_audience:OAuth2 受众值,通常用于标识目标 API 或资源
  • oauth2_client_id:由提供商颁发的 OAuth2 客户端 ID,用于身份验证请求
  • oauth2_domain:OAuth2 提供商的域(例如,your-org.auth0.com),用于颁发令牌

示例

显示当前配置
终端
crewai config list
示例输出
设置描述
enterprise_base_urlhttps://app.crewai.comCrewAI AMP 实例的基础 URL
org_name未设置当前活动组织的名称
org_uuid未设置当前活动组织的 UUID
oauth2_providerworkosOAuth2 提供商(例如,workos, okta, auth0)
oauth2_audienceclient_01YYY标识目标 API/资源的受众
oauth2_client_idclient_01XXX由提供商颁发的 OAuth2 客户端 ID
oauth2_domainlogin.crewai.com提供商域(例如,your-org.auth0.com)
设置企业基础 URL
终端
crewai config set enterprise_base_url https://my-enterprise.crewai.com
设置 OAuth2 提供商
终端
crewai config set oauth2_provider auth0
设置 OAuth2 域
终端
crewai config set oauth2_domain my-company.auth0.com
将所有配置重置为默认值
终端
crewai config reset
重置配置后,重新运行 crewai login 以再次进行身份验证。
在向您的项目添加包时,CrewAI CLI 会自动处理对工具库的身份验证。只需在任何 uv 命令前加上 crewai 即可使用。例如 crewai uv add requests。更多信息,请参阅工具库文档。
配置设置存储在 ~/.config/crewai/settings.json 中。某些设置如组织名称和 UUID 是只读的,通过身份验证和组织命令进行管理。工具库相关的设置是隐藏的,用户无法直接设置。