crewai-cli 1.15.2a2.dev20260702__tar.gz → 1.15.2a2.dev20260703__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/PKG-INFO +2 -2
  2. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/pyproject.toml +1 -1
  3. crewai_cli-1.15.2a2.dev20260703/src/crewai_cli/__init__.py +1 -0
  4. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/declarative_flow/AGENTS.md +32 -11
  5. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_plus_api.py +13 -23
  6. crewai_cli-1.15.2a2.dev20260702/src/crewai_cli/__init__.py +0 -1
  7. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/.gitignore +0 -0
  8. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/README.md +0 -0
  9. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/add_crew_to_flow.py +0 -0
  10. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/__init__.py +0 -0
  11. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/constants.py +0 -0
  12. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/main.py +0 -0
  13. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/providers/__init__.py +0 -0
  14. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/providers/auth0.py +0 -0
  15. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/providers/base_provider.py +0 -0
  16. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/providers/entra_id.py +0 -0
  17. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/providers/keycloak.py +0 -0
  18. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/providers/okta.py +0 -0
  19. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/providers/workos.py +0 -0
  20. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/token.py +0 -0
  21. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/authentication/utils.py +0 -0
  22. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/checkpoint_cli.py +0 -0
  23. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/checkpoint_tui.py +0 -0
  24. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/cli.py +0 -0
  25. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/command.py +0 -0
  26. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/config.py +0 -0
  27. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/constants.py +0 -0
  28. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/create_crew.py +0 -0
  29. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/create_flow.py +0 -0
  30. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/create_json_crew.py +0 -0
  31. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/crew_chat.py +0 -0
  32. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/crew_run_tui.py +0 -0
  33. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/deploy/__init__.py +0 -0
  34. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/deploy/archive.py +0 -0
  35. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/deploy/main.py +0 -0
  36. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/deploy/validate.py +0 -0
  37. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/enterprise/__init__.py +0 -0
  38. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/enterprise/main.py +0 -0
  39. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/evaluate_crew.py +0 -0
  40. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/experimental/__init__.py +0 -0
  41. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/experimental/skills/__init__.py +0 -0
  42. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/experimental/skills/main.py +0 -0
  43. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/git.py +0 -0
  44. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/install_crew.py +0 -0
  45. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/kickoff_flow.py +0 -0
  46. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/memory_tui.py +0 -0
  47. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/organization/__init__.py +0 -0
  48. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/organization/main.py +0 -0
  49. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/plot_flow.py +0 -0
  50. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/plus_api.py +0 -0
  51. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/provider.py +0 -0
  52. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/py.typed +0 -0
  53. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/remote_template/__init__.py +0 -0
  54. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/remote_template/main.py +0 -0
  55. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/replay_from_task.py +0 -0
  56. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/reset_memories_command.py +0 -0
  57. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/run_crew.py +0 -0
  58. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/run_declarative_flow.py +0 -0
  59. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/settings/__init__.py +0 -0
  60. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/settings/main.py +0 -0
  61. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/shared/__init__.py +0 -0
  62. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/shared/token_manager.py +0 -0
  63. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/task_outputs.py +0 -0
  64. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/AGENTS.md +0 -0
  65. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/__init__.py +0 -0
  66. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/.gitignore +0 -0
  67. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/README.md +0 -0
  68. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/__init__.py +0 -0
  69. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/config/agents.yaml +0 -0
  70. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/config/tasks.yaml +0 -0
  71. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/crew.py +0 -0
  72. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/knowledge/user_preference.txt +0 -0
  73. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/main.py +0 -0
  74. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/pyproject.toml +0 -0
  75. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/skills/.gitkeep +0 -0
  76. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/tools/__init__.py +0 -0
  77. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/crew/tools/custom_tool.py +0 -0
  78. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/declarative_flow/.gitignore +0 -0
  79. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/declarative_flow/README.md +0 -0
  80. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/declarative_flow/flow.yaml +0 -0
  81. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/declarative_flow/pyproject.toml +0 -0
  82. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/.gitignore +0 -0
  83. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/README.md +0 -0
  84. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/__init__.py +0 -0
  85. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/crews/content_crew/config/agents.yaml +0 -0
  86. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/crews/content_crew/config/tasks.yaml +0 -0
  87. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/crews/content_crew/content_crew.py +0 -0
  88. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/main.py +0 -0
  89. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/pyproject.toml +0 -0
  90. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/skills/.gitkeep +0 -0
  91. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/tools/__init__.py +0 -0
  92. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/flow/tools/custom_tool.py +0 -0
  93. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/json_crew/.gitignore +0 -0
  94. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/json_crew/README.md +0 -0
  95. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/json_crew/agent.jsonc +0 -0
  96. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/json_crew/agent_settings.jsonc +0 -0
  97. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/json_crew/crew.jsonc +0 -0
  98. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/json_crew/knowledge/user_preference.txt +0 -0
  99. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/json_crew/pyproject.toml +0 -0
  100. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/json_crew/task.jsonc +0 -0
  101. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/tool/.gitignore +0 -0
  102. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/tool/README.md +0 -0
  103. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/tool/pyproject.toml +0 -0
  104. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/tool/src/{{folder_name}}/__init__.py +0 -0
  105. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/templates/tool/src/{{folder_name}}/tool.py +0 -0
  106. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/tools/__init__.py +0 -0
  107. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/tools/main.py +0 -0
  108. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/train_crew.py +0 -0
  109. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/triggers/__init__.py +0 -0
  110. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/triggers/main.py +0 -0
  111. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/tui_picker.py +0 -0
  112. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/update_crew.py +0 -0
  113. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/user_data.py +0 -0
  114. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/utils.py +0 -0
  115. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/src/crewai_cli/version.py +0 -0
  116. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/__init__.py +0 -0
  117. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/authentication/__init__.py +0 -0
  118. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/authentication/providers/__init__.py +0 -0
  119. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/authentication/providers/test_auth0.py +0 -0
  120. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/authentication/providers/test_entra_id.py +0 -0
  121. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/authentication/providers/test_keycloak.py +0 -0
  122. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/authentication/providers/test_okta.py +0 -0
  123. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/authentication/providers/test_workos.py +0 -0
  124. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/authentication/test_auth_main.py +0 -0
  125. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/authentication/test_utils.py +0 -0
  126. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/deploy/__init__.py +0 -0
  127. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/deploy/test_archive.py +0 -0
  128. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/deploy/test_deploy_main.py +0 -0
  129. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/deploy/test_validate.py +0 -0
  130. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/enterprise/__init__.py +0 -0
  131. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/enterprise/test_main.py +0 -0
  132. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/experimental/__init__.py +0 -0
  133. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/experimental/skills/__init__.py +0 -0
  134. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/experimental/skills/test_main.py +0 -0
  135. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/organization/__init__.py +0 -0
  136. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/organization/test_main.py +0 -0
  137. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/skills/__init__.py +0 -0
  138. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/skills/test_safe_extract.py +0 -0
  139. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_cli.py +0 -0
  140. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_click_compatibility.py +0 -0
  141. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_config.py +0 -0
  142. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_constants.py +0 -0
  143. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_create_crew.py +0 -0
  144. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_create_flow.py +0 -0
  145. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_crew_run_tui.py +0 -0
  146. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_crew_test.py +0 -0
  147. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_flow_commands.py +0 -0
  148. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_git.py +0 -0
  149. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_install_crew.py +0 -0
  150. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_kickoff_flow.py +0 -0
  151. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_run_crew.py +0 -0
  152. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_run_declarative_flow.py +0 -0
  153. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_settings_command.py +0 -0
  154. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_token_manager.py +0 -0
  155. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_train_crew.py +0 -0
  156. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_utils.py +0 -0
  157. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/test_version.py +0 -0
  158. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/tools/__init__.py +0 -0
  159. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/tools/test_main.py +0 -0
  160. {crewai_cli-1.15.2a2.dev20260702 → crewai_cli-1.15.2a2.dev20260703}/tests/triggers/test_main.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crewai-cli
