basic-open-agent-tools 0.7.0__tar.gz → 0.7.2__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.
- {basic_open_agent_tools-0.7.0/src/basic_open_agent_tools.egg-info → basic_open_agent_tools-0.7.2}/PKG-INFO +1 -1
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/pyproject.toml +1 -1
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/__init__.py +1 -9
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/data/__init__.py +0 -70
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/helpers.py +2 -162
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2/src/basic_open_agent_tools.egg-info}/PKG-INFO +1 -1
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools.egg-info/SOURCES.txt +0 -8
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/tests/test_read_only_tools.py +5 -8
- basic_open_agent_tools-0.7.0/src/basic_open_agent_tools/data/archive_processing.py +0 -495
- basic_open_agent_tools-0.7.0/src/basic_open_agent_tools/data/binary_processing.py +0 -290
- basic_open_agent_tools-0.7.0/src/basic_open_agent_tools/data/object_serialization.py +0 -178
- basic_open_agent_tools-0.7.0/src/basic_open_agent_tools/data/structures.py +0 -589
- basic_open_agent_tools-0.7.0/tests/test_data_archive_processing.py +0 -456
- basic_open_agent_tools-0.7.0/tests/test_data_binary_processing.py +0 -335
- basic_open_agent_tools-0.7.0/tests/test_data_object_serialization.py +0 -193
- basic_open_agent_tools-0.7.0/tests/test_data_structures.py +0 -435
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/LICENSE +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/README.md +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/setup.cfg +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/setup.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/crypto/__init__.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/data/config_processing.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/data/csv_tools.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/data/json_tools.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/data/transform.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/data/validation.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/exceptions.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/file_system/__init__.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/file_system/info.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/file_system/operations.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/file_system/tree.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/file_system/validation.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/network/__init__.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/system/__init__.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/text/__init__.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/text/processing.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/types.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/utilities/__init__.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools.egg-info/dependency_links.txt +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools.egg-info/requires.txt +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools.egg-info/top_level.txt +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/tests/test_data_config_processing.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/tests/test_data_csv_tools.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/tests/test_data_json_tools.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/tests/test_data_transform.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/tests/test_data_validation.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/tests/test_file_system_tools.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/tests/test_helpers.py +0 -0
- {basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/tests/test_text_processing.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: basic-open-agent-tools
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.2
|
|
4
4
|
Summary: An open foundational toolkit providing essential components for building AI agents with minimal dependencies for local (non-HTTP/API) actions.
|
|
5
5
|
Home-page: https://github.com/open-agent-tools/basic-open-agent-tools
|
|
6
6
|
Author: Open Agent Tools
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta:__legacy__"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "basic-open-agent-tools"
|
|
7
|
-
version = "0.7.
|
|
7
|
+
version = "0.7.2" # Remove structures, archives, and object serialization for agent compatibility
|
|
8
8
|
description = "An open foundational toolkit providing essential components for building AI agents with minimal dependencies for local (non-HTTP/API) actions."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.8"
|
{basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/__init__.py
RENAMED
|
@@ -6,7 +6,7 @@ with minimal dependencies for local (non-HTTP/API) actions.
|
|
|
6
6
|
|
|
7
7
|
from typing import List
|
|
8
8
|
|
|
9
|
-
__version__ = "0.
|
|
9
|
+
__version__ = "0.7.2"
|
|
10
10
|
|
|
11
11
|
# Modular structure
|
|
12
12
|
from . import data, exceptions, file_system, text, types
|
|
@@ -19,13 +19,9 @@ from .helpers import (
|
|
|
19
19
|
load_all_filesystem_tools,
|
|
20
20
|
load_all_read_only_tools,
|
|
21
21
|
load_all_text_tools,
|
|
22
|
-
load_data_archive_tools,
|
|
23
|
-
load_data_binary_tools,
|
|
24
22
|
load_data_config_tools,
|
|
25
23
|
load_data_csv_tools,
|
|
26
24
|
load_data_json_tools,
|
|
27
|
-
load_data_object_tools,
|
|
28
|
-
load_data_structure_tools,
|
|
29
25
|
load_data_transformation_tools,
|
|
30
26
|
load_data_validation_tools,
|
|
31
27
|
merge_tool_lists,
|
|
@@ -58,13 +54,9 @@ __all__: List[str] = [
|
|
|
58
54
|
"load_all_read_only_tools",
|
|
59
55
|
"load_data_json_tools",
|
|
60
56
|
"load_data_csv_tools",
|
|
61
|
-
"load_data_structure_tools",
|
|
62
57
|
"load_data_validation_tools",
|
|
63
58
|
"load_data_transformation_tools",
|
|
64
|
-
"load_data_object_tools",
|
|
65
59
|
"load_data_config_tools",
|
|
66
|
-
"load_data_binary_tools",
|
|
67
|
-
"load_data_archive_tools",
|
|
68
60
|
"merge_tool_lists",
|
|
69
61
|
"get_tool_info",
|
|
70
62
|
"list_all_available_tools",
|
|
@@ -2,37 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
This module provides data processing and manipulation tools organized into logical submodules:
|
|
4
4
|
|
|
5
|
-
- structures: Data structure manipulation and transformation
|
|
6
5
|
- json_tools: JSON serialization, compression, and validation
|
|
7
6
|
- csv_tools: CSV file processing, parsing, and cleaning
|
|
8
7
|
- validation: Data validation and schema checking
|
|
9
8
|
- transform: Data transformation, cleaning, and normalization
|
|
10
|
-
- object_serialization: Object serialization and deserialization
|
|
11
9
|
- config_processing: Configuration file processing (YAML, TOML, INI)
|
|
12
|
-
- binary_processing: Binary data handling and encoding
|
|
13
|
-
- archive_processing: Archive file creation and extraction (ZIP, TAR)
|
|
14
10
|
"""
|
|
15
11
|
|
|
16
12
|
from typing import List
|
|
17
13
|
|
|
18
14
|
# Import all functions from submodules
|
|
19
|
-
from .archive_processing import (
|
|
20
|
-
add_to_archive,
|
|
21
|
-
create_tar_archive,
|
|
22
|
-
create_zip_archive,
|
|
23
|
-
extract_tar_archive,
|
|
24
|
-
extract_zip_archive,
|
|
25
|
-
list_archive_contents,
|
|
26
|
-
validate_archive_integrity,
|
|
27
|
-
)
|
|
28
|
-
from .binary_processing import (
|
|
29
|
-
decode_binary_data,
|
|
30
|
-
encode_binary_data,
|
|
31
|
-
extract_binary_metadata,
|
|
32
|
-
read_binary_file,
|
|
33
|
-
validate_binary_format,
|
|
34
|
-
write_binary_file,
|
|
35
|
-
)
|
|
36
15
|
from .config_processing import (
|
|
37
16
|
merge_config_files,
|
|
38
17
|
read_ini_file,
|
|
@@ -59,24 +38,6 @@ from .json_tools import (
|
|
|
59
38
|
safe_json_serialize,
|
|
60
39
|
validate_json_string,
|
|
61
40
|
)
|
|
62
|
-
from .object_serialization import (
|
|
63
|
-
deserialize_object,
|
|
64
|
-
sanitize_for_serialization,
|
|
65
|
-
serialize_object,
|
|
66
|
-
validate_pickle_safety,
|
|
67
|
-
)
|
|
68
|
-
from .structures import (
|
|
69
|
-
compare_data_structures,
|
|
70
|
-
extract_keys,
|
|
71
|
-
flatten_dict_simple,
|
|
72
|
-
get_nested_value_simple,
|
|
73
|
-
merge_dicts_simple,
|
|
74
|
-
remove_empty_values,
|
|
75
|
-
rename_keys,
|
|
76
|
-
safe_get,
|
|
77
|
-
set_nested_value,
|
|
78
|
-
unflatten_dict,
|
|
79
|
-
)
|
|
80
41
|
from .transform import (
|
|
81
42
|
clean_data,
|
|
82
43
|
convert_data_types,
|
|
@@ -96,17 +57,6 @@ from .validation import (
|
|
|
96
57
|
|
|
97
58
|
# Re-export all functions at module level for convenience
|
|
98
59
|
__all__: List[str] = [
|
|
99
|
-
# Data structures
|
|
100
|
-
"flatten_dict_simple",
|
|
101
|
-
"unflatten_dict",
|
|
102
|
-
"get_nested_value_simple",
|
|
103
|
-
"set_nested_value",
|
|
104
|
-
"merge_dicts_simple",
|
|
105
|
-
"compare_data_structures",
|
|
106
|
-
"safe_get",
|
|
107
|
-
"remove_empty_values",
|
|
108
|
-
"extract_keys",
|
|
109
|
-
"rename_keys",
|
|
110
60
|
# JSON processing
|
|
111
61
|
"safe_json_serialize",
|
|
112
62
|
"safe_json_deserialize",
|
|
@@ -135,11 +85,6 @@ __all__: List[str] = [
|
|
|
135
85
|
"validate_data_types_simple",
|
|
136
86
|
"validate_range_simple",
|
|
137
87
|
"create_validation_report",
|
|
138
|
-
# Object serialization
|
|
139
|
-
"serialize_object",
|
|
140
|
-
"deserialize_object",
|
|
141
|
-
"sanitize_for_serialization",
|
|
142
|
-
"validate_pickle_safety",
|
|
143
88
|
# Configuration processing
|
|
144
89
|
"read_yaml_file",
|
|
145
90
|
"write_yaml_file",
|
|
@@ -149,19 +94,4 @@ __all__: List[str] = [
|
|
|
149
94
|
"write_ini_file",
|
|
150
95
|
"validate_config_schema",
|
|
151
96
|
"merge_config_files",
|
|
152
|
-
# Binary processing
|
|
153
|
-
"read_binary_file",
|
|
154
|
-
"write_binary_file",
|
|
155
|
-
"encode_binary_data",
|
|
156
|
-
"decode_binary_data",
|
|
157
|
-
"validate_binary_format",
|
|
158
|
-
"extract_binary_metadata",
|
|
159
|
-
# Archive processing
|
|
160
|
-
"create_zip_archive",
|
|
161
|
-
"extract_zip_archive",
|
|
162
|
-
"list_archive_contents",
|
|
163
|
-
"add_to_archive",
|
|
164
|
-
"create_tar_archive",
|
|
165
|
-
"extract_tar_archive",
|
|
166
|
-
"validate_archive_integrity",
|
|
167
97
|
]
|
{basic_open_agent_tools-0.7.0 → basic_open_agent_tools-0.7.2}/src/basic_open_agent_tools/helpers.py
RENAMED
|
@@ -134,39 +134,6 @@ def load_data_csv_tools() -> List[Callable[..., Any]]:
|
|
|
134
134
|
return tools
|
|
135
135
|
|
|
136
136
|
|
|
137
|
-
def load_data_structure_tools() -> List[Callable[..., Any]]:
|
|
138
|
-
"""Load data structure manipulation tools as a list of callable functions.
|
|
139
|
-
|
|
140
|
-
Returns:
|
|
141
|
-
List of data structure tool functions
|
|
142
|
-
|
|
143
|
-
Example:
|
|
144
|
-
>>> structure_tools = load_data_structure_tools()
|
|
145
|
-
>>> len(structure_tools) == 10
|
|
146
|
-
True
|
|
147
|
-
"""
|
|
148
|
-
from .data import structures
|
|
149
|
-
|
|
150
|
-
tools = []
|
|
151
|
-
structure_function_names = [
|
|
152
|
-
"flatten_dict_simple",
|
|
153
|
-
"unflatten_dict",
|
|
154
|
-
"get_nested_value_simple",
|
|
155
|
-
"set_nested_value",
|
|
156
|
-
"merge_dicts_simple",
|
|
157
|
-
"compare_data_structures",
|
|
158
|
-
"safe_get",
|
|
159
|
-
"remove_empty_values",
|
|
160
|
-
"extract_keys",
|
|
161
|
-
"rename_keys",
|
|
162
|
-
]
|
|
163
|
-
|
|
164
|
-
for name in structure_function_names:
|
|
165
|
-
func = getattr(structures, name)
|
|
166
|
-
if callable(func):
|
|
167
|
-
tools.append(func)
|
|
168
|
-
|
|
169
|
-
return tools
|
|
170
137
|
|
|
171
138
|
|
|
172
139
|
def load_data_validation_tools() -> List[Callable[..., Any]]:
|
|
@@ -231,33 +198,6 @@ def load_data_transformation_tools() -> List[Callable[..., Any]]:
|
|
|
231
198
|
return tools
|
|
232
199
|
|
|
233
200
|
|
|
234
|
-
def load_data_object_tools() -> List[Callable[..., Any]]:
|
|
235
|
-
"""Load object serialization tools as a list of callable functions.
|
|
236
|
-
|
|
237
|
-
Returns:
|
|
238
|
-
List of object serialization tool functions
|
|
239
|
-
|
|
240
|
-
Example:
|
|
241
|
-
>>> object_tools = load_data_object_tools()
|
|
242
|
-
>>> len(object_tools) == 4
|
|
243
|
-
True
|
|
244
|
-
"""
|
|
245
|
-
from .data import object_serialization
|
|
246
|
-
|
|
247
|
-
tools = []
|
|
248
|
-
object_function_names = [
|
|
249
|
-
"serialize_object",
|
|
250
|
-
"deserialize_object",
|
|
251
|
-
"sanitize_for_serialization",
|
|
252
|
-
"validate_pickle_safety",
|
|
253
|
-
]
|
|
254
|
-
|
|
255
|
-
for name in object_function_names:
|
|
256
|
-
func = getattr(object_serialization, name)
|
|
257
|
-
if callable(func):
|
|
258
|
-
tools.append(func)
|
|
259
|
-
|
|
260
|
-
return tools
|
|
261
201
|
|
|
262
202
|
|
|
263
203
|
def load_data_config_tools() -> List[Callable[..., Any]]:
|
|
@@ -293,67 +233,8 @@ def load_data_config_tools() -> List[Callable[..., Any]]:
|
|
|
293
233
|
return tools
|
|
294
234
|
|
|
295
235
|
|
|
296
|
-
def load_data_binary_tools() -> List[Callable[..., Any]]:
|
|
297
|
-
"""Load binary data processing tools as a list of callable functions.
|
|
298
|
-
|
|
299
|
-
Returns:
|
|
300
|
-
List of binary data processing tool functions
|
|
301
|
-
|
|
302
|
-
Example:
|
|
303
|
-
>>> binary_tools = load_data_binary_tools()
|
|
304
|
-
>>> len(binary_tools) == 6
|
|
305
|
-
True
|
|
306
|
-
"""
|
|
307
|
-
from .data import binary_processing
|
|
308
|
-
|
|
309
|
-
tools = []
|
|
310
|
-
binary_function_names = [
|
|
311
|
-
"read_binary_file",
|
|
312
|
-
"write_binary_file",
|
|
313
|
-
"encode_binary_data",
|
|
314
|
-
"decode_binary_data",
|
|
315
|
-
"validate_binary_format",
|
|
316
|
-
"extract_binary_metadata",
|
|
317
|
-
]
|
|
318
|
-
|
|
319
|
-
for name in binary_function_names:
|
|
320
|
-
func = getattr(binary_processing, name)
|
|
321
|
-
if callable(func):
|
|
322
|
-
tools.append(func)
|
|
323
|
-
|
|
324
|
-
return tools
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
def load_data_archive_tools() -> List[Callable[..., Any]]:
|
|
328
|
-
"""Load archive processing tools as a list of callable functions.
|
|
329
236
|
|
|
330
|
-
Returns:
|
|
331
|
-
List of archive processing tool functions
|
|
332
237
|
|
|
333
|
-
Example:
|
|
334
|
-
>>> archive_tools = load_data_archive_tools()
|
|
335
|
-
>>> len(archive_tools) == 7
|
|
336
|
-
True
|
|
337
|
-
"""
|
|
338
|
-
from .data import archive_processing
|
|
339
|
-
|
|
340
|
-
tools = []
|
|
341
|
-
archive_function_names = [
|
|
342
|
-
"create_zip_archive",
|
|
343
|
-
"extract_zip_archive",
|
|
344
|
-
"list_archive_contents",
|
|
345
|
-
"add_to_archive",
|
|
346
|
-
"create_tar_archive",
|
|
347
|
-
"extract_tar_archive",
|
|
348
|
-
"validate_archive_integrity",
|
|
349
|
-
]
|
|
350
|
-
|
|
351
|
-
for name in archive_function_names:
|
|
352
|
-
func = getattr(archive_processing, name)
|
|
353
|
-
if callable(func):
|
|
354
|
-
tools.append(func)
|
|
355
|
-
|
|
356
|
-
return tools
|
|
357
238
|
|
|
358
239
|
|
|
359
240
|
def merge_tool_lists(
|
|
@@ -451,7 +332,7 @@ def load_all_read_only_tools() -> List[Callable[..., Any]]:
|
|
|
451
332
|
|
|
452
333
|
Example:
|
|
453
334
|
>>> read_only_tools = load_all_read_only_tools()
|
|
454
|
-
>>> len(read_only_tools) >
|
|
335
|
+
>>> len(read_only_tools) > 35 # Should have 35+ read-only tools
|
|
455
336
|
True
|
|
456
337
|
"""
|
|
457
338
|
tools = []
|
|
@@ -479,15 +360,11 @@ def load_all_read_only_tools() -> List[Callable[..., Any]]:
|
|
|
479
360
|
# Text Processing Tools (10 tools - ALL are read-only)
|
|
480
361
|
tools.extend(load_all_text_tools())
|
|
481
362
|
|
|
482
|
-
# Data Read-Only Tools (
|
|
363
|
+
# Data Read-Only Tools (21 tools)
|
|
483
364
|
from .data import (
|
|
484
|
-
archive_processing,
|
|
485
|
-
binary_processing,
|
|
486
365
|
config_processing,
|
|
487
366
|
csv_tools,
|
|
488
367
|
json_tools,
|
|
489
|
-
object_serialization,
|
|
490
|
-
structures,
|
|
491
368
|
transform,
|
|
492
369
|
validation,
|
|
493
370
|
)
|
|
@@ -523,39 +400,8 @@ def load_all_read_only_tools() -> List[Callable[..., Any]]:
|
|
|
523
400
|
if callable(func):
|
|
524
401
|
tools.append(func)
|
|
525
402
|
|
|
526
|
-
# Binary read-only tools (3)
|
|
527
|
-
data_binary_read_only = [
|
|
528
|
-
"read_binary_file",
|
|
529
|
-
"validate_binary_format",
|
|
530
|
-
"extract_binary_metadata",
|
|
531
|
-
]
|
|
532
|
-
for name in data_binary_read_only:
|
|
533
|
-
func = getattr(binary_processing, name)
|
|
534
|
-
if callable(func):
|
|
535
|
-
tools.append(func)
|
|
536
403
|
|
|
537
|
-
# Archive read-only tools (2)
|
|
538
|
-
data_archive_read_only = ["list_archive_contents", "validate_archive_integrity"]
|
|
539
|
-
for name in data_archive_read_only:
|
|
540
|
-
func = getattr(archive_processing, name)
|
|
541
|
-
if callable(func):
|
|
542
|
-
tools.append(func)
|
|
543
404
|
|
|
544
|
-
# Structure read-only tools (8)
|
|
545
|
-
data_structure_read_only = [
|
|
546
|
-
"flatten_dict_simple",
|
|
547
|
-
"unflatten_dict",
|
|
548
|
-
"get_nested_value_simple",
|
|
549
|
-
"merge_dicts_simple",
|
|
550
|
-
"compare_data_structures",
|
|
551
|
-
"safe_get",
|
|
552
|
-
"remove_empty_values",
|
|
553
|
-
"extract_keys",
|
|
554
|
-
]
|
|
555
|
-
for name in data_structure_read_only:
|
|
556
|
-
func = getattr(structures, name)
|
|
557
|
-
if callable(func):
|
|
558
|
-
tools.append(func)
|
|
559
405
|
|
|
560
406
|
# Validation tools (5 - ALL are read-only)
|
|
561
407
|
data_validation_read_only = [
|
|
@@ -570,12 +416,6 @@ def load_all_read_only_tools() -> List[Callable[..., Any]]:
|
|
|
570
416
|
if callable(func):
|
|
571
417
|
tools.append(func)
|
|
572
418
|
|
|
573
|
-
# Object serialization read-only tools (2)
|
|
574
|
-
data_object_read_only = ["sanitize_for_serialization", "validate_pickle_safety"]
|
|
575
|
-
for name in data_object_read_only:
|
|
576
|
-
func = getattr(object_serialization, name)
|
|
577
|
-
if callable(func):
|
|
578
|
-
tools.append(func)
|
|
579
419
|
|
|
580
420
|
# Transform read-only tools (4 - analysis/cleaning without modification)
|
|
581
421
|
data_transform_read_only = [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: basic-open-agent-tools
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.2
|
|
4
4
|
Summary: An open foundational toolkit providing essential components for building AI agents with minimal dependencies for local (non-HTTP/API) actions.
|
|
5
5
|
Home-page: https://github.com/open-agent-tools/basic-open-agent-tools
|
|
6
6
|
Author: Open Agent Tools
|
|
@@ -13,13 +13,9 @@ src/basic_open_agent_tools.egg-info/requires.txt
|
|
|
13
13
|
src/basic_open_agent_tools.egg-info/top_level.txt
|
|
14
14
|
src/basic_open_agent_tools/crypto/__init__.py
|
|
15
15
|
src/basic_open_agent_tools/data/__init__.py
|
|
16
|
-
src/basic_open_agent_tools/data/archive_processing.py
|
|
17
|
-
src/basic_open_agent_tools/data/binary_processing.py
|
|
18
16
|
src/basic_open_agent_tools/data/config_processing.py
|
|
19
17
|
src/basic_open_agent_tools/data/csv_tools.py
|
|
20
18
|
src/basic_open_agent_tools/data/json_tools.py
|
|
21
|
-
src/basic_open_agent_tools/data/object_serialization.py
|
|
22
|
-
src/basic_open_agent_tools/data/structures.py
|
|
23
19
|
src/basic_open_agent_tools/data/transform.py
|
|
24
20
|
src/basic_open_agent_tools/data/validation.py
|
|
25
21
|
src/basic_open_agent_tools/file_system/__init__.py
|
|
@@ -32,13 +28,9 @@ src/basic_open_agent_tools/system/__init__.py
|
|
|
32
28
|
src/basic_open_agent_tools/text/__init__.py
|
|
33
29
|
src/basic_open_agent_tools/text/processing.py
|
|
34
30
|
src/basic_open_agent_tools/utilities/__init__.py
|
|
35
|
-
tests/test_data_archive_processing.py
|
|
36
|
-
tests/test_data_binary_processing.py
|
|
37
31
|
tests/test_data_config_processing.py
|
|
38
32
|
tests/test_data_csv_tools.py
|
|
39
33
|
tests/test_data_json_tools.py
|
|
40
|
-
tests/test_data_object_serialization.py
|
|
41
|
-
tests/test_data_structures.py
|
|
42
34
|
tests/test_data_transform.py
|
|
43
35
|
tests/test_data_validation.py
|
|
44
36
|
tests/test_file_system_tools.py
|
|
@@ -15,9 +15,9 @@ class TestReadOnlyTools:
|
|
|
15
15
|
def test_load_all_read_only_tools_count(self):
|
|
16
16
|
"""Test that we get the expected number of read-only tools."""
|
|
17
17
|
tools = boat.load_all_read_only_tools()
|
|
18
|
-
# Should have
|
|
19
|
-
# 11 file system + 10 text +
|
|
20
|
-
assert len(tools) ==
|
|
18
|
+
# Should have 40 read-only tools total:
|
|
19
|
+
# 11 file system + 10 text + 19 data = 40 (removed binary, structures, archives, objects)
|
|
20
|
+
assert len(tools) == 40
|
|
21
21
|
|
|
22
22
|
def test_all_returned_items_are_callable(self):
|
|
23
23
|
"""Test that all returned items are callable functions."""
|
|
@@ -37,7 +37,7 @@ class TestReadOnlyTools:
|
|
|
37
37
|
# Verify counts
|
|
38
38
|
assert len(fs_tools) == 11 # File system read-only tools
|
|
39
39
|
assert len(text_tools) == 10 # All text tools are read-only
|
|
40
|
-
assert len(data_tools) ==
|
|
40
|
+
assert len(data_tools) == 19 # Data read-only tools (removed binary, structures, archives, objects)
|
|
41
41
|
|
|
42
42
|
def test_read_only_tools_exclude_write_operations(self):
|
|
43
43
|
"""Test that read-only tools exclude write/modify operations."""
|
|
@@ -86,9 +86,6 @@ class TestReadOnlyTools:
|
|
|
86
86
|
"validate_schema_simple",
|
|
87
87
|
"clean_whitespace",
|
|
88
88
|
"extract_sentences",
|
|
89
|
-
"flatten_dict_simple",
|
|
90
|
-
"validate_binary_format",
|
|
91
|
-
"list_archive_contents",
|
|
92
89
|
]
|
|
93
90
|
|
|
94
91
|
for expected in expected_read_only:
|
|
@@ -126,5 +123,5 @@ class TestReadOnlyTools:
|
|
|
126
123
|
assert "read_only" in all_tools
|
|
127
124
|
assert isinstance(all_tools["read_only"], list)
|
|
128
125
|
assert (
|
|
129
|
-
len(all_tools["read_only"]) ==
|
|
126
|
+
len(all_tools["read_only"]) == 40
|
|
130
127
|
) # Should match our read-only tool count
|