An open foundational toolkit providing essential components for building AI agents with minimal dependencies for local (non-HTTP/API) actions.
Project description
basic-open-agent-tools
An open foundational toolkit providing essential components for building AI agents with minimal dependencies for local (non-HTTP/API) actions. Designed with agent-friendly type signatures to eliminate "signature too complex" errors, while offering core utilities that developers can easily integrate into their agents to avoid excess boilerplate.
Installation
pip install basic-open-agent-tools
Or with UV:
uv add basic-open-agent-tools
Key Features
✨ Agent-Friendly Design: All functions use simplified type signatures to prevent "signature too complex" errors when used with AI agent frameworks
🚀 Minimal Dependencies: Pure Python implementation with no external dependencies for core functionality
🔧 Modular Architecture: Load only the tools you need with category-specific helpers
Quick Start
import logging
import warnings
from dotenv import load_dotenv
from google.adk.agents import Agent
from google.adk.models.lite_llm import LiteLlm
import basic_open_agent_tools as boat
# Load tools by category
fs_tools = boat.load_all_filesystem_tools() # 18 functions
text_tools = boat.load_all_text_tools() # 10 functions
# Merge for agent use (automatically deduplicates)
agent_tools = boat.merge_tool_lists(fs_tools, text_tools)
load_dotenv()
agent_instruction = """
**INSTRUCTION:**
You are FileOps, a specialized file and directory operations sub-agent.
Your role is to execute file operations (create, read, update, delete, move, copy) and directory operations (create, delete) with precision.
**Guidelines:**
- **Preserve Content:** Always read full file content before modifications; retain all original content except targeted changes.
- **Precision:** Execute instructions exactly, verify operations, and handle errors with specific details.
- **Communication:** Provide concise, technical status reports (success/failure, file paths, operation type, content preservation details).
- **Scope:** File/directory CRUD, move, copy, path validation. No code analysis.
- **Confirmation:** Confirm completion to the senior developer with specific details of modifications.
"""
logging.basicConfig(level=logging.ERROR)
warnings.filterwarnings("ignore")
file_ops_agent = Agent(
model=LiteLlm(model="anthropic/claude-3-5-haiku-20241022"),
name="FileOps",
instruction=agent_instruction,
description="Specialized file and directory operations sub-agent for the Python developer.",
tools=agent_tools,
)
"""
The above would load:
File and Directory Operations:
read_file_to_string
write_file_from_string
append_to_file
list_directory_contents
create_directory
delete_file
delete_directory
move_file
copy_file
get_file_info
file_exists
directory_exists
get_file_size
is_empty_directory
list_all_directory_contents
generate_directory_tree
validate_path
validate_file_content
Text Processing Tools:
clean_whitespace
normalize_line_endings
strip_html_tags
normalize_unicode
to_snake_case
to_camel_case
to_title_case
smart_split_lines
extract_sentences
join_with_oxford_comma
"""
Documentation
- Getting Started - Installation and quick start guide
- Examples - Detailed usage examples and patterns
- Contributing - Development setup and guidelines
Current Features
File System Tools ✅ (18 functions)
- File operations (read, write, append, delete, copy, move)
- Directory operations (create, list, delete, tree visualization)
- File information and existence checking
- Path validation and error handling
Text Processing Tools ✅ (10 functions)
- Text cleaning and normalization
- Case conversion utilities (snake_case, camelCase, Title Case)
- Smart text splitting and sentence extraction
- HTML tag removal and Unicode normalization
Data Tools ✅ (28+ functions with Agent-Friendly Signatures)
Enhanced for AI Agents: All functions use simplified type signatures for maximum compatibility
- Structure Tools:
flatten_dict_simple,merge_dicts_simple,get_nested_value_simple - CSV Tools:
read_csv_simple,write_csv_simplewith basic types - Validation Tools:
validate_schema_simple,validate_data_types_simple - JSON & Config: Safe serialization with compression and validation
- Transform Tools: Data cleaning and normalization functions
Additional Data Modules 📋:
- Object serialization and configuration files (YAML, TOML, INI)
- Binary data processing and archive handling
- Advanced transformation and streaming utilities
✨ Agent Compatibility: All data functions use basic Python types (str, dict, list, bool) instead of complex Union types or custom type aliases, ensuring seamless integration with AI agent frameworks.
Future Modules 🚧
- Network Tools - HTTP utilities, API helpers
- System Tools - Process management, system information
- Crypto Tools - Hashing, encoding, basic cryptographic utilities
- Utilities - Development and debugging helpers
Contributing
We welcome contributions! Please see our Contributing Guide for development setup, coding standards, and pull request process.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file basic_open_agent_tools-0.7.6.tar.gz.
File metadata
- Download URL: basic_open_agent_tools-0.7.6.tar.gz
- Upload date:
- Size: 39.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69ea5aaeaa88cc2224b48f4c78ee2257ba9f1940d4890b02d379329a6d7bb6f6
|
|
| MD5 |
2e9755c940f575f91feaa8800f6710a2
|
|
| BLAKE2b-256 |
7413946d376792f25f400ecfd14be7294582febc36c7ad2590acaa0921c8973b
|
Provenance
The following attestation bundles were made for basic_open_agent_tools-0.7.6.tar.gz:
Publisher:
publish.yml on Open-Agent-Tools/basic-open-agent-tools
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
basic_open_agent_tools-0.7.6.tar.gz -
Subject digest:
69ea5aaeaa88cc2224b48f4c78ee2257ba9f1940d4890b02d379329a6d7bb6f6 - Sigstore transparency entry: 253717218
- Sigstore integration time:
-
Permalink:
Open-Agent-Tools/basic-open-agent-tools@893688aa93967dea3140dc311a324f15cccaffdb -
Branch / Tag:
refs/tags/v0.7.6 - Owner: https://github.com/Open-Agent-Tools
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@893688aa93967dea3140dc311a324f15cccaffdb -
Trigger Event:
release
-
Statement type:
File details
Details for the file basic_open_agent_tools-0.7.6-py3-none-any.whl.
File metadata
- Download URL: basic_open_agent_tools-0.7.6-py3-none-any.whl
- Upload date:
- Size: 29.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ca1419aaf2a160783cf2f4879493b5be2ae965e003117c1edcb21ce2196b5e15
|
|
| MD5 |
a415c2f056cc3b898cd4434c9148c7ce
|
|
| BLAKE2b-256 |
af21fb79bf43f29320fa2ad35c6c186ed0d10915126892492748d16ab9ddb44a
|
Provenance
The following attestation bundles were made for basic_open_agent_tools-0.7.6-py3-none-any.whl:
Publisher:
publish.yml on Open-Agent-Tools/basic-open-agent-tools
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
basic_open_agent_tools-0.7.6-py3-none-any.whl -
Subject digest:
ca1419aaf2a160783cf2f4879493b5be2ae965e003117c1edcb21ce2196b5e15 - Sigstore transparency entry: 253717220
- Sigstore integration time:
-
Permalink:
Open-Agent-Tools/basic-open-agent-tools@893688aa93967dea3140dc311a324f15cccaffdb -
Branch / Tag:
refs/tags/v0.7.6 - Owner: https://github.com/Open-Agent-Tools
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@893688aa93967dea3140dc311a324f15cccaffdb -
Trigger Event:
release
-
Statement type: