basic-open-agent-tools


Namebasic-open-agent-tools JSON
Version 0.11.4 PyPI version JSON
download
home_pageNone
SummaryAn open foundational toolkit providing essential components for building AI agents with minimal dependencies for local (non-HTTP/API) actions.
upload_time2025-10-06 19:19:36
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords ai agents toolkit automation local-tools
VCS
bugtrack_url
requirements google-adk litellm ollama a2a-sdk basic-open-agent-tools openai transformers huggingface-hub requests beautifulsoup4 selenium aiohttp httpx pandas numpy python-dotenv pandas-stubs python-docx openpyxl markdown click typer rich pydantic pytest pytest-cov pytest-asyncio pytest-mock tabulate rouge-score ruff mypy ast-decompiler black flake8 loguru structlog pyyaml toml configparser pre-commit virtualenv pip-tools setuptools jupyter ipykernel notebook fastapi uvicorn sqlalchemy faiss-cpu
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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.

## 🆕 What's New in v0.11.3

🔧 **File Operation Logging**: Enhanced input logging for `replace_in_file()` and `insert_at_line()` functions with detailed parameter tracking

🛡️ **Security Auditing**: Added comprehensive logging for file modification operations with truncated parameter display for security monitoring

📝 **Operation Visibility**: Real-time tracking of file content changes and line insertions with `[FILE]` prefix logging

🔐 **Enhanced Monitoring**: Complete audit trail for file modification operations ensuring security compliance and debugging capability

## Installation

### Basic Installation
```bash
pip install basic-open-agent-tools
```

Or with UV:
```bash
uv add basic-open-agent-tools
```

### Optional Dependency Groups
Install only the features you need:

```bash
# System tools (process management, system info, shell commands)
pip install basic-open-agent-tools[system]

# PDF tools (reading and creating PDFs)
pip install basic-open-agent-tools[pdf]

# All optional features
pip install basic-open-agent-tools[all]

# Development dependencies (testing, linting, type checking)
pip install basic-open-agent-tools[dev]

# Testing only
pip install basic-open-agent-tools[test]
```

**💡 Tip**: Use `[all]` to get all optional features, or combine specific groups as needed.

### Dependency Groups Explained

| Group | Dependencies | Use Case |
|-------|-------------|----------|
| **`[system]`** | `psutil>=5.9.0` | Process management, system monitoring, resource usage |
| **`[pdf]`** | `PyPDF2>=3.0.0`, `reportlab>=4.0.0` | PDF reading, creation, and manipulation |
| **`[all]`** | All optional dependencies | Complete feature set with all capabilities |
| **`[dev]`** | All above + testing/linting tools | Development, testing, and code quality |
| **`[test]`** | All above + testing tools only | CI/CD and automated testing |

## 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, or use `load_all_tools()` for everything

🤝 **Multi-Framework Compatibility**: Native support for Google ADK, LangChain, Strands Agents, and custom agent frameworks with `@strands_tool` decorators

🔍 **Enhanced User Feedback**: Detailed operation confirmations and permission checking across all write operations for better agent decision-making

## Quick Start

```python
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

# Option 1: Load all tools at once (recommended)
agent_tools = boat.load_all_tools()  # All 166 functions from all modules

# Enhanced feedback and logging examples:
# All write operations now return detailed feedback strings
result = boat.file_system.write_file_from_string(
    file_path="/tmp/example.txt",
    content="Hello, World!",
    force=True  # Required to prevent accidental overwrites
)
# Returns: "Created file /tmp/example.txt with 1 lines (13 bytes)"

# Data tools also provide enhanced feedback
csv_result = boat.data.write_csv_simple(
    data=[{"name": "Alice", "age": 30}],
    file_path="/tmp/data.csv",
    delimiter=",",
    headers=True,
    force=True
)
# Returns: "Created CSV file /tmp/data.csv with 1 rows and 2 columns (17 bytes)"

# Option 2: Load tools by category
fs_tools = boat.load_all_filesystem_tools()      # 18 functions
text_tools = boat.load_all_text_tools()         # 10 functions
data_tools = boat.load_all_data_tools()         # 23 functions
datetime_tools = boat.load_all_datetime_tools() # 40 functions
network_tools = boat.load_all_network_tools()   # 4 functions (NEW: DNS, port checking)
utilities_tools = boat.load_all_utilities_tools() # 8 functions (NEW: debugging tools)
system_tools = boat.load_all_system_tools()     # 19 functions
crypto_tools = boat.load_all_crypto_tools()     # 14 functions
pdf_tools = boat.load_all_pdf_tools()           # 8 functions (NEW: advanced manipulation)
archive_tools = boat.load_all_archive_tools()   # 9 functions (NEW: GZIP, BZIP2, XZ)
logging_tools = boat.load_all_logging_tools()   # 5 functions
monitoring_tools = boat.load_all_monitoring_tools() # 8 functions (NEW: performance profiling)

# Merge selected categories (automatically deduplicates)
agent_tools = boat.merge_tool_lists(fs_tools, text_tools, network_tools, utilities_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

Network Tools:
    http_request

Utilities Tools:
    sleep_seconds

"""

```