3
- Version: 1.15.2a2.dev20260702
3
+ Version: 1.15.2a2.dev20260703
4
4
  Summary: CLI for CrewAI — scaffold, run, deploy and manage AI agent crews.
5
5
  Project-URL: Homepage, https://crewai.com
6
6
  Project-URL: Documentation, https://docs.crewai.com
@@ -10,7 +10,7 @@ Requires-Python: <3.14,>=3.10
10
10
  Requires-Dist: appdirs~=1.4.4
11
11
  Requires-Dist: certifi
12
12
  Requires-Dist: click<9,>=8.1.7
13
- Requires-Dist: crewai-core==1.15.2a2.dev20260702
13
+ Requires-Dist: crewai-core==1.15.2a2.dev20260703
14
14
  Requires-Dist: cryptography>=42.0
15
15
  Requires-Dist: httpx~=0.28.1
16
16
  Requires-Dist: packaging>=23.0
@@ -8,7 +8,7 @@ authors = [
8
8
  ]
9
9
  requires-python = ">=3.10, <3.14"
10
10
  dependencies = [
11
- "crewai-core==1.15.2a2.dev20260702",
11
+ "crewai-core==1.15.2a2.dev20260703",
12
12
  "click>=8.1.7,<9",
13
13
  "pydantic>=2.11.9,<2.13",
14
14
  "pydantic-settings~=2.10.1",
@@ -0,0 +1 @@
1
+ __version__ = "1.15.2a2.dev20260703"
@@ -57,7 +57,33 @@ Use agents and crews for larger work or side effects.
57
57
  Use these expression forms correctly:
58
58
 
59
59
  - Raw CEL: use in `expr`. Do not wrap raw CEL in `${...}`.
60
- - Action mappings: wrap the whole string in `${...}`.
60
+ - Use `${...}` inside action mapping strings to read Flow data with CEL. Example value: `Ticket: ${state.ticket_id}`.
61
+ - Use `state` for input data. Use `outputs.step_name` for a completed method result.
62
+ - If a value is only one `${...}` expression, the result keeps its type. Use this for numbers, booleans, objects, and lists.
63
+ - If the string has other text, the final value is text. Non-text values become JSON. `null` becomes empty text.
64
+ - Use `text(root, "path", "default")` for values that may be missing or null. The default is optional and is `""`.
65
+
66
+ Expression examples:
67
+
68
+ Mix text and Flow data:
69
+
70
+ ```yaml
71
+ query: "News about ${state.topic}"
72
+ ```
73
+
74
+ Keep a list or number type:
75
+
76
+ ```yaml
77
+ domains: "${state.domains}"
78
+ limit: "${state.limit}"
79
+ ```
80
+
81
+ Use a default for missing text:
82
+
83
+ ```yaml
84
+ input: "Ticket ${text(state, \"ticket.id\", \"unknown\")}"
85
+ ```
86
+
61
87
  - Crew text: use `{name}` placeholders from crew inputs. Example: `Research {topic}`.
62
88
  - Crew inputs become prompt text only when agent or task text references matching `{name}` placeholders.
63
89
  - Passing an input that is not referenced by any `{name}` placeholder does not ground the crew. If the crew needs a field, put that placeholder in an agent `goal`, task `description`, or task `expected_output`.
@@ -69,13 +95,8 @@ Available CEL variables:
69
95
 
70
96
  Dynamic value rules:
71
97
 
72
- - A string is dynamic only when the whole trimmed string is wrapped in `${...}`.
73
- - `Ticket: ${state.ticket}` stays literal. For computed strings, build the string inside the CEL expression.
74
- - For prompt text, use CrewAI's CEL helper `text(root, "path", "default")` to safely read missing or null values as strings. The default argument is optional and defaults to `""`.
75
- - When an agent needs multiple fields, build one single-line CEL string with labels and separators. Example: `input: "${'Ticket ID: ' + text(state, 'ticket_id') + '; Message: ' + text(state, 'message')}"`.
76
- - In YAML, do not put `\n` escapes inside `${...}` strings. Prefer plain `${state.field}` values or the single-line labeled pattern above.
77
- - `${...}` keeps the value type. It does not always make text.
78
- - Crew action-level `inputs` are the actual Crew kickoff inputs. Use CEL-wrapped values there for runtime data from `state` or `outputs`.
98
+ - When an agent needs multiple fields, write one text value with labels and separators. Example value: `Ticket ID: ${state.ticket_id}; Message: ${state.message}`.
99
+ - Crew action-level `inputs` are the actual Crew kickoff inputs. Use `${...}` values there for runtime data from `state` or `outputs`.
79
100
  - Crew action-level `inputs` alone are not grounding. Include placeholders for the facts the model must use.
80
101
  - Crew outputs are objects. Use `${outputs.research_brief.raw}` for text.
81
102
  - For structured crew output, use fields like `${outputs.research_brief.json_dict.field}` or `${outputs.research_brief.pydantic.field}`.
@@ -162,7 +183,7 @@ methods:
162
183
  role: Follow-up router
163
184
  goal: 'Return exactly one bare value: followup or done. Do not include explanation.'
164
185
  backstory: Skilled at routing reviewed research briefs.
165
- input: "${'Reviewed research: ' + text(outputs, 'research_brief.raw')}"
186
+ input: "Reviewed research: ${outputs.research_brief.raw}"
166
187
  write_followup:
167
188
  listen: followup
168
189
  do:
@@ -225,7 +246,7 @@ Shape:
225
246
  Fields:
226
247
  - `call` (required): must be `crew`. Action discriminator. Use crew to run an inline Crew definition. Example: `crew`
227
248
  - `with` (required): inline crew definition. Inline Crew definition to load and execute for this action. Example: `{"agents": {"researcher": {"backstory": "Knows the domain.", "goal": "Research {topic}", "role": "Researcher"}}, "name": "inline_research", "tasks": [{"agent": "researcher", "description": "Research {topic}", "expected_output": "Findings about {topic}", "name": "research_task"}]}`
228
- - `inputs` (optional): map of string to expression data | null; default `null`. Actual kickoff inputs passed to the Crew. Use CEL-wrapped values here, for example `${state.topic}` or `${outputs.research_brief}`. The evaluated values are available to crew agent and task interpolation as `{name}` placeholders; reference each input the crew needs in agent or task text. Example: `{"topic": "${state.topic}"}`
249
+ - `inputs` (optional): map of string to expression data | null; default `null`. Actual kickoff inputs passed to the Crew. Use `${...}` inside action mapping strings to read Flow data with CEL. Example value: `Ticket: ${state.ticket_id}`. Use `state` for input data. Use `outputs.step_name` for a completed method result. If a value is only one `${...}` expression, the result keeps its type. Use this for numbers, booleans, objects, and lists. If the string has other text, the final value is text. Non-text values become JSON. `null` becomes empty text. Use `text(root, "path", "default")` for values that may be missing or null. The default is optional and is `""`. The evaluated values are available to crew agent and task interpolation as `{name}` placeholders; reference each input the crew needs in agent or task text. Example: `{"topic": "${state.topic}"}`
229
250
 
230
251
  #### Crew Definition (`methods.<name>.do[call=crew].with`)
231
252
 
@@ -290,7 +311,7 @@ Fields:
290
311
  - `tools` (optional): list[string | map of string to any] | null; default `null`. Tool refs or serialized tool definitions available to this agent. String refs can use CrewAI tool names, `custom:<name>`, or fully qualified `module:Class` references. Example: `["crewai_tools:SerperDevTool", "custom:file_read"]`
291
312
  - `apps` (optional): list[string] | null; default `null`. Platform apps available to this agent. Can contain app names such as `gmail` or app/action refs such as `gmail/send_email`. Example: `["gmail", "slack/send_message"]`
292
313
  - `mcps` (optional): list[string | map of string to any] | null; default `null`. MCP server refs or serialized MCP server configs available to this agent. String refs can use HTTPS URLs, connected MCP integration slugs, or refs with a `#tool_name` suffix for specific tools. Example: `["https://api.weather.com/mcp#get_current_weather", "snowflake", "stripe#list_invoices", {"cache_tools_list": true, "headers": {"Authorization": "Bearer your_token"}, "streamable": true, "url": "https://api.example.com/mcp"}]`
293
- - `input` (required): string. Input passed to the individual agent kickoff outside of a crew. Use a single string value, often a dynamic `${...}` expression. When an agent needs multiple fields, build one single-line CEL string with labels and separators, using `text(root, 'path')` for values that may be missing or null, for example `${'Ticket ID: ' + text(state, 'ticket_id') + '; Message: ' + text(state, 'message')}`. In YAML, avoid `\n` escapes inside `${...}` strings. Example: `${state.ticket.body}`
314
+ - `input` (required): string. Input passed to the individual agent kickoff outside of a crew. Use one string. Use `${...}` inside action mapping strings to read Flow data with CEL. Example value: `Ticket: ${state.ticket_id}`. Use `state` for input data. Use `outputs.step_name` for a completed method result. If a value is only one `${...}` expression, the result keeps its type. Use this for numbers, booleans, objects, and lists. If the string has other text, the final value is text. Non-text values become JSON. `null` becomes empty text. Use `text(root, "path", "default")` for values that may be missing or null. The default is optional and is `""`. When an agent needs multiple fields, write one string with labels and separators, for example `Ticket ID: ${state.ticket_id}; Message: ${state.message}`. Example: `${state.ticket.body}`
294
315
 
295
316
  #### LLM Definition
296
317
 
@@ -1,8 +1,6 @@
1
1
  import os
2
2
  import unittest
3
- from unittest.mock import ANY, AsyncMock, MagicMock, patch
4
-
5
- import pytest
3
+ from unittest.mock import ANY, MagicMock, patch
6
4
 
7
5
  from crewai_cli.plus_api import PlusAPI
8
6
 
@@ -343,28 +341,23 @@ class TestPlusAPI(unittest.TestCase):
343
341
  )
