feat: bump versions to 1.14.5a5

This commit is contained in:
Greyson LaLonde
2026-05-13 02:54:13 +08:00
committed by GitHub
parent 3322634625
commit 2034f2140a
11 changed files with 300 additions and 25 deletions

View File

@@ -8,7 +8,7 @@ authors = [
]
requires-python = ">=3.10, <3.14"
dependencies = [
"crewai-core==1.14.5a4",
"crewai-core==1.14.5a5",
"click~=8.1.7",
"pydantic>=2.11.9,<2.13",
"pydantic-settings~=2.10.1",

View File

@@ -1 +1 @@
__version__ = "1.14.5a4"
__version__ = "1.14.5a5"

View File

@@ -1 +1 @@
__version__ = "1.14.5a4"
__version__ = "1.14.5a5"

View File

@@ -152,4 +152,4 @@ __all__ = [
"wrap_file_source",
]
__version__ = "1.14.5a4"
__version__ = "1.14.5a5"

View File

@@ -10,7 +10,7 @@ requires-python = ">=3.10, <3.14"
dependencies = [
"pytube~=15.0.0",
"requests>=2.33.0,<3",
"crewai==1.14.5a4",
"crewai==1.14.5a5",
"tiktoken>=0.8.0,<0.13",
"beautifulsoup4~=4.13.4",
"python-docx~=1.2.0",

View File

@@ -330,4 +330,4 @@ __all__ = [
"ZapierActionTools",
]
__version__ = "1.14.5a4"
__version__ = "1.14.5a5"

View File

@@ -5,8 +5,8 @@ from builtins import type as type_
import logging
import posixpath
import shlex
import uuid
from typing import Any, Literal
import uuid
from pydantic import BaseModel, Field, model_validator
@@ -33,7 +33,63 @@ FileAction = Literal[
]
def _daytona_file_schema_extra(schema: dict[str, Any]) -> None:
schema["allOf"] = [
{
"if": {
"properties": {
"action": {
"enum": [
"read",
"write",
"append",
"list",
"delete",
"mkdir",
"info",
"exists",
"move",
"find",
"search",
"chmod",
]
}
}
},
"then": {"required": ["path"]},
},
{
"if": {"properties": {"action": {"const": "append"}}},
"then": {"required": ["content"]},
},
{
"if": {"properties": {"action": {"const": "move"}}},
"then": {"required": ["destination"]},
},
{
"if": {"properties": {"action": {"enum": ["find", "search"]}}},
"then": {"required": ["pattern"]},
},
{
"if": {"properties": {"action": {"const": "replace"}}},
"then": {"required": ["paths", "pattern", "replacement"]},
},
{
"if": {"properties": {"action": {"const": "chmod"}}},
"then": {
"anyOf": [
{"required": ["mode"]},
{"required": ["owner"]},
{"required": ["group"]},
]
},
},
]
class DaytonaFileToolSchema(BaseModel):
model_config = {"json_schema_extra": _daytona_file_schema_extra}
action: FileAction = Field(
...,
description=(

View File

@@ -7184,7 +7184,7 @@
}
},
{
"description": "Perform filesystem operations inside a Daytona sandbox: read a file, write content to a path, append content to an existing file, list a directory, delete a path, make a directory, or fetch file metadata. For files larger than a few KB, create the file with action='write' and empty content, then send the body via multiple 'append' calls of ~4KB each to stay within tool-call payload limits.",
"description": "Perform filesystem operations inside a Daytona sandbox: read, write, append, list, delete, mkdir, info, exists, move, find (content grep), search (filename glob), chmod (permissions/owner/group), and replace (bulk find-and-replace across files). For files larger than a few KB, create the file with action='write' and empty content, then send the body via multiple 'append' calls of ~4KB each to stay within tool-call payload limits.",
"env_vars": [
{
"default": null,
@@ -7334,9 +7334,127 @@
"daytona"
],
"run_params_schema": {
"allOf": [
{
"if": {
"properties": {
"action": {
"enum": [
"read",
"write",
"append",
"list",
"delete",
"mkdir",
"info",
"exists",
"move",
"find",
"search",
"chmod"
]
}
}
},
"then": {
"required": [
"path"
]
}
},
{
"if": {
"properties": {
"action": {
"const": "append"
}
}
},
"then": {
"required": [
"content"
]
}
},
{
"if": {
"properties": {
"action": {
"const": "move"
}
}
},
"then": {
"required": [
"destination"
]
}
},
{
"if": {
"properties": {
"action": {
"enum": [
"find",
"search"
]
}
}
},
"then": {
"required": [
"pattern"
]
}
},
{
"if": {
"properties": {
"action": {
"const": "replace"
}
}
},
"then": {
"required": [
"paths",
"pattern",
"replacement"
]
}
},
{
"if": {
"properties": {
"action": {
"const": "chmod"
}
}
},
"then": {
"anyOf": [
{
"required": [
"mode"
]
},
{
"required": [
"owner"
]
},
{
"required": [
"group"
]
}
]
}
}
],
"properties": {
"action": {
"description": "The filesystem action to perform: 'read' (returns file contents), 'write' (create or replace a file with content), 'append' (append content to an existing file \u2014 use this for writing large files in chunks to avoid hitting tool-call size limits), 'list' (lists a directory), 'delete' (removes a file/dir), 'mkdir' (creates a directory), 'info' (returns file metadata).",
"description": "The filesystem action to perform: 'read' (returns file contents); 'write' (create or replace a file with content); 'append' (append content to an existing file \u2014 use this for writing large files in chunks to avoid hitting tool-call size limits); 'list' (lists a directory); 'delete' (removes a file/dir); 'mkdir' (creates a directory); 'info' (returns file metadata); 'exists' (returns whether a path exists); 'move' (rename or relocate a file/dir; requires 'destination'); 'find' (grep file CONTENTS recursively; requires 'pattern'); 'search' (find files by NAME pattern; requires 'pattern'); 'chmod' (change permissions/owner/group; pass at least one of 'mode', 'owner', 'group'); 'replace' (find-and-replace text across files; requires 'paths', 'pattern', and 'replacement').",
"enum": [
"read",
"write",
@@ -7344,7 +7462,13 @@
"list",
"delete",
"mkdir",
"info"
"info",
"exists",
"move",
"find",
"search",
"chmod",
"replace"
],
"title": "Action",
"type": "string"
@@ -7368,27 +7492,122 @@
"description": "Content to write or append. If omitted for 'write', an empty file is created. For files larger than a few KB, prefer one 'write' with empty content followed by multiple 'append' calls of ~4KB each to stay within tool-call payload limits.",
"title": "Content"
},
"destination": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "For action='move': absolute destination path.",
"title": "Destination"
},
"group": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "For action='chmod': new file group.",
"title": "Group"
},
"mode": {
"default": "0755",
"description": "For action='mkdir': octal permission string (default 0755).",
"title": "Mode",
"type": "string"
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Octal permission string. For 'mkdir' it sets the new directory permissions (defaults to '0755' if omitted). For 'chmod' it sets the target's mode (e.g. '755' to make a script executable). Ignored for other actions.",
"title": "Mode"
},
"owner": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "For action='chmod': new file owner (user name).",
"title": "Owner"
},
"path": {
"description": "Absolute path inside the sandbox.",
"title": "Path",
"type": "string"
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Absolute path inside the sandbox. Required for all actions except 'replace' (which uses 'paths' instead).",
"title": "Path"
},
"paths": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "For action='replace': list of absolute file paths in which to replace 'pattern' with 'replacement'.",
"title": "Paths"
},
"pattern": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "For 'find': substring matched against file CONTENTS. For 'search': glob-style pattern matched against file NAMES (e.g. '*.py'). For 'replace': text to replace inside files.",
"title": "Pattern"
},
"recursive": {
"default": false,
"description": "For action='delete': remove directories recursively.",
"title": "Recursive",
"type": "boolean"
},
"replacement": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "For action='replace': replacement text for 'pattern'.",
"title": "Replacement"
}
},
"required": [
"action",
"path"
"action"
],
"title": "DaytonaFileToolSchema",
"type": "object"

