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

Overview

CrewAI CLI 提供了一系列与 CrewAI 交互的命令,允许您创建、训练、运行和管理智能体团队与流程。

Installation

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

Basic Usage

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

可用命令

1. 创建

创建新的智能体团队或流程。
终端
crewai create [OPTIONS] TYPE NAME
  • TYPE: 在“crew”或“flow”之间选择
  • NAME: 团队或流程的名称
示例:
终端
crewai create crew my_new_crew
crewai create flow my_new_flow

2. 版本

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

3. 训练

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

4. 重播

从特定任务重新执行智能体团队。
终端
crewai replay [OPTIONS]
  • -t, --task_id TEXT: 从这个任务ID开始重放智能体任务,包括所有后续任务
示例:
终端
crewai replay -t task_123456

5. 记录任务输出

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

6. 重置记忆

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

7. 测试

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

8. 运行

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

9. 聊天

从版本 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. 部署

将智能体团队或流程部署到 CrewAI AOP
  • 身份验证:您需要进行身份验证才能部署到 CrewAI AOP。 您可以使用以下方式登录或创建账户:
    终端
    crewai login
    
  • 创建部署: 一旦完成身份验证,您就可以从本地项目的根目录为您的智能体团队或流程创建一个部署。
    终端
    crewai deploy create
    
    • 读取您的本地项目配置。
    • 提示您确认本地找到的环境变量(如 OPENAI_API_KEYSERPER_API_KEY)。这些将安全地存储在Enterprise平台上的部署中。在运行此操作之前,请确保您的敏感密钥已在本地正确配置(例如,在 .env 文件中)。

11. 组织管理

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

命令:

  • list: 列出您所属的所有组织
终端
crewai org list
  • current: 显示您当前活跃的组织
终端
crewai org current
  • switch: 切换到特定组织
终端
crewai org switch <organization_id>
您必须通过CrewAI AOP认证才能使用这些组织管理命令。
  • 创建部署(续):
    • 将部署链接到对应的远程 GitHub 仓库(通常会自动检测到这一点)。
  • 部署团队: 认证成功后,您可以将您的团队或流程部署到 CrewAI AOP。
    终端
    crewai deploy push
    
    • 在CrewAI AOP平台上启动部署流程。
    • 成功启动后,它将输出“部署创建成功!”消息,同时显示部署名称和唯一的部署ID(UUID)。
  • 部署状态: 您可以通过以下方式检查部署状态:
    终端
    crewai deploy status
    
    此操作获取您最近一次部署尝试的最新部署状态(例如,Building Images for CrewDeploy EnqueuedOnline)。
  • 部署日志:您可以通过以下方式查看部署的日志:
    终端
    crewai deploy logs
    
    这将部署日志流式传输到您的终端。
  • 列出部署: 您可以通过以下方式列出所有部署:
    终端
    crewai deploy list
    
    这里列出了您的所有部署。
  • 删除部署: 您可以通过以下方式删除部署:
    终端
    crewai deploy remove
    
    这将从CrewAI AOP平台删除部署。
  • 帮助命令: 您可以通过以下方式获取CLI帮助:
    终端
    crewai deploy --help
    
    此处显示CrewAI部署命令行界面的帮助信息。
观看此视频教程,了解如何使用CLI将您的智能体部署到CrewAI AOP的逐步演示。

11. 登录

使用安全设备代码流程(无需输入电子邮件)通过CrewAI AOP进行身份验证。
终端
crewai login
发生的情况:
  • 您的终端中会显示一个验证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 密钥。

其他选项

如果您选择“其他”,您将能够从 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 AOP 实例的基础 URL
  • oauth2_provider: 用于身份验证的 OAuth2 提供商(例如:workos、okta、auth0)
  • oauth2_audience: OAuth2 受众值,通常用于标识目标 API 或资源
  • oauth2_client_id: 由提供商颁发的OAuth2客户端ID,用于身份验证请求
  • oauth2_domain: 用于颁发令牌的 OAuth2 提供商的域名(例如,your-org.auth0.com)

Examples

显示当前配置:
终端
crewai config list
示例输出:
设置描述
enterprise_base_urlhttps://app.crewai.comCrewAI AOP 实例的基础 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 以再次进行身份验证。

14. 追踪管理

管理您的Crew和Flow执行的追踪收集偏好设置。
终端
crewai traces [COMMAND]

命令:

  • enable: 为crew/flow执行启用追踪收集
终端
crewai traces enable
  • disable: 禁用对crew/flow执行的跟踪收集
终端
crewai traces disable
  • status: 显示当前追踪收集状态
终端
crewai traces status

追踪工作原理

追踪收集通过按优先级顺序检查三个设置来控制:
  1. 代码中的显式标志(最高优先级 - 可启用或禁用):
    crew = Crew(agents=[...], tasks=[...], tracing=True)   # Always enable
    crew = Crew(agents=[...], tasks=[...], tracing=False)  # Always disable
    crew = Crew(agents=[...], tasks=[...])                 # Check lower priorities (default)
    
    • tracing=True始终启用 追踪(覆盖所有其他设置)
    • tracing=False始终禁用 追踪(覆盖所有其他设置)
    • tracing=None 或省略将检查较低优先级的设置
  2. 环境变量(第二优先级):
    CREWAI_TRACING_ENABLED=true
    
    • 仅在代码中未将 tracing 显式设置为 TrueFalse 时检查
    • 设置为 true1 以启用追踪
  3. 用户偏好(最低优先级):
    终端
    crewai traces enable
    
    • 仅当代码中未设置 tracingCREWAI_TRACING_ENABLED 未设置为 true 时检查
    • 运行 crewai traces enable 本身就足以启用追踪功能
要启用追踪,请使用以下任一方法:
  • 在你的Crew/Flow代码中设置tracing=True,或者
  • CREWAI_TRACING_ENABLED=true 添加到您的 .env 文件中,或者
  • 运行 crewai traces enable
要禁用追踪,请使用以下任一方法:
  • 在你的Crew/Flow代码中设置tracing=False(这会覆盖所有其他设置),或者
  • 移除或将环境变量 CREWAI_TRACING_ENABLED 设置为 false,或者
  • 运行 crewai traces disable
较高优先级的设置会覆盖较低优先级的设置。
有关追踪的更多信息,请参阅追踪文档
CrewAI CLI 在向您的项目添加包时会自动处理工具仓库的认证。只需在任何 uv 命令前添加 crewai 即可使用。例如:crewai uv add requests。更多信息,请参阅 工具仓库 文档。
配置设置存储在 ~/.config/crewai/settings.json 中。某些设置(如组织名称和UUID)是只读的,通过身份验证和组织命令进行管理。与工具仓库相关的设置是隐藏的,用户无法直接设置。