## Documentation

- **[Getting Started](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/getting-started.md)** - Installation and quick start guide
- **[API Reference](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/api-reference.md)** - Complete function reference and lookup
- **[Examples](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/examples.md)** - Detailed usage examples and patterns
- **[FAQ](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/faq.md)** - Frequently asked questions and troubleshooting
- **[Glossary](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/glossary.md)** - Agent framework terminology reference
- **[Contributing](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/contributing.md)** - Development setup and guidelines
- **[Changelog](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/CHANGELOG.md)** - Version history and migration notes

## Current Features

### File System Tools ✅ (18 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/file_system/README.md)**

- File operations (read, write, append, delete, copy, move)
- Directory operations (create, list, delete, tree visualization)
- File information and existence checking
- Path validation and security features
- **🆕 Enhanced feedback**: All write operations now include `force` parameter and return detailed operation summaries

### Text Processing Tools ✅ (10 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/text/README.md)**

- Text cleaning and whitespace normalization
- Case conversion utilities (snake_case, camelCase, Title Case)
- Smart text splitting and sentence extraction
- HTML tag removal and Unicode normalization

### Data Processing Tools ✅ (23 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/data/README.md)**

- **JSON Processing**: Safe serialization, validation, compression
- **CSV Operations**: Reading, writing, cleaning, validation
- **Configuration Files**: YAML, TOML, INI processing
- **Data Validation**: Schema checking, type validation, field validation
- **Agent-Friendly Signatures**: All functions use basic Python types for maximum AI framework compatibility
- **🆕 Enhanced feedback**: All write operations include detailed reports with row/column counts and file sizes

### DateTime Tools ✅ (40 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/datetime/README.md)**

- **Current Date/Time**: Timezone-aware current date/time operations
- **Date Arithmetic**: Add/subtract days, hours, minutes with proper handling
- **Date Ranges**: Generate date ranges, quarters, business days
- **Validation**: ISO format validation, range checking, format verification
- **Business Logic**: Business day calculations, timezone conversions
- **Information Extraction**: Weekday names, month names, leap years

### Network Tools ✅ (4 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/network/README.md)**

- **HTTP Client**: Make API calls and fetch web data with comprehensive error handling
- **DNS Resolution**: Resolve hostnames to IP addresses and reverse DNS lookups
- **Port Checking**: Check if ports are open on remote hosts with timeout controls
- **Agent-Friendly**: Simplified type signatures and structured responses
- **Strands Compatible**: Native `@strands_tool` decorator support
- **Security**: SSL verification, timeout controls, proper error handling

### Utilities Tools ✅ (8 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/utilities/README.md)**

- **Timing Controls**: Pause execution with interrupt handling and precision sleep
- **Debugging Tools**: Function signature inspection, call stack analysis, exception formatting
- **Code Validation**: Validate function calls before execution
- **Variable Tracing**: Track how variables change through operations
- **Strands Compatible**: Native `@strands_tool` decorator support
- **Agent-Friendly**: Structured responses with detailed debugging information

### System Tools ✅ (19 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/system/README.md)**

- **Cross-Platform Shell**: Execute shell commands on Windows, macOS, and Linux
- **Process Management**: Get process info, list running processes, check if processes are running
- **System Information**: CPU usage, memory usage, disk usage, system uptime
- **Environment Variables**: Get, set, and list environment variables
- **Runtime Inspection**: Inspect Python environment, modules, and system context

### Crypto Tools ✅ (14 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/crypto/README.md)**

- **Hashing**: MD5, SHA-256, SHA-512 hashing for strings and files
- **Encoding**: Base64, URL, and hex encoding/decoding
- **Generation**: UUIDs, random strings, and random bytes with configurable entropy
- **Verification**: Checksum verification and hash validation

### PDF Tools ✅ (8 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/pdf/README.md)**

- **PDF Reading**: Extract text from PDFs with page range support
- **PDF Creation**: Convert text to PDF with customizable formatting and merging
- **PDF Information**: Get metadata and document information
- **PDF Manipulation**: Split PDFs, extract pages, rotate pages, add watermarks
- **Advanced Features**: Page-specific operations and document transformation

### Archive Tools ✅ (9 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/archive/README.md)**

- **ZIP Operations**: Create and extract ZIP archives
- **TAR Operations**: Create and extract TAR archives
- **Advanced Compression**: GZIP, BZIP2, and XZ/LZMA single-file compression
- **Compression Analysis**: Detailed compression ratios and space savings metrics
- **Multiple Formats**: Support for all major compression formats with statistics
- **🆕 Enhanced feedback**: Archive creation returns detailed compression statistics and file counts

### Logging Tools ✅ (5 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/logging/README.md)**

- **Structured Logging**: JSON-formatted logging with configurable fields
- **Log Rotation**: Automatic log file rotation and cleanup
- **Multiple Handlers**: File, console, and rotating file handlers

### Monitoring Tools ✅ (8 functions)
📖 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/monitoring/README.md)**

- **File Watching**: Monitor files and directories for changes
- **Health Checks**: URL health monitoring and service status checks
- **Performance Profiling**: System performance monitoring and code execution profiling
- **Benchmarking**: Disk I/O benchmarking and system load analysis
- **Real-time Monitoring**: Event-driven file system and performance monitoring

**Total: 166 implemented functions** across 12 categories, designed specifically for building AI agents with comprehensive local operations, network utilities, advanced file processing, and development debugging tools.

## Helper Functions

### Load All Tools at Once ⚡
```python
import basic_open_agent_tools as boat

# Get all 166 functions from all modules
all_tools = boat.load_all_tools()

# Use with any agent framework
agent = Agent(tools=all_tools)
```

### Selective Loading 🎯
```python
# Load specific categories
fs_tools = boat.load_all_filesystem_tools()          # File operations
text_tools = boat.load_all_text_tools()             # Text processing
data_tools = boat.load_all_data_tools()             # JSON, CSV, config files
datetime_tools = boat.load_all_datetime_tools()     # Date/time operations
network_tools = boat.load_all_network_tools()       # HTTP client
utilities_tools = boat.load_all_utilities_tools()   # Timing functions
system_tools = boat.load_all_system_tools()         # Shell, processes, system info
crypto_tools = boat.load_all_crypto_tools()         # Hashing, encoding, generation
pdf_tools = boat.load_all_pdf_tools()               # PDF reading and creation
archive_tools = boat.load_all_archive_tools()       # ZIP and TAR operations
logging_tools = boat.load_all_logging_tools()       # Structured logging
monitoring_tools = boat.load_all_monitoring_tools() # File watching, health checks

# Merge selected tools (automatically deduplicates)
custom_tools = boat.merge_tool_lists(
    fs_tools,
    network_tools,
    system_tools,
    crypto_tools
)
```


## Contributing

We welcome contributions! Please see our [Contributing Guide](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/contributing.md) for development setup, coding standards, and pull request process.




            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "basic-open-agent-tools",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "ai, agents, toolkit, automation, local-tools",
    "author": null,
    "author_email": "Open Agent Tools <unseriousai@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/ce/19/0efce5bb6af4f2ea1b8393d5d9ebf729e9eede5756090f452ff6ad273625/basic_open_agent_tools-0.11.4.tar.gz",
    "platform": null,
    "description": "# basic-open-agent-tools\n\nAn 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.\n\n## \ud83c\udd95 What's New in v0.11.3\n\n\ud83d\udd27 **File Operation Logging**: Enhanced input logging for `replace_in_file()` and `insert_at_line()` functions with detailed parameter tracking\n\n\ud83d\udee1\ufe0f **Security Auditing**: Added comprehensive logging for file modification operations with truncated parameter display for security monitoring\n\n\ud83d\udcdd **Operation Visibility**: Real-time tracking of file content changes and line insertions with `[FILE]` prefix logging\n\n\ud83d\udd10 **Enhanced Monitoring**: Complete audit trail for file modification operations ensuring security compliance and debugging capability\n\n## Installation\n\n### Basic Installation\n```bash\npip install basic-open-agent-tools\n```\n\nOr with UV:\n```bash\nuv add basic-open-agent-tools\n```\n\n### Optional Dependency Groups\nInstall only the features you need:\n\n```bash\n# System tools (process management, system info, shell commands)\npip install basic-open-agent-tools[system]\n\n# PDF tools (reading and creating PDFs)\npip install basic-open-agent-tools[pdf]\n\n# All optional features\npip install basic-open-agent-tools[all]\n\n# Development dependencies (testing, linting, type checking)\npip install basic-open-agent-tools[dev]\n\n# Testing only\npip install basic-open-agent-tools[test]\n```\n\n**\ud83d\udca1 Tip**: Use `[all]` to get all optional features, or combine specific groups as needed.\n\n### Dependency Groups Explained\n\n| Group | Dependencies | Use Case |\n|-------|-------------|----------|\n| **`[system]`** | `psutil>=5.9.0` | Process management, system monitoring, resource usage |\n| **`[pdf]`** | `PyPDF2>=3.0.0`, `reportlab>=4.0.0` | PDF reading, creation, and manipulation |\n| **`[all]`** | All optional dependencies | Complete feature set with all capabilities |\n| **`[dev]`** | All above + testing/linting tools | Development, testing, and code quality |\n| **`[test]`** | All above + testing tools only | CI/CD and automated testing |\n\n## Key Features\n\n\u2728 **Agent-Friendly Design**: All functions use simplified type signatures to prevent \"signature too complex\" errors when used with AI agent frameworks\n\n\ud83d\ude80 **Minimal Dependencies**: Pure Python implementation with no external dependencies for core functionality\n\n\ud83d\udd27 **Modular Architecture**: Load only the tools you need with category-specific helpers, or use `load_all_tools()` for everything\n\n\ud83e\udd1d **Multi-Framework Compatibility**: Native support for Google ADK, LangChain, Strands Agents, and custom agent frameworks with `@strands_tool` decorators\n\n\ud83d\udd0d **Enhanced User Feedback**: Detailed operation confirmations and permission checking across all write operations for better agent decision-making\n\n## Quick Start\n\n```python\nimport logging\nimport warnings\nfrom dotenv import load_dotenv\nfrom google.adk.agents import Agent\nfrom google.adk.models.lite_llm import LiteLlm\n\nimport basic_open_agent_tools as boat\n\n# Option 1: Load all tools at once (recommended)\nagent_tools = boat.load_all_tools()  # All 166 functions from all modules\n\n# Enhanced feedback and logging examples:\n# All write operations now return detailed feedback strings\nresult = boat.file_system.write_file_from_string(\n    file_path=\"/tmp/example.txt\",\n    content=\"Hello, World!\",\n    force=True  # Required to prevent accidental overwrites\n)\n# Returns: \"Created file /tmp/example.txt with 1 lines (13 bytes)\"\n\n# Data tools also provide enhanced feedback\ncsv_result = boat.data.write_csv_simple(\n    data=[{\"name\": \"Alice\", \"age\": 30}],\n    file_path=\"/tmp/data.csv\",\n    delimiter=\",\",\n    headers=True,\n    force=True\n)\n# Returns: \"Created CSV file /tmp/data.csv with 1 rows and 2 columns (17 bytes)\"\n\n# Option 2: Load tools by category\nfs_tools = boat.load_all_filesystem_tools()      # 18 functions\ntext_tools = boat.load_all_text_tools()         # 10 functions\ndata_tools = boat.load_all_data_tools()         # 23 functions\ndatetime_tools = boat.load_all_datetime_tools() # 40 functions\nnetwork_tools = boat.load_all_network_tools()   # 4 functions (NEW: DNS, port checking)\nutilities_tools = boat.load_all_utilities_tools() # 8 functions (NEW: debugging tools)\nsystem_tools = boat.load_all_system_tools()     # 19 functions\ncrypto_tools = boat.load_all_crypto_tools()     # 14 functions\npdf_tools = boat.load_all_pdf_tools()           # 8 functions (NEW: advanced manipulation)\narchive_tools = boat.load_all_archive_tools()   # 9 functions (NEW: GZIP, BZIP2, XZ)\nlogging_tools = boat.load_all_logging_tools()   # 5 functions\nmonitoring_tools = boat.load_all_monitoring_tools() # 8 functions (NEW: performance profiling)\n\n# Merge selected categories (automatically deduplicates)\nagent_tools = boat.merge_tool_lists(fs_tools, text_tools, network_tools, utilities_tools)\n\n\nload_dotenv()\n\nagent_instruction = \"\"\"\n**INSTRUCTION:**\nYou are FileOps, a specialized file and directory operations sub-agent.\nYour role is to execute file operations (create, read, update, delete, move, copy) and directory operations (create, delete) with precision.\n**Guidelines:**\n- **Preserve Content:** Always read full file content before modifications; retain all original content except targeted changes.\n- **Precision:** Execute instructions exactly, verify operations, and handle errors with specific details.\n- **Communication:** Provide concise, technical status reports (success/failure, file paths, operation type, content preservation details).\n- **Scope:** File/directory CRUD, move, copy, path validation. No code analysis.\n- **Confirmation:** Confirm completion to the senior developer with specific details of modifications.\n\"\"\"\n\nlogging.basicConfig(level=logging.ERROR)\nwarnings.filterwarnings(\"ignore\")\n\nfile_ops_agent = Agent(\n    model=LiteLlm(model=\"anthropic/claude-3-5-haiku-20241022\"),\n    name=\"FileOps\",\n    instruction=agent_instruction,\n    description=\"Specialized file and directory operations sub-agent for the Python developer.\",\n    tools=agent_tools,\n)\n\n\"\"\"\nThe above would load:\n\nFile and Directory Operations:\n    read_file_to_string\n    write_file_from_string\n    append_to_file\n    list_directory_contents\n    create_directory\n    delete_file\n    delete_directory\n    move_file\n    copy_file\n    get_file_info\n    file_exists\n    directory_exists\n    get_file_size\n    is_empty_directory\n    list_all_directory_contents\n    generate_directory_tree\n    validate_path\n    validate_file_content\n\nText Processing Tools:\n    clean_whitespace\n    normalize_line_endings\n    strip_html_tags\n    normalize_unicode\n    to_snake_case\n    to_camel_case\n    to_title_case\n    smart_split_lines\n    extract_sentences\n    join_with_oxford_comma\n\nNetwork Tools:\n    http_request\n\nUtilities Tools:\n    sleep_seconds\n\n\"\"\"\n\n```\n\n## Documentation\n\n- **[Getting Started](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/getting-started.md)** - Installation and quick start guide\n- **[API Reference](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/api-reference.md)** - Complete function reference and lookup\n- **[Examples](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/examples.md)** - Detailed usage examples and patterns\n- **[FAQ](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/faq.md)** - Frequently asked questions and troubleshooting\n- **[Glossary](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/glossary.md)** - Agent framework terminology reference\n- **[Contributing](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/contributing.md)** - Development setup and guidelines\n- **[Changelog](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/CHANGELOG.md)** - Version history and migration notes\n\n## Current Features\n\n### File System Tools \u2705 (18 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/file_system/README.md)**\n\n- File operations (read, write, append, delete, copy, move)\n- Directory operations (create, list, delete, tree visualization)\n- File information and existence checking\n- Path validation and security features\n- **\ud83c\udd95 Enhanced feedback**: All write operations now include `force` parameter and return detailed operation summaries\n\n### Text Processing Tools \u2705 (10 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/text/README.md)**\n\n- Text cleaning and whitespace normalization\n- Case conversion utilities (snake_case, camelCase, Title Case)\n- Smart text splitting and sentence extraction\n- HTML tag removal and Unicode normalization\n\n### Data Processing Tools \u2705 (23 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/data/README.md)**\n\n- **JSON Processing**: Safe serialization, validation, compression\n- **CSV Operations**: Reading, writing, cleaning, validation\n- **Configuration Files**: YAML, TOML, INI processing\n- **Data Validation**: Schema checking, type validation, field validation\n- **Agent-Friendly Signatures**: All functions use basic Python types for maximum AI framework compatibility\n- **\ud83c\udd95 Enhanced feedback**: All write operations include detailed reports with row/column counts and file sizes\n\n### DateTime Tools \u2705 (40 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/datetime/README.md)**\n\n- **Current Date/Time**: Timezone-aware current date/time operations\n- **Date Arithmetic**: Add/subtract days, hours, minutes with proper handling\n- **Date Ranges**: Generate date ranges, quarters, business days\n- **Validation**: ISO format validation, range checking, format verification\n- **Business Logic**: Business day calculations, timezone conversions\n- **Information Extraction**: Weekday names, month names, leap years\n\n### Network Tools \u2705 (4 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/network/README.md)**\n\n- **HTTP Client**: Make API calls and fetch web data with comprehensive error handling\n- **DNS Resolution**: Resolve hostnames to IP addresses and reverse DNS lookups\n- **Port Checking**: Check if ports are open on remote hosts with timeout controls\n- **Agent-Friendly**: Simplified type signatures and structured responses\n- **Strands Compatible**: Native `@strands_tool` decorator support\n- **Security**: SSL verification, timeout controls, proper error handling\n\n### Utilities Tools \u2705 (8 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/utilities/README.md)**\n\n- **Timing Controls**: Pause execution with interrupt handling and precision sleep\n- **Debugging Tools**: Function signature inspection, call stack analysis, exception formatting\n- **Code Validation**: Validate function calls before execution\n- **Variable Tracing**: Track how variables change through operations\n- **Strands Compatible**: Native `@strands_tool` decorator support\n- **Agent-Friendly**: Structured responses with detailed debugging information\n\n### System Tools \u2705 (19 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/system/README.md)**\n\n- **Cross-Platform Shell**: Execute shell commands on Windows, macOS, and Linux\n- **Process Management**: Get process info, list running processes, check if processes are running\n- **System Information**: CPU usage, memory usage, disk usage, system uptime\n- **Environment Variables**: Get, set, and list environment variables\n- **Runtime Inspection**: Inspect Python environment, modules, and system context\n\n### Crypto Tools \u2705 (14 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/crypto/README.md)**\n\n- **Hashing**: MD5, SHA-256, SHA-512 hashing for strings and files\n- **Encoding**: Base64, URL, and hex encoding/decoding\n- **Generation**: UUIDs, random strings, and random bytes with configurable entropy\n- **Verification**: Checksum verification and hash validation\n\n### PDF Tools \u2705 (8 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/pdf/README.md)**\n\n- **PDF Reading**: Extract text from PDFs with page range support\n- **PDF Creation**: Convert text to PDF with customizable formatting and merging\n- **PDF Information**: Get metadata and document information\n- **PDF Manipulation**: Split PDFs, extract pages, rotate pages, add watermarks\n- **Advanced Features**: Page-specific operations and document transformation\n\n### Archive Tools \u2705 (9 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/archive/README.md)**\n\n- **ZIP Operations**: Create and extract ZIP archives\n- **TAR Operations**: Create and extract TAR archives\n- **Advanced Compression**: GZIP, BZIP2, and XZ/LZMA single-file compression\n- **Compression Analysis**: Detailed compression ratios and space savings metrics\n- **Multiple Formats**: Support for all major compression formats with statistics\n- **\ud83c\udd95 Enhanced feedback**: Archive creation returns detailed compression statistics and file counts\n\n### Logging Tools \u2705 (5 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/logging/README.md)**\n\n- **Structured Logging**: JSON-formatted logging with configurable fields\n- **Log Rotation**: Automatic log file rotation and cleanup\n- **Multiple Handlers**: File, console, and rotating file handlers\n\n### Monitoring Tools \u2705 (8 functions)\n\ud83d\udcd6 **[Complete Documentation](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/src/basic_open_agent_tools/monitoring/README.md)**\n\n- **File Watching**: Monitor files and directories for changes\n- **Health Checks**: URL health monitoring and service status checks\n- **Performance Profiling**: System performance monitoring and code execution profiling\n- **Benchmarking**: Disk I/O benchmarking and system load analysis\n- **Real-time Monitoring**: Event-driven file system and performance monitoring\n\n**Total: 166 implemented functions** across 12 categories, designed specifically for building AI agents with comprehensive local operations, network utilities, advanced file processing, and development debugging tools.\n\n## Helper Functions\n\n### Load All Tools at Once \u26a1\n```python\nimport basic_open_agent_tools as boat\n\n# Get all 166 functions from all modules\nall_tools = boat.load_all_tools()\n\n# Use with any agent framework\nagent = Agent(tools=all_tools)\n```\n\n### Selective Loading \ud83c\udfaf\n```python\n# Load specific categories\nfs_tools = boat.load_all_filesystem_tools()          # File operations\ntext_tools = boat.load_all_text_tools()             # Text processing\ndata_tools = boat.load_all_data_tools()             # JSON, CSV, config files\ndatetime_tools = boat.load_all_datetime_tools()     # Date/time operations\nnetwork_tools = boat.load_all_network_tools()       # HTTP client\nutilities_tools = boat.load_all_utilities_tools()   # Timing functions\nsystem_tools = boat.load_all_system_tools()         # Shell, processes, system info\ncrypto_tools = boat.load_all_crypto_tools()         # Hashing, encoding, generation\npdf_tools = boat.load_all_pdf_tools()               # PDF reading and creation\narchive_tools = boat.load_all_archive_tools()       # ZIP and TAR operations\nlogging_tools = boat.load_all_logging_tools()       # Structured logging\nmonitoring_tools = boat.load_all_monitoring_tools() # File watching, health checks\n\n# Merge selected tools (automatically deduplicates)\ncustom_tools = boat.merge_tool_lists(\n    fs_tools,\n    network_tools,\n    system_tools,\n    crypto_tools\n)\n```\n\n\n## Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](https://github.com/open-agent-tools/basic-open-agent-tools/blob/main/docs/contributing.md) for development setup, coding standards, and pull request process.\n\n\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "An open foundational toolkit providing essential components for building AI agents with minimal dependencies for local (non-HTTP/API) actions.",
    "version": "0.11.4",
    "project_urls": {
        "Documentation": "https://github.com/open-agent-tools/basic-open-agent-tools#readme",
        "Homepage": "https://github.com/open-agent-tools/basic-open-agent-tools",
        "Issues": "https://github.com/open-agent-tools/basic-open-agent-tools/issues",
        "Repository": "https://github.com/open-agent-tools/basic-open-agent-tools"
    },
    "split_keywords": [
        "ai",
        " agents",
        " toolkit",
        " automation",
        " local-tools"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6371830a96714e2ccba128f63957d75447d89b6649744c5bb169212df16e463e",
                "md5": "a2f8d671b016eb6df37f9b6b0982a0ad",
                "sha256": "079ac09674722cead7357ca7232f03f0505d0eaffb8fb4786704d2bd55332086"
            },
            "downloads": -1,
            "filename": "basic_open_agent_tools-0.11.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a2f8d671b016eb6df37f9b6b0982a0ad",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 88544,
            "upload_time": "2025-10-06T19:19:34",
            "upload_time_iso_8601": "2025-10-06T19:19:34.473085Z",
            "url": "https://files.pythonhosted.org/packages/63/71/830a96714e2ccba128f63957d75447d89b6649744c5bb169212df16e463e/basic_open_agent_tools-0.11.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ce190efce5bb6af4f2ea1b8393d5d9ebf729e9eede5756090f452ff6ad273625",
                "md5": "67bd8ecfc785c70a301dc97b78465880",
                "sha256": "076f679bd7fdde5fef8a118ca0fd72f91ce20f103022002da00de1b8ee6279c4"
            },
            "downloads": -1,
            "filename": "basic_open_agent_tools-0.11.4.tar.gz",
            "has_sig": false,
            "md5_digest": "67bd8ecfc785c70a301dc97b78465880",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 72436,
            "upload_time": "2025-10-06T19:19:36",
            "upload_time_iso_8601": "2025-10-06T19:19:36.172564Z",
            "url": "https://files.pythonhosted.org/packages/ce/19/0efce5bb6af4f2ea1b8393d5d9ebf729e9eede5756090f452ff6ad273625/basic_open_agent_tools-0.11.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-06 19:19:36",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "open-agent-tools",
    "github_project": "basic-open-agent-tools#readme",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "google-adk",
            "specs": []
        },
        {
            "name": "litellm",
            "specs": []
        },
        {
            "name": "ollama",
            "specs": []
        },
        {
            "name": "a2a-sdk",
            "specs": []
        },
        {
            "name": "basic-open-agent-tools",
            "specs": []
        },
        {
            "name": "openai",
            "specs": []
        },
        {
            "name": "transformers",
            "specs": []
        },
        {
            "name": "huggingface-hub",
            "specs": []
        },
        {
            "name": "requests",
            "specs": []
        },
        {
            "name": "beautifulsoup4",
            "specs": []
        },
        {
            "name": "selenium",
            "specs": []
        },
        {
            "name": "aiohttp",
            "specs": []
        },
        {
            "name": "httpx",
            "specs": []
        },
        {
            "name": "pandas",
            "specs": []
        },
        {
            "name": "numpy",
            "specs": []
        },
        {
            "name": "python-dotenv",
            "specs": [
                [
                    ">=",
                    "1.0.0"
                ]
            ]
        },
        {
            "name": "pandas-stubs",
            "specs": []
        },
        {
            "name": "python-docx",
            "specs": []
        },
        {
            "name": "openpyxl",
            "specs": []
        },
        {
            "name": "markdown",
            "specs": []
        },
        {
            "name": "click",
            "specs": []
        },
        {
            "name": "typer",
            "specs": []
        },
        {
            "name": "rich",
            "specs": []
        },
        {
            "name": "pydantic",
            "specs": []
        },
        {
            "name": "pytest",
            "specs": [
                [
                    ">=",
                    "7.0.0"
                ]
            ]
        },
        {
            "name": "pytest-cov",
            "specs": [
                [
                    ">=",
                    "4.0.0"
                ]
            ]
        },
        {
            "name": "pytest-asyncio",
            "specs": [
                [
                    ">=",
                    "0.21.0"
                ]
            ]
        },
        {
            "name": "pytest-mock",
            "specs": []
        },
        {
            "name": "tabulate",
            "specs": [
                [
                    ">=",
                    "0.9.0"
                ]
            ]
        },
        {
            "name": "rouge-score",
            "specs": [
                [
                    ">=",
                    "0.1.2"
                ]
            ]
        },
        {
            "name": "ruff",
            "specs": [
                [
                    ">=",
                    "0.1.0"
                ]
            ]
        },
        {
            "name": "mypy",
            "specs": [
                [
                    ">=",
                    "1.0.0"
                ]
            ]
        },
        {
            "name": "ast-decompiler",
            "specs": []
        },
        {
            "name": "black",
            "specs": []
        },
        {
            "name": "flake8",
            "specs": []
        },
        {
            "name": "loguru",
            "specs": []
        },
        {
            "name": "structlog",
            "specs": []
        },
        {
            "name": "pyyaml",
            "specs": []
        },
        {
            "name": "toml",
            "specs": []
        },
        {
            "name": "configparser",
            "specs": []
        },
        {
            "name": "pre-commit",
            "specs": [
                [
                    ">=",
                    "3.0.0"
                ]
            ]
        },
        {
            "name": "virtualenv",
            "specs": []
        },
        {
            "name": "pip-tools",
            "specs": []
        },
        {
            "name": "setuptools",
            "specs": []
        },
        {
            "name": "jupyter",
            "specs": []
        },
        {
            "name": "ipykernel",
            "specs": []
        },
        {
            "name": "notebook",
            "specs": []
        },
        {
            "name": "fastapi",
            "specs": []
        },
        {
            "name": "uvicorn",
            "specs": []
        },
        {
            "name": "sqlalchemy",
            "specs": []
        },
        {
            "name": "faiss-cpu",
            "specs": []
        }
    ],
    "lcname": "basic-open-agent-tools"
}
        
Elapsed time: 0.89589s