344
342
 
345
343
 
346
- @pytest.mark.asyncio
347
- @patch("httpx.AsyncClient")
348
- async def test_get_agent(mock_async_client_class):
344
+ @patch("crewai_core.plus_api.PlusAPI._make_request")
345
+ def test_get_agent(mock_make_request):
349
346
  api = PlusAPI("test_api_key")
350
347
  mock_response = MagicMock()
351
- mock_client_instance = AsyncMock()
352
- mock_client_instance.get.return_value = mock_response
353
- mock_async_client_class.return_value.__aenter__.return_value = mock_client_instance
348
+ mock_make_request.return_value = mock_response
354
349
 
355
- response = await api.get_agent("test_agent_handle")
350
+ response = api.get_agent("test_agent_handle")
356
351
 
357
- mock_client_instance.get.assert_called_once_with(
358
- f"{api.base_url}/crewai_plus/api/v1/agents/test_agent_handle",
359
- headers=api.headers,
352
+ mock_make_request.assert_called_once_with(
353
+ "GET", "/crewai_plus/api/v1/agents/test_agent_handle"
360
354
  )
361
355
  assert response == mock_response
362
356
 
363
357
 
364
- @pytest.mark.asyncio
365
- @patch("httpx.AsyncClient")
358
+ @patch("crewai_core.plus_api.PlusAPI._make_request")
366
359
  @patch("crewai_core.plus_api.Settings")
367
- async def test_get_agent_with_org_uuid(mock_settings_class, mock_async_client_class):
360
+ def test_get_agent_with_org_uuid(mock_settings_class, mock_make_request):
368
361
  org_uuid = "test-org-uuid"
369
362
  mock_settings = MagicMock()
370
363
  mock_settings.org_uuid = org_uuid
@@ -374,15 +367,12 @@ async def test_get_agent_with_org_uuid(mock_settings_class, mock_async_client_cl
374
367
  api = PlusAPI("test_api_key")
375
368
 
376
369
  mock_response = MagicMock()
377
- mock_client_instance = AsyncMock()
378
- mock_client_instance.get.return_value = mock_response
379
- mock_async_client_class.return_value.__aenter__.return_value = mock_client_instance
370
+ mock_make_request.return_value = mock_response
380
371
 
381
- response = await api.get_agent("test_agent_handle")
372
+ response = api.get_agent("test_agent_handle")
382
373
 
383
- mock_client_instance.get.assert_called_once_with(
384
- f"{api.base_url}/crewai_plus/api/v1/agents/test_agent_handle",
385
- headers=api.headers,
374
+ mock_make_request.assert_called_once_with(
375
+ "GET", "/crewai_plus/api/v1/agents/test_agent_handle"
386
376
  )
387
377
  assert "X-Crewai-Organization-Id" in api.headers
388
378
  assert api.headers["X-Crewai-Organization-Id"] == org_uuid
@@ -1 +0,0 @@
1
- __version__ = "1.15.2a2.dev20260702"