agentle 0.9.29__py3-none-any.whl → 0.9.31__py3-none-any.whl
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.
- agentle/agents/apis/object_schema.py +6 -6
- agentle/agents/apis/params/boolean_param.py +4 -4
- agentle/agents/apis/params/number_param.py +4 -4
- agentle/agents/conversations/callback_conversation_store.py +19 -4
- agentle/agents/conversations/conversation_store.py +11 -2
- agentle/agents/conversations/firebase_conversation_store.py +11 -3
- agentle/agents/conversations/json_file_conversation_store.py +16 -4
- agentle/agents/conversations/local_conversation_store.py +17 -4
- agentle/agents/conversations/mysql_conversation_store.py +15 -3
- agentle/agents/conversations/postgres_conversation_store.py +15 -3
- agentle/agents/whatsapp/whatsapp_bot.py +1 -1
- agentle/utils/parse_streaming_json.py +7 -5
- {agentle-0.9.29.dist-info → agentle-0.9.31.dist-info}/METADATA +1 -1
- {agentle-0.9.29.dist-info → agentle-0.9.31.dist-info}/RECORD +16 -16
- {agentle-0.9.29.dist-info → agentle-0.9.31.dist-info}/WHEEL +0 -0
- {agentle-0.9.29.dist-info → agentle-0.9.31.dist-info}/licenses/LICENSE +0 -0
|
@@ -46,20 +46,20 @@ class ObjectSchema(BaseModel):
|
|
|
46
46
|
) -> ObjectSchema | ArraySchema | PrimitiveSchema:
|
|
47
47
|
"""
|
|
48
48
|
Recursively convert a JSON Schema definition to Agentle schema types.
|
|
49
|
-
|
|
49
|
+
|
|
50
50
|
This method handles deeply nested objects, arrays, and primitives,
|
|
51
51
|
making it easy to convert complex JSON Schema definitions.
|
|
52
|
-
|
|
52
|
+
|
|
53
53
|
Args:
|
|
54
54
|
schema: JSON Schema definition (dict with 'type', 'properties', etc.)
|
|
55
|
-
|
|
55
|
+
|
|
56
56
|
Returns:
|
|
57
57
|
Appropriate schema type (ObjectSchema, ArraySchema, or PrimitiveSchema)
|
|
58
|
-
|
|
58
|
+
|
|
59
59
|
Example:
|
|
60
60
|
```python
|
|
61
61
|
from agentle.agents.apis.object_schema import ObjectSchema
|
|
62
|
-
|
|
62
|
+
|
|
63
63
|
json_schema = {
|
|
64
64
|
"type": "object",
|
|
65
65
|
"properties": {
|
|
@@ -79,7 +79,7 @@ class ObjectSchema(BaseModel):
|
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
-
|
|
82
|
+
|
|
83
83
|
schema = ObjectSchema.from_json_schema(json_schema)
|
|
84
84
|
```
|
|
85
85
|
"""
|
|
@@ -11,21 +11,21 @@ def boolean_param(
|
|
|
11
11
|
location: ParameterLocation = ParameterLocation.QUERY,
|
|
12
12
|
) -> EndpointParameter:
|
|
13
13
|
"""Create a boolean parameter.
|
|
14
|
-
|
|
14
|
+
|
|
15
15
|
Args:
|
|
16
16
|
name: Parameter name
|
|
17
17
|
description: Parameter description
|
|
18
18
|
required: Whether the parameter is required
|
|
19
19
|
default: Default value for the parameter
|
|
20
20
|
location: Where the parameter should be placed in the request
|
|
21
|
-
|
|
21
|
+
|
|
22
22
|
Returns:
|
|
23
23
|
EndpointParameter configured for boolean values
|
|
24
|
-
|
|
24
|
+
|
|
25
25
|
Example:
|
|
26
26
|
```python
|
|
27
27
|
from agentle.agents.apis.params.boolean_param import boolean_param
|
|
28
|
-
|
|
28
|
+
|
|
29
29
|
boolean_param(
|
|
30
30
|
name="enabled",
|
|
31
31
|
description="Enable feature",
|
|
@@ -14,7 +14,7 @@ def number_param(
|
|
|
14
14
|
format: str | None = None,
|
|
15
15
|
) -> EndpointParameter:
|
|
16
16
|
"""Create a number (float/decimal) parameter.
|
|
17
|
-
|
|
17
|
+
|
|
18
18
|
Args:
|
|
19
19
|
name: Parameter name
|
|
20
20
|
description: Parameter description
|
|
@@ -24,14 +24,14 @@ def number_param(
|
|
|
24
24
|
default: Default value for the parameter
|
|
25
25
|
location: Where the parameter should be placed in the request
|
|
26
26
|
format: Format hint (e.g., 'float', 'double', 'decimal')
|
|
27
|
-
|
|
27
|
+
|
|
28
28
|
Returns:
|
|
29
29
|
EndpointParameter configured for number values
|
|
30
|
-
|
|
30
|
+
|
|
31
31
|
Example:
|
|
32
32
|
```python
|
|
33
33
|
from agentle.agents.apis.params.number_param import number_param
|
|
34
|
-
|
|
34
|
+
|
|
35
35
|
number_param(
|
|
36
36
|
name="price",
|
|
37
37
|
description="Product price",
|
|
@@ -46,11 +46,14 @@ Example:
|
|
|
46
46
|
from __future__ import annotations
|
|
47
47
|
|
|
48
48
|
from collections.abc import Awaitable, Callable, Sequence
|
|
49
|
-
from typing import override
|
|
49
|
+
from typing import Any, override
|
|
50
50
|
|
|
51
51
|
from agentle.agents.conversations.conversation_store import ConversationStore
|
|
52
52
|
from agentle.generations.models.messages.assistant_message import AssistantMessage
|
|
53
53
|
from agentle.generations.models.messages.developer_message import DeveloperMessage
|
|
54
|
+
from agentle.generations.models.messages.generated_assistant_message import (
|
|
55
|
+
GeneratedAssistantMessage,
|
|
56
|
+
)
|
|
54
57
|
from agentle.generations.models.messages.user_message import UserMessage
|
|
55
58
|
|
|
56
59
|
|
|
@@ -81,7 +84,14 @@ class CallbackConversationStore(ConversationStore):
|
|
|
81
84
|
Awaitable[Sequence[DeveloperMessage | UserMessage | AssistantMessage]],
|
|
82
85
|
],
|
|
83
86
|
add_callback: Callable[
|
|
84
|
-
[
|
|
87
|
+
[
|
|
88
|
+
str,
|
|
89
|
+
DeveloperMessage
|
|
90
|
+
| UserMessage
|
|
91
|
+
| AssistantMessage
|
|
92
|
+
| GeneratedAssistantMessage[Any],
|
|
93
|
+
],
|
|
94
|
+
Awaitable[None],
|
|
85
95
|
],
|
|
86
96
|
clear_callback: Callable[[str], Awaitable[None]],
|
|
87
97
|
message_limit: int | None = None,
|
|
@@ -146,8 +156,13 @@ class CallbackConversationStore(ConversationStore):
|
|
|
146
156
|
return await self._get_callback(chat_id)
|
|
147
157
|
|
|
148
158
|
@override
|
|
149
|
-
async def add_message_async(
|
|
150
|
-
self,
|
|
159
|
+
async def add_message_async[T = Any](
|
|
160
|
+
self,
|
|
161
|
+
chat_id: str,
|
|
162
|
+
message: DeveloperMessage
|
|
163
|
+
| UserMessage
|
|
164
|
+
| AssistantMessage
|
|
165
|
+
| GeneratedAssistantMessage[T],
|
|
151
166
|
) -> None:
|
|
152
167
|
"""
|
|
153
168
|
Add a message to the conversation using the user-provided add callback.
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import abc
|
|
2
2
|
from collections.abc import Sequence
|
|
3
|
+
from typing import Any
|
|
3
4
|
|
|
4
5
|
from agentle.generations.models.messages.assistant_message import AssistantMessage
|
|
5
6
|
from agentle.generations.models.messages.developer_message import DeveloperMessage
|
|
7
|
+
from agentle.generations.models.messages.generated_assistant_message import (
|
|
8
|
+
GeneratedAssistantMessage,
|
|
9
|
+
)
|
|
6
10
|
from agentle.generations.models.messages.user_message import UserMessage
|
|
7
11
|
|
|
8
12
|
|
|
@@ -42,8 +46,13 @@ class ConversationStore(abc.ABC):
|
|
|
42
46
|
) -> Sequence[DeveloperMessage | UserMessage | AssistantMessage]: ...
|
|
43
47
|
|
|
44
48
|
@abc.abstractmethod
|
|
45
|
-
async def add_message_async(
|
|
46
|
-
self,
|
|
49
|
+
async def add_message_async[T = Any](
|
|
50
|
+
self,
|
|
51
|
+
chat_id: str,
|
|
52
|
+
message: DeveloperMessage
|
|
53
|
+
| UserMessage
|
|
54
|
+
| AssistantMessage
|
|
55
|
+
| GeneratedAssistantMessage[T],
|
|
47
56
|
) -> None: ...
|
|
48
57
|
|
|
49
58
|
@abc.abstractmethod
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
3
|
from collections.abc import Sequence
|
|
4
|
-
from typing import TYPE_CHECKING, override
|
|
4
|
+
from typing import TYPE_CHECKING, Any, override
|
|
5
5
|
|
|
6
6
|
from agentle.agents.conversations.conversation_store import ConversationStore
|
|
7
7
|
from agentle.generations.models.messages.assistant_message import AssistantMessage
|
|
8
8
|
from agentle.generations.models.messages.developer_message import DeveloperMessage
|
|
9
|
+
from agentle.generations.models.messages.generated_assistant_message import (
|
|
10
|
+
GeneratedAssistantMessage,
|
|
11
|
+
)
|
|
9
12
|
from agentle.generations.models.messages.user_message import UserMessage
|
|
10
13
|
|
|
11
14
|
if TYPE_CHECKING:
|
|
@@ -28,8 +31,13 @@ class FirebaseConversationStore(ConversationStore):
|
|
|
28
31
|
self._collection_name = collection_name
|
|
29
32
|
|
|
30
33
|
@override
|
|
31
|
-
async def add_message_async(
|
|
32
|
-
self,
|
|
34
|
+
async def add_message_async[T = Any](
|
|
35
|
+
self,
|
|
36
|
+
chat_id: str,
|
|
37
|
+
message: DeveloperMessage
|
|
38
|
+
| UserMessage
|
|
39
|
+
| AssistantMessage
|
|
40
|
+
| GeneratedAssistantMessage[T],
|
|
33
41
|
) -> None:
|
|
34
42
|
from google.cloud import firestore
|
|
35
43
|
|
|
@@ -7,6 +7,9 @@ from typing import Any, override
|
|
|
7
7
|
from agentle.agents.conversations.conversation_store import ConversationStore
|
|
8
8
|
from agentle.generations.models.messages.assistant_message import AssistantMessage
|
|
9
9
|
from agentle.generations.models.messages.developer_message import DeveloperMessage
|
|
10
|
+
from agentle.generations.models.messages.generated_assistant_message import (
|
|
11
|
+
GeneratedAssistantMessage,
|
|
12
|
+
)
|
|
10
13
|
from agentle.generations.models.messages.user_message import UserMessage
|
|
11
14
|
|
|
12
15
|
|
|
@@ -87,8 +90,12 @@ class JSONFileConversationStore(ConversationStore):
|
|
|
87
90
|
# For other non-serializable objects, convert to string
|
|
88
91
|
return str(obj)
|
|
89
92
|
|
|
90
|
-
def _message_to_dict(
|
|
91
|
-
self,
|
|
93
|
+
def _message_to_dict[T](
|
|
94
|
+
self,
|
|
95
|
+
message: DeveloperMessage
|
|
96
|
+
| UserMessage
|
|
97
|
+
| AssistantMessage
|
|
98
|
+
| GeneratedAssistantMessage[T],
|
|
92
99
|
) -> dict[str, Any]:
|
|
93
100
|
"""Convert a message object to a dictionary for JSON serialization."""
|
|
94
101
|
# Get the basic message dictionary
|
|
@@ -177,8 +184,13 @@ class JSONFileConversationStore(ConversationStore):
|
|
|
177
184
|
return UserMessage.model_validate(message_data)
|
|
178
185
|
|
|
179
186
|
@override
|
|
180
|
-
async def add_message_async(
|
|
181
|
-
self,
|
|
187
|
+
async def add_message_async[T = Any](
|
|
188
|
+
self,
|
|
189
|
+
chat_id: str,
|
|
190
|
+
message: DeveloperMessage
|
|
191
|
+
| UserMessage
|
|
192
|
+
| AssistantMessage
|
|
193
|
+
| GeneratedAssistantMessage[T],
|
|
182
194
|
) -> None:
|
|
183
195
|
"""Add a message to the conversation."""
|
|
184
196
|
messages_data = self._load_messages(chat_id)
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
from collections.abc import MutableMapping, MutableSequence, Sequence
|
|
2
|
-
from typing import override
|
|
2
|
+
from typing import Any, override
|
|
3
|
+
|
|
3
4
|
from agentle.agents.conversations.conversation_store import ConversationStore
|
|
4
5
|
from agentle.generations.models.messages.assistant_message import AssistantMessage
|
|
5
6
|
from agentle.generations.models.messages.developer_message import DeveloperMessage
|
|
7
|
+
from agentle.generations.models.messages.generated_assistant_message import (
|
|
8
|
+
GeneratedAssistantMessage,
|
|
9
|
+
)
|
|
6
10
|
from agentle.generations.models.messages.user_message import UserMessage
|
|
7
11
|
|
|
8
12
|
|
|
9
13
|
class LocalConversationStore(ConversationStore):
|
|
10
14
|
__messages: MutableMapping[
|
|
11
|
-
str,
|
|
15
|
+
str,
|
|
16
|
+
MutableSequence[DeveloperMessage | UserMessage | AssistantMessage],
|
|
12
17
|
]
|
|
13
18
|
|
|
14
19
|
def __init__(
|
|
@@ -20,8 +25,13 @@ class LocalConversationStore(ConversationStore):
|
|
|
20
25
|
self.__messages = {}
|
|
21
26
|
|
|
22
27
|
@override
|
|
23
|
-
async def add_message_async(
|
|
24
|
-
self,
|
|
28
|
+
async def add_message_async[T = Any](
|
|
29
|
+
self,
|
|
30
|
+
chat_id: str,
|
|
31
|
+
message: DeveloperMessage
|
|
32
|
+
| UserMessage
|
|
33
|
+
| AssistantMessage
|
|
34
|
+
| GeneratedAssistantMessage[T],
|
|
25
35
|
) -> None:
|
|
26
36
|
if chat_id not in self.__messages:
|
|
27
37
|
self.__messages[chat_id] = []
|
|
@@ -41,6 +51,9 @@ class LocalConversationStore(ConversationStore):
|
|
|
41
51
|
# Don't add message if limit reached and not overriding
|
|
42
52
|
return
|
|
43
53
|
|
|
54
|
+
if isinstance(message, GeneratedAssistantMessage):
|
|
55
|
+
message = message.to_assistant_message()
|
|
56
|
+
|
|
44
57
|
self.__messages[chat_id].append(message)
|
|
45
58
|
|
|
46
59
|
@override
|
|
@@ -8,6 +8,9 @@ from typing import TYPE_CHECKING, Any, override
|
|
|
8
8
|
from agentle.agents.conversations.conversation_store import ConversationStore
|
|
9
9
|
from agentle.generations.models.messages.assistant_message import AssistantMessage
|
|
10
10
|
from agentle.generations.models.messages.developer_message import DeveloperMessage
|
|
11
|
+
from agentle.generations.models.messages.generated_assistant_message import (
|
|
12
|
+
GeneratedAssistantMessage,
|
|
13
|
+
)
|
|
11
14
|
from agentle.generations.models.messages.user_message import UserMessage
|
|
12
15
|
|
|
13
16
|
if TYPE_CHECKING:
|
|
@@ -74,7 +77,11 @@ class MySQLConversationStore(ConversationStore):
|
|
|
74
77
|
await conn.commit()
|
|
75
78
|
|
|
76
79
|
def _message_to_dict(
|
|
77
|
-
self,
|
|
80
|
+
self,
|
|
81
|
+
message: DeveloperMessage
|
|
82
|
+
| UserMessage
|
|
83
|
+
| AssistantMessage
|
|
84
|
+
| GeneratedAssistantMessage[Any],
|
|
78
85
|
) -> dict[str, Any]:
|
|
79
86
|
"""
|
|
80
87
|
Convert a Message object to a dictionary for JSON serialization.
|
|
@@ -125,8 +132,13 @@ class MySQLConversationStore(ConversationStore):
|
|
|
125
132
|
return UserMessage.model_validate(message_dict)
|
|
126
133
|
|
|
127
134
|
@override
|
|
128
|
-
async def add_message_async(
|
|
129
|
-
self,
|
|
135
|
+
async def add_message_async[T = Any](
|
|
136
|
+
self,
|
|
137
|
+
chat_id: str,
|
|
138
|
+
message: DeveloperMessage
|
|
139
|
+
| UserMessage
|
|
140
|
+
| AssistantMessage
|
|
141
|
+
| GeneratedAssistantMessage[T],
|
|
130
142
|
) -> None:
|
|
131
143
|
"""
|
|
132
144
|
Add a message to the conversation store.
|
|
@@ -7,6 +7,9 @@ from typing import TYPE_CHECKING, Any, override
|
|
|
7
7
|
from agentle.agents.conversations.conversation_store import ConversationStore
|
|
8
8
|
from agentle.generations.models.messages.assistant_message import AssistantMessage
|
|
9
9
|
from agentle.generations.models.messages.developer_message import DeveloperMessage
|
|
10
|
+
from agentle.generations.models.messages.generated_assistant_message import (
|
|
11
|
+
GeneratedAssistantMessage,
|
|
12
|
+
)
|
|
10
13
|
from agentle.generations.models.messages.user_message import UserMessage
|
|
11
14
|
|
|
12
15
|
if TYPE_CHECKING:
|
|
@@ -84,7 +87,11 @@ class PostgresConversationStore(ConversationStore):
|
|
|
84
87
|
""")
|
|
85
88
|
|
|
86
89
|
def _message_to_dict(
|
|
87
|
-
self,
|
|
90
|
+
self,
|
|
91
|
+
message: DeveloperMessage
|
|
92
|
+
| UserMessage
|
|
93
|
+
| AssistantMessage
|
|
94
|
+
| GeneratedAssistantMessage[Any],
|
|
88
95
|
) -> dict[str, Any]:
|
|
89
96
|
"""Convert a message object to a dictionary for JSON serialization."""
|
|
90
97
|
message_dict = message.model_dump()
|
|
@@ -119,8 +126,13 @@ class PostgresConversationStore(ConversationStore):
|
|
|
119
126
|
return UserMessage.model_validate(message_dict)
|
|
120
127
|
|
|
121
128
|
@override
|
|
122
|
-
async def add_message_async(
|
|
123
|
-
self,
|
|
129
|
+
async def add_message_async[T = Any](
|
|
130
|
+
self,
|
|
131
|
+
chat_id: str,
|
|
132
|
+
message: DeveloperMessage
|
|
133
|
+
| UserMessage
|
|
134
|
+
| AssistantMessage
|
|
135
|
+
| GeneratedAssistantMessage[T],
|
|
124
136
|
) -> None:
|
|
125
137
|
"""Add a message to the conversation."""
|
|
126
138
|
async with self._pool.acquire() as conn:
|
|
@@ -2285,7 +2285,7 @@ class WhatsAppBot[T_Schema: WhatsAppResponseBase = WhatsAppResponseBase](BaseMod
|
|
|
2285
2285
|
... )
|
|
2286
2286
|
"""
|
|
2287
2287
|
response_text = ""
|
|
2288
|
-
|
|
2288
|
+
|
|
2289
2289
|
if isinstance(response, GeneratedAssistantMessage):
|
|
2290
2290
|
# Check if we have structured output (parsed)
|
|
2291
2291
|
if response.parsed:
|
|
@@ -101,12 +101,12 @@ def parse_streaming_json[T: BaseModel](potential_json: str | None, model: type[T
|
|
|
101
101
|
in_string = False
|
|
102
102
|
escape_next = False
|
|
103
103
|
last_quote_pos = -1
|
|
104
|
-
|
|
104
|
+
|
|
105
105
|
for i, char in enumerate(json_str):
|
|
106
106
|
if escape_next:
|
|
107
107
|
escape_next = False
|
|
108
108
|
continue
|
|
109
|
-
if char ==
|
|
109
|
+
if char == "\\":
|
|
110
110
|
escape_next = True
|
|
111
111
|
continue
|
|
112
112
|
if char == '"':
|
|
@@ -141,7 +141,7 @@ def parse_streaming_json[T: BaseModel](potential_json: str | None, model: type[T
|
|
|
141
141
|
# Pattern: "key": "value..." - capture everything until the next unescaped quote or EOF
|
|
142
142
|
string_pattern = r'["\']([\w]+)["\']:\s*["\']([^"\']*?)(?:["\']|$)'
|
|
143
143
|
string_matches = re.findall(string_pattern, json_str, re.DOTALL)
|
|
144
|
-
|
|
144
|
+
|
|
145
145
|
# Also try to capture very long strings that span multiple lines
|
|
146
146
|
# This catches incomplete strings during streaming
|
|
147
147
|
long_string_pattern = r'["\']([\w_]+)["\']:\s*["\'](.+?)(?:["\'],?\s*["}]|$)'
|
|
@@ -149,12 +149,14 @@ def parse_streaming_json[T: BaseModel](potential_json: str | None, model: type[T
|
|
|
149
149
|
|
|
150
150
|
for key, value in string_matches:
|
|
151
151
|
data[key] = value
|
|
152
|
-
|
|
152
|
+
|
|
153
153
|
# Prefer long_matches for fields that might be truncated in string_matches
|
|
154
154
|
for key, value in long_matches:
|
|
155
155
|
# Only override if the long match has more content
|
|
156
156
|
existing = data.get(key, "")
|
|
157
|
-
if key not in data or (
|
|
157
|
+
if key not in data or (
|
|
158
|
+
isinstance(existing, str) and len(value) > len(existing)
|
|
159
|
+
):
|
|
158
160
|
data[key] = value
|
|
159
161
|
|
|
160
162
|
# Extract string key-value pairs with unquoted keys
|
|
@@ -87,7 +87,7 @@ agentle/agents/apis/http_method.py,sha256=QhiUJvftOaVJXIMDzhdOnvrPxrwrjikOePm664
|
|
|
87
87
|
agentle/agents/apis/no_authentication.py,sha256=s8q5sE6VyUhBmtPAuH18fkc0Dhu-fA_a2jjfvPOF1aE,654
|
|
88
88
|
agentle/agents/apis/oauth2_authentication.py,sha256=ql-wUfD5sWPy5WqbrMO7k7d7l12z14qf8OGnHgQCOD8,3959
|
|
89
89
|
agentle/agents/apis/oauth2_grant_type.py,sha256=rx2LvkqMZ32-zzJrKyJZofdii9u4E2cIHeQXoX0MuRM,271
|
|
90
|
-
agentle/agents/apis/object_schema.py,sha256=
|
|
90
|
+
agentle/agents/apis/object_schema.py,sha256=1p01VbRGTFX7v6eFSJToAtfOJuOEkjJKp9Injulk-hs,4531
|
|
91
91
|
agentle/agents/apis/object_serialization_style.py,sha256=sHt23Spp6TH0KLDH7WuGL7hvLnz-B_NnTkJQboewt4o,482
|
|
92
92
|
agentle/agents/apis/parameter_location.py,sha256=k4vSvrljwsxorV_sf2Ch_OP4zvIGvhHDXonxrg-32eg,283
|
|
93
93
|
agentle/agents/apis/primitive_schema.py,sha256=fmDiMrXxtixORKIDvg8dx_h7w1AqPXpFOK8q_XxS_UQ,705
|
|
@@ -99,9 +99,9 @@ agentle/agents/apis/response_cache.py,sha256=l-Ec_YVf1phhaTKWNdAORBDWZS3pXK_BBUH
|
|
|
99
99
|
agentle/agents/apis/retry_strategy.py,sha256=_W8ZXXmA0kPFLJ0uwwV9ZycmSnj4dsicisFrbN8FtAU,219
|
|
100
100
|
agentle/agents/apis/params/__init__.py,sha256=7aXlrfQTXpGT2GxuyugnFsF74l4AszSkFgxb0keyPRE,383
|
|
101
101
|
agentle/agents/apis/params/array_param.py,sha256=dHcKGNdsYnze0AdMKGuxidM81Hwydb264JFdLhJEVeA,1036
|
|
102
|
-
agentle/agents/apis/params/boolean_param.py,sha256=
|
|
102
|
+
agentle/agents/apis/params/boolean_param.py,sha256=POQb-qM6w85RiEstgPt-xSfJlK0gb0P1s5CI0ulJ3pk,1273
|
|
103
103
|
agentle/agents/apis/params/integer_param.py,sha256=DEEOoOmLVzTFAQOJnLAr2MTcgLFYbavBDrf4CJ_-P_E,788
|
|
104
|
-
agentle/agents/apis/params/number_param.py,sha256=
|
|
104
|
+
agentle/agents/apis/params/number_param.py,sha256=KYYS7cH1hYQQnpy9LFd3pEkVbw9cIgkdhuDgu5WXYdo,1655
|
|
105
105
|
agentle/agents/apis/params/object_param.py,sha256=_zR7t4aQoK7NSRH0yS3-iZqMeKzHCc2vtKqDRfdDp1M,1044
|
|
106
106
|
agentle/agents/apis/params/string_param.py,sha256=0cLqPLsljw_7AHYXESib9mtJRRLOreH3-4ObJR8CFUk,710
|
|
107
107
|
agentle/agents/asgi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -109,13 +109,13 @@ agentle/agents/asgi/blacksheep/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
|
|
|
109
109
|
agentle/agents/asgi/blacksheep/agent_to_blacksheep_application_adapter.py,sha256=EI-0TBWlL8wewFuOtNoTeY7T1BTbj3GVQjUmkuPrv74,12080
|
|
110
110
|
agentle/agents/asgi/blacksheep/agent_to_blacksheep_route_handler_adapter.py,sha256=kAX3_W6Gj8JI9yjXm6bnWvzq4YH8E4RD_jPy-Z_RtoA,25124
|
|
111
111
|
agentle/agents/conversations/__init__.py,sha256=8XNgbcRauHDWbaiwKzoQkMbA4v3IOB1rtKGPfjReHPY,573
|
|
112
|
-
agentle/agents/conversations/callback_conversation_store.py,sha256=
|
|
113
|
-
agentle/agents/conversations/conversation_store.py,sha256=
|
|
114
|
-
agentle/agents/conversations/firebase_conversation_store.py,sha256=
|
|
115
|
-
agentle/agents/conversations/json_file_conversation_store.py,sha256=
|
|
116
|
-
agentle/agents/conversations/local_conversation_store.py,sha256=
|
|
117
|
-
agentle/agents/conversations/mysql_conversation_store.py,sha256=
|
|
118
|
-
agentle/agents/conversations/postgres_conversation_store.py,sha256=
|
|
112
|
+
agentle/agents/conversations/callback_conversation_store.py,sha256=zamvaWLu-C0MiVhUetiN5OjS7aktlYIlmhq_UrxrXaE,8283
|
|
113
|
+
agentle/agents/conversations/conversation_store.py,sha256=w4NG_1rzFXQrwBLsLu_AB0IRutapul8wDwcUktwsqiM,2039
|
|
114
|
+
agentle/agents/conversations/firebase_conversation_store.py,sha256=dsQnRf9OQsb_8IhmbNFUaMGgwQZ9RFNosphDcTz5LI8,4364
|
|
115
|
+
agentle/agents/conversations/json_file_conversation_store.py,sha256=NvUGXzxKU_ozoNM4rodqKtrDR1r7WeUvTUDm3eYXkkM,9544
|
|
116
|
+
agentle/agents/conversations/local_conversation_store.py,sha256=cPFQcCieZ9d0K3fc0MvfzcUucnL8KPMK9K8IhOEn28Y,2432
|
|
117
|
+
agentle/agents/conversations/mysql_conversation_store.py,sha256=XKlURkjRQpHcotRyhQHneqzzZXehyR2IJtIqh4kyEgM,11501
|
|
118
|
+
agentle/agents/conversations/postgres_conversation_store.py,sha256=kwB3UsME1oqKj-dYbhMw-XPe0pOm47MSoA6RFNWHrNk,9953
|
|
119
119
|
agentle/agents/errors/__init__.py,sha256=g2WoSvolIhcRutVsaEctMRsKK_r02wpSquvoNEjDOPo,1694
|
|
120
120
|
agentle/agents/errors/max_tool_calls_exceeded_error.py,sha256=LXyGXOSNhYyc9W8f0ZcKMuQiFdpFjLr_yM4nkpUvZF8,2817
|
|
121
121
|
agentle/agents/errors/tool_suspension_error.py,sha256=_wL6URtj2eqnuSLpTvabqD8IYfz8z-1eszifzibyfoc,3096
|
|
@@ -137,7 +137,7 @@ agentle/agents/ui/__init__.py,sha256=IjHRV0k2DNwvFrEHebmsXiBvmITE8nQUnsR07h9tVkU
|
|
|
137
137
|
agentle/agents/ui/streamlit.py,sha256=9afICL0cxtG1o2pWh6vH39-NdKiVfADKiXo405F2aB0,42829
|
|
138
138
|
agentle/agents/whatsapp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
139
139
|
agentle/agents/whatsapp/human_delay_calculator.py,sha256=BGCDeoNTPsMn4d_QYmG0BWGCG8SiUJC6Fk295ulAsAk,18268
|
|
140
|
-
agentle/agents/whatsapp/whatsapp_bot.py,sha256=
|
|
140
|
+
agentle/agents/whatsapp/whatsapp_bot.py,sha256=8AkP6VncI04s0KEpJ_ykkZsHUoUpF1PYxXyLRWA8EW4,161954
|
|
141
141
|
agentle/agents/whatsapp/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
142
142
|
agentle/agents/whatsapp/models/audio_message.py,sha256=kUqG1HdNW6DCYD-CqscJ6WHlAyv9ufmTSKMdjio9XWk,2705
|
|
143
143
|
agentle/agents/whatsapp/models/context_info.py,sha256=sk80KuNE36S6VRnLh7n6UXmzZCXIB4E4lNxnRyVizg8,563
|
|
@@ -971,7 +971,7 @@ agentle/utils/file_validation.py,sha256=Rv6y_ylBrDoslscCk2lkfr3LRMarY0J8qWhKJjZj
|
|
|
971
971
|
agentle/utils/fix_base64_padding.py,sha256=IWBlMP3FYcWs17Y72tVxG7w1lzEKnstaDC9HRKmI56Y,1109
|
|
972
972
|
agentle/utils/make_fields_optional.py,sha256=pu2u-jJ1pNyoQRyGQzxwXnYbWSzZ2G4ssebJvjYsH8A,7800
|
|
973
973
|
agentle/utils/needs.py,sha256=JRTVvgVP0w0bpq1_w2Jly2lxXiONdHOYAYMvReFQcJM,5110
|
|
974
|
-
agentle/utils/parse_streaming_json.py,sha256=
|
|
974
|
+
agentle/utils/parse_streaming_json.py,sha256=u4Rmfug_Uh3V8Enwqu7ccn0Xa9oYDtNN6Cxysh907Ng,31896
|
|
975
975
|
agentle/utils/raise_error.py,sha256=EYX6WJS5gzJxgTyFYYOFHc-klEyU0tP20N5k_-ze5nQ,138
|
|
976
976
|
agentle/utils/safe_b64decode.py,sha256=2nkdwUzkeVgtf3kb_zypjJY2KHe7dlLwa4ynjY2Yy1E,1272
|
|
977
977
|
agentle/utils/safe_dill_dumps.py,sha256=yXQ51P05uSiWnREKJ6UWVjCKnRQTjgPVzoE1nylBbJI,237
|
|
@@ -1018,7 +1018,7 @@ agentle/web/actions/scroll.py,sha256=WqVVAORNDK3BL1oASZBPmXJYeSVkPgAOmWA8ibYO82I
|
|
|
1018
1018
|
agentle/web/actions/viewport.py,sha256=KCwm88Pri19Qc6GLHC69HsRxmdJz1gEEAODfggC_fHo,287
|
|
1019
1019
|
agentle/web/actions/wait.py,sha256=IKEywjf-KC4ni9Gkkv4wgc7bY-hk7HwD4F-OFWlyf2w,571
|
|
1020
1020
|
agentle/web/actions/write_text.py,sha256=9mxfHcpKs_L7BsDnJvOYHQwG8M0GWe61SRJAsKk3xQ8,748
|
|
1021
|
-
agentle-0.9.
|
|
1022
|
-
agentle-0.9.
|
|
1023
|
-
agentle-0.9.
|
|
1024
|
-
agentle-0.9.
|
|
1021
|
+
agentle-0.9.31.dist-info/METADATA,sha256=Bxiq2rY_WhZ3w98ZCshLt6UM_CfWuIUuJtK53Zq9aPw,86849
|
|
1022
|
+
agentle-0.9.31.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
1023
|
+
agentle-0.9.31.dist-info/licenses/LICENSE,sha256=T90S9vqRS6qP-voULxAcvwEs558wRRo6dHuZrjgcOUI,1085
|
|
1024
|
+
agentle-0.9.31.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|