View File

@@ -8,8 +8,8 @@ authors = [
]
requires-python = ">=3.10, <3.14"
dependencies = [
"crewai-core==1.14.5a4",
"crewai-cli==1.14.5a4",
"crewai-core==1.14.5a5",
"crewai-cli==1.14.5a5",
# Core Dependencies
"pydantic>=2.11.9,<2.13",
"openai>=2.30.0,<3",
@@ -54,7 +54,7 @@ Repository = "https://github.com/crewAIInc/crewAI"
[project.optional-dependencies]
tools = [
"crewai-tools==1.14.5a4",
"crewai-tools==1.14.5a5",
]
embeddings = [
"tiktoken>=0.8.0,<0.13"
@@ -105,7 +105,7 @@ a2a = [
"aiocache[redis,memcached]~=0.12.3",
]
file-processing = [
"crewai-files==1.14.5a4",
"crewai-files==1.14.5a5",
]
qdrant-edge = [
"qdrant-edge-py>=0.6.0",

View File

@@ -48,7 +48,7 @@ def _suppress_pydantic_deprecation_warnings() -> None:
_suppress_pydantic_deprecation_warnings()
__version__ = "1.14.5a4"
__version__ = "1.14.5a5"
_LAZY_IMPORTS: dict[str, tuple[str, str]] = {
"Memory": ("crewai.memory.unified_memory", "Memory"),

View File

@@ -1,3 +1,3 @@
"""CrewAI development tools."""
__version__ = "1.14.5a4"
__version__ = "1.14.5a5"